Skip to content

Commit 6998053

Browse files
Update 2023-11-14.23 (#120)
Reference commit: 774f57ecb9 Co-authored-by: Canton <canton@digitalasset.com>
1 parent f7e491d commit 6998053

File tree

496 files changed

+3389
-3253
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

496 files changed

+3389
-3253
lines changed

VERSION

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
2.8.0-SNAPSHOT

community-build.sbt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ lazy val `community-integration-testing` = CommunityProjects.`community-integrat
1313
lazy val demo = CommunityProjects.demo
1414
lazy val blake2b = CommunityProjects.blake2b
1515
lazy val `slick-fork` = CommunityProjects.`slick-fork`
16-
lazy val `akka-fork` = CommunityProjects.`akka-fork`
16+
lazy val `pekko-fork` = CommunityProjects.`pekko-fork`
1717
lazy val `util-external` = CommunityProjects.`util-external`
1818
lazy val `util-logging` = CommunityProjects.`util-logging`
1919
lazy val `sequencer-driver-api` = CommunityProjects.`sequencer-driver-api`
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
// Copyright (c) 2023 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
2+
// SPDX-License-Identifier: Apache-2.0
3+
4+
package com.daml.ledger.javaapi.data
5+
6+
import com.daml.ledger.api.v1.transaction_filter.{TransactionFilter as ScalaTransactionFilter}
7+
8+
// TODO(i15321): hack to circumvent the package-private `toProto` method on `TransactionFilter`
9+
object FilterConversion {
10+
11+
def apply(filter: TransactionFilter): ScalaTransactionFilter =
12+
ScalaTransactionFilter.fromJavaProto(filter.toProto)
13+
14+
}

community/app-base/src/main/scala/com/digitalasset/canton/admin/api/client/commands/LedgerApiCommands.scala

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,12 @@ import com.daml.ledger.api.v1.testing.time_service.{
9797
TimeServiceGrpc,
9898
}
9999
import com.daml.ledger.api.v1.transaction.{Transaction, TransactionTree}
100-
import com.daml.ledger.api.v1.transaction_filter.{Filters, InclusiveFilters, TransactionFilter}
100+
import com.daml.ledger.api.v1.transaction_filter.{
101+
Filters,
102+
InclusiveFilters,
103+
TemplateFilter,
104+
TransactionFilter,
105+
}
101106
import com.daml.ledger.api.v1.transaction_service.TransactionServiceGrpc.TransactionServiceStub
102107
import com.daml.ledger.api.v1.transaction_service.*
103108
import com.digitalasset.canton.LfPartyId
@@ -859,6 +864,7 @@ object LedgerApiCommands {
859864
templateFilter: Seq[TemplateId] = Seq.empty,
860865
verbose: Boolean = true,
861866
timeout: FiniteDuration,
867+
includeCreatedEventBlob: Boolean = false,
862868
)(scheduler: ScheduledExecutorService)
863869
extends BaseCommand[GetActiveContractsRequest, Seq[WrappedCreatedEvent], Seq[
864870
WrappedCreatedEvent
@@ -869,7 +875,11 @@ object LedgerApiCommands {
869875
if (templateFilter.nonEmpty) {
870876
Filters(
871877
Some(
872-
InclusiveFilters(templateFilter.map(_.toIdentifier))
878+
InclusiveFilters(templateFilters =
879+
templateFilter.map(tId =>
880+
TemplateFilter(Some(tId.toIdentifier), includeCreatedEventBlob)
881+
)
882+
)
873883
)
874884
)
875885
} else Filters.defaultInstance

community/app-base/src/main/scala/com/digitalasset/canton/admin/api/client/commands/LedgerApiTypeWrappers.scala

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import com.daml.api.util.TimestampConversion
77
import com.daml.ledger.api.v1.event.CreatedEvent
88
import com.daml.ledger.api.v1.value.{Record, RecordField, Value}
99
import com.daml.lf.data.Time
10+
import com.daml.lf.transaction.TransactionCoder
1011
import com.digitalasset.canton.admin.api.client.data.TemplateId
1112
import com.digitalasset.canton.crypto.Salt
1213
import com.digitalasset.canton.protocol.{DriverContractMetadata, LfContractId}
@@ -55,10 +56,6 @@ object LedgerApiTypeWrappers {
5556
def arguments: Map[String, Any] =
5657
event.createArguments.toList.flatMap(_.fields).flatMap(flatten(Seq(), _)).toMap
5758

58-
// Allow using deprecated Protobuf fields for backwards compatibility
59-
@annotation.nowarn(
60-
"cat=deprecation&origin=com\\.daml\\.ledger\\.api\\.v1\\.event\\.CreatedEvent.*"
61-
)
6259
def toContractData: ContractData = {
6360
val templateId = TemplateId.fromIdentifier(
6461
event.templateId.getOrElse(throw new IllegalArgumentException("Template Id not specified"))
@@ -75,9 +72,8 @@ object LedgerApiTypeWrappers {
7572
)
7673

7774
val contractSaltO = for {
78-
metadataP <- event.metadata
79-
if !metadataP.driverMetadata.isEmpty
80-
parsed = DriverContractMetadata.fromByteString(metadataP.driverMetadata)
75+
fatInstance <- TransactionCoder.decodeFatContractInstance(event.createdEventBlob).toOption
76+
parsed = DriverContractMetadata.fromByteString(fatInstance.cantonData.toByteString)
8177
} yield parsed.fold[Salt](
8278
err =>
8379
throw new IllegalArgumentException(
@@ -86,10 +82,8 @@ object LedgerApiTypeWrappers {
8682
_.salt,
8783
)
8884

89-
val ledgerCreateTimeO = for {
90-
metadata <- event.metadata
91-
createdAt <- metadata.createdAt
92-
} yield TimestampConversion.toLf(createdAt, TimestampConversion.ConversionMode.Exact)
85+
val ledgerCreateTimeO =
86+
event.createdAt.map(TimestampConversion.toLf(_, TimestampConversion.ConversionMode.Exact))
9387

9488
ContractData(
9589
templateId = templateId,

community/app-base/src/main/scala/com/digitalasset/canton/admin/api/client/commands/ParticipantAdminCommands.scala

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -513,7 +513,7 @@ object ParticipantAdminCommands {
513513

514514
}
515515

516-
final case class ImportAcs(acsChunk: ByteString)
516+
final case class ImportAcs(acsChunk: ByteString, workflowIdPrefix: String)
517517
extends GrpcAdminCommand[ImportAcsRequest, ImportAcsResponse, Unit]
518518
with StreamingMachinery[ImportAcsRequest, ImportAcsResponse] {
519519

@@ -523,7 +523,7 @@ object ParticipantAdminCommands {
523523
ParticipantRepairServiceGrpc.stub(channel)
524524

525525
override def createRequest(): Either[String, ImportAcsRequest] = {
526-
Right(ImportAcsRequest(acsChunk))
526+
Right(ImportAcsRequest(acsChunk, workflowIdPrefix))
527527
}
528528

529529
override def submitRequest(
@@ -532,7 +532,7 @@ object ParticipantAdminCommands {
532532
): Future[ImportAcsResponse] = {
533533
stream(
534534
service.importAcs,
535-
(bytes: Array[Byte]) => ImportAcsRequest(ByteString.copyFrom(bytes)),
535+
(bytes: Array[Byte]) => ImportAcsRequest(ByteString.copyFrom(bytes), workflowIdPrefix),
536536
request.acsSnapshot,
537537
)
538538
}

community/app-base/src/main/scala/com/digitalasset/canton/admin/api/client/data/DomainParameters.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -304,7 +304,8 @@ final case class DynamicDomainParametersV1(
304304
protocolVersion: ProtocolVersion
305305
): Either[String, DomainParametersChangeAuthorization.Parameters] = {
306306
val protoV = protoVersion(protocolVersion)
307-
// TODO(#12373) Adapt when releasing BFT
307+
// TODO(#15152) Adapt when support for pv < 6 is dropped
308+
// TODO(#15153) Adapt when support for pv=6 is dropped
308309
if (protoV == 1 || protoV == 2)
309310
Right(
310311
protocolV1.DynamicDomainParameters(
@@ -342,7 +343,8 @@ object DynamicDomainParameters {
342343

343344
if (protoVersion == 0)
344345
Right(domain.transformInto[DynamicDomainParametersV0])
345-
// TODO(#12373) Adapt when releasing BFT
346+
// TODO(#15152) Adapt when support for pv < 6 is dropped
347+
// TODO(#15153) Adapt when support for pv=6 is dropped
346348
else if (protoVersion == 1 || protoVersion == 2)
347349
Right(domain.transformInto[DynamicDomainParametersV1])
348350
else

community/app-base/src/main/scala/com/digitalasset/canton/config/CantonConfig.scala

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ package com.digitalasset.canton.config
88
// SOME OF THE IMPLICIT IMPORTS NECESSARY TO COMPILE
99
////////////////////////////////////////////////////////
1010

11-
import akka.stream.ThrottleMode
1211
import cats.Order
1312
import cats.data.Validated
1413
import cats.syntax.either.*
@@ -80,6 +79,7 @@ import com.typesafe.config.{
8079
}
8180
import com.typesafe.scalalogging.LazyLogging
8281
import monocle.macros.syntax.lens.*
82+
import org.apache.pekko.stream.ThrottleMode
8383
import pureconfig.*
8484
import pureconfig.error.CannotConvert
8585
import pureconfig.generic.{FieldCoproductHint, ProductHint}
@@ -446,10 +446,10 @@ trait CantonConfig {
446446
),
447447
uniqueContractKeys = participantConfig.init.parameters.uniqueContractKeys,
448448
ledgerApiServerParameters = participantParameters.ledgerApiServerParameters,
449-
maxDbConnections = participantConfig.storage.maxConnectionsCanton(true, false, false),
450449
excludeInfrastructureTransactions = participantParameters.excludeInfrastructureTransactions,
451450
enableEngineStackTrace = participantParameters.enableEngineStackTraces,
452451
enableContractUpgrading = participantParameters.enableContractUpgrading,
452+
iterationsBetweenInterruptions = participantParameters.iterationsBetweenInterruptions,
453453
)
454454
}
455455

@@ -761,6 +761,8 @@ object CantonConfig {
761761
deriveReader[RemoteParticipantConfig]
762762
lazy implicit val batchingReader: ConfigReader[BatchingConfig] =
763763
deriveReader[BatchingConfig]
764+
lazy implicit val connectionAllocationReader: ConfigReader[ConnectionAllocation] =
765+
deriveReader[ConnectionAllocation]
764766
lazy implicit val dbParamsReader: ConfigReader[DbParametersConfig] =
765767
deriveReader[DbParametersConfig]
766768
lazy implicit val memoryReader: ConfigReader[CommunityStorageConfig.Memory] =
@@ -1132,6 +1134,8 @@ object CantonConfig {
11321134
deriveWriter[NodeMonitoringConfig]
11331135
lazy implicit val batchingWriter: ConfigWriter[BatchingConfig] =
11341136
deriveWriter[BatchingConfig]
1137+
lazy implicit val connectionAllocationWriter: ConfigWriter[ConnectionAllocation] =
1138+
deriveWriter[ConnectionAllocation]
11351139
lazy implicit val dbParametersWriter: ConfigWriter[DbParametersConfig] =
11361140
deriveWriter[DbParametersConfig]
11371141
lazy implicit val memoryWriter: ConfigWriter[CommunityStorageConfig.Memory] =

0 commit comments

Comments
 (0)