pjfanning opened a new pull request, #380: URL: https://github.com/apache/pekko-persistence-r2dbc/pull/380
Ports tests and a production code improvement from `akka-persistence-r2dbc` that were missing in this repo. The akka-persistence-r2dbc 1.1.0 changes are available under the Apache License, version 2.0. https://github.com/akka/akka-persistence-r2dbc/pull/345 has the skipPubSubTooFarAhead code and it is missing from pekko. ## Production code changes ### `R2dbcReadJournal.scala` - Added `skipPubSubTooFarAhead` internal method (ported from the akka repo). This flow stage drops pub/sub events that arrive too far ahead of the backtracking cursor, preventing spurious duplicates and out-of-order delivery when backtracking is enabled. - Wired `skipPubSubTooFarAhead` into the `eventsBySlices` pub/sub pipeline, between the merge and the deduplication stage. ## Test changes ### `TestActors.scala` - Added `GetSeqNr` command to `Persister` (replies with current sequence number via `EventSourcedBehavior.lastSequenceNumber`) — required by the new cleanup specs. - Added `GetRevision` command to `DurableStatePersister` (replies with current revision via `DurableStateBehavior.lastSequenceNumber`) — required by the new cleanup spec. ### New test files (ported and adapted from akka repo) - `cleanup/scaladsl/DurableStateCleanupSpec.scala` — tests `DurableStateCleanup`: delete-and-reset, delete-keep-revision, and bulk delete. - `cleanup/scaladsl/EventSourcedCleanupSpec.scala` — tests `EventSourcedCleanup`: delete events (with and without seq-nr reset), batch deletes verified via `LoggingTestKit`, partial deletes, snapshot cleanup, and bulk operations. - `journal/MultiPluginSpec.scala` — tests that a second independent r2dbc plugin config (`second-r2dbc`) can be used alongside the default plugin for `EventSourcedBehavior`. All akka package names and config keys have been replaced with their pekko equivalents. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
