Skip to content

Commit f76da83

Browse files
authored
Merge pull request #114 from SwissBorg/default-flyway-schema
Migration tool: use journal schema name as the default flyway schema
2 parents 8f3a60c + f02b913 commit f76da83

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

migration/src/main/scala/akka/persistence/postgres/migration/AkkaPersistencePostgresMigration.scala

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ import slick.jdbc.JdbcBackend
1818
import scala.concurrent.Future
1919
import scala.util.Try
2020

21-
class AkkaPersistencePostgresMigration private (flyway: Flyway, onComplete: Try[MigrateResult] => Unit)(
22-
implicit system: ActorSystem) {
21+
class AkkaPersistencePostgresMigration private (flyway: Flyway, onComplete: Try[MigrateResult] => Unit)(implicit
22+
system: ActorSystem) {
2323

2424
/**
2525
* Perform journal & snapshot store migrations.
@@ -46,7 +46,13 @@ object AkkaPersistencePostgresMigration {
4646
def configure(config: Config): Builder = {
4747
val flywayConfig =
4848
Flyway.configure.table("persistence_schema_history")
49-
Builder(flywayConfig, config)
49+
val journalConfigPath = config.getString("akka.persistence.journal.plugin")
50+
val schema = {
51+
val journalSchemaCfgKey = s"$journalConfigPath.tables.journal.schemaName"
52+
if (config.hasPath(journalSchemaCfgKey)) config.getString(journalSchemaCfgKey)
53+
else "public"
54+
}
55+
Builder(flywayConfig, config).withSchemaHistoryTableSchema(schema)
5056
}
5157

5258
case class Builder private (flywayConfig: FluentConfiguration, config: Config) {

0 commit comments

Comments
 (0)