| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
|
Just added a second commit to test it properly in CI. Once landed, we'll add the temp-dir path by environment so its backwards compatible. |
Sorry, something went wrong.
|
Hm, I'll have another look at the realpath tests; must've messed that up. |
Sorry, something went wrong.
|
Rebased and new CI: https://ci.nodejs.org/job/node-test-commit/1573/ I've fixed the failing freebsd test by setting $HOME to /usr/home/iojs (/home is hardlinked to /usr/home on freebsd making path comparisons based on $HOME fail) |
Sorry, something went wrong.
|
The reason arm fails is because the fanned tests aren't called through make test-ci (and therefore doesn't change the temporary directory) |
Sorry, something went wrong.
|
YES, those CI times are looking pretty good. What can we do to fix up the failures here? |
Sorry, something went wrong.
|
A fix (or, depending on your perspective, a workaround) for the arm-fanned failures is already in. Woot. I'm speculating but the one error on fedora may be because 50 milliseconds is just not enough time if the host is very busy with other stuff (like, say, running some other tests in parallel, one or two of which might be resource-intensive). I'm going to refactor that test to get rid of the setTimeout() so that won't be an issue, hopefully. |
Sorry, something went wrong.
Refactor test to remove unnecessary booleans and one unnecesary timer. Instead, throw Error objects where appropriate and rely on common.mustCall(). The timer seemed to be the source of an issue when parallelizing tests. Ref: nodejs#4476 (comment)
|
I just backed out the path commit since I've added it to jenkins as well as rebased to get a few more fixes. New run shortly. |
Sorry, something went wrong.
|
https://ci.nodejs.org/job/node-test-commit/1585/ Edit:
|
Sorry, something went wrong.
|
Looking at the SmartOS failure for test-child-process-fork-net2.js, I wonder if that test really belongs in sequential since it seems to be failing on a sort of timing/performance benchmark that may be due to other tests consuming resources? |
Sorry, something went wrong.
|
(Or, alternatively, leave it in parallel but get rid of the time check. I'm not sure performance checks should be mixed in with functionality checks like that in tests.) |
Sorry, something went wrong.
|
@Trott: I'd be happy to get rid of a lot of time checks in the suite. I wonder if its a remnant of something else when node was slower. |
Sorry, something went wrong.
Refactor test to remove unnecessary booleans and one unnecesary timer. Instead, throw Error objects where appropriate and rely on common.mustCall(). The timer seemed to be the source of an issue when parallelizing tests. Ref: nodejs#4476 (comment)
|
OK, I'll get rid of the time checks and send over a PR in a bit... |
Sorry, something went wrong.
test-child-process-fork-net2.js checks that things happen within certain time constraints, thus doubling as a benchmark test in addition to a functionality test. This change removes the time check, as it was causing the test to fail on SmartOS and Windows (and possibly elsewhere) when the tests were run in parallel on CI. There is no guarantee that other tests won't consume enough resources to slow this test down, so don't check the time constraints (beyond the generous timeout that the test is given by test.py in the first place, of course). If we want to do benchmark/performance tests, we should keep them separate from pure functionality tests. The time check may have been a remnant of the distant past when Node.js was much slower. It predates io.js Ref: nodejs#4476
|
test-child-process-fork-net2.js fix (hopefully): #4494 |
Sorry, something went wrong.
|
Because we more than one way compiling/testing from jenkins at the moment. I'd rather make the way we call compiling/testing more consistent down the line and move it back then. Haven't decided but thats at least my rationale. Need to look through all jobs.. |
Sorry, something went wrong.
|
Also, the environment variables JOBS and NODE_TMP_DIR should be set in all init scripts at the runners to make sure we don't run into failures as a result of not setting them (pathmax, to high parallelism, etc) |
Sorry, something went wrong.
|
Should we close this PR and you can open another one to parallelize the builds a different way (especially if those changes need to happen over in nodejs/build instead of this repo or something like that)? Or will you add on to this PR to get it to be the way you want? |
Sorry, something went wrong.
|
Added the in progress label to this PR which hopefully is the equivalent of "hey, don't land this because it's not fully baked yet". |
Sorry, something went wrong.
Prior to this commit, the test was flaky because it was executing the majority of its logic in a function called from the client and multiple events on the server. This commit simplifies the test by separating the server's connection and listening events, and isolating the client logic. Refs: #4476 Refs: #4644 PR-URL: #4650 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
Prior to this commit, the test was flaky because it was executing the majority of its logic in a function called from the client and multiple events on the server. This commit simplifies the test by separating the server's connection and listening events, and isolating the client logic. Refs: #4476 Refs: #4644 PR-URL: #4650 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
To enable greater parallelization of tests on CI, move resource intensive tests out of parallel and into sequential. Ref: nodejs#4476 PR-URL: nodejs#4615 Reviewed-By: Johan Bergström <bugs@bergstroem.nu> Reviewed-By: James M Snell <jasnell@gmail.com>
A 50ms timeout results in a race condition. Instead, enforce expected order through callbacks. This has the side effect of speeding up the test in most situations. Ref: nodejs#4476 PR-URL: nodejs#4637 Reviewed-By: Johan Bergström <bugs@bergstroem.nu> Reviewed-By: James M Snell <jasnell@gmail.com>
Prior to this commit, the test was flaky because it was executing the majority of its logic in a function called from the client and multiple events on the server. This commit simplifies the test by separating the server's connection and listening events, and isolating the client logic. Refs: nodejs#4476 Refs: nodejs#4644 PR-URL: nodejs#4650 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
To enable greater parallelization of tests on CI, move resource intensive tests out of parallel and into sequential. Ref: nodejs#4476 PR-URL: nodejs#4615 Reviewed-By: Johan Bergström <bugs@bergstroem.nu> Reviewed-By: James M Snell <jasnell@gmail.com>
A 50ms timeout results in a race condition. Instead, enforce expected order through callbacks. This has the side effect of speeding up the test in most situations. Ref: nodejs#4476 PR-URL: nodejs#4637 Reviewed-By: Johan Bergström <bugs@bergstroem.nu> Reviewed-By: James M Snell <jasnell@gmail.com>
Prior to this commit, the test was flaky because it was executing the majority of its logic in a function called from the client and multiple events on the server. This commit simplifies the test by separating the server's connection and listening events, and isolating the client logic. Refs: nodejs#4476 Refs: nodejs#4644 PR-URL: nodejs#4650 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
Refactor test to remove unnecessary booleans and one unnecesary timer. Instead, throw Error objects where appropriate and rely on common.mustCall(). The timer seemed to be the source of an issue when parallelizing tests. Ref: nodejs#4476 (comment) PR-URL: nodejs#4490 Reviewed-By: Johan Bergström <bugs@bergstroem.nu> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
test-child-process-fork-net2.js checks that things happen within certain time constraints, thus doubling as a benchmark test in addition to a functionality test. This change removes the time check, as it was causing the test to fail on SmartOS and Windows (and possibly elsewhere) when the tests were run in parallel on CI. There is no guarantee that other tests won't consume enough resources to slow this test down, so don't check the time constraints (beyond the generous timeout that the test is given by test.py in the first place, of course). If we want to do benchmark/performance tests, we should keep them separate from pure functionality tests. The time check may have been a remnant of the distant past when Node.js was much slower. It predates io.js Ref: nodejs#4476 PR-URL: nodejs#4494 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Johan Bergström <bugs@bergstroem.nu>
To enable greater parallelization of tests on CI, move resource intensive tests out of parallel and into sequential. Ref: nodejs#4476 PR-URL: nodejs#4615 Reviewed-By: Johan Bergström <bugs@bergstroem.nu> Reviewed-By: James M Snell <jasnell@gmail.com>
A 50ms timeout results in a race condition. Instead, enforce expected order through callbacks. This has the side effect of speeding up the test in most situations. Ref: nodejs#4476 PR-URL: nodejs#4637 Reviewed-By: Johan Bergström <bugs@bergstroem.nu> Reviewed-By: James M Snell <jasnell@gmail.com>
Prior to this commit, the test was flaky because it was executing the majority of its logic in a function called from the client and multiple events on the server. This commit simplifies the test by separating the server's connection and listening events, and isolating the client logic. Refs: nodejs#4476 Refs: nodejs#4644 PR-URL: nodejs#4650 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
|
Any updates on this? |
Sorry, something went wrong.
|
@jasnell I'll close this. We've done enough work in the src repo. What's left is implementing environment variables across the buildfarm which we'll be doing over at nodejs/build#291. |
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
Run tests in parallel by default in continuous integration.