apache / apache/iceberg-python

Error when upserting and updating dataframes with dictionary encoded columns

Ouverte
#3,835 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Python
Étoiles
1.1k
Forks
581
Merge moyen
1 j 17 h
PR mergées (30 j)
77

Description

### Apache Iceberg version

0.9.1

### Please describe the bug 🐞

df = pyarrow.read_table(read_dictionary=[string_columns])

table = catalog.load_table(table_name)

table.append(df) -> 'append' casts dictionary columns into large string and table appended without any error

table.upsert(df, join_cols=[primary_keys]) -> Error (Invalid Type Dictionary)
table.update(df, join_cols=[primary_keys]) -> Error (Invalid Type Dictionary)

### Willingness to contribute

- [ ] I can contribute a fix for this bug independently
- [ ] I would be willing to contribute a fix for this bug with guidance from the Iceberg community
- [x] I cannot contribute a fix for this bug at this time

Guide de contribution

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

Piste de recherche

Commencez par reproduire le problème avec pyarrow.read_table(read_dictionary=[string_columns]) et une table chargée depuis catalog.load_table(table_name). Comparez table.append(df), table.upsert(df, join_cols=[primary_keys]) et table.update(df, join_cols=[primary_keys]) ; le travail est terminé lorsque upsert et update gèrent les colonnes encodées en dictionary sans l’erreur Invalid Type Dictionary signalée.

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

Évaluation

Stack technique
python
Domaine
databases
Type d'issue
Bug
Difficulté
3/5
Temps estimé
1-2 jours
Activité
Active
Clarté
Plutôt claire
Accessibilité débutants
50/100

Recevez les nouvelles issues par e-mail

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