Skip to content

test: wait for FFI background optimization - #65300

Merged
nodejs-github-bot merged 1 commit into
nodejs:mainfrom
trivikr:test-ffi-fast-integer-validation
Aug 15, 2026
Merged

test: wait for FFI background optimization#65300
nodejs-github-bot merged 1 commit into
nodejs:mainfrom
trivikr:test-ffi-fast-integer-validation

Conversation

@trivikr

@trivikr trivikr commented Aug 15, 2026

Copy link
Copy Markdown
Member

Refs: https://github.com/nodejs/reliability/issues?q=sort%3Aupdated-desc%20%22test-ffi-fast-integer-validation%22

The pointer range test creates multiple closures from the same function literals and explicitly requests synchronous optimization. V8 can also schedule concurrent recompilation for those closures.

Wait for background optimization before closing the dynamic library so compiler jobs cannot outlive the fast FFI metadata they reference.


Assisted-by: codex:gpt-5.6-sol

The pointer range test creates multiple closures from the same function
literals and explicitly requests synchronous optimization. V8 can also
schedule concurrent recompilation for those closures.

Wait for background optimization before closing the dynamic library so
compiler jobs cannot outlive the fast FFI metadata they reference.

Signed-off-by: Kamat, Trivikram <16024985+trivikr@users.noreply.github.com>
Assisted-by: codex:gpt-5.6-sol
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

Review requested:

  • @nodejs/ffi

@nodejs-github-bot nodejs-github-bot added needs-ci PRs that need a full CI run. test Issues and PRs related to the tests. labels Aug 15, 2026
@trivikr trivikr added the flaky-test Issues and PRs related to the tests with unstable failures on the CI. label Aug 15, 2026
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

@trivikr trivikr added the ffi Issues and PRs related to experimental Foreign Function Interface support. label Aug 15, 2026
@trivikr trivikr added the fast-track PRs that do not need to wait for 48 hours to land. label Aug 15, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Fast-track has been requested by @trivikr. Please 👍 to approve.

@codecov

codecov Bot commented Aug 15, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 90.33%. Comparing base (4551732) to head (46e3f30).
⚠️ Report is 4 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main   #65300      +/-   ##
==========================================
+ Coverage   90.30%   90.33%   +0.02%     
==========================================
  Files         751      751              
  Lines      250235   250235              
  Branches    47305    47303       -2     
==========================================
+ Hits       225987   226044      +57     
+ Misses      15619    15566      -53     
+ Partials     8629     8625       -4     

see 38 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@avivkeller avivkeller added request-ci Add this label to start a Jenkins CI on a PR. author ready PRs that have at least one approval, no pending requests for changes, and a CI started. labels Aug 15, 2026
@trivikr trivikr removed the request-ci Add this label to start a Jenkins CI on a PR. label Aug 15, 2026
@trivikr

trivikr commented Aug 15, 2026

Copy link
Copy Markdown
Member Author

Removed request-ci as it was run manually in #65300 (comment)

@gurgunday gurgunday left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

lgtm

@trivikr

trivikr commented Aug 15, 2026

Copy link
Copy Markdown
Member Author

For some reason, the stress test is not detecting the test file for PR.

In main

+ /home/iojs/venv/bin/python3.12 tools/test.py -p tap --logfile test1.tap --mode=release ffi/test-ffi-fast-integer-validation
TAP version 13
1..1
ok 1 ffi/test-ffi-fast-integer-validation
  ---
  duration_ms: 413.13500
  ...
All tests passed.

https://ci.nodejs.org/job/node-stress-single-test/828

For PR

+ /home/iojs/venv/bin/python3.12 tools/test.py -p tap --logfile test1.tap --mode=release ‎ffi/test-ffi-fast-integer-validation
No tests to run.
+ NOK=1
+ echo '1   OK: 0   NOT OK: 1   TOTAL: 1000'
1   OK: 0   NOT OK: 1   TOTAL: 1000
+ tap2junit -i test1.tap -o test1.xml
Traceback (most recent call last):
  File "/home/iojs/venv/bin/tap2junit", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/home/iojs/venv/lib/python3.12/site-packages/tap2junit/__main__.py", line 94, in main
    convert(
  File "/home/iojs/venv/lib/python3.12/site-packages/tap2junit/__main__.py", line 68, in convert
    result = parse(name or input_file, data, package)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/iojs/venv/lib/python3.12/site-packages/tap2junit/__main__.py", line 58, in parse
    tap_parser.parse(data)
  File "/home/iojs/venv/lib/python3.12/site-packages/tap2junit/tap13.py", line 237, in parse
    self._parse(io.StringIO(source))
  File "/home/iojs/venv/lib/python3.12/site-packages/tap2junit/tap13.py", line 107, in _parse
    match = RE_VERSION.match(non_empty_lines[0])
                             ~~~~~~~~~~~~~~~^^^
IndexError: list index out of range
+ true

https://ci.nodejs.org/job/node-stress-single-test/829

I've confirmed by running the test locally though

100 runs at -j8.

  • 5 crashes in main
  • 0 crashes in PR

@trivikr trivikr added the commit-queue Add this label to land a pull request using GitHub Actions. label Aug 15, 2026
@nodejs-github-bot
nodejs-github-bot merged commit c55fa12 into nodejs:main Aug 15, 2026
107 of 108 checks passed
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

Landed in c55fa12

@nodejs-github-bot nodejs-github-bot removed the commit-queue Add this label to land a pull request using GitHub Actions. label Aug 15, 2026
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. fast-track PRs that do not need to wait for 48 hours to land. ffi Issues and PRs related to experimental Foreign Function Interface support. flaky-test Issues and PRs related to the tests with unstable failures on the CI. needs-ci PRs that need a full CI run. test Issues and PRs related to the tests.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants