Skip to content

[python] Defer BLOB payload reads until after filtering#8808

Draft
XiaoHongbo-Hope wants to merge 3 commits into
apache:masterfrom
XiaoHongbo-Hope:defer_blob_resolve
Draft

[python] Defer BLOB payload reads until after filtering#8808
XiaoHongbo-Hope wants to merge 3 commits into
apache:masterfrom
XiaoHongbo-Hope:defer_blob_resolve

Conversation

@XiaoHongbo-Hope

Copy link
Copy Markdown
Contributor

Purpose

Filtered data-evolution scans previously materialized projected BLOB payloads before applying residual filters and limits. This made filtered-out rows still incur payload I/O.

Read eligible BLOB fields as descriptors through merge, filter and limit, then materialize only surviving rows. Predicates referencing the BLOB field keep the eager path. read.defer-blob-resolve=false restores the previous behavior.

Tests

  • deferred_blob_resolve_test.py
  • data_evolution_deletion_vector_test.py
  • test_limit_pushdown.py
  • DedicatedFormatWriterTest#test_update_blob_column
  • DedicatedFormatWriterTest#test_array_blob_column_write_read_and_update
  • DedicatedFormatWriterTest#test_map_blob_column_write_read_and_update

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant