Skip to content

[v22.x] test: skip one more SEA test on win32 - #66952

Draft
sxa wants to merge 1 commit into
nodejs:v22.x-stagingfrom
sxa:sea-win32-flaky
Draft

sxa wants to merge 1 commit into
nodejs:v22.x-stagingfrom
sxa:sea-win32-flaky

Conversation

@sxa

@sxa sxa commented Oct 23, 2026

Copy link
Copy Markdown
Member

While looking at windows failures one test showed as a reasonably regular intermittent failure specifically on win32. Since we already have some marked as flaky it seems reasonable to include this one too.

The earliest log that's still around where I can see it is from the PR test run of an undici update: where the PR test was re-run and succeeded.

When it fails the retry logic shows varying results between 1/10 failures and 7/10:

node-test-binary-windows-js-suites/configurations/axis-RUN_SUBSET# grep -B1 sea/test-single-executable-application-empty ?/axis-nodes/*x86/builds/*/log   | sed 's/^.*x86//g'
/builds/44016/log- failed 5 out of 10
/builds/44016/log:not ok 1084 sea/test-single-executable-application-empty
--
/builds/44017/log-  ...
/builds/44017/log:ok 1091 sea/test-single-executable-application-empty # skip Cannot find signtool: Error: - process terminated with status 1, expected 0
--
/builds/44050/log-  ...
/builds/44050/log:ok 1080 sea/test-single-executable-application-empty # skip Cannot find signtool: Error: - process terminated with status 1, expected 0
--
/builds/43923/log-  ...
/builds/43923/log:ok 1084 sea/test-single-executable-application-empty # skip Cannot find signtool: Error: - process terminated with status 1, expected 0
--
/builds/43940/log- failed 7 out of 10
/builds/43940/log:not ok 1096 sea/test-single-executable-application-empty
--
/builds/43947/log-  ...
/builds/43947/log:ok 1097 sea/test-single-executable-application-empty # skip Cannot find signtool: Error: - process terminated with status 1, expected 0
--
/builds/43948/log- failed 4 out of 10
/builds/43948/log:not ok 1096 sea/test-single-executable-application-empty
--
/builds/43957/log-  ...
/builds/43957/log:ok 1082 sea/test-single-executable-application-empty # skip Cannot find signtool: Error: - process terminated with status 1, expected 0
--
/builds/43967/log-  ...
/builds/43967/log:ok 1099 sea/test-single-executable-application-empty # skip Cannot find signtool: Error: - process terminated with status 1, expected 0
--
/builds/43974/log- failed 4 out of 10
/builds/43974/log:not ok 1095 sea/test-single-executable-application-empty
--
/builds/43994/log- failed 7 out of 10
/builds/43994/log:not ok 1081 sea/test-single-executable-application-empty
--
/builds/44030/log- failed 1 out of 10
/builds/44030/log:not ok 1082 sea/test-single-executable-application-empty
--
/builds/43995/log-  ...
/builds/43995/log:ok 1082 sea/test-single-executable-application-empty # skip Cannot find signtool: Error: - process terminated with status 1, expected 0
--
/builds/43998/log-  ...
/builds/43998/log:ok 1078 sea/test-single-executable-application-empty # skip Cannot find signtool: Error: - process terminated with status 1, expected 0

Sample failure output:

