PostgreSQL plugin for Akka Persistence
This release brings a performance improvement to users of PartitionedJournalDao
. As explained in the migration guide, a new journal_metadata
table is used to store data about each persistence id, to have fast access to it and avoid the usage of the following query:
select max("sequence_number") from "journal" where "persistence_id" = ?
.
Please follow the migration guide for examples.
This release brings major change for journals partitioned by ordering
values. (persistence_id, sequence_number)
index is now unique and can be (re)built without taking any locks that prevent concurrent inserts, updates, or deletes on the table. In other words migration can be lockless.
See full list of changes: https://github.com/SwissBorg/akka-persistence-postgres/milestone/7?closed=1
New indices need to be created on each partition, to avoid locking production databases for too long, it should be done in 2 steps:
Execute DDL statements produced by the sample migration script, adapt top level variables to match your journal configuration before executing.
See sample flyway migration script and adapt top level variables to match your journal configuration.
slick-pg
brings a dependency conflict with akka
, more precisely between ssl-config-core
and akka
, since both rely on different versions of scala-parser-combinators
. Excludingssl-config-core
from akka
should be enough to solve any issues. Please refer to here for more information.slick-pg
brings a dependency conflict with akka
, more precisely with a ssl-config-core
an akka
dependency, since both rely on different versions of scala-parser-combinators
. Excludingssl-config-core
from akka
should be enough to solve any issues. Please refer to here for more information.akka-persistence-query
is now a Provided
dependency and minimum supported version is 2.6.16
; #228This release is focused on updating dependencies.
This release brings major change for journals partitioned by ordering
values. (persistence_id, sequence_number)
index is now unique and can be (re)built without taking any locks that prevent concurrent inserts, updates, or deletes on the table. In other words migration can be lockless.
See full list of changes: https://github.com/SwissBorg/akka-persistence-postgres/milestone/7?closed=1
New indices need to be created on each partition, to avoid locking production databases for too long, it should be done in 2 steps:
Execute DDL statements produced by the sample migration script, adapt top level variables to match your journal configuration before executing.
See sample flyway migration script and adapt top level variables to match your journal configuration.
This release is focused on updating dependencies and minor bug fixes (#141 ).
See full list of changes: https://github.com/SwissBorg/akka-persistence-postgres/milestone/6?closed=1