dajac commented on code in PR #14845: URL: https://github.com/apache/kafka/pull/14845#discussion_r1415298403
########## group-coordinator/src/main/java/org/apache/kafka/coordinator/group/generic/GenericGroup.java: ########## @@ -833,13 +835,15 @@ public void validateOffsetCommit( if (generationId != this.generationId) { throw Errors.ILLEGAL_GENERATION.exception(); } - } else if (!isInState(EMPTY)) { + } else if (!isTransactional && !isInState(EMPTY)) { // If the request does not contain the member id and the generation id (version 0), // offset commits are only accepted when the group is empty. + // This does not apply to transactional offset commits, since the older versions + // of this protocol do not require member id and generation id. throw Errors.UNKNOWN_MEMBER_ID.exception(); } - if (isInState(COMPLETING_REBALANCE)) { + if (!isTransactional && isInState(COMPLETING_REBALANCE)) { Review Comment: No. It is not applied but not for the same reason. For transactional offset commits, the group state is not checked but I have to admit that I don't know why. Let me update the comment anyway. -- 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: jira-unsubscr...@kafka.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org