gitedmond opened a new pull request, #23514: URL: https://github.com/apache/kafka/pull/23514
Kafka can fail to load a group during an online consumer-to-classic downgrade when log compaction races with coordinator replay. The loader may encounter a classic group followed by consumer-group records whose upgrade tombstone was removed, and throws `Group <id> is not a consumer group`. Consumer tombstones from the downgrade can also arrive after the classic group is loaded. This change lets replay create a consumer group from a positive consumer record when the group currently has the classic type, and treats consumer tombstones against a classic group as no-ops. Validation for Streams and Share group collisions remains strict. The PR adds record-level regression tests covering migration, tombstones, unrelated group types, and snapshot rollback. It also enables the two consumer downgrade compaction-replay tests added in #23220. Both of those tests failed with the reported exception before this change and pass afterward. Validation: `:group-coordinator:test :group-coordinator:spotlessCheck` (including Checkstyle and SpotBugs) on current trunk. The focused before/after reproduction was verified separately against the unmodified replay helper. -- 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]
