hubcio opened a new pull request, #4477: URL: https://github.com/apache/iggy/pull/4477
Purge reset a live partition's history in place. Its machinery (generations, floors, a reset driver and durable markers) touched every replay, repair, transfer, install and poll path. The feature goes instead of being hardened further, with no compatibility path for old clients, peers or data directories. The Rust SDK, CLI, MCP tools, HTTP routes (now 404) and foreign SDKs drop purge. Operations 131 and 135 and codes 205 and 305 are retired and stay reserved. The metadata state machine loses the purge handlers and generation. The reconciler pass, shard purge frame, generation gates and deferred-purge metric go too. The partition plane loses the purge driver, floor, purge.gen record and WAL frontier marker. Without purge, the floor is always 0 and ops start at 1, so the removed guards never change a result. The queued offset history refusals stay, because a state transfer install still resets the poll history. The no-ack history check goes, because single-replica partitions never install a transfer. New versions stop a node from misreading an older file: storage marker IGGY-NO-PURGE-1, snapshot 10, offsets artifact 6 and WAL frontier IGGYWAL4. They skip 9 and 5, because #4456 builds already wrote them. Older data directories need --fresh, and old and new replicas do not form a cluster. The server dropped a client request with an undeclared operation byte, so the lockstep connection stalled. Older clients still send 131 and 135. The server now answers InvalidCommand and echoes the original byte, on the drain and over-queue paths. -- 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: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
