Skip to content

Commit 6ec48a0

Browse files
authored
fix: Wrong VersionVector when migrated from non-replicated (#1304)
* fix: Wrong VersionVector when migrated from non-replicated * it should be replicaId and not persistenceId * adjust test
1 parent b0741d8 commit 6ec48a0

File tree

2 files changed

+9
-7
lines changed

2 files changed

+9
-7
lines changed

Diff for: akka-projection-grpc-tests/src/test/scala/akka/projection/grpc/internal/EventProducerServiceSpec.scala

+7-5
Original file line numberDiff line numberDiff line change
@@ -258,13 +258,15 @@ class EventProducerServiceSpec
258258
.withReplicatedEventMetadataTransformation(
259259
env =>
260260
if (env.eventMetadata.isDefined) None
261-
else
261+
else {
262+
// migrated from non-replicated, fill in metadata
262263
Some(
263264
ReplicatedEventMetadata(
264265
originReplica = ReplicaId.empty,
265266
originSequenceNr = env.sequenceNr,
266-
version = VersionVector(env.persistenceId, env.sequenceNr),
267-
concurrent = false))))
267+
version = VersionVector(ReplicaId.empty.id, env.sequenceNr),
268+
concurrent = false))
269+
}))
268270

269271
private val eventProducerService =
270272
new EventProducerServiceImpl(
@@ -611,14 +613,14 @@ class EventProducerServiceSpec
611613
protoAnySerialization.deserialize(out1.getEvent.metadata.get) shouldBe ReplicatedEventMetadata(
612614
originReplica = ReplicaId.empty,
613615
originSequenceNr = env1.sequenceNr,
614-
version = VersionVector(env1.persistenceId, env1.sequenceNr),
616+
version = VersionVector(ReplicaId.empty.id, env1.sequenceNr),
615617
concurrent = false)
616618

617619
val out2 = probe.expectNext()
618620
protoAnySerialization.deserialize(out2.getEvent.metadata.get) shouldBe ReplicatedEventMetadata(
619621
originReplica = ReplicaId.empty,
620622
originSequenceNr = env2.sequenceNr,
621-
version = VersionVector(env2.persistenceId, env2.sequenceNr),
623+
version = VersionVector(ReplicaId.empty.id, env2.sequenceNr),
622624
concurrent = false)
623625
}
624626

Diff for: akka-projection-grpc/src/main/scala/akka/projection/grpc/replication/internal/ReplicationImpl.scala

+2-2
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ private[akka] object ReplicationImpl {
110110
ReplicatedEventMetadata(
111111
originReplica = settings.selfReplicaId,
112112
originSequenceNr = env.sequenceNr,
113-
version = VersionVector(env.persistenceId, env.sequenceNr),
113+
version = VersionVector(settings.selfReplicaId.id, env.sequenceNr),
114114
concurrent = false))
115115
})
116116

@@ -367,7 +367,7 @@ private[akka] object ReplicationImpl {
367367
ReplicatedEventMetadata(
368368
originReplica = settings.selfReplicaId,
369369
originSequenceNr = env.sequenceNr,
370-
version = VersionVector(env.persistenceId, env.sequenceNr),
370+
version = VersionVector(settings.selfReplicaId.id, env.sequenceNr),
371371
concurrent = false))
372372
})
373373

0 commit comments

Comments
 (0)