feat(avro): support LARGE_STRING, LARGE_BINARY, and LARGE_LIST in Avro datum writer
Los mantenedores suelen responder en 2 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 77/100
Línea de trabajo
Lee los tres TODOs en src/iceberg/avro/avro_data_util.cc en las líneas 751, 759 y 838, junto con los casos STRING, BINARY y LIST existentes a los que hacen referencia. Añade el tratamiento correspondiente para los tipos de array grandes de Arrow siguiendo esas implementaciones. Los arrays LARGE_STRING, LARGE_BINARY y LARGE_LIST se pueden escribir sin llegar a un caso no gestionado; el issue no indica qué pruebas ejecutar.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
The Avro datum writer in src/iceberg/avro/avro_data_util.cc currently handles arrow::Type::STRING, arrow::Type::BINARY, and arrow::Type::LIST but not their large variants. If an Arrow array with one of these large types is passed to the writer, it hits an unhandled case and fails.
The affected lines are:
- avro_data_util.cc:751 — TODO(gangwu): support LARGE_STRING
- avro_data_util.cc:759 — TODO(gangwu): support LARGE_BINARY
- avro_data_util.cc:838 — TODO(gangwu): support LARGE_LIST
The fix is to add case ::arrow::Type::LARGE_STRING, case ::arrow::Type::LARGE_BINARY, and case ::arrow::Type::LARGE_LIST handling, mirroring the existing non-large implementations but casting to arrow::LargeStringArray, arrow::LargeBinaryArray, and arrow::LargeListArray respectively.
I'd like to work on this.
- Lenguaje dominante
- C++
- Estrellas
- 227
- Forks
- 142
- Merge medio
- 3 d 21 min
- PR fusionados (30 d)
- 70
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
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-cpp
-
help wanted
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
apache/iceberg-cpp#1101 ·
Los mantenedores suelen responder en 2 días
-
Support Iceberg SQL viewsAbierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
apache/iceberg-cpp#1099 ·
Los mantenedores suelen responder en 2 días
-
Complete OAuth2 token refresh and expiration support (Java-compatible)Posiblemente ocupada @lishuxu la tomó hace 2 días. Abierto
apache/iceberg-cpp#1095 · 2 comentarios · 1 asignado ·
Los mantenedores suelen responder en 2 días
-
Make RestCatalog safe to share across threadsPosiblemente ocupada @smaheshwar-pltr la tomó hace 3 días. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
apache/iceberg-cpp#1091 ·
Los mantenedores suelen responder en 2 días
-
RestCatalog: concurrent HTTP requests can crash in libcurlPosiblemente ocupada @smaheshwar-pltr la tomó hace 3 días. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 20/100
apache/iceberg-cpp#1089 ·
Los mantenedores suelen responder en 2 días
Todos los issues de apache/iceberg-cpp
Issues similares
-
ai_p2
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
ClickHouse/ClickHouse#130006 ·
Los mantenedores suelen responder en 1 día
-
DepotMaintain: EN longer string moves the hint popup buttons out of reach // WpfGUI English LanguageAbiertoclient: WpfGui module: depot question
Dificultad 2/5 1-3 horas Aptitud para principiantes 64/100
MaaAssistantArknights/MaaAssistantArknights#19169 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
area: certificates bug outdated-version
Dificultad 1/5 Menos de una hora Aptitud para principiantes 65/100
RafaelNGP/xbox-cloud-gaming-ps5#381 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
Los mantenedores suelen responder en 1 día
-
parse_selu lowering loses catastrophic cancellation → silent 0.0 for moderate positive inputsAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
ROCm/AMDMIGraphX#5490 ·
Los mantenedores suelen responder en 3 días