You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "loboxu (Jira)" <ji...@apache.org> on 2021/06/19 10:52:00 UTC

[jira] [Assigned] (KAFKA-12333) KafkaMetadataLog and MockLock should validate that appended epochs are monotonically

     [ https://issues.apache.org/jira/browse/KAFKA-12333?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

loboxu reassigned KAFKA-12333:
------------------------------

    Assignee:     (was: loboxu)

> KafkaMetadataLog and MockLock should validate that appended epochs are monotonically
> ------------------------------------------------------------------------------------
>
>                 Key: KAFKA-12333
>                 URL: https://issues.apache.org/jira/browse/KAFKA-12333
>             Project: Kafka
>          Issue Type: Sub-task
>          Components: replication
>            Reporter: Jose Armando Garcia Sancio
>            Priority: Major
>
> Both the MockLog and KafkaMetadataLog should only allow appendAsLeader and appendAsFollower with monotonically increasing epochs. In other words the following test in KafkaMetadataLogTest should fail:
> {code:java}
>   @Test
>   def testOutOfOrderEpoch(): Unit = {
>     val topicPartition = new TopicPartition("cluster-metadata", 0)
>     val log = buildMetadataLog(tempDir, mockTime, topicPartition)    val recordFoo = new SimpleRecord("foo".getBytes())
>     val currentEpoch = 3
>     val initialOffset = log.endOffset().offset    log.appendAsLeader(
>       MemoryRecords.withRecords(initialOffset, CompressionType.NONE, currentEpoch, recordFoo),
>       currentEpoch
>     )    // Out order epoch should throw an exception
>     log.appendAsLeader(
>       MemoryRecords.withRecords(
>         initialOffset + 1, CompressionType.NONE, currentEpoch - 1, recordFoo
>       ),
>       currentEpoch - 1
>     )    log.appendAsFollower(
>       MemoryRecords.withRecords(
>         initialOffset + 2, CompressionType.NONE, currentEpoch - 2, recordFoo
>       )
>     )
>   } {code}
> The same for MockLogTest.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)