Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

V8: Hang/failure when running v8 tests from Node tree #5263

Closed
mhdawson opened this issue Feb 16, 2016 · 9 comments
Closed

V8: Hang/failure when running v8 tests from Node tree #5263

mhdawson opened this issue Feb 16, 2016 · 9 comments
Labels
test Issues and PRs related to the tests. v8 engine Issues and PRs related to the V8 dependency.

Comments

@mhdawson
Copy link
Member

https://ci.nodejs.org/job/node-test-commit-v8-linux-mdawson/nodes=iojs-softlayer-benchmark/14/

=== mjsunit/d8-os ===
ls: cannot access /tmp/d8-os-test-directory-848725514: No such file or directory
ls: cannot access /tmp/d8-os-test-directory-848725514/dir/bar: No such file or directory
Command: /home/iojs/workspace/node-test-commit-v8-linux-mdawson/nodes/iojs-softlayer-benchmark/deps/v8/out/x64.release/d8 --test --random-seed=1220343637 --nohard-abort --nodead-code-elimination --nofold-constants /home/iojs/workspace/node-test-commit-v8-linux-mdawson/nodes/iojs-softlayer-benchmark/deps/v8/test/mjsunit/mjsunit.js /home/iojs/workspace/node-test-commit-v8-linux-mdawson/nodes/iojs-softlayer-benchmark/deps/v8/test/mjsunit/d8-os.js
--- TIMEOUT ---

make: *** [test-v8] Error 1
Build step 'Execute shell' marked build as failure
Recording test results
Notifying upstream projects of job completion
Finished: FAILURE

This test seems to pass on machines with a smaller amount of memory (4G and 2G) so its likely a test issue either related to memory or possibly related to ubuntu

@mhdawson mhdawson added v8 engine Issues and PRs related to the V8 dependency. test Issues and PRs related to the tests. labels Feb 16, 2016
@john-yan
Copy link

test passes on a 16GB Ubuntu VM running on a 32GB host.

@mhdawson
Copy link
Member Author

The tests only seems to be doing file related os calls so really does not look like memory should be related.

Running the test by itself completes quitckly on my machine

mhdawson@duv-aurora:/pulls/land/testarg2/node$ sh runtest.sh
ls: cannot access /tmp/d8-os-test-directory-799558713: No such file or directory
ls: cannot access /tmp/d8-os-test-directory-799558713/dir/bar: No such file or directory
mhdawson@duv-aurora:
/pulls/land/testarg2/node$ cat runtest.sh
ROOT=/home/mhdawson/pulls/land/testarg2/node
$ROOT/deps/v8/out/x64.release/d8 --test --random-seed=-1736515209 --nohard-abort --nodead-code-elimination --nofold-constants $ROOT/deps/v8/test/mjsunit/mjsunit.js $ROOT/deps/v8/test/mjsunit/d8-os.js

@mhdawson
Copy link
Member Author

Runs quickly on community benchmark machine which is one of the ones it was hanging on.

@mhdawson
Copy link
Member Author

Full test suite runs/passes on same benchmark machine when run by hand !

@mhdawson
Copy link
Member Author

mhdawson commented Mar 1, 2016

Its these two lines that are causing the hang
if (have_sleep) {
assertThrows("os.system('sleep', ['2000'], 20);", "sleep 1");

  // Check we time out with total time.
  assertThrows("os.system('sleep', ['2000'], -1, 20);", "sleep 2");

Still don't know why these pass when run from the shell on the machine but hang when run from jenkins. It is that difference though as I can run the exact same test locally and from the jenkins script console and it only hangs from the script console

@mhdawson
Copy link
Member Author

mhdawson commented Mar 1, 2016

See this in the v8 code (src/d8-posix.cc) so maybe something jenkins is doing is messing up signals ?

if (accumulator->IsUndefined()) {
kill(pid, SIGINT); // On timeout, kill the subprocess.
args.GetReturnValue().Set(accumulator);
return;
}

@mhdawson
Copy link
Member Author

mhdawson commented Mar 1, 2016

Added some printfs and it does look like the kill is getting sent in both cases, its just that when run under jenkins the child which is sleeping does not seem to terminate when it gets the signal

@mhdawson mhdawson changed the title V8: Hang/failure when running v8 tests from Node tree on machines with 8G V8: Hang/failure when running v8 tests from Node tree Mar 1, 2016
@mhdawson
Copy link
Member Author

mhdawson commented Mar 1, 2016

Since this looks like a jenkins/environment issue as opposed to a functional issue and the tests run ok when run from the command line I'm going to remove the specific test as part of the configuration of the jenkins job.

@mhdawson
Copy link
Member Author

Closing this as I don't think investigating further adds value. Please re-open if anybody disagrees.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
test Issues and PRs related to the tests. v8 engine Issues and PRs related to the V8 dependency.
Projects
None yet
Development

No branches or pull requests

2 participants