Skip to content

Add a test illustrating nested runtest issue #4776#4777

Closed
voodoos wants to merge 1 commit intoocaml:mainfrom
voodoos:issue4776
Closed

Add a test illustrating nested runtest issue #4776#4777
voodoos wants to merge 1 commit intoocaml:mainfrom
voodoos:issue4776

Conversation

@voodoos
Copy link
Copy Markdown
Collaborator

@voodoos voodoos commented Jun 25, 2021

This test illustrates the issue described in #4776

Signed-off-by: Ulysse Gérard <thevoodoos@gmail.com>
@voodoos
Copy link
Copy Markdown
Collaborator Author

voodoos commented Jun 25, 2021

Looks like the macos CI is in an infinite loop. So we should not merge this.

Edit: it did finish, with correct test result.. after 4h20

@emillon
Copy link
Copy Markdown
Collaborator

emillon commented Jun 29, 2021

passing --diff-command diff prints interesting art:

Full diff
+  File "run.t", line 1, characters 0-0:
+            sh (internal) (exit 1)
+  (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  21a22,224
+  >   File "run.t", line 1, characters 0-0:
+  >             sh (internal) (exit 1)
+  >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   21a22,219
+  >   >   File "run.t", line 1, characters 0-0:
+  >   >             sh (internal) (exit 1)
+  >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   21a22,214
+  >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >             sh (internal) (exit 1)
+  >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   21a22,209
+  >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   21a22,204
+  >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   21a22,199
+  >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   21a22,194
+  >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   21a22,189
+  >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   21a22,184
+  >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   21a22,179
+  >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   21a22,174
+  >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   21a22,169
+  >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   21a22,164
+  >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,159
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,154
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,149
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,144
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,139
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,134
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,129
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,124
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,119
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,114
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,109
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,104
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,99
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,94
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,89
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,84
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,79
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,74
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,69
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,64
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,59
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,54
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,49
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,44
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,39
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,34
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,29
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   File "run.t", line 1, characters 0-0:
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >             sh (internal) (exit 1)
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   (cd _build/.sandbox/1196b90bdcf23da30970156a4223f198/default && /usr/bin/sh -c 'diff run.t run.t.corrected')
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   21a22,24
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   Error: execve: /usr/bin/sh: Argument list too long
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   -> required by alias runtest
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   >   [1]
+  >   >   >   >   >   >   [1]
+  >   >   >   >   >   [1]
+  >   >   >   >   [1]
+  >   >   >   [1]
+  >   >   [1]
+  >   [1]
+  [1]

With the interesting bit here:

>   Error: execve: /usr/bin/sh: Argument list too long
>   -> required by alias runtest
>   [1]

I'm trying to bisect to see when this changed.

@emillon
Copy link
Copy Markdown
Collaborator

emillon commented Jun 29, 2021

I bisected that to 285a203 / #4466.

cc @jeremiedimino

@ghost
Copy link
Copy Markdown

ghost commented Jun 29, 2021

The link to #4466 is a bit mysterious to me, however I know understand the link with (lang dune 3.0):

  • before 3.0 the default is (cram disabled)
  • after 3.0 the default is (cram enabled)

this means that if you write (lang dune 3.0) in a test and call dune runtest, the inner dune will try to run any .t file it finds, including the current one. This explains the recursive behaviour. To confirm this, one can add (cram enable) to a 2.9 test and observe the same recursive behaviour.

We need a good story for this before 3.0.

@emillon
Copy link
Copy Markdown
Collaborator

emillon commented Jun 29, 2021

In concrete terms, the execve failure is dune recursing down the sandbox (strace -f -s 5000 -e execve -e status=failed):

639716 execve("/usr/bin/sh", ["/usr/bin/sh", "/tmp/build52f935.dune/buildc1d1e1.dune/buildd3f2f0.dune/build3c6a9d.dune/build04a369.dune/build5ada89.dune/builde62f43.dune/buildf24c67.dune/buildd3be5e.dune/buildeb548d.dune/builda379ae.dune/build8c4e0c.dune/build72985a.dune/build521c7d.dune/build6ec8a1.dune/buildaa404d.dune/build9883bb.dune/buildfb9151.dune/buildad9299.dune/buildaaf58e.dune/buildc8e0b2.dune/build80e736.dune/build5f6fea.dune/build111b6d.dune/build7a7c24.dune/build280133.dune/build2f25a4.dune/buildd781ec.dune/builda21e6b.dune/build110d0f.dune/buildeab1c9.dune/build0f6398.dune/buildc9d900.dune/build595719.dune/builda92619.dune/build3c3dad.dune/build3771cc.dune/build88404a.dune/build1a160f.dune/buildf8d398.dune/buildd37281.dune/buildd6c47a.dune/dune.cram.81078erun.t/main.sh"], 0x7f3907385010 /* 68 vars */) = -1 E2BIG (Argument list too long)

@ghost
Copy link
Copy Markdown

ghost commented Jun 29, 2021

/cc @rgrinberg

@emillon
Copy link
Copy Markdown
Collaborator

emillon commented Jun 29, 2021

Also confirming that adding (cram disable) in the test works around this bug.

@ghost
Copy link
Copy Markdown

ghost commented Jun 30, 2021

One idea to fix this would be to have Dune delete all the .t files in the test directory before executing the generated script. @rgrinberg WDYT?

@rgrinberg rgrinberg self-assigned this Oct 14, 2021
@rgrinberg rgrinberg added the cram Related to the cram test execution in Dune label Oct 14, 2021
@rgrinberg rgrinberg added this to the 3.0 milestone Oct 14, 2021
@rgrinberg
Copy link
Copy Markdown
Member

One idea to fix this would be to have Dune delete all the .t files in the test directory before executing the generated script.

Sounds fine to me. Technically this is a break change, but I think we should do it for 3.0

@rgrinberg
Copy link
Copy Markdown
Member

rgrinberg commented Nov 4, 2021

Fixed by #5042

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cram Related to the cram test execution in Dune

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants