mirror of
https://github.com/digital-asset/daml.git
synced 2024-09-20 01:07:18 +03:00
Move KVErrors to participant-state-kv-errors [KVL-1371] (#13604)
CHANGELOG_BEGIN CHANGELOG_END
This commit is contained in:
parent
ac8343fa7b
commit
16a97e8715
@ -47,8 +47,10 @@ NOTICES @garyverhaegen-da @dasormeter
|
||||
/ledger/participant-state/src @meiersi-da @digital-asset/kv-participant @digital-asset/kv-committer
|
||||
|
||||
# Needs cleanup due to mix of kvutils implementation and interfaces. Until then: shared ownership for KV teams
|
||||
/ledger/participant-state/ @digital-asset/kv-participant @digital-asset/kv-committer
|
||||
/ledger/participant-state-metrics/ @digital-asset/kv-participant @digital-asset/kv-committer
|
||||
/ledger/participant-state/ @digital-asset/kv-participant @digital-asset/kv-committer
|
||||
/ledger/participant-state-index/ @digital-asset/kv-participant @digital-asset/kv-committer
|
||||
/ledger/participant-state-kv-errors/ @digital-asset/kv-participant @digital-asset/kv-committer
|
||||
/ledger/participant-state-metrics/ @digital-asset/kv-participant @digital-asset/kv-committer
|
||||
/ledger/participant-state/kvutils/tools/submission-entries-extractor/ @remyhaemmerle-da
|
||||
|
||||
# Owned by KV Participant with KV Committer added for notifications
|
||||
|
@ -1,10 +1,10 @@
|
||||
1. KVErrors
|
||||
1. KvErrors
|
||||
===================================================================================================================
|
||||
|
||||
Errors that are specific to ledgers based on the KV architecture: Daml Sandbox and VMBC.
|
||||
|
||||
|
||||
1.1. KVErrors / Consistency
|
||||
1.1. KvErrors / Consistency
|
||||
===================================================================================================================
|
||||
|
||||
Errors that highlight transaction consistency issues in the committer context.
|
||||
@ -26,7 +26,7 @@ VALIDATION_FAILURE
|
||||
|
||||
|
||||
|
||||
1.2. KVErrors / Internal
|
||||
1.2. KvErrors / Internal
|
||||
===================================================================================================================
|
||||
|
||||
Errors that arise from an internal system misbehavior.
|
||||
@ -96,7 +96,7 @@ SUBMISSION_FAILED
|
||||
|
||||
|
||||
|
||||
1.3. KVErrors / Resources
|
||||
1.3. KvErrors / Resources
|
||||
===================================================================================================================
|
||||
|
||||
Errors that relate to system resources.
|
||||
@ -118,7 +118,7 @@ RESOURCE_EXHAUSTED
|
||||
|
||||
|
||||
|
||||
1.4. KVErrors / Time
|
||||
1.4. KvErrors / Time
|
||||
===================================================================================================================
|
||||
|
||||
Errors that relate to the Daml concepts of time.
|
||||
|
21
ledger/participant-state-kv-errors/BUILD.bazel
Normal file
21
ledger/participant-state-kv-errors/BUILD.bazel
Normal file
@ -0,0 +1,21 @@
|
||||
# Copyright (c) 2022 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
load(
|
||||
"//bazel_tools:scala.bzl",
|
||||
"da_scala_library",
|
||||
)
|
||||
|
||||
da_scala_library(
|
||||
name = "participant-state-kv-errors",
|
||||
srcs = glob(["src/main/scala/**/*.scala"]),
|
||||
tags = ["maven_coordinates=com.daml:participant-state-kv-errors:__VERSION__"],
|
||||
visibility = [
|
||||
"//visibility:public",
|
||||
],
|
||||
runtime_deps = [],
|
||||
deps = [
|
||||
"//ledger-api/grpc-definitions:ledger_api_proto_scala",
|
||||
"//ledger/error",
|
||||
],
|
||||
)
|
@ -1,7 +1,7 @@
|
||||
// Copyright (c) 2022 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
package com.daml.ledger.participant.state.kvutils.errors
|
||||
package com.daml.ledger.error.definitions.kv
|
||||
|
||||
import com.daml.error.definitions.DamlErrorWithDefiniteAnswer
|
||||
import com.daml.error.{ContextualizedErrorLogger, ErrorCode}
|
@ -1,11 +1,9 @@
|
||||
// Copyright (c) 2022 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
package com.daml.ledger.participant.state.kvutils.errors
|
||||
package com.daml.ledger.error.definitions.kv
|
||||
|
||||
import com.daml.error.definitions.ErrorGroups
|
||||
|
||||
import java.time.Instant
|
||||
import com.daml.error.{
|
||||
ContextualizedErrorLogger,
|
||||
ErrorCategory,
|
||||
@ -15,10 +13,12 @@ import com.daml.error.{
|
||||
Resolution,
|
||||
}
|
||||
|
||||
import java.time.Instant
|
||||
|
||||
@Explanation(
|
||||
"Errors that are specific to ledgers based on the KV architecture: Daml Sandbox and VMBC."
|
||||
)
|
||||
object KVErrors extends ErrorGroup()(ErrorGroups.rootErrorClass) {
|
||||
object KvErrors extends ErrorGroup()(ErrorGroups.rootErrorClass) {
|
||||
|
||||
@Explanation("Errors that highlight transaction consistency issues in the committer context.")
|
||||
object Consistency extends ErrorGroup() {
|
@ -56,6 +56,7 @@ da_scala_library(
|
||||
"//ledger/metrics",
|
||||
"//ledger/participant-state",
|
||||
"//ledger/participant-state-index",
|
||||
"//ledger/participant-state-kv-errors",
|
||||
"//libs-scala/concurrent",
|
||||
"//libs-scala/contextualized-logging",
|
||||
"//libs-scala/crypto",
|
||||
|
@ -10,8 +10,8 @@ import com.daml.daml_lf_dev.DamlLf
|
||||
import com.daml.error.DamlContextualizedErrorLogger
|
||||
import com.daml.ledger.api.health.HealthStatus
|
||||
import com.daml.ledger.configuration.Configuration
|
||||
import com.daml.ledger.error.definitions.kv.KvErrors
|
||||
import com.daml.ledger.offset.Offset
|
||||
import com.daml.ledger.participant.state.kvutils.errors.KVErrors
|
||||
import com.daml.ledger.participant.state.kvutils.wire.DamlSubmission
|
||||
import com.daml.ledger.participant.state.kvutils.{Envelope, KeyValueSubmission}
|
||||
import com.daml.ledger.participant.state.v2._
|
||||
@ -79,7 +79,7 @@ class KeyValueParticipantStateWriter(
|
||||
case Left(_) =>
|
||||
CompletableFuture.completedFuture(
|
||||
SubmissionResult.SynchronousError(
|
||||
KVErrors.Internal.SubmissionFailed
|
||||
KvErrors.Internal.SubmissionFailed
|
||||
.Reject("Could not parse a package ID")(
|
||||
new DamlContextualizedErrorLogger(logger, loggingContext, None)
|
||||
)
|
||||
|
@ -3,16 +3,16 @@
|
||||
|
||||
package com.daml.ledger.participant.state.kvutils.updates
|
||||
|
||||
import com.daml.error.definitions.LedgerApiErrors
|
||||
|
||||
import java.time.Instant
|
||||
|
||||
import com.daml.error.ContextualizedErrorLogger
|
||||
import com.daml.error.definitions.LedgerApiErrors
|
||||
import com.daml.ledger.error.definitions.kv.KvErrors
|
||||
import com.daml.ledger.participant.state.kvutils.Conversions.parseCompletionInfo
|
||||
import com.daml.ledger.participant.state.kvutils.committer.transaction.Rejection.{
|
||||
ExternallyInconsistentTransaction,
|
||||
InternallyInconsistentTransaction,
|
||||
}
|
||||
import com.daml.ledger.participant.state.kvutils.errors.KVErrors
|
||||
import com.daml.ledger.participant.state.kvutils.store.events._
|
||||
import com.daml.ledger.participant.state.v2.Update
|
||||
import com.daml.ledger.participant.state.v2.Update.CommandRejected.FinalReason
|
||||
@ -38,7 +38,7 @@ private[kvutils] object TransactionRejections {
|
||||
rejectionEntry.getSubmitterInfo,
|
||||
),
|
||||
reasonTemplate = FinalReason(
|
||||
KVErrors.Time.InvalidRecordTime
|
||||
KvErrors.Time.InvalidRecordTime
|
||||
.Reject(
|
||||
rejectionEntry.getDefiniteAnswer,
|
||||
invalidRecordTimeReason(recordTime, tooEarlyUntil, tooLateFrom),
|
||||
@ -70,7 +70,7 @@ private[kvutils] object TransactionRejections {
|
||||
}
|
||||
|
||||
def rejectionReasonNotSetStatus()(implicit loggingContext: ContextualizedErrorLogger): Status =
|
||||
KVErrors.Internal.RejectionReasonNotSet
|
||||
KvErrors.Internal.RejectionReasonNotSet
|
||||
.Reject()
|
||||
.asStatus
|
||||
|
||||
@ -79,7 +79,7 @@ private[kvutils] object TransactionRejections {
|
||||
)(implicit loggingContext: ContextualizedErrorLogger): Status = {
|
||||
val details = rejection.getDetails
|
||||
val metadata = rejection.getMetadataMap.asScala.toMap
|
||||
KVErrors.Internal.InvalidParticipantState
|
||||
KvErrors.Internal.InvalidParticipantState
|
||||
.Reject(details, metadata)
|
||||
.asStatus
|
||||
}
|
||||
@ -105,7 +105,7 @@ private[kvutils] object TransactionRejections {
|
||||
def causalMonotonicityViolatedStatus()(implicit
|
||||
loggingContext: ContextualizedErrorLogger
|
||||
): Status =
|
||||
KVErrors.Time.CausalMonotonicityViolated
|
||||
KvErrors.Time.CausalMonotonicityViolated
|
||||
.Reject()
|
||||
.asStatus
|
||||
|
||||
@ -122,7 +122,7 @@ private[kvutils] object TransactionRejections {
|
||||
rejection.getMaximumRecordTime.getSeconds,
|
||||
rejection.getMaximumRecordTime.getNanos.toLong,
|
||||
)
|
||||
KVErrors.Time.RecordTimeOutOfRange
|
||||
KvErrors.Time.RecordTimeOutOfRange
|
||||
.Reject(minRecordTime, maxRecordTime)
|
||||
.asStatus
|
||||
}
|
||||
@ -150,7 +150,7 @@ private[kvutils] object TransactionRejections {
|
||||
rejection: MissingInputState
|
||||
)(implicit loggingContext: ContextualizedErrorLogger): Status = {
|
||||
val key = rejection.getKey.toString
|
||||
KVErrors.Internal.MissingInputState
|
||||
KvErrors.Internal.MissingInputState
|
||||
.Reject(key)
|
||||
.asStatus
|
||||
}
|
||||
@ -171,7 +171,7 @@ private[kvutils] object TransactionRejections {
|
||||
rejection: ValidationFailure
|
||||
)(implicit loggingContext: ContextualizedErrorLogger): Status = {
|
||||
val details = rejection.getDetails
|
||||
KVErrors.Consistency.ValidationFailure
|
||||
KvErrors.Consistency.ValidationFailure
|
||||
.Reject(details)
|
||||
.asStatus
|
||||
}
|
||||
@ -234,7 +234,7 @@ private[kvutils] object TransactionRejections {
|
||||
rejection: ResourcesExhausted
|
||||
)(implicit loggingContext: ContextualizedErrorLogger): Status = {
|
||||
val details = rejection.getDetails
|
||||
KVErrors.Resources.ResourceExhausted
|
||||
KvErrors.Resources.ResourceExhausted
|
||||
.Reject(details)
|
||||
.asStatus
|
||||
}
|
||||
|
@ -159,6 +159,8 @@
|
||||
type: jar-scala
|
||||
- target: //ledger/participant-state-index:participant-state-index
|
||||
type: jar-scala
|
||||
- target: //ledger/participant-state-kv-errors:participant-state-kv-errors
|
||||
type: jar-scala
|
||||
- target: //ledger/participant-state-metrics:participant-state-metrics
|
||||
type: jar-scala
|
||||
- target: //ledger/sandbox-common:sandbox-common
|
||||
|
Loading…
Reference in New Issue
Block a user