apache / apache/parquet-java

make the default behavior for proto writing not-backwards compatible

Offen
#2,707 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Component: Parquet Component: Protobuf Priority: Minor Type: enhancement
Vorherrschende Sprache
Java
Sterne
3.1k
Forks
1.6k
Ø Merge
3 T. 12 Std.
Gemergte PRs (30 T.)
33

Beschreibung

https://issues.apache.org/jira/browse/PARQUET-968 introduced supporting maps and lists in a spec compliant way.  however, to not break existing libraries, a flag was introduced and defaulted the write behavior to NOT use the specs compliant writes.

it's been over 5 years, and people should be really off of it.  so much so, that trying to use the new parquet-cli tool to read parquet files generated by flink doesn't work b/c it's hard coded to never allow the old style.  the deprecated parquet-tools reads these files fine b/c it's the older style.

i started coding up a workaround in flink-parquet and parquet-cli, but stopped.  we really should just move on at this point, imho.  protobufs often have repeated primitives and maps, so it's more pressing to get proper specs compliant support for it now.  we should keep the flag around and let people override it back to being backwards compatible though.

i have the code written and can submit a PR if you'd like.

i'm not an expert in parquet though, so i'm unclear as to the deep downstream ramifications of this change, so i would love to get feedback in this area.

**Reporter**: [J Y](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=jinyius) / @jinyius

**Note**: *This issue was originally created as [PARQUET-2180](https://issues.apache.org/jira/browse/PARQUET-2180). Please see the [migration documentation](https://issues.apache.org/jira/browse/PARQUET-2502) for further details.*

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Überprüfe zuerst PARQUET-968 und die Migrationsdokumentation und untersuche anschließend die vorhandene Behandlung von Flags in flink-parquet und parquet-cli. Bestätige, dass der Standard spezifikationskonform wird, während die abwärtskompatible Überschreibung weiterhin verfügbar bleibt, und teste parquet-cli mit Dateien, die von Flink und im älteren Stil generiert wurden.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java
Bereich
data-engineering
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.