Skip to content

cli: Move Coalesced Remote Range-Read Logic Into Reusable mcap Crate Reader APIs #1677

Description

@amacneil

Context: uncovered while porting the MCAP CLI from Go to Rust. The Rust port implemented remote range reads with CLI-local workarounds; this tracks promoting them into reusable mcap crate APIs (requires new public crate API).

Before Rust CLI 1.0, consider moving the CLI-local coalesced summary range reads into reusable mcap crate reader APIs so HTTP(S), S3, GCS, and Azure Blob Storage backends can share tail/summary range reads instead of each transport adding its own read-ahead workaround.

  • A future mcap crate API should also make range-backed parsing of exact indexed records ergonomic without requiring callers to duplicate record parsing logic in the CLI.
  • Avoid double-touching summaryless remote inputs when --allow-remote-scan is set. Today the CLI attempts indexed discovery with a range probe and footer read before falling back to full-file materialization; a future implementation could share probe/footer state with materialization or skip indexed discovery for commands that already know they must scan.

This requires new public mcap crate API.

Metadata

Metadata

Assignees

Labels

clirustRelated to the rust implementation

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions