hubcio commented on issue #4273: URL: https://github.com/apache/iggy/issues/4273#issuecomment-5831355217
@almostintuitive thanks for repro and diagnosis. only the killed node would submit the disconnect `Logout`, and since `Register` is replicated, survivors keep the dead session, so a client-table check can't catch it. #4283 uses leases instead. every `consumer_group.heartbeat_interval` (5s), each node reports the sessions it holds to the metadata primary, which commits a `Logout` for any member nobody reported for `consumer_group.session_timeout` (30s). both settings are new, `rebalancing_timeout` isn't involved. on your "crashed node must stop deferring expiry" point: silence doesn't defer anything, only an explicit "incomplete client list" report does. a new primary gives every member a fresh timeout, so with defaults the dead member is gone ~40-45s after the kill (~5s election, 30s timeout, up to one report interval). i ran your gist unchanged except for `--ulimit memlock=-1:-1` in `cluster.sh`, since my docker daemon caps locked memory at 8 MB and iggy (stock edge too) panics on io_uring setup without it. with your `85a397d0e5fd` go sdk pin, stock `apache/iggy:edge` exits 1 exactly like yours. musl (`core/server/Dockerfile`) and glibc builds of the branch exit 0, 2 of 2 runs each. member `0` was gone by 53s, the live consumer got `[0 1 2]`, and nothing came back after `docker start iggy-0`. to try it from the PR branch (ignore the `RepoDigests` template error `run.sh` prints for local images): ```bash docker build -f core/server/Dockerfile --target runtime --build-arg RUST_VERSION=1.98.0 -t iggy-4273 . ./run.sh stale-member iggy-4273 85a397d0e5fd36262a3bbc203165c7a5e01b9029 ``` the PR also adds a cluster test for this case: kill the primary hosting the member, wait for expiry, restart the node, check the member stays gone. -- 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]
