diff --git a/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/internal/RetentionCriteriaImpl.scala b/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/internal/RetentionCriteriaImpl.scala index 5c125ecabfd..6caa28b80dd 100644 --- a/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/internal/RetentionCriteriaImpl.scala +++ b/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/internal/RetentionCriteriaImpl.scala @@ -36,14 +36,14 @@ import pekko.persistence.typed.scaladsl def deleteUpperSequenceNr(lastSequenceNr: Long): Long = { // Delete old events, retain the latest - math.max(0, lastSequenceNr - (keepNSnapshots * snapshotEveryNEvents)) + math.max(0, lastSequenceNr - (keepNSnapshots.toLong * snapshotEveryNEvents)) } def deleteLowerSequenceNr(upperSequenceNr: Long): Long = { // We could use 0 as fromSequenceNr to delete all older snapshots, but that might be inefficient for // large ranges depending on how it's implemented in the snapshot plugin. Therefore we use the // same window as defined for how much to keep in the retention criteria - math.max(0, upperSequenceNr - (keepNSnapshots * snapshotEveryNEvents)) + math.max(0, upperSequenceNr - (keepNSnapshots.toLong * snapshotEveryNEvents)) } override def withDeleteEventsOnSnapshot: SnapshotCountRetentionCriteriaImpl =