Skip to content

Instantly share code, notes, and snippets.

@aphyr

aphyr/1-short.sh Secret

Last active June 15, 2022 17:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save aphyr/de84b509cf64c84c35ba40769063a05a to your computer and use it in GitHub Desktop.
Save aphyr/de84b509cf64c84c35ba40769063a05a to your computer and use it in GitHub Desktop.
yet another lazyfs bug
Log length: 5
sudo -k -S -u root bash -c "cd /; mkdir -p /tmp/jepsen/fs-test" # =>
sudo -k -S -u root bash -c "cd /; mkdir -p /tmp/jepsen/fs-test.lazyfs/data" # =>
sudo -k -S -u root bash -c "cd /; chown root:root /tmp/jepsen/fs-test" # =>
sudo -k -S -u root bash -c "cd /; chown -R root:root /tmp/jepsen/fs-test.lazyfs" # =>
sudo -k -S -u root bash -c "cd /; cat > /tmp/jepsen/fs-test.lazyfs/config" <<< "[faults]
fifo_path=\"/tmp/jepsen/fs-test.lazyfs/fifo\"
[cache]
apply_eviction=false
[cache.simple]
custom_size=\"0.5GB\"
blocks_per_page=1" # =>
sudo -k -S -u root bash -c "cd /; echo \`date +'%Y-%m-%d %H:%M:%S'\` \"Jepsen starting /opt/jepsen/lazyfs/lazyfs/build/lazyfs /tmp/jepsen/fs-test --config-path /tmp/jepsen/fs-test.lazyfs/config -o allow_other -o modules=subdir -o subdir=/tmp/jepsen/fs-test.lazyfs/data -s -f\" >> /tmp/jepsen/fs-test.lazyfs/log" # =>
sudo -k -S -u root bash -c "cd /; start-stop-daemon --start --background --no-close --make-pidfile --exec /opt/jepsen/lazyfs/lazyfs/build/lazyfs --pidfile /tmp/jepsen/fs-test.lazyfs/pid --chdir /tmp/jepsen/fs-test.lazyfs --startas /opt/jepsen/lazyfs/lazyfs/build/lazyfs -- /tmp/jepsen/fs-test --config-path /tmp/jepsen/fs-test.lazyfs/config -o allow_other -o modules=subdir -o subdir=/tmp/jepsen/fs-test.lazyfs/data -s -f >> /tmp/jepsen/fs-test.lazyfs/log 2>&1" # =>
cd /tmp/jepsen/fs-test
mkdir a # =>
mkdir b # =>
touch b/a # =>
mkdir a/b # =>
mv b a # => (stderr: "mv: cannot move 'b' to 'a/b': Directory not empty\n")
At this point, the root was theoretically
{:type :dir,
:files
{"a" {:type :dir, :files {"b" {:type :dir, :files {}}}},
"b" {:type :dir, :files {"a" {:type :file, :data ""}}}}}
And we expected to execute
{:f :mv,
:value [["b"] ["a"]],
:time 73982766,
:process 0,
:type :ok,
:index 9}
But with lazyfs we actually executed
{:f :mv,
:value [["b"] ["a"]],
:time 73982766,
:process 0,
:type :info,
:exception
{:via
[{:type clojure.lang.ExceptionInfo,
:message
"throw+: {:type :jepsen.control/nonzero-exit, :cmd \"cd /tmp/jepsen/fs-test; mv b a\", :out \"\", :err \"mv: cannot move 'b' to 'a/b': Directory not empty\\n\", :exit 1, :host \"n1\", :action {:cmd \"cd /tmp/jepsen/fs-test; mv b a\"}}",
:data
{:type :jepsen.control/nonzero-exit,
:cmd "cd /tmp/jepsen/fs-test; mv b a",
:out "",
:err "mv: cannot move 'b' to 'a/b': Directory not empty\n",
:exit 1,
:host "n1",
:action {:cmd "cd /tmp/jepsen/fs-test; mv b a"}},
:at [slingshot.support$stack_trace invoke "support.clj" 201]}
{:type clojure.lang.ExceptionInfo,
:message
"Command exited with non-zero status 1 on node n1:\ncd /tmp/jepsen/fs-test; mv b a\n\nSTDIN:\nnull\n\nSTDOUT:\n\n\nSTDERR:\nmv: cannot move 'b' to 'a/b': Directory not empty\n",
:data
{:type :jepsen.control/nonzero-exit,
:cmd "cd /tmp/jepsen/fs-test; mv b a",
:out "",
:err "mv: cannot move 'b' to 'a/b': Directory not empty\n",
:exit 1,
:host "n1",
:action {:cmd "cd /tmp/jepsen/fs-test; mv b a"}},
:at [slingshot.support$stack_trace invoke "support.clj" 201]}],
:trace
[[slingshot.support$stack_trace invoke "support.clj" 201]
[jepsen.control.core$throw_on_nonzero_exit
invokeStatic
"core.clj"
160]
[jepsen.control.core$throw_on_nonzero_exit invoke "core.clj" 155]
[jepsen.control$exec_STAR_ invokeStatic "control.clj" 145]
[jepsen.control$exec_STAR_ doInvoke "control.clj" 142]
[clojure.lang.RestFn applyTo "RestFn.java" 137]
[clojure.core$apply invokeStatic "core.clj" 667]
[clojure.core$apply invoke "core.clj" 662]
[jepsen.control$exec invokeStatic "control.clj" 161]
[jepsen.control$exec doInvoke "control.clj" 155]
[clojure.lang.RestFn invoke "RestFn.java" 436]
[jepsen.lazyfs_test$fs_op_BANG_ invokeStatic "lazyfs_test.clj" 483]
[jepsen.lazyfs_test$fs_op_BANG_ invoke "lazyfs_test.clj" 441]
[jepsen.lazyfs_test.FSClient$fn__8536$fn__8537
invoke
"lazyfs_test.clj"
564]
[jepsen.control$on_nodes$fn__6824 invoke "control.clj" 314]
[clojure.lang.AFn applyToHelper "AFn.java" 154]
[clojure.lang.AFn applyTo "AFn.java" 144]
[clojure.core$apply invokeStatic "core.clj" 667]
[clojure.core$with_bindings_STAR_ invokeStatic "core.clj" 1990]
[clojure.core$with_bindings_STAR_ doInvoke "core.clj" 1990]
[clojure.lang.RestFn applyTo "RestFn.java" 142]
[clojure.core$apply invokeStatic "core.clj" 671]
[clojure.core$bound_fn_STAR_$fn__5818 doInvoke "core.clj" 2020]
[clojure.lang.RestFn invoke "RestFn.java" 408]
[dom_top.core$real_pmap_helper$build_thread__406$fn__407
invoke
"core.clj"
152]
[clojure.lang.AFn applyToHelper "AFn.java" 152]
[clojure.lang.AFn applyTo "AFn.java" 144]
[clojure.core$apply invokeStatic "core.clj" 667]
[clojure.core$with_bindings_STAR_ invokeStatic "core.clj" 1990]
[clojure.core$with_bindings_STAR_ doInvoke "core.clj" 1990]
[clojure.lang.RestFn invoke "RestFn.java" 425]
[clojure.lang.AFn applyToHelper "AFn.java" 156]
[clojure.lang.RestFn applyTo "RestFn.java" 132]
[clojure.core$apply invokeStatic "core.clj" 671]
[clojure.core$bound_fn_STAR_$fn__5818 doInvoke "core.clj" 2020]
[clojure.lang.RestFn invoke "RestFn.java" 397]
[clojure.lang.AFn run "AFn.java" 22]
[java.lang.Thread run "Thread.java" 833]],
:cause
"Command exited with non-zero status 1 on node n1:\ncd /tmp/jepsen/fs-test; mv b a\n\nSTDIN:\nnull\n\nSTDOUT:\n\n\nSTDERR:\nmv: cannot move 'b' to 'a/b': Directory not empty\n",
:data
{:type :jepsen.control/nonzero-exit,
:cmd "cd /tmp/jepsen/fs-test; mv b a",
:out "",
:err "mv: cannot move 'b' to 'a/b': Directory not empty\n",
:exit 1,
:host "n1",
:action {:cmd "cd /tmp/jepsen/fs-test; mv b a"}}},
:error
"indeterminate: Command exited with non-zero status 1 on node n1:\ncd /tmp/jepsen/fs-test; mv b a\n\nSTDIN:\nnull\n\nSTDOUT:\n\n\nSTDERR:\nmv: cannot move 'b' to 'a/b': Directory not empty\n",
:index 9}
Log length: 1998
sudo -k -S -u root bash -c "cd /; mkdir -p /tmp/jepsen/fs-test" # =>
sudo -k -S -u root bash -c "cd /; mkdir -p /tmp/jepsen/fs-test.lazyfs/data" # =>
sudo -k -S -u root bash -c "cd /; chown root:root /tmp/jepsen/fs-test" # =>
sudo -k -S -u root bash -c "cd /; chown -R root:root /tmp/jepsen/fs-test.lazyfs" # =>
sudo -k -S -u root bash -c "cd /; cat > /tmp/jepsen/fs-test.lazyfs/config" <<< "[faults]
fifo_path=\"/tmp/jepsen/fs-test.lazyfs/fifo\"
[cache]
apply_eviction=false
[cache.simple]
custom_size=\"0.5GB\"
blocks_per_page=1" # =>
sudo -k -S -u root bash -c "cd /; echo \`date +'%Y-%m-%d %H:%M:%S'\` \"Jepsen starting /opt/jepsen/lazyfs/lazyfs/build/lazyfs /tmp/jepsen/fs-test --config-path /tmp/jepsen/fs-test.lazyfs/config -o allow_other -o modules=subdir -o subdir=/tmp/jepsen/fs-test.lazyfs/data -s -f\" >> /tmp/jepsen/fs-test.lazyfs/log" # =>
sudo -k -S -u root bash -c "cd /; start-stop-daemon --start --background --no-close --make-pidfile --exec /opt/jepsen/lazyfs/lazyfs/build/lazyfs --pidfile /tmp/jepsen/fs-test.lazyfs/pid --chdir /tmp/jepsen/fs-test.lazyfs --startas /opt/jepsen/lazyfs/lazyfs/build/lazyfs -- /tmp/jepsen/fs-test --config-path /tmp/jepsen/fs-test.lazyfs/config -o allow_other -o modules=subdir -o subdir=/tmp/jepsen/fs-test.lazyfs/data -s -f >> /tmp/jepsen/fs-test.lazyfs/log 2>&1" # =>
cd /tmp/jepsen/fs-test
rm -r b # => (stderr: "rm: cannot remove 'b': No such file or directory\n")
cat a # => (stderr: "cat: a: No such file or directory\n")
touch b # =>
cat > a <<< tDX # =>
cat a/b # => (stderr: "cat: a/b: Not a directory\n")
cat a/b # => (stderr: "cat: a/b: Not a directory\n")
rm -r a/b # => (stderr: "rm: cannot remove 'a/b': Not a directory\n")
cat a # => "tDX"
cat >> a <<< " s6N8H4q7ac11bV7Y" # =>
mv b b/b # => (stderr: "mv: failed to access 'b/b': Not a directory\n")
cat a/a # => (stderr: "cat: a/a: Not a directory\n")
cat > b/b <<< Bld9y1N2Gky6UN4AK55G # => (stderr: "bash: line 1: b/b: Not a directory\n")
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
rm -r a # =>
rm -r b # =>
mkdir b # =>
mkdir a/b # => (stderr: "mkdir: cannot create directory ‘a/b’: No such file or directory\n")
rm -r b/b # => (stderr: "rm: cannot remove 'b/b': No such file or directory\n")
touch a # =>
cat > a <<< lcHB8NX9yH44BaU70 # =>
cat >> a/a <<< " y93qd4pwM2I2QLez84vNrTJ1m3knXhzILG8Z7N76ViX08q8H4v" # => (stderr: "bash: line 1: a/a: Not a directory\n")
mv b a # => (stderr: "mv: cannot overwrite non-directory 'a' with directory 'b'\n")
cat > b/b <<< 67i2GjZeuoVTx1nobLXHhP29S40jGXEP2h # =>
cat > b/b <<< "" # =>
mv a/a b # => (stderr: "mv: cannot stat 'a/a': Not a directory\n")
mv b a # => (stderr: "mv: cannot overwrite non-directory 'a' with directory 'b'\n")
mv b a/b # => (stderr: "mv: failed to access 'a/b': Not a directory\n")
cat >> a <<< " PiqgjW12L0PPKFgS5lbj" # =>
touch b # =>
mkdir b/b # => (stderr: "mkdir: cannot create directory ‘b/b’: File exists\n")
mv b/b a # =>
rm -r a # =>
mkdir b/a # =>
touch a # =>
cat >> b/a <<< " IOsq4B" # => (stderr: "bash: line 1: b/a: Is a directory\n")
cat >> a/b <<< " 5thr3v58dIskZj0x2VZE919GK4e" # => (stderr: "bash: line 1: a/b: Not a directory\n")
cat > b/a <<< aVkkXC4u7LdN75ekpc0gSD0Zpzu2Xe365sBFApQ3 # => (stderr: "bash: line 1: b/a: Is a directory\n")
mv a/b a/b # => (stderr: "mv: failed to access 'a/b': Not a directory\n")
cat b # => (stderr: "cat: b: Is a directory\n")
cat a/a # => (stderr: "cat: a/a: Not a directory\n")
rm -r b # =>
cat a # =>
rm -r a/a # => (stderr: "rm: cannot remove 'a/a': Not a directory\n")
rm -r a/a # => (stderr: "rm: cannot remove 'a/a': Not a directory\n")
cat >> a/a <<< " NvPp2s81EGfW2Ug9fs02wpj36i" # => (stderr: "bash: line 1: a/a: Not a directory\n")
cat >> b <<< " FlVLLB7wlM6" # =>
mv a a # => (stderr: "mv: 'a' and 'a' are the same file\n")
mv b/b a # => (stderr: "mv: cannot stat 'b/b': Not a directory\n")
touch a/b # => (stderr: "touch: cannot touch 'a/b': Not a directory\n")
rm -r a # =>
cat b # => " FlVLLB7wlM6"
cat > a/b <<< khj8O # => (stderr: "bash: line 1: a/b: No such file or directory\n")
cat > b/a <<< ifLfRgi8D609Kiw8A83 # => (stderr: "bash: line 1: b/a: Not a directory\n")
touch b # =>
mv a/a a/a # => (stderr: "mv: cannot stat 'a/a': No such file or directory\n")
cat >> b <<< " 96DdpCx6aj47Qv12rm8n9Jizg0ZK75JnsGMW" # =>
mv b b/b # => (stderr: "mv: failed to access 'b/b': Not a directory\n")
cat >> b <<< " wd362" # =>
mkdir b/a # => (stderr: "mkdir: cannot create directory ‘b/a’: Not a directory\n")
mkdir a # =>
cat b/a # => (stderr: "cat: b/a: Not a directory\n")
cat > b/b <<< MZ9Dx9064O0pPM6h # => (stderr: "bash: line 1: b/b: Not a directory\n")
cat a/b # => (stderr: "cat: a/b: No such file or directory\n")
cat > b <<< 86RN3wNwlDh98Hay # =>
touch a # =>
mv a/b a/a # => (stderr: "mv: cannot stat 'a/b': No such file or directory\n")
mv a/b b # => (stderr: "mv: cannot stat 'a/b': No such file or directory\n")
cat > a/b <<< YHUuy7BV3j64P75 # =>
cat > b <<< YjIlkYTPqyO3C8236210w098q # =>
mv a/a b # => (stderr: "mv: cannot stat 'a/a': No such file or directory\n")
cat > b <<< 8X0oTY47831h # =>
touch a/a # =>
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: File exists\n")
mkdir b/b # => (stderr: "mkdir: cannot create directory ‘b/b’: Not a directory\n")
rm -r a/a # =>
mv a a # => (stderr: "mv: cannot move 'a' to a subdirectory of itself, 'a/a'\n")
cat >> a <<< " bwrL1" # => (stderr: "bash: line 1: a: Is a directory\n")
rm -r b # =>
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
cat >> a/a <<< " q0qy6Zn08vibiYz0424IzTLhcH9r8" # =>
rm -r a/a # =>
cat > b <<< 1fZktZ5b14SA1sT3a # =>
cat > a <<< VLXx6YWsSO # => (stderr: "bash: line 1: a: Is a directory\n")
rm -r b/b # => (stderr: "rm: cannot remove 'b/b': Not a directory\n")
mkdir a/b # => (stderr: "mkdir: cannot create directory ‘a/b’: File exists\n")
touch a # =>
touch b # =>
mv b/b b # => (stderr: "mv: cannot stat 'b/b': Not a directory\n")
touch b # =>
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
mkdir a/b # => (stderr: "mkdir: cannot create directory ‘a/b’: File exists\n")
touch a/a # =>
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: File exists\n")
cat >> b/b <<< " 04y46iYO49272iZarDd7tWvYLTn04" # => (stderr: "bash: line 1: b/b: Not a directory\n")
cat > b <<< 2F7FeCYEa679kuQq9yS917CO # =>
cat > b/b <<< dMuM6Tz1HHDX91AI # => (stderr: "bash: line 1: b/b: Not a directory\n")
touch a # =>
cat > b/a <<< svc # => (stderr: "bash: line 1: b/a: Not a directory\n")
cat >> b/b <<< " atLO3LPXX8g70J4F4eVfU78LgMS77rdvo5ci" # => (stderr: "bash: line 1: b/b: Not a directory\n")
rm -r b # =>
cat >> a <<< " gd2zcrlyIfaOm8Qy8KRjZ9zcxgGR" # => (stderr: "bash: line 1: a: Is a directory\n")
touch b # =>
mkdir b # => (stderr: "mkdir: cannot create directory ‘b’: File exists\n")
cat > b <<< L5VmkAas9f9obe0e6OLJU6G # =>
mv b/b b # => (stderr: "mv: cannot stat 'b/b': Not a directory\n")
touch b # =>
cat > a <<< 8rubJ84QTPtqO3dJo4zfgX1tZeU # => (stderr: "bash: line 1: a: Is a directory\n")
cat a # => (stderr: "cat: a: Is a directory\n")
mv a/a a/a # => (stderr: "mv: 'a/a' and 'a/a' are the same file\n")
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
rm -r b # =>
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: File exists\n")
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: File exists\n")
rm -r b # => (stderr: "rm: cannot remove 'b': No such file or directory\n")
rm -r b # => (stderr: "rm: cannot remove 'b': No such file or directory\n")
cat > b/b <<< Clc52CM1xlx7XXS # => (stderr: "bash: line 1: b/b: No such file or directory\n")
mv b/b b # => (stderr: "mv: cannot stat 'b/b': No such file or directory\n")
rm -r a # =>
mkdir a # =>
mv a b # =>
rm -r b # =>
touch b/a # => (stderr: "touch: cannot touch 'b/a': No such file or directory\n")
cat > a <<< R9ZzQzkiMpG8JcJKeXeJIKA382XMf943h60f92u # =>
cat a # => "R9ZzQzkiMpG8JcJKeXeJIKA382XMf943h60f92u"
cat > b/b <<< B9La90ZJ31EiiSAI6aewr0G1twE7Cy73UEyZ # => (stderr: "bash: line 1: b/b: No such file or directory\n")
mv a/b a/b # => (stderr: "mv: failed to access 'a/b': Not a directory\n")
cat b/b # => (stderr: "cat: b/b: No such file or directory\n")
rm -r b # => (stderr: "rm: cannot remove 'b': No such file or directory\n")
cat b/b # => (stderr: "cat: b/b: No such file or directory\n")
rm -r a # =>
cat > b/a <<< mUsC1ENavbcM9wVKj328Kqk65050hB0P1qXMqXO09E1 # => (stderr: "bash: line 1: b/a: No such file or directory\n")
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: No such file or directory\n")
mv b b # => (stderr: "mv: cannot stat 'b': No such file or directory\n")
rm -r b/b # => (stderr: "rm: cannot remove 'b/b': No such file or directory\n")
cat a/b # => (stderr: "cat: a/b: No such file or directory\n")
mv b b # => (stderr: "mv: cannot stat 'b': No such file or directory\n")
cat > b <<< Qk # =>
mkdir b/a # => (stderr: "mkdir: cannot create directory ‘b/a’: Not a directory\n")
cat >> a/b <<< " 16" # => (stderr: "bash: line 1: a/b: No such file or directory\n")
touch a/b # => (stderr: "touch: cannot touch 'a/b': No such file or directory\n")
cat > b <<< 2v7nR2lvvzBdq1j5Y61G1zb5O5mh28GMWS0W0 # =>
mkdir b/a # => (stderr: "mkdir: cannot create directory ‘b/a’: Not a directory\n")
mkdir b # => (stderr: "mkdir: cannot create directory ‘b’: File exists\n")
mkdir b/b # => (stderr: "mkdir: cannot create directory ‘b/b’: Not a directory\n")
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: No such file or directory\n")
cat b/b # => (stderr: "cat: b/b: Not a directory\n")
touch a # =>
touch a/a # => (stderr: "touch: cannot touch 'a/a': Not a directory\n")
mv b b # => (stderr: "mv: 'b' and 'b' are the same file\n")
cat > b/b <<< pG6py0LjmyZ # => (stderr: "bash: line 1: b/b: Not a directory\n")
cat >> a/a <<< " 8LRAk620mf1i9Pm0ttL2v5WKF81E6H8j6t8IrG9BrZs5a9fV" # => (stderr: "bash: line 1: a/a: Not a directory\n")
cat >> b <<< " 6evXC4pqks0Krfs218ZylhPKFG0h4DT85q9iwDjoc" # =>
mv a b/a # => (stderr: "mv: failed to access 'b/a': Not a directory\n")
cat >> a <<< " SLae9EXR" # =>
rm -r b # =>
cat a # => " SLae9EXR"
cat b/b # => (stderr: "cat: b/b: No such file or directory\n")
mkdir b # =>
mkdir b/a # =>
rm -r a/b # => (stderr: "rm: cannot remove 'a/b': Not a directory\n")
cat >> a <<< " 0FqG9yNrR8Y85kJZ4OVaO53rLPOO1Po99iiV4" # =>
mv b/a a # => (stderr: "mv: cannot overwrite non-directory 'a' with directory 'b/a'\n")
rm -r a # =>
cat > b <<< uNn98PDyTl8B104 # => (stderr: "bash: line 1: b: Is a directory\n")
touch a # =>
mv a a/b # => (stderr: "mv: failed to access 'a/b': Not a directory\n")
cat b/a # => (stderr: "cat: b/a: Is a directory\n")
cat a # =>
cat > a <<< DmzSZ7rRj3ZrAxnw0ihRjX1C9LqR3Of4zONYFvH365k4XT # =>
cat > b <<< YXxHxDiK58u0w9VAt2bp69Yj84lyzNoF41dSI7M7y # => (stderr: "bash: line 1: b: Is a directory\n")
rm -r b # =>
cat >> b <<< " 2sd75t4Pm5Tq0lO6bJZSt1sac1aeqMgn48p89hQ3k21" # =>
cat a # => "DmzSZ7rRj3ZrAxnw0ihRjX1C9LqR3Of4zONYFvH365k4XT"
touch a/a # => (stderr: "touch: cannot touch 'a/a': Not a directory\n")
cat >> b/b <<< " LeJErRrk721TSI0w3lHb5Lj9955fHAwo2frLV1450ArB3h5Wf" # => (stderr: "bash: line 1: b/b: Not a directory\n")
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
cat > a <<< 4Gv3Ma6y6n21cg8RPx53hxT9JLd7c9IwQmr86tEJPAzIO2mZ65 # =>
cat a # => "4Gv3Ma6y6n21cg8RPx53hxT9JLd7c9IwQmr86tEJPAzIO2mZ65"
cat b/b # => (stderr: "cat: b/b: Not a directory\n")
rm -r a # =>
cat > b/b <<< yBt4pDR7Y # => (stderr: "bash: line 1: b/b: Not a directory\n")
cat a # => (stderr: "cat: a: No such file or directory\n")
rm -r b # =>
touch b # =>
cat > b/a <<< 09 # => (stderr: "bash: line 1: b/a: Not a directory\n")
rm -r b/b # => (stderr: "rm: cannot remove 'b/b': Not a directory\n")
touch a/b # => (stderr: "touch: cannot touch 'a/b': No such file or directory\n")
cat >> b <<< " 9BKarcszJm69LdLwFL59LNo4YPn" # =>
cat >> a/a <<< " vi6QxMnA4sgqU0F5G30453uyHEb" # => (stderr: "bash: line 1: a/a: No such file or directory\n")
mv a/b a/b # => (stderr: "mv: cannot stat 'a/b': No such file or directory\n")
touch a/b # => (stderr: "touch: cannot touch 'a/b': No such file or directory\n")
cat > a/b <<< "" # => (stderr: "bash: line 1: a/b: No such file or directory\n")
cat >> b/a <<< " UD2nOnZt0xl0v6IAHrbV6Zzh2fYsC" # => (stderr: "bash: line 1: b/a: Not a directory\n")
mkdir a # =>
mv b/b b # => (stderr: "mv: cannot stat 'b/b': Not a directory\n")
cat >> b/b <<< " mhIv8h83hB6KmHeiIO7xo" # => (stderr: "bash: line 1: b/b: Not a directory\n")
cat b/b # => (stderr: "cat: b/b: Not a directory\n")
cat > a <<< Sd64xLyzSc4W79EC62 # => (stderr: "bash: line 1: a: Is a directory\n")
cat > b <<< z7GLsZU # =>
touch a # =>
mv b/a a # => (stderr: "mv: cannot stat 'b/a': Not a directory\n")
cat a/b # => (stderr: "cat: a/b: No such file or directory\n")
cat > b/a <<< HvfNjxLs46d6V9IyR0vHD3Kma7XfA97ULO3QgAsy5 # => (stderr: "bash: line 1: b/a: Not a directory\n")
cat >> a/b <<< " 8UkS9t46sVlHj8ulJ3Fbzlk8P9asEJBzG" # =>
mv b b # => (stderr: "mv: 'b' and 'b' are the same file\n")
touch a/a # =>
rm -r a # =>
cat b/a # => (stderr: "cat: b/a: Not a directory\n")
mv b b # => (stderr: "mv: 'b' and 'b' are the same file\n")
cat > b/b <<< 6d45crAGSsWtFtPGD0k6mg7S # => (stderr: "bash: line 1: b/b: Not a directory\n")
cat a # => (stderr: "cat: a: No such file or directory\n")
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: No such file or directory\n")
rm -r b # =>
touch a # =>
cat >> a/a <<< " d4XcmJ7f4HQTSwXFlIxD" # => (stderr: "bash: line 1: a/a: Not a directory\n")
mkdir b # =>
rm -r a # =>
mv a a # => (stderr: "mv: cannot stat 'a': No such file or directory\n")
cat b # => (stderr: "cat: b: Is a directory\n")
cat > a <<< 4Rj8otiKDSRL3gOnK5z8W4Nn2543RuI # =>
touch b/a # =>
rm -r a # =>
mv b/b a/b # => (stderr: "mv: cannot stat 'b/b': No such file or directory\n")
cat > b/a <<< L91ncu5 # =>
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: No such file or directory\n")
touch a/b # => (stderr: "touch: cannot touch 'a/b': No such file or directory\n")
rm -r b/a # =>
cat b/b # => (stderr: "cat: b/b: No such file or directory\n")
cat >> a/a <<< " " # => (stderr: "bash: line 1: a/a: No such file or directory\n")
touch a # =>
cat a/b # => (stderr: "cat: a/b: Not a directory\n")
rm -r b/b # => (stderr: "rm: cannot remove 'b/b': No such file or directory\n")
cat > b <<< YjQ0DQt5SoSM # => (stderr: "bash: line 1: b: Is a directory\n")
mkdir b/b # =>
cat > b/a <<< tHKIhjmC # =>
cat >> a <<< " L1Z4h38125S14PP9942e" # =>
touch a # =>
mkdir b # => (stderr: "mkdir: cannot create directory ‘b’: File exists\n")
cat >> a <<< " 0q" # =>
mv a a # => (stderr: "mv: 'a' and 'a' are the same file\n")
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
cat > b/b <<< w1Wl7FHlog8wOIAyCfR2eH8w2mOZ7l66w0 # => (stderr: "bash: line 1: b/b: Is a directory\n")
touch b/a # =>
cat >> b <<< " GjLSXBvX828dz83H90X69Uq21" # => (stderr: "bash: line 1: b: Is a directory\n")
cat >> b <<< " Zsj3HohlYY2Zd64ptrEV0Y942pP1pXJGEuigViZknx" # => (stderr: "bash: line 1: b: Is a directory\n")
cat >> a/b <<< " " # => (stderr: "bash: line 1: a/b: Not a directory\n")
cat >> a <<< " KU40InBphpC5zMA6D0we77HQDmVEUg34lZ2vkWRM" # =>
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: Not a directory\n")
mv b/a b # => (stderr: "mv: 'b/a' and 'b/a' are the same file\n")
mkdir b # => (stderr: "mkdir: cannot create directory ‘b’: File exists\n")
cat a/a # => (stderr: "cat: a/a: Not a directory\n")
mkdir b/a # => (stderr: "mkdir: cannot create directory ‘b/a’: File exists\n")
rm -r b # =>
cat > b/b <<< hR21O1Zpya5qXUId05u # => (stderr: "bash: line 1: b/b: No such file or directory\n")
mkdir b # =>
cat a # => " L1Z4h38125S14PP9942e 0q KU40InBphpC5zMA6D0we77HQDmVEUg34lZ2vkWRM"
mv a/b a # => (stderr: "mv: cannot stat 'a/b': Not a directory\n")
cat b/a # => (stderr: "cat: b/a: No such file or directory\n")
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: Not a directory\n")
mkdir a/b # => (stderr: "mkdir: cannot create directory ‘a/b’: Not a directory\n")
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
mkdir b # => (stderr: "mkdir: cannot create directory ‘b’: File exists\n")
cat > b <<< mqKE1yjLjGfzQfr7tUV42gnU3k40T0oGum3730 # => (stderr: "bash: line 1: b: Is a directory\n")
mv b/a a # => (stderr: "mv: cannot stat 'b/a': No such file or directory\n")
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
touch a # =>
rm -r a/b # => (stderr: "rm: cannot remove 'a/b': Not a directory\n")
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: Not a directory\n")
touch b/a # =>
touch b/a # =>
cat >> a <<< " Z5Z6iO4Dh8ey6jF72Ehe6B7" # =>
cat b # => (stderr: "cat: b: Is a directory\n")
cat >> b <<< " QwO5IQiaI41hPukzQVmT5" # => (stderr: "bash: line 1: b: Is a directory\n")
mv a/b a/b # => (stderr: "mv: failed to access 'a/b': Not a directory\n")
touch a/b # => (stderr: "touch: cannot touch 'a/b': Not a directory\n")
cat >> a <<< " Ts0BWTe" # =>
touch a/a # => (stderr: "touch: cannot touch 'a/a': Not a directory\n")
rm -r a/b # => (stderr: "rm: cannot remove 'a/b': Not a directory\n")
cat > a/b <<< 9Xg6x7Qh08mePbiOE809NvXB905LR1N6JN5ok6KNExX07O # => (stderr: "bash: line 1: a/b: Not a directory\n")
rm -r a # =>
mv a/b a # => (stderr: "mv: cannot stat 'a/b': No such file or directory\n")
mv b b # => (stderr: "mv: cannot move 'b' to a subdirectory of itself, 'b/b'\n")
cat a # => (stderr: "cat: a: No such file or directory\n")
cat a/b # => (stderr: "cat: a/b: No such file or directory\n")
touch a # =>
touch b/a # =>
cat b # => (stderr: "cat: b: Is a directory\n")
cat a # =>
mkdir b/b # =>
touch b/b # =>
rm -r b/b # =>
cat >> b <<< " FRD38M6E96aK9JXzLu23tdBD" # => (stderr: "bash: line 1: b: Is a directory\n")
mv a/a b/a # => (stderr: "mv: cannot stat 'a/a': Not a directory\n")
cat > b/a <<< 0V9Dv7EV1Z048jBt2Hb3q2dXIzcaN5DNZH230p8d0 # =>
cat > a/b <<< 2NLrl6uaUesf7P2ixIJu # => (stderr: "bash: line 1: a/b: Not a directory\n")
cat > b/a <<< 00zKaKT1mJyZOCY3zVlUI4aX3reWxJ7 # =>
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: Not a directory\n")
rm -r b/b # => (stderr: "rm: cannot remove 'b/b': No such file or directory\n")
mv a/b a # => (stderr: "mv: cannot stat 'a/b': Not a directory\n")
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: Not a directory\n")
touch b # =>
cat b/b # => (stderr: "cat: b/b: No such file or directory\n")
touch a/a # => (stderr: "touch: cannot touch 'a/a': Not a directory\n")
cat b # => (stderr: "cat: b: Is a directory\n")
cat >> a/a <<< " X62WA47tzdl5CH4yFhQi02IcL0lu4j6itLNq4oY" # => (stderr: "bash: line 1: a/a: Not a directory\n")
touch b/b # =>
touch b # =>
mv b/a a/a # => (stderr: "mv: failed to access 'a/a': Not a directory\n")
cat > b <<< s9687jOPv7yXrb7Grag54S3kI975eNlwyA2TQUY346wPC # => (stderr: "bash: line 1: b: Is a directory\n")
touch b # =>
touch a/b # => (stderr: "touch: cannot touch 'a/b': Not a directory\n")
rm -r b # =>
rm -r b # => (stderr: "rm: cannot remove 'b': No such file or directory\n")
touch b/a # => (stderr: "touch: cannot touch 'b/a': No such file or directory\n")
cat >> b/a <<< " RE15jX" # => (stderr: "bash: line 1: b/a: No such file or directory\n")
rm -r b # => (stderr: "rm: cannot remove 'b': No such file or directory\n")
cat b/a # => (stderr: "cat: b/a: No such file or directory\n")
touch a/a # => (stderr: "touch: cannot touch 'a/a': Not a directory\n")
cat >> a <<< " R8VP4LV00sxC" # =>
mv b/a a # => (stderr: "mv: cannot stat 'b/a': No such file or directory\n")
cat a/b # => (stderr: "cat: a/b: Not a directory\n")
mv b b # => (stderr: "mv: cannot stat 'b': No such file or directory\n")
mkdir b # =>
mkdir b/a # =>
mkdir b/b # =>
touch b/b # =>
cat >> a <<< " b80E6t2LG0b28cIS8wPpsp" # =>
mkdir b/b # => (stderr: "mkdir: cannot create directory ‘b/b’: File exists\n")
rm -r a/a # => (stderr: "rm: cannot remove 'a/a': Not a directory\n")
cat >> a <<< " m53I80hbg8f4hJ" # =>
cat b/b # => (stderr: "cat: b/b: Is a directory\n")
touch a/b # => (stderr: "touch: cannot touch 'a/b': Not a directory\n")
cat >> a/b <<< " U8u1NL4h84D" # => (stderr: "bash: line 1: a/b: Not a directory\n")
cat > a/b <<< 7pAYAua119R9MPmt13a9LliUDU0k3uWPXAf # => (stderr: "bash: line 1: a/b: Not a directory\n")
cat b/b # => (stderr: "cat: b/b: Is a directory\n")
mkdir a/b # => (stderr: "mkdir: cannot create directory ‘a/b’: Not a directory\n")
touch a/b # => (stderr: "touch: cannot touch 'a/b': Not a directory\n")
cat >> b <<< " q9YuxA8020u8D11d2e70XtC2S3zv" # => (stderr: "bash: line 1: b: Is a directory\n")
touch b # =>
cat b # => (stderr: "cat: b: Is a directory\n")
rm -r b/b # =>
cat b # => (stderr: "cat: b: Is a directory\n")
cat >> a/a <<< " UyteE0736YqzSrGCW384H" # => (stderr: "bash: line 1: a/a: Not a directory\n")
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
mv b/b a # => (stderr: "mv: cannot stat 'b/b': No such file or directory\n")
touch a # =>
mv a/a b # => (stderr: "mv: cannot stat 'a/a': Not a directory\n")
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
mkdir b/a # => (stderr: "mkdir: cannot create directory ‘b/a’: File exists\n")
cat b/b # => (stderr: "cat: b/b: No such file or directory\n")
touch a/a # => (stderr: "touch: cannot touch 'a/a': Not a directory\n")
mv a/b b/b # => (stderr: "mv: cannot stat 'a/b': Not a directory\n")
touch b # =>
touch b/b # =>
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
cat > b <<< 80xb3L4AN9Wg # => (stderr: "bash: line 1: b: Is a directory\n")
rm -r b/b # =>
touch b # =>
cat b # => (stderr: "cat: b: Is a directory\n")
mv a/a a # => (stderr: "mv: cannot stat 'a/a': Not a directory\n")
rm -r b # =>
touch a # =>
cat >> b <<< " NV3Y8IxMjmRE41TN1ia88jUHr0qyNrEbN1Ed88h" # =>
cat > b/a <<< 4oMEbqn2jD476l1fzkG2UQzqlr6Dk2dQg1YHU # => (stderr: "bash: line 1: b/a: Not a directory\n")
rm -r b/b # => (stderr: "rm: cannot remove 'b/b': Not a directory\n")
cat > a <<< r10D331LwyC0S3r503W1K04ds4R4H4NKV80D8flT9iQ # =>
cat b/b # => (stderr: "cat: b/b: Not a directory\n")
rm -r b/b # => (stderr: "rm: cannot remove 'b/b': Not a directory\n")
rm -r a # =>
rm -r b/a # => (stderr: "rm: cannot remove 'b/a': Not a directory\n")
cat a/a # => (stderr: "cat: a/a: No such file or directory\n")
mv a a/b # => (stderr: "mv: cannot stat 'a': No such file or directory\n")
mv b/b a # => (stderr: "mv: cannot stat 'b/b': Not a directory\n")
mv b a/a # => (stderr: "mv: cannot move 'b' to 'a/a': No such file or directory\n")
touch a/b # => (stderr: "touch: cannot touch 'a/b': No such file or directory\n")
cat >> b <<< " 96CJTbOCeI08Tas6ubTz69" # =>
rm -r b # =>
mkdir a # =>
mv b/a b/b # => (stderr: "mv: cannot stat 'b/a': No such file or directory\n")
cat > a/a <<< 2411M51ie96FM01O48 # =>
mv b/a a # => (stderr: "mv: cannot stat 'b/a': No such file or directory\n")
touch a # =>
mkdir b/a # => (stderr: "mkdir: cannot create directory ‘b/a’: No such file or directory\n")
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: File exists\n")
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
cat >> a/a <<< " rD02lf674sR7grcAP5z9qmDU1lsJ1oBVFy1khzy33j7JG" # =>
cat > b/b <<< vhgU3mm686cd6skFroOu91UL2ypN3reFP73RslzT50HkRv0T7 # => (stderr: "bash: line 1: b/b: No such file or directory\n")
touch a # =>
mkdir b/b # => (stderr: "mkdir: cannot create directory ‘b/b’: No such file or directory\n")
cat a/b # => (stderr: "cat: a/b: No such file or directory\n")
cat b/b # => (stderr: "cat: b/b: No such file or directory\n")
cat > a <<< Rm6ZWxj888hu83fRhpnfjiy7Drp81weEJDv # => (stderr: "bash: line 1: a: Is a directory\n")
cat > a/b <<< aqAT501Y36Ry1s8Q1Sn35gkGH0047 # =>
mv b/a b/b # => (stderr: "mv: cannot stat 'b/a': No such file or directory\n")
cat > b <<< 4Ei9HBUpC32gwHZ5p3G2nvmQ2T17Y8 # =>
mkdir b # => (stderr: "mkdir: cannot create directory ‘b’: File exists\n")
touch a/a # =>
cat >> a/b <<< " o4I2zPuTKYt3Qk1v350fTB89KdPghcrbEmWE33" # =>
cat b # => "4Ei9HBUpC32gwHZ5p3G2nvmQ2T17Y8"
mkdir b # => (stderr: "mkdir: cannot create directory ‘b’: File exists\n")
rm -r a # =>
mkdir b/a # => (stderr: "mkdir: cannot create directory ‘b/a’: Not a directory\n")
touch a # =>
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: Not a directory\n")
rm -r a # =>
cat > a/a <<< 9W767Qf8 # => (stderr: "bash: line 1: a/a: No such file or directory\n")
mkdir a # =>
mv b a # =>
mkdir a/b # => (stderr: "mkdir: cannot create directory ‘a/b’: File exists\n")
touch a # =>
cat >> a <<< " B37xKpW9J6w6jL0dQKWOxT2F1Eq9rg1" # => (stderr: "bash: line 1: a: Is a directory\n")
rm -r b/a # => (stderr: "rm: cannot remove 'b/a': No such file or directory\n")
cat > b <<< dGED5K5aC8Q7pPA7 # =>
cat b/a # => (stderr: "cat: b/a: Not a directory\n")
mkdir b/a # => (stderr: "mkdir: cannot create directory ‘b/a’: Not a directory\n")
mv b/b b # => (stderr: "mv: cannot stat 'b/b': Not a directory\n")
cat >> b <<< " 51Sxno7Kit0l0aN99bTkQ9rotr5" # =>
cat b/b # => (stderr: "cat: b/b: Not a directory\n")
cat > b/a <<< 9G2niiM1x9V8dVFfe # => (stderr: "bash: line 1: b/a: Not a directory\n")
cat a/a # => (stderr: "cat: a/a: No such file or directory\n")
rm -r a/a # => (stderr: "rm: cannot remove 'a/a': No such file or directory\n")
cat >> b/b <<< " l8Lee94RE7V" # => (stderr: "bash: line 1: b/b: Not a directory\n")
rm -r a/a # => (stderr: "rm: cannot remove 'a/a': No such file or directory\n")
mv a/b b/b # => (stderr: "mv: failed to access 'b/b': Not a directory\n")
mkdir b # => (stderr: "mkdir: cannot create directory ‘b’: File exists\n")
mv b b/a # => (stderr: "mv: failed to access 'b/a': Not a directory\n")
cat b/b # => (stderr: "cat: b/b: Not a directory\n")
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
touch b/a # => (stderr: "touch: cannot touch 'b/a': Not a directory\n")
cat > a/a <<< kqgM74G60cdB6H7G9o6O97ASFZh9Qf8OO2WN5xVurh3pIx8456 # =>
cat >> b/b <<< " Fz296fz9NHv0402F7T7217GH8AVh1kM36Uo933" # => (stderr: "bash: line 1: b/b: Not a directory\n")
rm -r b # =>
touch b # =>
rm -r a/b # =>
cat >> b <<< " PnMA60pkq9EjkEpcWk057xYcyjOoRZ3BVjjcDg" # =>
mkdir b # => (stderr: "mkdir: cannot create directory ‘b’: File exists\n")
cat b/b # => (stderr: "cat: b/b: Not a directory\n")
cat b/b # => (stderr: "cat: b/b: Not a directory\n")
cat >> b <<< " XxL09B1" # =>
cat a/b # => (stderr: "cat: a/b: No such file or directory\n")
touch b/b # => (stderr: "touch: cannot touch 'b/b': Not a directory\n")
rm -r a/a # =>
mv b/b b/b # => (stderr: "mv: failed to access 'b/b': Not a directory\n")
cat >> a <<< " X106nT77i4dgG1Wbq9Bd5xh4oIGpgBC1ED4Sz4U6MBk8" # => (stderr: "bash: line 1: a: Is a directory\n")
mkdir b/b # => (stderr: "mkdir: cannot create directory ‘b/b’: Not a directory\n")
touch b/b # => (stderr: "touch: cannot touch 'b/b': Not a directory\n")
mv b a/b # =>
cat > a/a <<< 3GNQc3AylfWdPHn73cP # =>
cat b/a # => (stderr: "cat: b/a: No such file or directory\n")
cat b/a # => (stderr: "cat: b/a: No such file or directory\n")
cat a/a # => "3GNQc3AylfWdPHn73cP"
rm -r b # => (stderr: "rm: cannot remove 'b': No such file or directory\n")
cat b # => (stderr: "cat: b: No such file or directory\n")
mv a b # =>
rm -r a # => (stderr: "rm: cannot remove 'a': No such file or directory\n")
mkdir a/b # => (stderr: "mkdir: cannot create directory ‘a/b’: No such file or directory\n")
rm -r a # => (stderr: "rm: cannot remove 'a': No such file or directory\n")
rm -r a/a # => (stderr: "rm: cannot remove 'a/a': No such file or directory\n")
mv b/b a/a # => (stderr: "mv: cannot move 'b/b' to 'a/a': No such file or directory\n")
rm -r b # =>
cat > b <<< 9OoIwBA # =>
cat a # => (stderr: "cat: a: No such file or directory\n")
touch a # =>
cat >> b/b <<< " x8bC4NijFFwE31Q741jQO7Q96i34wQ8LRQUPNHvi8L" # => (stderr: "bash: line 1: b/b: Not a directory\n")
touch a # =>
cat > a <<< z13ecb6Ud6J4k # =>
cat > a <<< 3l33icDW24208X49XPY8sxh9Ai5mpLOj8NYI7 # =>
touch a # =>
cat > a/b <<< 65e21Z8h7wSS87S7mM6J3nnbovYefBBB6VF # => (stderr: "bash: line 1: a/b: Not a directory\n")
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: Not a directory\n")
cat > a <<< 8fHOUcFq88175jgNj4v # =>
rm -r a # =>
cat >> a <<< " 438" # =>
mv b b/b # => (stderr: "mv: failed to access 'b/b': Not a directory\n")
cat a/a # => (stderr: "cat: a/a: Not a directory\n")
cat >> a <<< " DxW6hxAx5af0p93T7spz4MtBm" # =>
mkdir b/a # => (stderr: "mkdir: cannot create directory ‘b/a’: Not a directory\n")
mv a/a a/b # => (stderr: "mv: failed to access 'a/b': Not a directory\n")
rm -r b/a # => (stderr: "rm: cannot remove 'b/a': Not a directory\n")
cat >> b <<< " 3VH89CD10P2W9tABbs72Rm6hewvgyT9GqfbyK6VN" # =>
rm -r b/a # => (stderr: "rm: cannot remove 'b/a': Not a directory\n")
mkdir b/b # => (stderr: "mkdir: cannot create directory ‘b/b’: Not a directory\n")
rm -r a/a # => (stderr: "rm: cannot remove 'a/a': Not a directory\n")
cat a # => " 438 DxW6hxAx5af0p93T7spz4MtBm"
rm -r b # =>
cat > b/b <<< pCKai1aU6hJwBG69UcTDDIT1InUIR1AafWgjZ # => (stderr: "bash: line 1: b/b: No such file or directory\n")
rm -r a/b # => (stderr: "rm: cannot remove 'a/b': Not a directory\n")
mv b b # => (stderr: "mv: cannot stat 'b': No such file or directory\n")
touch a # =>
rm -r b/b # => (stderr: "rm: cannot remove 'b/b': No such file or directory\n")
rm -r b # => (stderr: "rm: cannot remove 'b': No such file or directory\n")
mv a a # => (stderr: "mv: 'a' and 'a' are the same file\n")
cat > b <<< 4vg8m769G7iw81ugjCt0T1N03321hJ99MtO8Ou0nO # =>
cat >> a/b <<< " pgMQ6qBQok8mJy6e6B6Zc8Xtyx9L44z4d2w8rFE272b" # => (stderr: "bash: line 1: a/b: Not a directory\n")
cat > b/a <<< 6kSfffIt3cXPsMNo55ZP4N1JH097DcueUnL639Gu # => (stderr: "bash: line 1: b/a: Not a directory\n")
mv a b/a # => (stderr: "mv: failed to access 'b/a': Not a directory\n")
touch a/b # => (stderr: "touch: cannot touch 'a/b': Not a directory\n")
mv a/b a/a # => (stderr: "mv: failed to access 'a/a': Not a directory\n")
cat > a/b <<< Z12484964OsJPuFRlPAgo212fEV # => (stderr: "bash: line 1: a/b: Not a directory\n")
rm -r a/b # => (stderr: "rm: cannot remove 'a/b': Not a directory\n")
cat >> b <<< " C8Art0RCA785t0vO46BiBi95B9gVd6Al5x" # =>
cat b/a # => (stderr: "cat: b/a: Not a directory\n")
mv b a/b # => (stderr: "mv: failed to access 'a/b': Not a directory\n")
mv a/b b/b # => (stderr: "mv: failed to access 'b/b': Not a directory\n")
mv b/b a/a # => (stderr: "mv: failed to access 'a/a': Not a directory\n")
rm -r b # =>
mkdir b # =>
touch b # =>
mv a b # =>
cat > a <<< nZ2mAU197LG468PsCK4S1lcRL8Hz107x0610uh8M5X3M # =>
cat a # => "nZ2mAU197LG468PsCK4S1lcRL8Hz107x0610uh8M5X3M"
mv b a # => (stderr: "mv: cannot overwrite non-directory 'a' with directory 'b'\n")
touch a/b # => (stderr: "touch: cannot touch 'a/b': Not a directory\n")
rm -r a/a # => (stderr: "rm: cannot remove 'a/a': Not a directory\n")
cat > b <<< s # => (stderr: "bash: line 1: b: Is a directory\n")
cat a # => "nZ2mAU197LG468PsCK4S1lcRL8Hz107x0610uh8M5X3M"
mkdir a/b # => (stderr: "mkdir: cannot create directory ‘a/b’: Not a directory\n")
mv a a # => (stderr: "mv: 'a' and 'a' are the same file\n")
mv a b # =>
mkdir a # =>
cat > a/b <<< W6e905GdCe7jHhk20z2D5XbPajK9 # =>
cat >> b <<< " d269mo37ZJI6F99" # => (stderr: "bash: line 1: b: Is a directory\n")
mkdir a/b # => (stderr: "mkdir: cannot create directory ‘a/b’: File exists\n")
cat > a/a <<< F769VOCtJ2095IAF7i2KaV72M011qs # =>
cat >> a/a <<< " 0r9pA8Z8WTV9NqQ069tmy2Sd63" # =>
cat >> b <<< " XPiXc" # => (stderr: "bash: line 1: b: Is a directory\n")
cat >> b/a <<< " LjQ3Si64u017" # =>
cat >> b/b <<< " N0Yfts3yTz9bd4vMyUa2xxvlcQ2q5bO169M6vzD" # =>
cat > a/b <<< I491mDsk39mbNF8E77V6b3aG6Ijie12YBYD52C # =>
cat >> a <<< " nBTYKU74JWVA9ZRUN87itD" # => (stderr: "bash: line 1: a: Is a directory\n")
rm -r b/b # =>
touch a/a # =>
cat a # => (stderr: "cat: a: Is a directory\n")
touch b/a # =>
cat >> a/a <<< " HdMPLh7d" # =>
cat > b <<< 0r5p7wCpu7321A2Z9UP # => (stderr: "bash: line 1: b: Is a directory\n")
cat a/b # => "I491mDsk39mbNF8E77V6b3aG6Ijie12YBYD52C"
mkdir b/b # =>
cat b/a # => "nZ2mAU197LG468PsCK4S1lcRL8Hz107x0610uh8M5X3M LjQ3Si64u017"
mv a/b b/b # =>
cat >> b/b <<< " BWTNBa3ZXI1Zfs25I75jvf2MXe96b51CNyL40491hmt6ZcxG" # => (stderr: "bash: line 1: b/b: Is a directory\n")
cat >> b <<< " v3VAcVo4i74wBltgJUa3563xN0U57" # => (stderr: "bash: line 1: b: Is a directory\n")
cat >> a <<< " 78kq5vTwsH" # => (stderr: "bash: line 1: a: Is a directory\n")
touch b # =>
mv a/a b # =>
touch b # =>
cat > a <<< XlERIJqmef9CC6P2bzIpK548c1WUlyA6Csh4H8JBbhFXryPzz # => (stderr: "bash: line 1: a: Is a directory\n")
cat >> b <<< " WLxFjW2Ckw" # => (stderr: "bash: line 1: b: Is a directory\n")
mv b a # =>
rm -r a # =>
cat > b <<< 1Y46 # =>
touch b # =>
cat >> a <<< " X3ZigNQ4SSh28W53Y2MxYd03a" # =>
mkdir b # => (stderr: "mkdir: cannot create directory ‘b’: File exists\n")
cat >> a/b <<< " J5s4436M7rV6Ob2DnliTM2j2gWhjH0XsxrO7Xwfd4jQhAW" # => (stderr: "bash: line 1: a/b: Not a directory\n")
cat >> a/a <<< " k8k895556a9CV097908LG4R2xQYu6u" # => (stderr: "bash: line 1: a/a: Not a directory\n")
mv a a/b # => (stderr: "mv: failed to access 'a/b': Not a directory\n")
mkdir b # => (stderr: "mkdir: cannot create directory ‘b’: File exists\n")
touch a/a # => (stderr: "touch: cannot touch 'a/a': Not a directory\n")
cat > a <<< BsgGMjhNUgcj28MpTv4OF21n57 # =>
touch a/a # => (stderr: "touch: cannot touch 'a/a': Not a directory\n")
rm -r a/b # => (stderr: "rm: cannot remove 'a/b': Not a directory\n")
rm -r b # =>
cat >> a <<< " Ius509Ue5tOcK555e4p5Z6z0K6hx2d8FGOUvk6h8E9" # =>
cat >> b <<< " Zd7unl6wrPJP9tQ81uLsRk8gP4VHyyop67rUKe5IH65bp1cdVS" # =>
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
cat >> a <<< " 74rW4cmhgetSVEO" # =>
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
mv b b/b # => (stderr: "mv: failed to access 'b/b': Not a directory\n")
cat a/a # => (stderr: "cat: a/a: Not a directory\n")
cat b/b # => (stderr: "cat: b/b: Not a directory\n")
cat >> a <<< " 44v8764V4cNn9Ga2t6c15cR2MM3" # =>
mv a b/a # => (stderr: "mv: failed to access 'b/a': Not a directory\n")
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
cat >> a/b <<< " 044kWk8rK1yUQ2J" # => (stderr: "bash: line 1: a/b: Not a directory\n")
touch b # =>
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
rm -r a # =>
mv b/b b # => (stderr: "mv: cannot stat 'b/b': Not a directory\n")
mkdir b # => (stderr: "mkdir: cannot create directory ‘b’: File exists\n")
mkdir b # => (stderr: "mkdir: cannot create directory ‘b’: File exists\n")
mv a a # => (stderr: "mv: cannot stat 'a': No such file or directory\n")
mkdir a # =>
cat > a/a <<< v5botbsf9Td9YxXV2tI1vi53mKVo # =>
cat >> b <<< " Hc5A0g6m8fpZGaoPcjlUIg96PN0h85PJD7hReAoi12O2" # =>
touch b # =>
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: File exists\n")
touch a/a # =>
cat b/a # => (stderr: "cat: b/a: Not a directory\n")
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
touch a # =>
touch b/b # => (stderr: "touch: cannot touch 'b/b': Not a directory\n")
cat > a <<< GoS85WR865to10tDFEUEH8pw14r94797vMXRhT8Ul4 # => (stderr: "bash: line 1: a: Is a directory\n")
cat a # => (stderr: "cat: a: Is a directory\n")
mv a a # => (stderr: "mv: cannot overwrite non-directory 'a/a' with directory 'a'\n")
mkdir b/a # => (stderr: "mkdir: cannot create directory ‘b/a’: Not a directory\n")
cat >> a/b <<< " 9wQX4" # =>
touch a # =>
cat > b <<< 4p6ZVP7YED1GM6Q460K0nZ34Gs # =>
cat >> a/a <<< " x6O3XL47DCz8rb8s8pd52uiDzFSq1l6MRZ1Wj2509eF6" # =>
cat >> b <<< " PdW3n2Aacp54091PJ9Pw6" # =>
mkdir b/a # => (stderr: "mkdir: cannot create directory ‘b/a’: Not a directory\n")
rm -r a/a # =>
mkdir b/a # => (stderr: "mkdir: cannot create directory ‘b/a’: Not a directory\n")
cat >> a <<< " phrw1bW5hSrVc3Qi6dm8q83Pdu9I0o92ln655Sof8d" # => (stderr: "bash: line 1: a: Is a directory\n")
cat b # => "4p6ZVP7YED1GM6Q460K0nZ34Gs PdW3n2Aacp54091PJ9Pw6"
cat a/b # => " 9wQX4"
cat a # => (stderr: "cat: a: Is a directory\n")
cat >> a <<< " 11F6rui0LEtMPsWH7ZLvPGD1HYNFaw5XJilHPR" # => (stderr: "bash: line 1: a: Is a directory\n")
mkdir b # => (stderr: "mkdir: cannot create directory ‘b’: File exists\n")
touch b/a # => (stderr: "touch: cannot touch 'b/a': Not a directory\n")
mv b b # => (stderr: "mv: 'b' and 'b' are the same file\n")
cat >> a <<< " MPh7h92HrPsJ2d32m8g6QSkII7LIMGZm" # => (stderr: "bash: line 1: a: Is a directory\n")
cat a/b # => " 9wQX4"
cat a/a # => (stderr: "cat: a/a: No such file or directory\n")
mkdir b/a # => (stderr: "mkdir: cannot create directory ‘b/a’: Not a directory\n")
cat >> b <<< " V7oFYWfow6w9e9aL8rt0" # =>
cat >> b <<< " Yd0lDW" # =>
cat a # => (stderr: "cat: a: Is a directory\n")
cat a/a # => (stderr: "cat: a/a: No such file or directory\n")
mkdir b/b # => (stderr: "mkdir: cannot create directory ‘b/b’: Not a directory\n")
mkdir b/b # => (stderr: "mkdir: cannot create directory ‘b/b’: Not a directory\n")
mkdir b/b # => (stderr: "mkdir: cannot create directory ‘b/b’: Not a directory\n")
touch a # =>
mv a/a a/a # => (stderr: "mv: cannot stat 'a/a': No such file or directory\n")
rm -r a # =>
touch a/a # => (stderr: "touch: cannot touch 'a/a': No such file or directory\n")
cat > b/b <<< eK78H9 # => (stderr: "bash: line 1: b/b: Not a directory\n")
touch b/a # => (stderr: "touch: cannot touch 'b/a': Not a directory\n")
cat > b/b <<< 0I532mtWCodAlQ5pZYB42Q # => (stderr: "bash: line 1: b/b: Not a directory\n")
rm -r b/a # => (stderr: "rm: cannot remove 'b/a': Not a directory\n")
cat a/a # => (stderr: "cat: a/a: No such file or directory\n")
cat >> a/b <<< " FKv4" # => (stderr: "bash: line 1: a/b: No such file or directory\n")
mv a/b b/b # => (stderr: "mv: failed to access 'b/b': Not a directory\n")
mkdir b/a # => (stderr: "mkdir: cannot create directory ‘b/a’: Not a directory\n")
cat >> a <<< " E344vN2qaCTwPv4HN3FiZDYSja4gSG3BcM8Dz" # =>
touch a/a # => (stderr: "touch: cannot touch 'a/a': Not a directory\n")
mv a b/a # => (stderr: "mv: failed to access 'b/a': Not a directory\n")
cat >> a/b <<< " YhcjNPA2MsbSI3UVId7u5t3vB6n6krjLl92viVe" # => (stderr: "bash: line 1: a/b: Not a directory\n")
touch a/b # => (stderr: "touch: cannot touch 'a/b': Not a directory\n")
touch a/b # => (stderr: "touch: cannot touch 'a/b': Not a directory\n")
cat a # => " E344vN2qaCTwPv4HN3FiZDYSja4gSG3BcM8Dz"
mv b b/b # => (stderr: "mv: failed to access 'b/b': Not a directory\n")
mkdir a/b # => (stderr: "mkdir: cannot create directory ‘a/b’: Not a directory\n")
mv b a # =>
cat > b/b <<< ljF5Y2Vje # => (stderr: "bash: line 1: b/b: No such file or directory\n")
touch a # =>
rm -r b/a # => (stderr: "rm: cannot remove 'b/a': No such file or directory\n")
cat >> b/b <<< " 29Yjp6SR770" # => (stderr: "bash: line 1: b/b: No such file or directory\n")
cat > a <<< 4Lzh9XLoptf0jOrQxgEX8 # =>
touch b/a # => (stderr: "touch: cannot touch 'b/a': No such file or directory\n")
cat > b <<< p8hNZ8irvnv # =>
mv b b/b # => (stderr: "mv: failed to access 'b/b': Not a directory\n")
mv a/b a/a # => (stderr: "mv: failed to access 'a/a': Not a directory\n")
cat > a/a <<< gWrhV2HQR3A9283T3v7JyPUI539uFrwQVa1i3Uu2wR39wq # => (stderr: "bash: line 1: a/a: Not a directory\n")
cat a/a # => (stderr: "cat: a/a: Not a directory\n")
rm -r b/b # => (stderr: "rm: cannot remove 'b/b': Not a directory\n")
mv a b # =>
mv a b/b # => (stderr: "mv: failed to access 'b/b': Not a directory\n")
cat >> b <<< " QEI5I908QIUKu4mGSxg6rdTVI" # =>
mv b b/b # => (stderr: "mv: failed to access 'b/b': Not a directory\n")
cat a # => (stderr: "cat: a: No such file or directory\n")
mkdir a # =>
touch a # =>
cat a/a # => (stderr: "cat: a/a: No such file or directory\n")
mv a/a b/b # => (stderr: "mv: failed to access 'b/b': Not a directory\n")
touch a # =>
mv b/a b # => (stderr: "mv: cannot stat 'b/a': Not a directory\n")
mv b b/a # => (stderr: "mv: failed to access 'b/a': Not a directory\n")
rm -r a # =>
mv a/b a/b # => (stderr: "mv: cannot stat 'a/b': No such file or directory\n")
rm -r a/b # => (stderr: "rm: cannot remove 'a/b': No such file or directory\n")
rm -r a/b # => (stderr: "rm: cannot remove 'a/b': No such file or directory\n")
cat a # => (stderr: "cat: a: No such file or directory\n")
touch a/b # => (stderr: "touch: cannot touch 'a/b': No such file or directory\n")
mkdir a # =>
mkdir a # => (stderr: "mkdir: cannot create directory ‘a’: File exists\n")
cat > a <<< rv8jDj5Y1b96QS4sia764OhvUeA # => (stderr: "bash: line 1: a: Is a directory\n")
cat b/b # => (stderr: "cat: b/b: Not a directory\n")
cat b/a # => (stderr: "cat: b/a: Not a directory\n")
cat >> b/b <<< " OeW8223l7w55mm7BgK0a002Wjy72MOe5nQR9EfFZb37y" # => (stderr: "bash: line 1: b/b: Not a directory\n")
rm -r a/b # => (stderr: "rm: cannot remove 'a/b': No such file or directory\n")
mv b a/b # =>
cat > b/b <<< 8B4m3EX1a # => (stderr: "bash: line 1: b/b: No such file or directory\n")
cat >> b/b <<< " UcGP4xM314K78Uw62l1IN5A1bL5vmG89quZE33r8lC4upC" # => (stderr: "bash: line 1: b/b: No such file or directory\n")
mv b a # => (stderr: "mv: cannot stat 'b': No such file or directory\n")
mv b a/a # => (stderr: "mv: cannot stat 'b': No such file or directory\n")
cat >> b <<< " yxmVFopgCoj7b4v71gvVuc" # =>
touch b # =>
cat b/b # => (stderr: "cat: b/b: Not a directory\n")
cat >> b/b <<< " I53oJyIE8y2pkTCEknceQi72dN9kQj4Vs3P1BenFj5ipC5g" # => (stderr: "bash: line 1: b/b: Not a directory\n")
touch a # =>
touch b # =>
cat a # => (stderr: "cat: a: Is a directory\n")
rm -r b # =>
touch b # =>
cat a # => (stderr: "cat: a: Is a directory\n")
cat b/a # => (stderr: "cat: b/a: Not a directory\n")
cat b # =>
cat > b <<< OzeKD9v0NV3yS2Jkjuv2t536sLufvY77bLsiWibNMUW1Nb2 # =>
cat b/b # => (stderr: "cat: b/b: Not a directory\n")
cat a # => (stderr: "cat: a: Is a directory\n")
cat >> a <<< " 9kNtLi3WAXH59RyvVpeot6pNhZdI4y24b74h53iKmsG3OIV" # => (stderr: "bash: line 1: a: Is a directory\n")
cat >> a/a <<< " lBnldy85M1V6M68GxbPd4eFFF80jnA5l4Oc8dBa" # =>
touch b/a # => (stderr: "touch: cannot touch 'b/a': Not a directory\n")
rm -r b # =>
mkdir b # =>
touch a/a # =>
rm -r b # =>
mkdir a/a # => (stderr: "mkdir: cannot create directory ‘a/a’: File exists\n")
mkdir b/a # => (stderr: "mkdir: cannot create directory ‘b/a’: No such file or directory\n")
touch b/a # => (stderr: "touch: cannot touch 'b/a': No such file or directory\n")
touch a/b # =>
mkdir b # =>
cat > b/b <<< 0n7ur48X3756z41cq67Q9f9fdqlX3S03N # =>
mv a/b b # =>
touch b # =>
cat b # => (stderr: "cat: b: Is a directory\n")
cat a # => (stderr: "cat: a: Is a directory\n")
mkdir a/b # =>
cat >> b <<< " mAT0813WnNNiEoJjGN9w17h9QFqkCrOo49RNz0Z" # => (stderr: "bash: line 1: b: Is a directory\n")
mv b a # => (stderr: "mv: cannot move 'b' to 'a/b': Directory not empty\n")
At this point, the root was theoretically
{:type :dir,
:files
{"a"
{:type :dir,
:files
{"a"
{:type :file, :data " lBnldy85M1V6M68GxbPd4eFFF80jnA5l4Oc8dBa"},
"b" {:type :dir, :files {}}}},
"b"
{:type :dir,
:files
{"b"
{:type :file,
:data "4Lzh9XLoptf0jOrQxgEX8 QEI5I908QIUKu4mGSxg6rdTVI"}}}}}
And we expected to execute
{:f :mv,
:value [["b"] ["a"]],
:time 8895224442,
:process 0,
:type :ok,
:index 1449}
But with lazyfs we actually executed
{:f :mv,
:value [["b"] ["a"]],
:time 8895224442,
:process 0,
:type :info,
:exception
{:via
[{:type clojure.lang.ExceptionInfo,
:message
"throw+: {:type :jepsen.control/nonzero-exit, :cmd \"cd /tmp/jepsen/fs-test; mv b a\", :out \"\", :err \"mv: cannot move 'b' to 'a/b': Directory not empty\\n\", :exit 1, :host \"n1\", :action {:cmd \"cd /tmp/jepsen/fs-test; mv b a\"}}",
:data
{:type :jepsen.control/nonzero-exit,
:cmd "cd /tmp/jepsen/fs-test; mv b a",
:out "",
:err "mv: cannot move 'b' to 'a/b': Directory not empty\n",
:exit 1,
:host "n1",
:action {:cmd "cd /tmp/jepsen/fs-test; mv b a"}},
:at [slingshot.support$stack_trace invoke "support.clj" 201]}
{:type clojure.lang.ExceptionInfo,
:message
"Command exited with non-zero status 1 on node n1:\ncd /tmp/jepsen/fs-test; mv b a\n\nSTDIN:\nnull\n\nSTDOUT:\n\n\nSTDERR:\nmv: cannot move 'b' to 'a/b': Directory not empty\n",
:data
{:type :jepsen.control/nonzero-exit,
:cmd "cd /tmp/jepsen/fs-test; mv b a",
:out "",
:err "mv: cannot move 'b' to 'a/b': Directory not empty\n",
:exit 1,
:host "n1",
:action {:cmd "cd /tmp/jepsen/fs-test; mv b a"}},
:at [slingshot.support$stack_trace invoke "support.clj" 201]}],
:trace
[[slingshot.support$stack_trace invoke "support.clj" 201]
[jepsen.control.core$throw_on_nonzero_exit
invokeStatic
"core.clj"
160]
[jepsen.control.core$throw_on_nonzero_exit invoke "core.clj" 155]
[jepsen.control$exec_STAR_ invokeStatic "control.clj" 145]
[jepsen.control$exec_STAR_ doInvoke "control.clj" 142]
[clojure.lang.RestFn applyTo "RestFn.java" 137]
[clojure.core$apply invokeStatic "core.clj" 667]
[clojure.core$apply invoke "core.clj" 662]
[jepsen.control$exec invokeStatic "control.clj" 161]
[jepsen.control$exec doInvoke "control.clj" 155]
[clojure.lang.RestFn invoke "RestFn.java" 436]
[jepsen.lazyfs_test$fs_op_BANG_ invokeStatic "lazyfs_test.clj" 483]
[jepsen.lazyfs_test$fs_op_BANG_ invoke "lazyfs_test.clj" 441]
[jepsen.lazyfs_test.FSClient$fn__8536$fn__8537
invoke
"lazyfs_test.clj"
564]
[jepsen.control$on_nodes$fn__6824 invoke "control.clj" 314]
[clojure.lang.AFn applyToHelper "AFn.java" 154]
[clojure.lang.AFn applyTo "AFn.java" 144]
[clojure.core$apply invokeStatic "core.clj" 667]
[clojure.core$with_bindings_STAR_ invokeStatic "core.clj" 1990]
[clojure.core$with_bindings_STAR_ doInvoke "core.clj" 1990]
[clojure.lang.RestFn applyTo "RestFn.java" 142]
[clojure.core$apply invokeStatic "core.clj" 671]
[clojure.core$bound_fn_STAR_$fn__5818 doInvoke "core.clj" 2020]
[clojure.lang.RestFn invoke "RestFn.java" 408]
[dom_top.core$real_pmap_helper$build_thread__406$fn__407
invoke
"core.clj"
152]
[clojure.lang.AFn applyToHelper "AFn.java" 152]
[clojure.lang.AFn applyTo "AFn.java" 144]
[clojure.core$apply invokeStatic "core.clj" 667]
[clojure.core$with_bindings_STAR_ invokeStatic "core.clj" 1990]
[clojure.core$with_bindings_STAR_ doInvoke "core.clj" 1990]
[clojure.lang.RestFn invoke "RestFn.java" 425]
[clojure.lang.AFn applyToHelper "AFn.java" 156]
[clojure.lang.RestFn applyTo "RestFn.java" 132]
[clojure.core$apply invokeStatic "core.clj" 671]
[clojure.core$bound_fn_STAR_$fn__5818 doInvoke "core.clj" 2020]
[clojure.lang.RestFn invoke "RestFn.java" 397]
[clojure.lang.AFn run "AFn.java" 22]
[java.lang.Thread run "Thread.java" 833]],
:cause
"Command exited with non-zero status 1 on node n1:\ncd /tmp/jepsen/fs-test; mv b a\n\nSTDIN:\nnull\n\nSTDOUT:\n\n\nSTDERR:\nmv: cannot move 'b' to 'a/b': Directory not empty\n",
:data
{:type :jepsen.control/nonzero-exit,
:cmd "cd /tmp/jepsen/fs-test; mv b a",
:out "",
:err "mv: cannot move 'b' to 'a/b': Directory not empty\n",
:exit 1,
:host "n1",
:action {:cmd "cd /tmp/jepsen/fs-test; mv b a"}}},
:error
"indeterminate: Command exited with non-zero status 1 on node n1:\ncd /tmp/jepsen/fs-test; mv b a\n\nSTDIN:\nnull\n\nSTDOUT:\n\n\nSTDERR:\nmv: cannot move 'b' to 'a/b': Directory not empty\n",
:index 1449}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment