6 Commits
Author SHA1 Message Date
hermes b7467754f5 docs: mark RESUME NEXT STEPS #1/#2 done; VM durable stack verified 2026-08-13 09:32:54 -04:00
CUBELinux-2 314df8e42d docs: finalize RESUME — mount gate hardened (daemon-backed leg), VM deployment bugs fixed, snapshot taken 2026-08-13 07:08:14 -04:00
CUBELinux-2 28e5bcc091 docs: finalize session status — gates green (check/daemon/mount), VM durable e2e + launcher verified 2026-08-13 06:35:01 -04:00
CUBELinux-2 0e3f18d106 docs: mark VM durable-socket e2e done (NEXT STEP 1) in RESUME doc
VM qcow2 was pre-fix; rebuilt cubefs-mount from fixed source inside the VM,
rewired cubefs.service to --socket /run/cube/cube.sock with
Requires=cube-server.service, and proved a FUSE write survives a daemon
restart via the durable store+WAL. ./check also green inside the VM.
2026-08-13 06:25:39 -04:00
CUBELinux-2 dd269e2b44 docs: record DaemonBackend envelope round-trip fix + gate status in RESUME doc 2026-08-13 05:58:40 -04:00
CUBELinux-2 8f9e7e0025 fix(cubefs): make FUSE mount a durable view of cube-server daemon store
The cubefs-mount --socket path was never actually built: CubeFs<B> is
generic, so the --socket (DaemonBackend) and default (HashBackend) arms
of the match were incompatible types (E0308), and --features mount failed
to compile. The running binary was therefore the in-memory build, so
--socket was silently ignored and every FUSE write went to RAM and never
reached the daemon (rawget/rawkeys returned none / 0 keys, WAL stayed 0).

Fix: type-erase the backend. Add  (forwards to inner) in cubestore, and build
 in cubefs-mount via
Box::new(DaemonBackend::new(p)) / Box::new(HashBackend::new()). Keeps
cubefs free of a cubesys dep (acyclic graph).

Verified end-to-end on host (shared code path as the VM): a FUSE write
via  lands in the daemon store (rawget returns the
record, 5 keys present, WAL grows), and survives a  of the
daemon + relaunch with the same --store (byte-identical read-back).

Also includes (from RESUME-cubefs-daemon.md): cubesys raw* command family
(rawget/rawput/rawdel/rawkeys/rawscan + parse/hex helpers) and the
DaemonBackend client + smoke tests. Report/verification docs added.

Note: VM cubefs.service still mounts in-memory (no --socket); update the
unit to  as a
follow-up so the deployed VM FUSE is durable too.
2026-08-13 05:40:59 -04:00