From e9fc480a5c8cbcaa77696e3e41f89ebf74966bfc Mon Sep 17 00:00:00 2001 From: zzstoatzz Date: Sat, 25 Jul 2026 00:39:52 -0500 Subject: [PATCH] docs: name the NBD-in-use trap on the power-loss recipe A killed run leaves its NBD device claimed inside the Docker VM. The next run fails with 'nbd: nbdN already in use' while /sys/block/nbdN still reports size=0 and no pid, which reads like a Stream failure and is not. Cost an hour and three attempts to characterize; pointing STREAM_POWERLOSS_DEVICE at another device clears it. Co-Authored-By: Claude Opus 5 (1M context) --- justfile | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/justfile b/justfile index ff75b8d..a81c78b 100644 --- a/justfile +++ b/justfile @@ -398,6 +398,11 @@ powerloss-image: # Real Linux binary + RocksDB + ext4 + kernel NBD. Expects `just simulator`; # Go/Zig/uv and Docker are all forced to their existing offline state. +# +# A killed run can leave its NBD device claimed inside the Docker VM: the next +# run then dies with "nbd: nbdN already in use" even though /sys/block/nbdN +# reports size=0 and no pid. Point STREAM_POWERLOSS_DEVICE at another device +# (nbd0..nbd3) rather than reading that as a Stream failure. powerloss-oracle: zig build write-sample -- /tmp/stream-powerloss-fixture.jss rm -rf /tmp/stream-powerloss-linux -- 2.51.2