fix rolling update for ddata change, #26284

This commit is contained in:
Patrik Nordwall 2019-04-01 12:47:20 +02:00
parent 8dfa215ded
commit b44b0bfe5d
2 changed files with 15 additions and 2 deletions

View file

@ -267,7 +267,7 @@ class ReplicatorMessageSerializer(val system: ExtendedActorSystem)
case (key, digest) =>
b.addEntries(dm.Status.Entry.newBuilder().setKey(key).setDigest(ByteString.copyFrom(digest.toArray)))
}
b.setToSystemUid(status.toSystemUid.get)
status.toSystemUid.foreach(b.setToSystemUid) // can be None when sending back to a node of version 2.5.21
b.setFromSystemUid(status.fromSystemUid.get)
b.build()
}
@ -290,7 +290,7 @@ class ReplicatorMessageSerializer(val system: ExtendedActorSystem)
case (key, data) =>
b.addEntries(dm.Gossip.Entry.newBuilder().setKey(key).setEnvelope(dataEnvelopeToProto(data)))
}
b.setToSystemUid(gossip.toSystemUid.get)
gossip.toSystemUid.foreach(b.setToSystemUid) // can be None when sending back to a node of version 2.5.21
b.setFromSystemUid(gossip.fromSystemUid.get)
b.build()
}

View file

@ -117,12 +117,25 @@ class ReplicatorMessageSerializerSpec
totChunks = 10,
Some(17),
Some(19)))
checkSerialization(
Status(
Map("A" -> ByteString.fromString("a"), "B" ByteString.fromString("b")),
chunk = 3,
totChunks = 10,
None, // can be None when sending back to a node of version 2.5.21
Some(19)))
checkSerialization(
Gossip(
Map("A" -> DataEnvelope(data1), "B" DataEnvelope(GSet() + "b" + "c")),
sendBack = true,
Some(17),
Some(19)))
checkSerialization(
Gossip(
Map("A" -> DataEnvelope(data1), "B" DataEnvelope(GSet() + "b" + "c")),
sendBack = true,
None, // can be None when sending back to a node of version 2.5.21
Some(19)))
checkSerialization(
DeltaPropagation(
address1,