04:07:28  failed 7 out of 10
04:07:28 not ok 1096 sea/test-single-executable-application-empty
04:07:28   ---
04:07:28   duration_ms: 33089.55500
04:07:28   severity: fail
04:07:28   exitcode: 1
04:07:28   stack: |-
04:07:28     Copied C:\workspace\node-test-binary-windows-js-suites\node\Release\node.exe to C:\workspace\node-test-binary-windows-js-suites\node\test\.tmp.1075\sea.exe
04:07:28     [process 968]: --- stderr ---
04:07:28     Aborted()
04:07:28     
04:07:28     [process 968]: --- stdout ---
04:07:28     �[36mStart injection of NODE_SEA_BLOB in C:\workspace\node-test-binary-windows-js-suites\node\test\.tmp.1075\sea.exe...�[0m
04:07:28     �[31mError: Aborted(). Build with -sASSERTIONS for more info.�[0m
04:07:28     
04:07:28     [process 968]: status = 1, signal = null
04:07:28     C:\workspace\node-test-binary-windows-js-suites\node\test\sea\test-single-executable-application-empty.js:53
04:07:28       throw e;
04:07:28       ^
04:07:28     
04:07:28     Error: Cannot inject C:\workspace\node-test-binary-windows-js-suites\node\test\.tmp.1075\sea-prep.blob into C:\workspace\node-test-binary-windows-js-suites\node\test\.tmp.1075\sea.exe: Error: - process terminated with status 1, expected 0
04:07:28         at generateSEA (C:\workspace\node-test-binary-windows-js-suites\node\test\common\sea.js:87:5)
04:07:28         at Object.<anonymous> (C:\workspace\node-test-binary-windows-js-suites\node\test\sea\test-single-executable-application-empty.js:43:3)
04:07:28         at Module._compile (node:internal/modules/cjs/loader:1781:14)
04:07:28         at Object..js (node:internal/modules/cjs/loader:1913:10)
04:07:28         at Module.load (node:internal/modules/cjs/loader:1505:32)
04:07:28         at Function._load (node:internal/modules/cjs/loader:1309:12)
04:07:28         at wrapModuleLoad (node:internal/modules/cjs/loader:254:19)
04:07:28         at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:171:5)
04:07:28         at node:internal/main/run_main_module:36:49 {
04:07:28       command: 'C:\\workspace\\node-test-binary-windows-js-suites\\node\\Release\\node.exe C:\\workspace\\node-test-binary-windows-js-suites\\node\\test\\fixtures\\postject-copy\\node_modules\\postject\\dist\\cli.js C:\\workspace\\node-test-binary-windows-js-suites\\node\\test\\.tmp.1075\\sea.exe NODE_SEA_BLOB C:\\workspace\\node-test-binary-windows-js-suites\\node\\test\\.tmp.1075\\sea-prep.blob --sentinel-fuse NODE_SEA_FUSE_fce680ab2cc467b6e072b8b5df1996b2'
04:07:28     }
04:07:28         at generateSEA (C:\workspace\node-test-binary-windows-js-suites\node\test\common\sea.js:98:13)
04:07:28         at Object.<anonymous> (C:\workspace\node-test-binary-windows-js-suites\node\test\sea\test-single-executable-application-empty.js:43:3)
04:07:28         at Module._compile (node:internal/modules/cjs/loader:1781:14)
04:07:28         at Object..js (node:internal/modules/cjs/loader:1913:10)
04:07:28         at Module.load (node:internal/modules/cjs/loader:1505:32)
04:07:28         at Function._load (node:internal/modules/cjs/loader:1309:12)
04:07:28         at wrapModuleLoad (node:internal/modules/cjs/loader:254:19)
04:07:28         at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:171:5)
04:07:28         at node:internal/main/run_main_module:36:49
04:07:28     
04:07:28     Node.js v22.23.4-pre
04:07:28   ...

Interestingly in this case it's showing the exception being thrown at line 53 which would suggest it didn't go into the if (common.isWindows) block to trigger the signtool skip message that happens in the case where it doesn't "fail".

I haven't analysed this in any more detail as it's an experimental feature on a platform that will disappear when Node 22x goes out of support next year so I feel that just marking it flaky is the right option unless @joyeecheung is particularly interested in trying to make it work differently :-)

Spotted while looking at intermittent failures on Windows that weren't being picked up by the reliability reports.

Draft for now while I look at running a few more experiments in the background.

Signed-off-by: Stewart X Addison <sxa@ibm.com>
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

Review requested:

  • @nodejs/single-executable

@nodejs-github-bot nodejs-github-bot added needs-ci PRs that need a full CI run. test Issues and PRs related to Node.js core tests and test infrastructure. v22.x Issues that can be reproduced on v22.x or PRs targeting the v22.x-staging branch. labels Oct 23, 2026
@sxa sxa added the request-ci Add this label to start a Jenkins CI on a PR. Only starts once the PR has an approving review. label Oct 23, 2026
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

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

Labels

needs-ci PRs that need a full CI run. request-ci Add this label to start a Jenkins CI on a PR. Only starts once the PR has an approving review. test Issues and PRs related to Node.js core tests and test infrastructure. v22.x Issues that can be reproduced on v22.x or PRs targeting the v22.x-staging branch.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants