apache / apache/parquet-java

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

Ouverte
#3,145 3 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Type: bug
Langage dominant
Java
Étoiles
3.1k
Forks
1.6k
Merge moyen
3 j 12 h
PR mergées (30 j)
33

Description

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

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Commencez par MessageTypeParser.parseMessageType(String) et reproduisez l’aller-retour en utilisant un schéma Parquet valide dont le nom de champ contient "name=id" ou "first name". C’est terminé lorsque la chaîne de schéma produite par toString() est analysée de nouveau en un MessageType valide équivalent sans erreur.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
java
Domaine
data-engineering
Type d'issue
Bug
Difficulté
3/5
Temps estimé
1-2 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
45/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.