FrankChen021 commented on PR #20043:
URL: https://github.com/apache/druid/pull/20043#issuecomment-5323592307

   CLOSED_HIGH_EFFORT/WONT_FIX_LARGE_CHANGE
   
   Dependency PR #20043 was reviewed at the assigned exact head 
`be8a11d2243654d0c2d9afc75b7dc6d2f198aa02` against current `master` 
`cb26014728ab3239bc8d7391f9cf6466e63905b0`. The PR is open, non-draft, 
mergeable by GitHub, and has no prior review. The merge base is current master. 
The complete diff is exactly one line in `pom.xml`: `datasketches.version` 
4.2.0 -> 9.0.0.
   
   This is not a safe one-line dependency bump. The effective reactor 
dependency graph resolves `org.apache.datasketches:datasketches-java:9.0.0` 
while `datasketches-memory` remains `2.2.0`. DataSketches 9.0.0 is a major 
incompatible refactor for Java 25: it removes the separate DataSketches-Memory 
library, adopts `java.lang.foreign.MemorySegment`, and changes public class/API 
names. The published release notes state that the serialized sketch binary 
formats remain compatible, but also call out incompatible API changes.
   
   The exact-head CI rollup is terminal: 22 failures, 3 successes, 2 skips, and 
1 neutral. Every failure is PR-caused and has the same `druid-indexing-service` 
compilation failure, including missing/changed APIs such as:
   
   * `org.apache.datasketches.hll.Union` and old 
`org.apache.datasketches.memory.Memory` in `ParallelIndexSupervisorTask`;
   * `ItemsSketch`/`ItemsUnion` and old memory APIs in `StringSketch` and 
`StringSketchMerger`;
   * `ArrayOfItemsSerDe`/`ArrayOfStringsSerDe` method-signature and 
generic-return-type incompatibilities in the distribution serde classes;
   * `Memory` versus `MemorySegment` type errors throughout the compile.
   
   Failed CodeQL jobs (the build failed before SARIF analysis):
   
   * [Analyze 
(java)](https://github.com/apache/druid/actions/runs/32082673016/job/95548557760)
   * [Analyze 
(javascript)](https://github.com/apache/druid/actions/runs/32082673016/job/95548557729)
   * [Analyze 
(python)](https://github.com/apache/druid/actions/runs/32082673016/job/95548557812)
   
   Failed static/packaging jobs, all with the same compile failure:
   
   * 
[static-checks-maven](https://github.com/apache/druid/actions/runs/32082673343/job/95548559026)
   * 
[web-checks](https://github.com/apache/druid/actions/runs/32082673343/job/95548559130)
   * 
[strict-compilation](https://github.com/apache/druid/actions/runs/32082673343/job/95548559134)
   * 
[packaging-check-jdk25](https://github.com/apache/druid/actions/runs/32082673343/job/95548559163)
   * 
[openrewrite](https://github.com/apache/druid/actions/runs/32082673343/job/95548559209)
   
   Failed unit/validation/QTest jobs, also all with the same compile failure 
before tests:
   
   * [unit tests 
C](https://github.com/apache/druid/actions/runs/32082673525/job/95548559554), 
[unit tests 
N](https://github.com/apache/druid/actions/runs/32082673525/job/95548559537), 
[unit tests 
D/H/L](https://github.com/apache/druid/actions/runs/32082673525/job/95548559565),
 [unit tests 
I/A/U](https://github.com/apache/druid/actions/runs/32082673525/job/95548559613)
   * [unit tests 
K/E/W/Z/Y/X](https://github.com/apache/druid/actions/runs/32082673525/job/95548559649),
 [unit tests 
M/P/O](https://github.com/apache/druid/actions/runs/32082673525/job/95548559731),
 [unit tests 
R/B/Q/V](https://github.com/apache/druid/actions/runs/32082673525/job/95548559762),
 [unit tests 
S](https://github.com/apache/druid/actions/runs/32082673525/job/95548559652), 
[unit tests 
T/F/G/J](https://github.com/apache/druid/actions/runs/32082673525/job/95548559729)
   * 
[validate-dist](https://github.com/apache/druid/actions/runs/32082673525/job/95548559576),
 [QTest 
0/4](https://github.com/apache/druid/actions/runs/32082673525/job/95548559728), 
[QTest 
1/4](https://github.com/apache/druid/actions/runs/32082673525/job/95548559687), 
[QTest 
2/4](https://github.com/apache/druid/actions/runs/32082673525/job/95548559684), 
[QTest 
3/4](https://github.com/apache/druid/actions/runs/32082673525/job/95548559688)
   
   The two skipped jobs 
([coverage-jacoco](https://github.com/apache/druid/actions/runs/32082673525/job/95552493140),
 
[docker-tests](https://github.com/apache/druid/actions/runs/32082673525/job/95552493216))
 have no steps/logs and are downstream of the failed build. CodeQL was 
[neutral](https://github.com/apache/druid/runs/95549002562) because SARIF 
processing had no successful analysis input. The title, triage, and 
actions-timeline checks succeeded. No job was rerun because the failures are 
terminal and clearly PR-caused.
   
   Compatibility evidence requires a broad migration: Druid source and tests 
use the old HLL, quantiles, KLL, theta, tuple, serde, and `datasketches-memory` 
APIs across the indexing service, processing, MSQ, and the `druid-datasketches` 
extension. The extension's object strategies read persisted segment bytes and 
serialize sketch values; its Druid modules and complex-metric registrations are 
part of the distributed extension surface. The upstream binary-format 
compatibility statement is encouraging for stored sketch data, but it does not 
establish compatibility of Druid's `Memory`/`MemorySegment` access, 
object-strategy behavior, query results, task wire values, or extension/plugin 
SPIs. Those require a coordinated source migration and focused 
compatibility/serialization tests. Druid already requires Java 25, so the 
runtime requirement is aligned, but this PR still cannot compile.
   
   The Druid license registry still records `datasketches-java` as 4.2.0 in 
`licenses.yaml`; Druid's dependency-versioning documentation requires updating 
that registry when changing a dependency version. GitHub's Maven advisory query 
returned no records for the exact DataSketches artifacts, so advisories are not 
the blocker.
   
   This change therefore needs a broad, compatibility-sensitive redesign and 
cannot be fixed surgically within the assigned dependency bump. No source fix, 
rebase, push, or rerun was made. Closing as 
`CLOSED_HIGH_EFFORT/WONT_FIX_LARGE_CHANGE`; not approving and not merging.
   


-- 
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