apollo_consensus_orchestrator,apollo_batcher,apollo_batcher_types: drop accessed_keys from blob#14808
apollo_consensus_orchestrator,apollo_batcher,apollo_batcher_types: drop accessed_keys from blob#14808yoavGrs wants to merge 1 commit into
Conversation
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
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 block Reviewed by Cursor Bugbot for commit ceea775. Bugbot is set up for automated code reviews on this repo. Configure here. |
7181c50 to
15d5ccb
Compare
…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>
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).

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