-
Notifications
You must be signed in to change notification settings - Fork 80
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
Add dh-defaults.vmoptions file #3057
Conversation
Consolidates the recommended VM options into a single place. Allows for these options to be defined in a single place. Moves dh-compiler-directives.txt and dh-defaults.vmoptions into the etc directory (instead of in lib alongside the jars). Fixes deephaven#3054
'-XX:MaxGCPauseMillis=100', | ||
'-XX:+UseStringDeduplication', | ||
// For development in this repository via Gradle, use the top-level data directory | ||
"-Dstorage.path=${rootDir}/data" |
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.
We don't need/want this anymore?
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.
The defaults should be good enough IMO.
The equivalent was removed from jetty-app, and was accidentally left behind here. storage.path defaults to <deephaven.dataDir>/storage
, and for local development (prepareCompose, docker compose up) that equates to ${rootDir}/data/storage
given:
volumes:
- ./data:/data
For native local development (./gradlew ... :run
), the default will use OS conventional paths.
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.
Might changing this break persisted notebooks for users? Do we need to put out a notice of the change?
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.
This image is used for local development only.
This needs testing on each of our supported JVM major versions, I presume? |
It's officially documented as available on 11 and 17, but I'll make sure to do some explicit tests on a variety of JVMs - will report back. |
I've successfully tested on Temurin 11, 17, and 19 as well as Graal 22.3.0 11, 17, and 19 on Linux. |
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.
Approved. Do note: #3057 (comment)
buildSrc/src/main/groovy/io.deephaven.java-toolchain-conventions.gradle
Outdated
Show resolved
Hide resolved
Be a bit pedantic with setting inputs property which fixes a theoretical caching issue: ```java def defaultJvmOptions = [ '-XX:+UseG1GC', '-XX:MaxGCPauseMillis=100', '-XX:+UseStringDeduplication', "-Dbuild.time=${System.currentTimeMillis()}" ] ``` Without inputs.property, the task would be improperly cached.
Labels indicate documentation is required. Issues for documentation have been opened: How-to: https://github.com/deephaven/deephaven.io/issues/1919 |
Consolidates the recommended VM options into a single place. Allows for these options to be defined in a single place.
Moves dh-compiler-directives.txt and dh-defaults.vmoptions into the etc directory (instead of in lib alongside the jars).
Fixes #3054