-
Notifications
You must be signed in to change notification settings - Fork 29.8k
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
deps: update V8 to 11.4 #48029
deps: update V8 to 11.4 #48029
Conversation
Major V8 updates are usually API/ABI incompatible with previous versions. This commit adapts NODE_MODULE_VERSION for V8 11.4. Refs: https://github.com/nodejs/CTC/blob/master/meetings/2016-09-28.md
dllexport introduces issues when compiling with MSVC. PR-URL: nodejs#47251 Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com> Reviewed-By: Richard Lau <rlau@redhat.com>
PR-URL: nodejs#45579 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> PR-URL: nodejs#47251 Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com> Reviewed-By: Richard Lau <rlau@redhat.com>
Review requested:
|
It introduces process hangs on some platforms because Node.js doesn't tear down V8 correctly. Disable it while we work on a solution. Refs: nodejs#47297 Refs: https://bugs.chromium.org/p/v8/issues/detail?id=13902 PR-URL: nodejs#47450 Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Michael Dawson <midawson@redhat.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
Accept a new `step` break message.
`--no-harmony-sharedarraybuffer` was removed from V8 but it's still possible to disable the feature with `--enable-sharedarraybuffer-per-context`.
I can't believe this, only smartOS failed 😭. Especially all windows version works. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unfortunately, I think the SmartOS failure is not a flake :(
@nodejs/platform-smartos |
@bahamat (we should probably add you to that team for notifications for smartos). |
@richardlau Yes, that would be a good idea. I’ll have my team take a look at this. |
I've sent out an invite for you to join the team. |
I've joined. |
@StefanStojanovic We still need to apply a small patch for ARM64 Windows: 9603655. Do you know if something can be done about it upstream? |
Yes, that patch is still required. I've already landed 2 CLs upstream in the V8 repo with some changes regarding cross-compilation and MSVC in general. I have one more CL to open there that fixes an issue with the |
Hi, I'm looking at the failure on SmartOS - to start with I've tried to reproduce the build, but I see different test failures:
If I run
Is it just that these tests can occasionally fail, or did I do something wrong in my build? I'm using cb4fc99, building using |
I should also have mentioned, re-running the 3 failing tests also made them complete successfully. |
Ok, never mind, looks like I was looking at the wrong Jenkins failure - I'm now retesting against 174ca27. |
Ok, so I think I've found the problem, but I'm not sure what the correct approach is for fixing it. The V8 update includes numerous changes to heap allocation, and one side effect of this is that addresses in the profiling log are now outside of the safe Integer range. Comparing an isolate log from an earlier version of node:
with one from the proposed V8 update:
What happens with the test case is that node ends up in a loop in > parseInt(0xfffffc7fdda41800) === parseInt(0xfffffc7fdda41880)
true The same log hangs older versions of node, as well as node on other platforms. There appear to be at least 2 approaches to the problem: update the profiling code to handle higher addresses, or revert some of the proposed V8 changes to avoid the higher address ranges. Given that node itself appears to be functioning correctly apart from this single test case it feels like fixing the profiling code would be the better approach. I'm happy to help test any changes for this. One thing I noticed (and wondered for a while if it was a contributing factor) while investigating is that |
Here's an example log if anyone wants to test against it, it should reliably hang |
Thanks @jperkin for the deep analysis. I found out that V8 actually supports parsing numbers as BigInt in some of the files since v8/v8@aee5fb0. |
Replaced by #48456 |
No description provided.