mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2026-05-14 20:10:37 +00:00
* feat: support write flat as primary key format Signed-off-by: evenyag <realevenyag@gmail.com> * feat: migrate flush to always use FlatSource Add FormatType propagation in SstWriteRequest and use it to choose Flat vs PrimaryKey write paths (write_all_flat vs write_all_flat_as_primary_key) in AccessLayer and WriteCache. Make compactor and flush derive the sst_write_format from region options or engine config. Simplify flush logic and remove the old memtable_source helper. Update tests to set default sst_write_format. Signed-off-by: evenyag <realevenyag@gmail.com> * refactor: compaction use flat source Signed-off-by: evenyag <realevenyag@gmail.com> * refactor: read parquet sequentially as flat batches Signed-off-by: evenyag <realevenyag@gmail.com> * refactor: remove new_batch_with_binary in favor of new_record_batch_with_binary Replace PrimaryKeyWriteFormat with FlatWriteFormat in test_read_large_binary test and use new_record_batch_with_binary directly, removing the now-unused new_batch_with_binary function and its BinaryArray import. Signed-off-by: evenyag <realevenyag@gmail.com> * test: add tests for PrimaryKeyWriteFormat::convert_flat_batch Signed-off-by: evenyag <realevenyag@gmail.com> * refactor: remove Either from SstWriteRequest Signed-off-by: evenyag <realevenyag@gmail.com> * fix: handle index build mode Signed-off-by: evenyag <realevenyag@gmail.com> * fix: consider sparse encoding and last non null in flush Signed-off-by: evenyag <realevenyag@gmail.com> * test: add unit tests for field_column_start edge cases Signed-off-by: evenyag <realevenyag@gmail.com> --------- Signed-off-by: evenyag <realevenyag@gmail.com>