BIT_PACKING is written by default when Definition or Repetition levels are empty
- Vorherrschende Sprache
- Java
- Sterne
- 3.1k
- Forks
- 1.6k
- Ø Merge
- 3 T. 12 Std.
- Gemergte PRs (30 T.)
- 33
Beschreibung
As discussed in https://github.com/apache/arrow/discussions/47113 , this package is writing the deprecated BIT_PACKING encoding to the column metadata and the DataPageHeader. This is only seems to happens when rep/def levels are empty. I think this is where it's happening:
```java
public class DevNullValuesWriter extends ValuesWriter {
....
public Encoding getEncoding() {
return BIT_PACKED;
}
}
```
Wouldn't it make sense to just return RLE?
I've seen this in parquet-java 1.15.1 and Overture Maps files using 1.13.1.
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
Beginne damit, DevNullValuesWriter zu finden und seine getEncoding()-Implementierung zu untersuchen; verfolge dann, wie dieser Wert die Spaltenmetadaten und den DataPageHeader erreicht. Bestätige, dass leere Wiederholungs- und Definitionslevel nicht mehr die veraltete BIT_PACKED-Kodierung erzeugen, sondern stattdessen RLE verwenden.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- data-engineering
- Issue-Typ
- Bug
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 48/100