Build inspect.entries() and inspect.files() from pyiceberg-core Arrow output
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 45/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- python
- Área
- data-engineering
Línea de trabajo
Start with pyiceberg/table/inspect.py at inspect.entries() and inspect.files(), then read pyiceberg/manifest.py around _inherit_from_manifest and the dependency ranges in pyproject.toml. Check the pyiceberg-core Arrow reader release and its DataFusion major version before changing the dependency pin. Done when both methods use Arrow manifest output when the optional extra is installed, retain the current path without it, and their tests cover the inherited fields and dependency constraints.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Feature Request / Improvement
inspect.entries() and inspect.files() build a DataFile per manifest entry and then flatten them back into a pa.Table (inspect.py#L152, inspect.py#L860). Once pyiceberg-core returns manifests as pyarrow tables (apache/iceberg-rust#3648), these methods can build their tables from that output directly. They're the first consumer of the Arrow output in #4007, because they want Arrow anyway.
The Arrow manifest reader fills null snapshot_id, sequence_number, and file_sequence_number values from the manifest list as the manifest_entry fields specify, and null first_row_id values as first row ID inheritance specifies. That replaces what _inherit_from_manifest (manifest.py#L1050) does today. pyiceberg-core is an optional extra, so the current path stays when it isn't installed.
This needs a pyiceberg-core release with the Arrow readers, and raising PyIceberg's pin (>=0.10.1,<0.11.0) to it. The new range has to name the same DataFusion major version as the datafusion range (pyproject.toml#L95-L98).
- Lenguaje dominante
- Python
- Estrellas
- 1.2k
- Forks
- 654
- Merge medio
- 2 d 11 h
- PR fusionados (30 d)
- 122
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de apache/iceberg-python
-
`inspect.files()` and the other file metadata tables raise `ArrowInvalid` when a snapshot has no manifestsPosiblemente ocupada @YuangGao la tomó hace 10 días. Abiertokind:bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
apache/iceberg-python#4269 ·
Los mantenedores suelen responder en 1 día
-
`inspect.entries()` raises TypeError when a data file has no column_sizesPosiblemente ocupada @Rahul-cs50 la tomó hace 14 días. Abiertokind:bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
apache/iceberg-python#4186 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
`older_than` reads a naive datetime as UTC and expires snapshots it should keepPosiblemente ocupada @Rahul-cs50 la tomó hace 13 días. Abiertokind:bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
apache/iceberg-python#4182 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
REST: Send empty first-page pageToken when rest-page-size is setPosiblemente ocupada @ehddnr301 la tomó hace 32 días. Abiertokind:bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
apache/iceberg-python#4096 ·
Los mantenedores suelen responder en 1 día
-
PyArrowFileIO: every small S3 write is a 3-request multipart upload; expose allow_delayed_openPosiblemente ocupada @David-Banquet la tomó hace 29 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
apache/iceberg-python#4093 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
Todos los issues de apache/iceberg-python
Issues similares
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 80/100
glossyio/traffic-monitor#312 ·
Los mantenedores suelen responder en 1 día
-
local devenv exampleAbiertodocumentation enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
es-ude/elastic-ai.creator#1046 ·
Los mantenedores suelen responder en 3 días
-
ENH: permit cachetools >= 7Abiertofeature request
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
confident-ai/deepteam#306 ·
Los mantenedores suelen responder en 1 día
-
SslLibrary crashes with unhandled OSError: port/proto not found on non-standard SSL portsPosiblemente ocupada @himanchalkaushale la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
OWASP/Nettacker#1884 · 1 comentario ·
Los mantenedores suelen responder en 1 día