object CantonLedgerApiServerWrapper extends NoTracing
Wrapper of Ledger Api Server to manage start, stop, and erasing of state.
- Alphabetic
- By Inheritance
- CantonLedgerApiServerWrapper
- NoTracing
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- case class Config(serverConfig: LedgerApiServerConfig, indexerConfig: IndexerConfig, indexerLockIds: Option[IndexerLockIds], ledgerId: LedgerId, participantId: LedgerParticipantId, engine: Engine, syncService: CantonSyncService, storageConfig: StorageConfig, cantonParameterConfig: ParticipantNodeParameters, testingTimeService: Option[TimeServiceBackend], adminToken: CantonAdminToken, loggerFactory: NamedLoggerFactory, tracerProvider: TracerProvider, metrics: Metrics) extends NamedLogging with Product with Serializable
Config for ledger api server and indexer
Config for ledger api server and indexer
- serverConfig
ledger api server configuration
- indexerConfig
indexer configuration
- indexerLockIds
Optional lock IDs to be used for indexer HA
- ledgerId
unique ledger id used by the ledger api server
- participantId
unique participant id used e.g. for a unique ledger api server index db name
- engine
daml engine shared with Canton for performance reasons
- syncService
canton sync service implementing both read and write services
- storageConfig
canton storage config so that indexer can share the participant db
- cantonParameterConfig
configurations meant to be overridden primarily in tests (applying to all participants)
- testingTimeService
an optional service during testing for advancing time, participant-specific
- adminToken
canton admin token for ledger api auth
- loggerFactory
canton logger factory
- tracerProvider
tracer provider for open telemetry grpc injection
- metrics
upstream metrics module
- case class FailedToConfigureIndexer(errorMessage: String) extends LedgerApiServerErrorWithoutCause with Product with Serializable
- case class FailedToConfigureLedgerApiStorage(errorMessage: String) extends LedgerApiServerErrorWithoutCause with Product with Serializable
- case class FailedToStartLedgerApiServer(cause: Throwable) extends LedgerApiServerError with Product with Serializable
- case class FailedToStopIndexer(errorMessage: String, cause: Throwable) extends LedgerApiServerError with Product with Serializable
- case class FailedToStopLedgerApiServer(errorMessage: String, cause: Throwable) extends LedgerApiServerError with Product with Serializable
- case class IndexerLockIds(mainLockId: Int, workerLockId: Int) extends Product with Serializable
- type IndexerResource = Resource[ResourceContext, Unit]
- sealed trait LedgerApiServerError extends Product with Serializable with PrettyPrinting
- sealed trait LedgerApiServerErrorWithoutCause extends LedgerApiServerError
- type LedgerApiServerResource = Resource[ResourceContext, Unit]
- case class LedgerApiServerState(ledgerApiStorage: LedgerApiStorage, ledgerApiServer: LedgerApiServerResource, indexer: StartableStoppableIndexer, logger: TracedLogger, timeouts: ProcessingTimeout)(implicit ec: ExecutionContext) extends FlagCloseableAsync with Product with Serializable
- case class MigrateSchemaConfig(dbConfig: DbConfig, additionalMigrationPaths: Seq[String]) extends Product with Serializable
Config for indexer migrate schema entry point
Config for indexer migrate schema entry point
- dbConfig
canton DB storage config so that indexer can share the participant db
- additionalMigrationPaths
optional paths for extra migration files
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val maximumToleranceTimeModel: LedgerTimeModel
- def migrateSchema(config: MigrateSchemaConfig, loggerFactory: NamedLoggerFactory)(implicit ec: ExecutionContext): Future[Unit]
Migrates ledger api server database schema to latest flyway version
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def start(config: Config, startIndexer: Boolean)(implicit ec: ExecutionContextIdlenessExecutorService, actorSystem: ActorSystem): EitherT[Future, LedgerApiServerError, LedgerApiServerState]
Start a ledger api server asynchronously
Start a ledger api server asynchronously
- config
ledger api server configuration
- startIndexer
whether to start the indexer or merely wait until the index db schema has been created
- returns
ledger api server state wrapper EitherT-future
- def stop(components: LedgerApiServerState)(implicit executionContext: ExecutionContext): EitherT[Future, LedgerApiServerError, Unit]
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- implicit def traceContext: TraceContext
- Attributes
- protected
- Definition Classes
- NoTracing
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])