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

test: skip test that cannot pass under --node-builtin-modules-path #42834

Merged

Conversation

GeoffreyBooth
Copy link
Member

Fixes #40879.

The test test-worker-init-failure.js cannot pass when Node is built using --node-builtin-modules-path, because the test intentionally lowers the limit of the number of files that can be concurrently opened and using builtin modules blows past this limit. See error in #40879 (comment).

The test is already skipped in Windows environments. This PR makes it also get skipped when Node is built using --node-builtin-modules-path. This makes development easier, as now I can develop using --node-builtin-modules-path and run the tests and expect all of them to pass (unless my new code broke something). cc @HarshithaKP @addaleax @Trott

@GeoffreyBooth GeoffreyBooth added test Issues and PRs related to the tests. flaky-test Issues and PRs related to the tests with unstable failures on the CI. worker Issues and PRs related to Worker support. labels Apr 23, 2022
@nodejs-github-bot nodejs-github-bot added the needs-ci PRs that need a full CI run. label Apr 23, 2022
@nodejs-github-bot
Copy link
Collaborator

@Trott
Copy link
Member

Trott commented Apr 23, 2022

@nodejs/testing

Copy link
Contributor

@aduh95 aduh95 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This test has also been failing for me locally, and I think skipping it make sense. Could it be a macOS specific limitation? I don't remember seeing this error when I was compiling on a Linux machine. If that's the case, we may want to add os.platform()==='darwin' in the condition.

@nodejs-github-bot
Copy link
Collaborator

@GeoffreyBooth GeoffreyBooth added author ready PRs that have at least one approval, no pending requests for changes, and a CI started. and removed needs-ci PRs that need a full CI run. labels Apr 24, 2022
@GeoffreyBooth
Copy link
Member Author

Could it be a macOS specific limitation? I don’t remember seeing this error when I was compiling on a Linux machine.

It fails in Linux too. I triggered a CI build for master with --node-builtin-modules-path: https://ci.nodejs.org/job/node-test-commit-linux/45540/nodes=alpine-last-latest-x64/consoleFull

