apache / apache/parquet-java

`MessageTypeParser.parseMessageType()` Fails to Parse Valid Parquet Schemas with Special Characters in Field Names

Offen
#3,145 3 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Type: bug
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 MessageTypeParser.parseMessageType(String) method fails when parsing Parquet schemas containing field names with special characters such as "name=id" or "first name". These field names are valid in Parquet schema definitions and Parquet files successfully support them. However, parseMessageType throws an error or fails to deserialize such schemas back into a valid MessageType object.

Steps to Reproduce:
Create a valid Parquet schema with a field name like name=id or first name.
Convert it to a string using .toString().
Attempt to parse it back using MessageTypeParser.parseMessageType(parquetSchema.toString()).

Suggested Fix:
Enhance MessageTypeParser to properly handle and deserialize field names containing special characters, ensuring compliance with the Parquet specification.

### Component(s)

_No response_

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne mit MessageTypeParser.parseMessageType(String) und reproduziere den Roundtrip mithilfe eines gültigen Parquet-Schemas, dessen Feldname "name=id" oder "first name" enthält. Als abgeschlossen gilt dies, wenn der von toString() erzeugte Schema-String wieder in einen äquivalenten gültigen MessageType ohne Fehler geparst wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

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

Neue Issues direkt in Ihr Postfach

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