The GitHub Actions job "C++ Linter" on iceberg-cpp.git/avro_writer has failed.
Run started by GitHub user shangxinli (triggered by shangxinli).

Head commit for run:
2fec4dd855be6f7a881cbc2ed85769d9aa036709 / Xinli Shang <[email protected]>
feat: implement direct Avro encoder for performance

Implement direct Avro encoder to eliminate GenericDatum intermediate layer,
matching the decoder approach for better performance.

Implementation:
- Add avro_direct_encoder_internal.h with EncodeArrowToAvro API
- Add avro_direct_encoder.cc implementing direct Arrow→Avro encoding
  - All primitive types: bool, int, long, float, double, string, binary
  - Temporal types: date, time, timestamp
  - Logical types: uuid, decimal
  - Nested types: struct, list, map (both string and non-string keys)
  - Union type handling for optional fields
- Modify avro_writer.cc to use DataFileWriterBase with direct encoder
- Add EncodeContext to reuse scratch buffers and avoid allocations

This matches Java Iceberg implementation using Encoder interface directly,
avoiding intermediate object allocation overhead.

Report URL: https://github.com/apache/iceberg-cpp/actions/runs/20558599702

With regards,
GitHub Actions via GitBox

Reply via email to