You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iggy.apache.org by "numinnex (via GitHub)" <gi...@apache.org> on 2026/10/08 10:53:16 UTC
[I] consensus: retry the local write when every remote ack is already in [iggy]
numinnex opened a new issue, #4443:
URL: https://github.com/apache/iggy/issues/4443
### Bug description
`handle_prepare_timeout` (`core/consensus/src/impls.rs:2918-2967`) retransmits to every replica missing an ack, including the primary itself, and a send to self is a no-op (`core/shard/src/lib.rs:11635`). When all remote acks are in and the primary's own journal write is the laggard, the timer only backs off and the op does not commit.
The metadata plane papers over the durable case with `repair_primary_self_acks` (`core/metadata/src/impls/metadata.rs:3053`), which re-acks ops the primary already holds durably but does not retry a lagging write. The partition plane has no equivalent and fences the partition fatal instead (`core/partitions/src/iggy_partition.rs:5411-5425`).
### Affected area / component
Iggy server (consensus, both planes)
### Proposed solution
In `handle_prepare_timeout`, when the only missing ack is the primary's own, emit a `RetryLocalWrite { op }` action instead of `RetransmitPrepares`, and let the shard re-append and self-ack. Drop self from the retransmit targets.
### Alternatives considered
Port `repair_primary_self_acks` to the partition plane, which covers the durable-but-unacked case only. Keep the fatal fence.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@iggy.apache.org.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] consensus: retry the local write when every remote ack is already in [iggy]
Posted by "hubcio (via GitHub)" <gi...@apache.org>.
hubcio closed issue #4443: consensus: retry the local write when every remote ack is already in
URL: https://github.com/apache/iggy/issues/4443
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@iggy.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org