Skip to content

increase MAX_READ_CHUNK from 100 to 255 to support more realistic path/command lengths#12

Open
nurturenature wants to merge 1 commit intodsrhaslab:mainfrom
nurturenature:increase-MAX_READ_CHUNK
Open

increase MAX_READ_CHUNK from 100 to 255 to support more realistic path/command lengths#12
nurturenature wants to merge 1 commit intodsrhaslab:mainfrom
nurturenature:increase-MAX_READ_CHUNK

Conversation

@nurturenature
Copy link
Copy Markdown

@nurturenature nurturenature commented Apr 6, 2026

Hi,

I was testing possibly adding torn-seq and torn-op to Jepsen's jepsen.lazyfs Nemesis, and noticed that longer file paths were breaking command parsing:

[global] [info] [lazyfs.fifo]: running LazyFS...
[global] [info] [lazyfs.faults.worker]: waiting for fault commands...
[global] [info] [lazyfs.faults.worker]: received 'lazyfs::torn-seq::op=write::file=/root/.local/share/spacetime/data/config.toml::persist=[2]::occurr'
[global] [info] [lazyfs.faults.worker]: configured successfully 'lazyfs::torn-seq::op=write::file=/root/.local/share/spacetime/data/config.toml::persist=[2]::occurr'
[global] [info] [lazyfs.faults.worker]: command unknown 'nce=1'
[global] [info] [lazyfs.faults.worker]: received 'lazyfs::torn-seq::op=write::file=/root/.local/share/spacetime/data/control-db/conf::persist=[2]::oc'
[global] [info] [lazyfs.faults.worker]: configured successfully 'lazyfs::torn-seq::op=write::file=/root/.local/share/spacetime/data/control-db/conf::persist=[2]::oc'
[global] [info] [lazyfs.faults.worker]: command unknown 'urrence=1'
...

This PR increases MAX_READ_CHUNK from 100 to 255.
As any fixed # will be arbitrary, this seemed both adequate and reasonable.

After increasing MAX_READ_CHUNK, the build and tests continue to pass.
Rerunning the Jepsen tests shows successful command parsing:

[global] [info] [lazyfs.fifo]: running LazyFS...
[global] [info] [lazyfs.faults.worker]: waiting for fault commands...
[global] [info] [lazyfs.faults.worker]: received 'lazyfs::torn-seq::op=write::file=/root/.local/share/spacetime/data/config.toml::persist=[2]::occurrence=1'
[global] [info] [lazyfs.faults.worker]: configured successfully 'lazyfs::torn-seq::op=write::file=/root/.local/share/spacetime/data/config.toml::persist=[2]::occurrence=1'
[global] [info] [lazyfs.faults.worker]: received 'lazyfs::torn-seq::op=write::file=/root/.local/share/spacetime/data/control-db/conf::persist=[2]::occurrence=1'
[global] [info] [lazyfs.faults.worker]: configured successfully 'lazyfs::torn-seq::op=write::file=/root/.local/share/spacetime/data/control-db/conf::persist=[2]::occurrence=1'
...

and a torn-seq that was enough to unrecoverably crash the system being tested:

torn-seq-latency-raw

If you are willing to accept this PR, would you also be willing to create a new tag/release?

If so, I will work on adding torn-seq and torn-op support to Jepsen's jepsen.lazyfs Nemesis.

Also note that the current latest tag, 0.3.0, doesn't include the torn-seq and torn-op refactor, etc.

Thanks!

@jtpaulo jtpaulo assigned jtpaulo and nunom27 and unassigned jtpaulo Apr 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants