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

Consideration Needed: Upgrade V8 and Transition from GYP to GN Build System #19116

Closed
Jingwiw opened this issue May 27, 2023 · 4 comments
Closed
Labels
1 Feature 3 Build compiling on targets
Milestone

Comments

@Jingwiw
Copy link

Jingwiw commented May 27, 2023

Is there a plan to upgrade V8? I've attempted to build on a riscv64 architecture machine, but the older V8 lacks support for riscv64. Simply replacing the V8 source code seems unfeasible. I tried replacing it with the version 11.6.19 code, but it results in the error:
"gyp: Error importing pymod_do_main module (detect_v8_host_arch): No module named 'detect_v8_host_arch' while trying to load ../gypfiles/all.gyp."

Also, I noticed that the newer version of V8 recommends using GN for building instead of GYP. Is there any plan to replace the build system?

@dothebart
Copy link
Contributor

dothebart commented May 27, 2023

I can't tell when the next V8 upgrade is gonig to happen.
However, if, its going to be copied from the nodejs source, since the maintain the gyp-files; GN in its delivered way doesn't work well for us, and we would need jobserver support, which is basicallly a stalemate in ninja for years: ninja-build/ninja#1139
The problem about V8 upgrading that usually a huge lot of code adjusting to their API-changes has to be done, and most of the time getting each target compiling (windows, mac, ...) is a lot of work.

@Simran-B
Copy link
Contributor

Simran-B commented Jun 12, 2023

There is at least one additional issue with newer V8 versions: The pointer compression introduced in v9.2 limits the memory to 4 GB, and it's unclear whether the option to opt out will remain available.

Also, there are currently no plans to support additional architectures.

@Simran-B Simran-B added 1 Feature 3 Build compiling on targets labels Jun 12, 2023
@u382514
Copy link

u382514 commented Jun 15, 2023

Understandable that it would be a lot of work however to stay competitive, and a legitimate database solution, these features need to stay up to date, swapped out or deprecated. Otherwise expectations won't meet reality.

For Instance, we love the Foxx microservice feature for rapid prototyping and even use it in smaller production systems. It's positioned in way that makes it much easier to modularize, break-off and scale out as the system grows. Unfortunately we've had to dumb down code that would work in a stable node.js environment to work in Foxx. The experience makes you second guess if this database is being actively worked on.

I'd like to see movement in upgrading the V8 engine as well.

@dothebart dothebart added this to the 3.12 milestone Feb 9, 2024
@dothebart
Copy link
Contributor

ArangoDB 3.12.2 is available with a laer V8.
We remained with gyp since ninja doesn't support gnu-jobserver.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1 Feature 3 Build compiling on targets
Projects
None yet
Development

No branches or pull requests

4 participants