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

Jose Armando Garcia Sancio updated KAFKA-12253:
-----------------------------------------------
    Description: 
Add tests for the cases that ReplicatedLog::validateOffsetAndEpoch needs to 
cover. This include:

 
 # epoch > last known epoch =>  return diverging(log.endOffset, 
log.lastFetchedEpoch)
 # epoch < oldest snapshot epoch => return snapshot(latestSnapshotId)
 # epoch == oldest snapshot epoch:
 ## offset < oldest snapshot offset => return snapshot(latestSnapshotId)
 ## offset == oldest snapshot offset => return valid
 # Now look up end offset for epoch:
 ## epoch unknown, less than the last known epoch and greater oldest snapshot 
epoch => return diverging(endOffset/epoch)
 ## found epoch in the log; end offset < offset => return 
diverging(endOffset/epoch)
 ## valid

  was:
Add tests for the cases that ReplicatedLog::validateOffsetAndEpoch needs to 
cover. This include:

 
 # epoch > last known epoch =>  return diverging(log.endOffset, 
log.lastFetchedEpoch)
 # epoch < oldest snapshot epoch => return snapshot(latestSnapshotId)
 # epoch == oldest snapshot epoch:
 ## offset < oldest snapshot offset => return snapshot(latestSnapshotId)
 ## offset == oldest snapshot offset => return valid
 # Now look up end offset for epoch:
 ## epoch unknown, less than the last known epoch and greater oldest snapshot 
epoch => return diverging(endOffset/epoch)
 ## found epoch; end offset < offset => return diverging(endOffset/epoch)
 ## valid


> Add tests that cover all of all of the cases for 
> ReplicatedLog::validateOffsetAndEpoch
> --------------------------------------------------------------------------------------
>
>                 Key: KAFKA-12253
>                 URL: https://issues.apache.org/jira/browse/KAFKA-12253
>             Project: Kafka
>          Issue Type: Sub-task
>          Components: replication
>            Reporter: Jose Armando Garcia Sancio
>            Assignee: Rohit Deshpande
>            Priority: Major
>
> Add tests for the cases that ReplicatedLog::validateOffsetAndEpoch needs to 
> cover. This include:
>  
>  # epoch > last known epoch =>  return diverging(log.endOffset, 
> log.lastFetchedEpoch)
>  # epoch < oldest snapshot epoch => return snapshot(latestSnapshotId)
>  # epoch == oldest snapshot epoch:
>  ## offset < oldest snapshot offset => return snapshot(latestSnapshotId)
>  ## offset == oldest snapshot offset => return valid
>  # Now look up end offset for epoch:
>  ## epoch unknown, less than the last known epoch and greater oldest snapshot 
> epoch => return diverging(endOffset/epoch)
>  ## found epoch in the log; end offset < offset => return 
> diverging(endOffset/epoch)
>  ## valid



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

Reply via email to