This is an automated email from the ASF dual-hosted git repository.

cmccabe pushed a commit to branch 3.0
in repository https://gitbox.apache.org/repos/asf/kafka.git


The following commit(s) were added to refs/heads/3.0 by this push:
     new 3c2afb2  MINOR: Fix KRaft snapshot delete bug in Scala 2.12 (#10997)
3c2afb2 is described below

commit 3c2afb27d076ccdb3019e2164ad2c133b0554eab
Author: David Arthur <[email protected]>
AuthorDate: Thu Jul 8 16:50:06 2021 -0700

    MINOR: Fix KRaft snapshot delete bug in Scala 2.12 (#10997)
    
    The sliding window + takeWhile behavior over a sequence seems somewhat
    different between Scala 2.12 and Scala 2.13. This PR works around the
    difference by using foreach with an early return.
    
    Reviewers: Colin P. McCabe <[email protected]>
---
 core/src/main/scala/kafka/raft/KafkaMetadataLog.scala | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/core/src/main/scala/kafka/raft/KafkaMetadataLog.scala 
b/core/src/main/scala/kafka/raft/KafkaMetadataLog.scala
index df8e1af..697d7b6 100644
--- a/core/src/main/scala/kafka/raft/KafkaMetadataLog.scala
+++ b/core/src/main/scala/kafka/raft/KafkaMetadataLog.scala
@@ -404,13 +404,12 @@ final class KafkaMetadataLog private (
       return false
 
     var didClean = false
-    snapshots.keys.toSeq.sliding(2).toSeq.takeWhile {
+    snapshots.keys.toSeq.sliding(2).foreach {
       case Seq(snapshot: OffsetAndEpoch, nextSnapshot: OffsetAndEpoch) =>
         if (predicate(snapshot) && deleteBeforeSnapshot(nextSnapshot)) {
           didClean = true
-          true
         } else {
-          false
+          return didClean
         }
       case _ => false // Shouldn't get here with the sliding window
     }

Reply via email to