Skip to content

feat(core): support local-cache extension exclusions - #972

Draft
XiaoHongbo-Hope wants to merge 12 commits into
apache:mainfrom
XiaoHongbo-Hope:codex/blob-meta-cache
Draft

XiaoHongbo-Hope wants to merge 12 commits into
apache:mainfrom
XiaoHongbo-Hope:codex/blob-meta-cache

Conversation

@XiaoHongbo-Hope

@XiaoHongbo-Hope XiaoHongbo-Hope commented Sep 27, 2026 •

Copy link
Copy Markdown
Contributor

Purpose

Closes #971. Allow data file blocks to be cached while BLOB bodies bypass the cache:

local-cache.whitelist=meta,global-index,data
local-cache.exclude-extensions=blob

The exclusion is optional and takes precedence over the whitelist. Empty exclusion preserves existing data behavior. Parquet, ORC and Avro use the existing block cache; no new cache format or reader API is introduced. Related Python change: apache/paimon#10225.

RocksDB BlobDB similarly treats reference-containing SST blocks as better cache targets than individual blob values. This PR selects file blocks, not decoded descriptors.

Validation

IO tests cover memory and disk caches, Parquet/ORC/Avro warm reads, BLOB bypass, empty exclusion and extension normalization. Formatting and scoped Clippy passed.

A previous native benchmark of the equivalent .parquet/.blob policy on a fixed clip (three runs per variant, 131,072 samples per run) measured median throughput of 476.08 → 509.44 samples/s and host network receive of 2.765 → 0.550 MiB/sample. This is a hot-working-set result, not a count of OSS requests or a benchmark of this exact commit.

@XiaoHongbo-Hope XiaoHongbo-Hope changed the title feat(core): support BLOB metadata caching feat(core): support Parquet-only local caching Sep 27, 2026
@XiaoHongbo-Hope XiaoHongbo-Hope changed the title feat(core): support Parquet-only local caching feat(core): support local-cache extension exclusions Sep 28, 2026
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.

Support local-cache extension exclusions

1 participant