Skip to content

feat: Populate footerBufferOverread for Nimble speculative IO#708

Closed
kewang1024 wants to merge 1 commit into
facebookincubator:mainfrom
kewang1024:export-D104326159
Closed

feat: Populate footerBufferOverread for Nimble speculative IO#708
kewang1024 wants to merge 1 commit into
facebookincubator:mainfrom
kewang1024:export-D104326159

Conversation

@kewang1024
Copy link
Copy Markdown
Contributor

@kewang1024 kewang1024 commented May 8, 2026

Summary: Compute and expose footerBufferOverread via TabletReader::Stats for Nimble speculative IO. In speculative mode, we read a configurable tail chunk to load the footer in one read. This stat captures the wasted bytes (speculativeIoSize - requiredSize), matching the existing DWRF RuntimeStatistics::footerBufferOverread semantics.

Reviewed By: xiaoxmeng

Differential Revision: D104326159

@meta-cla meta-cla Bot added the CLA Signed This label is managed by the Meta Open Source bot. label May 8, 2026
@meta-codesync
Copy link
Copy Markdown

meta-codesync Bot commented May 8, 2026

@kewang1024 has exported this pull request. If you are a Meta employee, you can view the originating Diff in D104326159.

@meta-codesync meta-codesync Bot changed the title feat: Populate footerBufferOverread for Nimble speculative IO feat: Populate footerBufferOverread for Nimble speculative IO (#708) May 8, 2026
kewang1024 pushed a commit to kewang1024/nimble that referenced this pull request May 8, 2026
…okincubator#708)

Summary:

CONTEXT: Nimble speculative IO reads a configurable tail chunk (default 8MB) to load the file footer in one read. DWRF already reports `footerBufferOverread` in runtime stats to measure the wasted bytes from speculative reads, but Nimble does not.
WHAT: Compute and expose `footerBufferOverread` in `TabletReader::loadAndInitFooter()` as `speculativeIoSize - (footerSize + postscriptSize)`, and populate `stats.footerBufferOverread` in `SelectiveNimbleRowReader::updateRuntimeStats()`. This reuses the existing DWRF stat with the same semantics.

Differential Revision: D104326159
@kewang1024 kewang1024 force-pushed the export-D104326159 branch from 0fd4ca4 to 4dab0ed Compare May 8, 2026 04:59
@meta-codesync meta-codesync Bot changed the title feat: Populate footerBufferOverread for Nimble speculative IO (#708) feat: Populate footerBufferOverread for Nimble speculative IO May 8, 2026
@kewang1024 kewang1024 force-pushed the export-D104326159 branch from 4dab0ed to 2db0379 Compare May 8, 2026 18:53
Summary: Compute and expose `footerBufferOverread` via `TabletReader::Stats` for Nimble speculative IO. In speculative mode, we read a configurable tail chunk to load the footer in one read. This stat captures the wasted bytes (`speculativeIoSize - requiredSize`), matching the existing DWRF `RuntimeStatistics::footerBufferOverread` semantics.

Reviewed By: xiaoxmeng

Differential Revision: D104326159
@meta-codesync
Copy link
Copy Markdown

meta-codesync Bot commented May 30, 2026

This pull request has been merged in 34aa47c.

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

Labels

CLA Signed This label is managed by the Meta Open Source bot. fb-exported Merged meta-exported

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant