[ https://issues.apache.org/jira/browse/KAFKA-4746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15858659#comment-15858659 ]
Jason Gustafson commented on KAFKA-4746: ---------------------------------------- I never thought of someone trying this, but it makes sense to forbid it. I'm not sure why you say committing offsets for a compacted topic doesn't make sense though. Can you elaborate? > Offsets can be committed for the offsets topic > ---------------------------------------------- > > Key: KAFKA-4746 > URL: https://issues.apache.org/jira/browse/KAFKA-4746 > Project: Kafka > Issue Type: Bug > Components: core > Affects Versions: 0.9.0.0 > Reporter: Grant Henke > > Though this is likely rare and I don't suspect to many people would try to do > this, we should prevent users from committing offsets for the offsets topic > into the offsets topic. This would essentially create an infinite loop in any > consumer consuming from that topic. Also committing offsets for a compacted > topic doesn't likely make sense anyway. > Here is a quick failing test I wrote to see if this guard exists: > {code:title=OffsetCommitTest.scala|borderStyle=solid} > @Test > def testOffsetTopicOffsetCommit() { > val topic1 = "__consumer_offsets" > // Commit an offset > val expectedReplicaAssignment = Map(0 -> List(1)) > val commitRequest = OffsetCommitRequest( > groupId = group, > requestInfo = immutable.Map(TopicAndPartition(topic1, 0) -> > OffsetAndMetadata(offset=42L)), > versionId = 2 > ) > val commitResponse = simpleConsumer.commitOffsets(commitRequest) > assertEquals(Errors.INVALID_TOPIC_EXCEPTION.code, > commitResponse.commitStatus.get(TopicAndPartition(topic1, 0)).get) > } > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346)