apollo_consensus_orchestrator,apollo_batcher,apollo_batcher_types: drop accessed_keys from blob - #14808
Conversation
This stack of pull requests is managed by Graphite. Learn more about stacking. |
a3b312a to
7181c50
Compare
PR SummaryLow Risk Overview The batcher still builds accessed keys on Reviewed by Cursor Bugbot for commit c67243f. Bugbot is set up for automated code reviews on this repo. Configure here. |
7181c50 to
15d5ccb
Compare
15d5ccb to
ceea775
Compare
64a743e to
34fca2e
Compare
itamar-starkware
left a comment
There was a problem hiding this comment.
One constructor was missed by the removal: crates/central_systest_blobs/src/cende_blob_regression_test.rs:250 (impl From<BlockData> for BlobParameters) still initializes the deleted field, so the crate no longer compiles with the feature:
$ cargo check -p central_systest_blobs --features os_input --tests
error[E0560]: struct `BlobParameters` has no field named `accessed_keys`
--> crates/central_systest_blobs/src/cende_blob_regression_test.rs:250:13
CI stays green only because apollo_storage_os_input_ci.yml doesn't build central_systest_blobs with os_input (the crate's feature forwards to apollo_consensus_orchestrator/os_input). Fix — drop the two stale lines:
#[cfg(feature = "os_input")]
recent_state_commitment_infos: vec![],
- #[cfg(feature = "os_input")]
- accessed_keys: Default::default(),
#[cfg(feature = "os_input")]
initial_reads: Default::default(),Consider also adding central_systest_blobs to the os_input CI workflow (separate PR is fine) so the next blob-shape change can't break it silently.
Otherwise LGTM — verified the blob field had no remaining reader (the parity test always stripped it, i.e. the python schema never had it), the batcher still computes accessed keys locally for the committer and the initial_reads trim, and the clone() drop at batcher.rs:1011 is a strict win.
@itamar-starkware+AGNT made 1 comment.
Reviewable status: 0 of 5 files reviewed, all discussions resolved (waiting on yoavGrs).
itamar-starkware
left a comment
There was a problem hiding this comment.
Look at the comment, there is a spot you missed using accessed_keys in blob.
@itamar-starkware reviewed 5 files and all commit messages, and made 1 comment.
Reviewable status:complete! all files reviewed, all discussions resolved (waiting on yoavGrs).
34fca2e to
e51ca6a
Compare
ceea775 to
6a2cdc5
Compare
yoavGrs
left a comment
There was a problem hiding this comment.
Done.
And fixed the workflow file.
@yoavGrs made 1 comment.
Reviewable status:complete! all files reviewed, all discussions resolved (waiting on yoavGrs).
itamar-starkware
left a comment
There was a problem hiding this comment.
@itamar-starkware reviewed 3 files and all commit messages, and made 1 comment.
Reviewable status:complete! all files reviewed, all discussions resolved (waiting on yoavGrs).
…op accessed_keys from blob Remove the os_input-gated `accessed_keys: AccessedKeys` field from `AerospikeBlob` and its dead plumbing: the matching `BlobParameters` field, the blob construction, and the now-unused `CentralObjects.accessed_keys` (its only reader was the blob build). The batcher still computes the block's accessed keys for the committer and for trimming `initial_reads`; only the blob no longer carries them. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> apollo_batcher: pass accessed_keys by move instead of clone in decision_reached The clone became redundant once CentralObjects.accessed_keys was dropped: the write task was the last consumer. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
6a2cdc5 to
c67243f
Compare
e51ca6a to
e23b028
Compare
yoavGrs
left a comment
There was a problem hiding this comment.
@yoavGrs made 1 comment.
Reviewable status: 1 of 7 files reviewed, 1 unresolved discussion (waiting on itamar-starkware).
.github/workflows/apollo_storage_os_input_ci.yml line 78 at r2 (raw file):
# Check that the crate is compilable with the os_input feature. Not running the tests to # avoid the time-consuming GCS access. - run: cargo check -p central_systest_blobs --features os_input --tests
Compiling this crate is still heavy.
But, IMO no CI change needed: the merge queue runs cargo clippy --workspace --all-targets --all-features , which compiles central_systest_blobs's tests with os_input enabled.
itamar-starkware
left a comment
There was a problem hiding this comment.
@itamar-starkware reviewed 6 files and all commit messages, and resolved 1 discussion.
Reviewable status:complete! all files reviewed, all discussions resolved (waiting on yoavGrs).
|
Security scan complete — no issues detected. Generated by Claude Code |

Remove the os_input-gated
accessed_keys: AccessedKeysfield fromAerospikeBloband its deadplumbing: the matching
BlobParametersfield, the blob construction, and the now-unusedCentralObjects.accessed_keys(its only reader was the blob build). The batcher still computesthe block's accessed keys for the committer and for trimming
initial_reads; only the blob nolonger carries them.
Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com