get avoid snapshot interval calculate int overflow (#1088)

Signed-off-by: Andy.Chen <iRoiocam@gmail.com>
This commit is contained in:
AndyChen(JingZhangChen) 2024-02-01 02:29:27 +08:00 committed by GitHub
parent 5e00e6b8b7
commit 7dd5d73071
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -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 =