FrankChen021 commented on PR #19960: URL: https://github.com/apache/druid/pull/19960#issuecomment-5248607131
Closing as `WONT_FIX_LARGE_CHANGE` / `CLOSED_HIGH_EFFORT`. This PR combines two incompatible version lines. On current `master` (`b3f08c8`), the root dependency-management pin `jaxb-runtime:2.3.9` is the JAXB 2 / `javax.xml.bind` runtime used by services, Hadoop consumers, Jackson's JAXB module, extensions, and the distribution. Only `cloudfiles-extensions` is intentionally isolated on JAXB 4 (`jaxb-runtime:4.0.5`, API 4.0.2, Activation 2.1.3) for jclouds 2.7.0. At exact head `a6ca257`, all five failures are PR-caused `RequireUpperBoundDeps` errors: JAXB 4.0.9 pulls `jaxb-core:4.0.9`, `jakarta.xml.bind-api:4.0.5`, and Activation 2.1.4 / Angus 2.0.3, while Druid globally manages API 2.3.3 and Activation 1.2.2. [static-checks-maven](https://github.com/apache/druid/actions/runs/31444294517/job/93635114023), [openrewrite](https://github.com/apache/druid/actions/runs/31444294517/job/93635114015), [strict-compilation](https://github.com/apache/druid/actions/runs/31444294517/job/93635113998), [packaging](https://github.com/apache/druid/actions/runs/31444294517/job/93635114029), and [validate-dist](https://github.com/apache/druid/actions/runs/31444294630/job/93635114484) all fail on this mismatch. A runtime smoke test using the resulting services classpath also fails `javax.xml.bind.JAXBContext` lookup with `ClassNotFoundException: com.sun.xml.bind.v2.ContextFactory`. This is not safely fixed by aligning two version pins. JAXB RI's [official migration guidance](https://eclipse-ee4j.github.io/jaxb-ri/4.0.5/docs/release-documentation.html) says JAXB 1.x/2.x applications are unsupported on runtime 4 and must replace `javax.xml.bind` references, regenerate XJC bindings, and update application code; the [Jakarta XML Binding 4 specification](https://jakarta.ee/specifications/xml-binding/4.0/jakarta-xml-binding-spec-4.0) documents the package-namespace change and incompatible removals. Druid still imports `javax.xml.bind.DatatypeConverter` in `ExportMetadata`, Jackson 2's JAXB module uses `javax.xml.bind`, Hadoop dependencies request runtime 2.3.9, and the default parent-first extension classloader exposes bundled JAXB to third-party plugins. A compatible migration must coordinate API/Activation/Jackson/Hadoop/generated bindings, validate metadata export and XML serialization/persistence behavior, and verify extension/plugin compatibility across the 1 0 modules whose effective runtime contains JAXB. Druid's Java 25 baseline satisfies JAXB 4's Java 11 minimum, but that does not resolve the source, binary, service-provider, serialization, stored-data, or plugin compatibility issues. The checked new artifacts retain EDL-1.0/BSD-3-Clause licensing, and no GitHub-reviewed advisory matched the affected JAXB/Activation artifacts as of this review. The isolated cloudfiles 4.0.5→4.0.9 patch should be handled separately with matching API 4.0.5 and Activation 2.1.4 pins. No merge performed. -- 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]
