FrankChen021 opened a new pull request, #20271:
URL: https://github.com/apache/druid/pull/20271

   ### Description
   
   Run Druid tests with `-XX:+UseCompactObjectHeaders` to detect regressions 
under JDK 25 compact object headers before changing runtime defaults.
   
   - Enable the flag in the parent Surefire configuration, inherited by unit 
and embedded tests, and in the `parallel-test` and processing `benchmark` 
profiles that override test JVM arguments.
   - Enable it in the embedded Docker-test Failsafe JVM.
   - Set `JAVA_TOOL_OPTIONS` in the CI test image so containerized Druid 
services and task JVMs, including Kubernetes peon pods, inherit the flag. The 
Build the Docker image step appends the test-only ENV instruction to the 
Dockerfile streamed into a single Docker build, before the image is saved and 
loaded for testing.
   
   Production launch scripts and distribution image defaults are unchanged. 
Historical Druid images used for backward-compatibility tests retain their 
existing JVM settings; they may use JDKs that do not support compact headers.
   
   #### Validation
   
   - Passed six `CircularListTest` unit cases and two `SystemTableQueryTest` 
embedded cases with JDK 25:
     ```sh
     mvn test -pl embedded-tests -am 
-Dtest='org.apache.druid.collections.CircularListTest,org.apache.druid.testing.embedded.query.SystemTableQueryTest'
 -Dsurefire.failIfNoSpecifiedTests=false -Pskip-static-checks 
-Dweb.console.skip=true -T1C
     ```
   - Verified the effective embedded-tests Maven configuration supplies the 
flag to both Surefire and Docker-test Failsafe, and checked all four test 
`argLine` definitions.
   - Java 25 Docker smoke checks confirmed direct and shell-launched JVMs 
report `UseCompactObjectHeaders = true` from the environment. Checked the 
revised single-build workflow shell syntax, Docker command arguments, and 
streamed Dockerfile contents.
   - `git diff --check` and workflow shell syntax checks passed.
   - Full unit, embedded, and Druid Docker regression suites remain for CI; the 
local Docker check used a Java smoke image, not a full Druid cluster.
   
   This PR has:
   
   - [x] been self-reviewed.
   - [x] added a comment explaining the test image configuration.
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to