com.digitalasset.canton.participant.store.db.DbInFlightSubmissionStore
RegisterProcessor
Companion object RegisterProcessor
class RegisterProcessor extends DbBulkUpdateProcessor[InFlightSubmission[UnsequencedSubmission], Result]
- Alphabetic
- By Inheritance
- RegisterProcessor
- DbBulkUpdateProcessor
- Processor
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new RegisterProcessor(storage: DbStorage, maxItemsInSqlInClause: PositiveNumeric[Int], releaseProtocolVersion: ReleaseProtocolVersion, logger: TracedLogger)(implicit executionContext: ExecutionContext, closeContext: CloseContext)
Type Members
- type CheckData = InFlightSubmission[SubmissionSequencingInfo]
Type of data returned when checking what information the store contains for a given item.
Type of data returned when checking what information the store contains for a given item.
- Attributes
- protected
- Definition Classes
- RegisterProcessor → DbBulkUpdateProcessor
- type ItemIdentifier = ChangeIdHash
The type of identifier that is used to correlate items and the information retrieved from the store when checking.
The type of identifier that is used to correlate items and the information retrieved from the store when checking.
- Attributes
- protected
- Definition Classes
- RegisterProcessor → DbBulkUpdateProcessor
- case class NoResponseForAggregatedItemException(item: A) extends RuntimeException with Product with Serializable
- Definition Classes
- Processor
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
- def analyzeFoundData(submission: InFlightSubmission[UnsequencedSubmission], foundData: Option[CheckData])(implicit traceContext: TraceContext): Try[Result]
Compare the item against the data that was found in the store and produce a result.
Compare the item against the data that was found in the store and produce a result. It is called for each item that the update command returned an update counter not equal to 1.
- Attributes
- protected
- Definition Classes
- RegisterProcessor → DbBulkUpdateProcessor
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def bulkUpdateAction(submissions: NonEmpty[Seq[Traced[InFlightSubmission[UnsequencedSubmission]]]])(implicit batchTraceContext: TraceContext): resource.DbStorage.Profile.DbStorageAPI.DBIOAction[Array[Int], resource.DbStorage.Profile.DbStorageAPI.NoStream, All]
Idempotent bulk DB operation for the given items.
Idempotent bulk DB operation for the given items.
- Attributes
- protected
- Definition Classes
- RegisterProcessor → DbBulkUpdateProcessor
- def bulkUpdateWithCheck(items: Seq[Traced[InFlightSubmission[UnsequencedSubmission]]], queryBaseName: String)(implicit traceContext: TraceContext, closeContext: CloseContext): Future[Iterable[Try[Result]]]
- Attributes
- protected
- Definition Classes
- DbBulkUpdateProcessor
- def bulkUpdateWithCheck(items: NonEmpty[Seq[Traced[InFlightSubmission[UnsequencedSubmission]]]], queryBaseName: String)(implicit traceContext: TraceContext, closeContext: CloseContext): Future[Iterable[Try[Result]]]
Run the bulkUpdateAction for the given
items
and then check the reported update row counts.Run the bulkUpdateAction for the given
items
and then check the reported update row counts. For items where the update row count is not 1, look what is in the store and produce a corresponding response by comparing the item with the found data.- returns
An scala.collection.Iterable of the same size as
items
that contains the response foritems(i)
is at indexi
.
- Attributes
- protected
- Definition Classes
- DbBulkUpdateProcessor
- def checkQuery(submissionsToCheck: NonEmpty[Seq[ChangeIdHash]])(implicit batchTraceContext: TraceContext): Iterable[ReadOnly[Iterable[CheckData]]]
A list of queries for the items that we want to check for
A list of queries for the items that we want to check for
- Attributes
- protected
- Definition Classes
- RegisterProcessor → DbBulkUpdateProcessor
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- implicit val closeContext: CloseContext
- def dataIdentifier(submission: CheckData): ChangeIdHash
Identifier selector for stored data
Identifier selector for stored data
- Attributes
- protected
- Definition Classes
- RegisterProcessor → DbBulkUpdateProcessor
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def executeBatch(submissions: NonEmpty[Seq[Traced[InFlightSubmission[UnsequencedSubmission]]]])(implicit traceContext: TraceContext, callerCloseContext: CloseContext): Future[Iterable[Try[Result]]]
Computation for a batch of items.
Computation for a batch of items.
- returns
The responses for the items in the correct order. Must have the same length
- Definition Classes
- RegisterProcessor → Processor
- def executeSingle(item: InFlightSubmission[UnsequencedSubmission])(implicit ec: ExecutionContext, traceContext: TraceContext, callerCloseContext: CloseContext): Future[Try[Result]]
Computation for a single item.
Computation for a single item. Should be equivalent to
executeBatch(Seq(Traced(item))).map(_.head)
- Definition Classes
- Processor
- implicit val executionContext: ExecutionContext
- Attributes
- protected
- Definition Classes
- RegisterProcessor → DbBulkUpdateProcessor
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def itemIdentifier(submission: InFlightSubmission[UnsequencedSubmission]): ChangeIdHash
Identifier selector for items
Identifier selector for items
- Attributes
- protected
- Definition Classes
- RegisterProcessor → DbBulkUpdateProcessor
- def kind: String
Human-readable description of the kind of items that can be batched
Human-readable description of the kind of items that can be batched
- Definition Classes
- RegisterProcessor → Processor
- val logger: TracedLogger
Logger to be used by the com.digitalasset.canton.util.BatchAggregator
Logger to be used by the com.digitalasset.canton.util.BatchAggregator
- Definition Classes
- RegisterProcessor → Processor
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- def onSuccessItemUpdate(item: Traced[InFlightSubmission[UnsequencedSubmission]]): Try[Result]
What to return for an item when the bulk operation returns an update count of 1
What to return for an item when the bulk operation returns an update count of 1
- Attributes
- protected
- Definition Classes
- RegisterProcessor → DbBulkUpdateProcessor
- def prettyItem: Pretty[InFlightSubmission[UnsequencedSubmission]]
Pretty printer for items
Pretty printer for items
- Definition Classes
- RegisterProcessor → Processor
- val storage: DbStorage
- Attributes
- protected
- Definition Classes
- RegisterProcessor → DbBulkUpdateProcessor
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- 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])