c

com.digitalasset.canton.resource

EnterpriseDbMigrations

class EnterpriseDbMigrations extends DbMigrations with NamedLogging

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. EnterpriseDbMigrations
  2. NamedLogging
  3. DbMigrations
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new EnterpriseDbMigrations(dbConfig: DbConfig, devVersionSupport: Boolean, name: String, clock: Clock, timeouts: ProcessingTimeout, loggerFactory: NamedLoggerFactory)(implicit ec: ExecutionContext, closeContext: CloseContext)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def checkDbVersion(timeouts: ProcessingTimeout, standardConfig: Boolean)(implicit tc: TraceContext): EitherT[UnlessShutdown, Error, Unit]
    Definition Classes
    DbMigrations
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  7. implicit val closeContext: CloseContext
    Attributes
    protected
    Definition Classes
    EnterpriseDbMigrationsDbMigrations
  8. def connectionCheck(failFast: Boolean, processingTimeout: ProcessingTimeout)(implicit tc: TraceContext): EitherT[UnlessShutdown, Error, Unit]
    Definition Classes
    DbMigrations
  9. def createDataSource(jdbcDataSource: JdbcDataSource): DataSource
    Attributes
    protected
    Definition Classes
    DbMigrations
  10. def createFlyway(dataSource: DataSource): Flyway

    Database is migrated using Flyway, which looks at the migration files at src/main/resources/db/migration/canton as explained at https://flywaydb.org/documentation/getstarted/firststeps/api

    Database is migrated using Flyway, which looks at the migration files at src/main/resources/db/migration/canton as explained at https://flywaydb.org/documentation/getstarted/firststeps/api

    Attributes
    protected
    Definition Classes
    DbMigrations
  11. val dbConfig: DbConfig
    Attributes
    protected
    Definition Classes
    EnterpriseDbMigrationsDbMigrations
  12. val devVersionSupport: Boolean

    Whether we want to add the schema files found in the dev folder to the migration

    Whether we want to add the schema files found in the dev folder to the migration

    A user that does that, won't be able to upgrade to new Canton versions, as we reserve our right to just modify the dev version files in any way we like.

    Attributes
    protected
    Definition Classes
    EnterpriseDbMigrationsDbMigrations
  13. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  15. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  16. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  17. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  18. def logger: TracedLogger
    Attributes
    protected
    Definition Classes
    NamedLogging
  19. val loggerFactory: NamedLoggerFactory
    Attributes
    protected
    Definition Classes
    EnterpriseDbMigrationsNamedLogging
  20. implicit def loggingContext(implicit traceContext: TraceContext): ErrorLoggingContext
    Attributes
    protected
    Definition Classes
    NamedLogging
  21. def migrateDatabase(): EitherT[UnlessShutdown, Error, Unit]

    Migrate the database with all pending migrations.

    Migrate the database with all pending migrations.

    Definition Classes
    DbMigrations
  22. def migrateDatabaseInternal(db: slick.jdbc.JdbcBackend.Database)(implicit traceContext: TraceContext): EitherT[UnlessShutdown, Error, Unit]
    Attributes
    protected
    Definition Classes
    DbMigrations
  23. def migrateIfFresh(): EitherT[UnlessShutdown, Error, Unit]

    Migrate a database if it is empty, otherwise skip the migration.

    Migrate a database if it is empty, otherwise skip the migration.

    Definition Classes
    DbMigrations
  24. def migrateIfFreshAndCheckPending(): EitherT[UnlessShutdown, Error, Unit]

    Combined method of migrateIfFresh and checkPendingMigration, avoids creating multiple pools

    Combined method of migrateIfFresh and checkPendingMigration, avoids creating multiple pools

    Definition Classes
    DbMigrations
  25. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  26. def noTracingLogger: Logger
    Attributes
    protected
    Definition Classes
    NamedLogging
  27. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  28. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  29. def repairFlywayMigration(): EitherT[UnlessShutdown, Error, Unit]

    Repair the database in case the migrations files changed (e.g.

    Repair the database in case the migrations files changed (e.g. due to comment changes) To quote the Flyway documentation: Repair is your tool to fix issues with the schema history table. It has a few main uses:

    - Remove failed migration entries (only for databases that do NOT support DDL transactions) - Realign the checksums, descriptions, and types of the applied migrations with the ones of the available migrations - Mark all missing migrations as deleted

    Definition Classes
    DbMigrations
  30. def repairFlywayMigrationInternal(db: slick.jdbc.JdbcBackend.Database)(implicit traceContext: TraceContext): EitherT[UnlessShutdown, Error, Unit]
    Attributes
    protected
    Definition Classes
    DbMigrations
  31. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  32. def toString(): String
    Definition Classes
    AnyRef → Any
  33. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  34. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  35. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  36. def withCreatedDb[A](fn: (slick.jdbc.JdbcBackend.Database) => EitherT[UnlessShutdown, Error, A]): EitherT[UnlessShutdown, Error, A]
    Attributes
    protected
    Definition Classes
    DbMigrations
  37. def withDb[A](fn: (slick.jdbc.JdbcBackend.Database) => EitherT[UnlessShutdown, Error, A])(implicit traceContext: TraceContext): EitherT[UnlessShutdown, Error, A]

    In the enterprise edition with possibly multiple nodes sharing the same database, we use a DB-lock based coordination for performing the DB migration.

    In the enterprise edition with possibly multiple nodes sharing the same database, we use a DB-lock based coordination for performing the DB migration. Only the node that acquired the lock performs the migration operation at a time.

    Attributes
    protected
    Definition Classes
    EnterpriseDbMigrationsDbMigrations
  38. def withFlyway[A](fn: (slick.jdbc.JdbcBackend.Database, Flyway) => EitherT[UnlessShutdown, Error, A])(implicit traceContext: TraceContext): EitherT[UnlessShutdown, Error, A]
    Attributes
    protected
    Definition Classes
    DbMigrations

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from NamedLogging

Inherited from DbMigrations

Inherited from AnyRef

Inherited from Any

Ungrouped