19:00:12 python3 ./configure --verbose --node-builtin-modules-path /home/iojs/build/workspace/node-test-commit-linux/
19:00:13 Node.js configure: Found Python 3.8.2…
19:00:13 Detected C++ compiler (CXX=ccache g++) version: 9.3.0
19:00:13 Detected C compiler (CC=ccache gcc) version: 9.3.0
19:00:13 Warning! Loading builtin modules from disk is for development
…
19:09:31 not ok 2950 parallel/test-worker-init-failure
19:09:31   ---
19:09:31   duration_ms: 1.23
19:09:31   severity: fail
19:09:31   exitcode: 1
19:09:31   stack: |-
19:09:31     child stdout: 
19:09:31     
19:09:31     child stderr: /home/iojs/build/workspace/node-test-commit-linux/out/Release/node[4537]: ../src/node_worker.cc:332:void node::worker::Worker::Run(): Assertion `(env_) != nullptr' failed.
19:09:31     
19:09:31     
19:09:31     node:assert:123
19:09:31       throw new AssertionError(obj);
19:09:31       ^
19:09:31     
19:09:31     AssertionError [ERR_ASSERTION]: Expected values to be strictly equal:
19:09:31     
19:09:31     null !== 0
19:09:31     
19:09:31         at ChildProcess.<anonymous> (/home/iojs/build/workspace/node-test-commit-linux/test/parallel/test-worker-init-failure.js:65:12)
19:09:31         at ChildProcess.<anonymous> (/home/iojs/build/workspace/node-test-commit-linux/test/common/index.js:438:15)
19:09:31         at ChildProcess.emit (node:events:527:28)
19:09:31         at ChildProcess._handle.onexit (node:internal/child_process:291:12) {
19:09:31       generatedMessage: true,
19:09:31       code: 'ERR_ASSERTION',
19:09:31       actual: null,
19:09:31       expected: 0,
19:09:31       operator: 'strictEqual'
19:09:31     }
19:09:31     
19:09:31     Node.js v19.0.0-pre

That’s the only failing test.

@GeoffreyBooth GeoffreyBooth added the commit-queue Add this label to land a pull request using GitHub Actions. label Apr 25, 2022
@nodejs-github-bot nodejs-github-bot removed the commit-queue Add this label to land a pull request using GitHub Actions. label Apr 25, 2022
@nodejs-github-bot
Copy link
Collaborator

Commit Queue failed
- Loading data for nodejs/node/pull/42834
✔  Done loading data for nodejs/node/pull/42834
----------------------------------- PR info ------------------------------------
Title      test: skip test that cannot pass under --node-builtin-modules-path (#42834)
   ⚠  Could not retrieve the email or name of the PR author's from user's GitHub profile!
Branch     GeoffreyBooth:builtin-modules-path-test -> nodejs:master
Labels     test, flaky-test, author ready, worker
Commits    1
 - test: skip test that cannot pass under --node-builtin-modules-path
Committers 1
 - Geoffrey Booth 
PR-URL: https://github.com/nodejs/node/pull/42834
Reviewed-By: Antoine du Hamel 
------------------------------ Generated metadata ------------------------------
PR-URL: https://github.com/nodejs/node/pull/42834
Reviewed-By: Antoine du Hamel 
--------------------------------------------------------------------------------
   ℹ  This PR was created on Sat, 23 Apr 2022 04:42:56 GMT
   ✔  Approvals: 1
   ✔  - Antoine du Hamel (@aduh95) (TSC): https://github.com/nodejs/node/pull/42834#pullrequestreview-950951284
   ✖  This PR needs to wait 107 more hours to land (or 0 hours if there is one more approval)
   ✔  Last GitHub CI successful
   ℹ  Last Full PR CI on 2022-04-24T00:45:56Z: https://ci.nodejs.org/job/node-test-pull-request/43657/
- Querying data for job/node-test-pull-request/43657/
   ✔  Last Jenkins CI successful
--------------------------------------------------------------------------------
   ✔  Aborted `git node land` session in /home/runner/work/node/node/.ncu
https://github.com/nodejs/node/actions/runs/2221820838

@nodejs-github-bot nodejs-github-bot added the commit-queue-failed An error occurred while landing this pull request using GitHub Actions. label Apr 25, 2022
@GeoffreyBooth GeoffreyBooth added commit-queue Add this label to land a pull request using GitHub Actions. and removed commit-queue-failed An error occurred while landing this pull request using GitHub Actions. labels Apr 25, 2022
@GeoffreyBooth
Copy link
Member Author

✖ This PR needs to wait 107 more hours to land (or 0 hours if there is one more approval)

The collaborator guide section “Waiting for approvals” says “Before landing pull requests, allow 48 hours for input from other collaborators.” Searching elsewhere in the document I see “At least two collaborators must approve a pull request before the pull request lands. One collaborator approval is enough if the pull request has been open for more than seven days.” So I guess that’s where the commit queue bot’s rules come from. I didn’t remember this second rule; it would make sense to mention it under “Waiting for approvals.” cc @Trott @aduh95 @targos

@nodejs-github-bot nodejs-github-bot removed the commit-queue Add this label to land a pull request using GitHub Actions. label Apr 25, 2022
@nodejs-github-bot nodejs-github-bot merged commit f54bf28 into nodejs:master Apr 25, 2022
@nodejs-github-bot
Copy link
Collaborator

Landed in f54bf28

@ljharb ljharb deleted the builtin-modules-path-test branch April 25, 2022 19:25
targos pushed a commit that referenced this pull request Apr 28, 2022
PR-URL: #42834
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Michaël Zasso <[email protected]>
@targos targos mentioned this pull request May 2, 2022
juanarbol pushed a commit that referenced this pull request May 31, 2022
PR-URL: #42834
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Michaël Zasso <[email protected]>
danielleadams pushed a commit that referenced this pull request Jun 27, 2022
PR-URL: #42834
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Michaël Zasso <[email protected]>
targos pushed a commit that referenced this pull request Jul 12, 2022
PR-URL: #42834
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Michaël Zasso <[email protected]>
targos pushed a commit that referenced this pull request Jul 31, 2022
PR-URL: #42834
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Michaël Zasso <[email protected]>
guangwong pushed a commit to noslate-project/node that referenced this pull request Oct 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
author ready PRs that have at least one approval, no pending requests for changes, and a CI started. flaky-test Issues and PRs related to the tests with unstable failures on the CI. test Issues and PRs related to the tests. worker Issues and PRs related to Worker support.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Test failure in test-worker-init-failure.js when running with --node-builtin-modules-path
5 participants