sun.misc.Unsafe usage in Zero-Allocation-Hashing will be deprecated - what is Parquet's plan?
- Vorherrschende Sprache
- Java
- Sterne
- 3.1k
- Forks
- 1.6k
- Ø Merge
- 3 T. 12 Std.
- Gemergte PRs (30 T.)
- 33
Beschreibung
### Describe the bug, including details regarding any error messages, version, and platform.
The parquet-java repo depends on the [Zero-Allocation-Hashing](https://github.com/OpenHFT/Zero-Allocation-Hashing) library. That library uses `sun.misc.Unsafe`, which is being deprecated. As of the already-released JDK 24, uses of that library emit warnings (see [JEP 498](https://openjdk.org/jeps/498)). The library is slated to be deprecated after JDK 26, which probably means JDK 27 (or later). JDK 27 is scheduled to be released in September 2026.
So, parquet-java has two options:
1) Wait for Zero-Allocation-Hashing to migrate away from uses of `sun.misc.Unsafe`. There is [an issue](https://github.com/OpenHFT/Zero-Allocation-Hashing/issues/94) in that repo for this work. However, it's unclear to me how much attention the repo gets. The last release was in 2021, and the last commit was 5 months ago. So, parquet-java may or may not be able to rely on that repo to do the required fixes.
2) Use another library, which does not use sun.misc.Unsafe.
3) Write a new version, inside the parquet-java repo.
I want to bring this issue up so the contributors here are aware of the issue. What should the next steps be?
### Component(s)
_No response_
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
Im Issue sind keine Quelldateien oder Tests identifiziert. Beginne damit, die Abhängigkeit von parquet-java von Zero-Allocation-Hashing und das verknüpfte Upstream-Issue zum Ersetzen von sun.misc.Unsafe zu prüfen, und vergleiche dann die drei vorgeschlagenen Optionen. Als erledigt gilt, wenn sich das Projekt auf den nächsten Schritt zur Vermeidung des Deprecation-Risikos geeinigt hat.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- data-engineering
- Issue-Typ
- Bug
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 30/100