mirror of https://github.com/apache/cassandra
CEP-15: (C*) accord.messages.BeginRecovery.RecoverNack#supersededBy is nullable but C* serializer doesn't expect null
This commit is contained in:
parent
10e065ffe5
commit
cfc63edcb4
|
|
@ -57,6 +57,7 @@ public class CommandSerializers
|
|||
public static final TimestampSerializer<Timestamp> timestamp = new TimestampSerializer<>(Timestamp::fromBits);
|
||||
public static final IVersionedSerializer<Timestamp> nullableTimestamp = NullableSerializer.wrap(timestamp);
|
||||
public static final TimestampSerializer<Ballot> ballot = new TimestampSerializer<>(Ballot::fromBits);
|
||||
public static final IVersionedSerializer<Ballot> nullableBallot = NullableSerializer.wrap(ballot);
|
||||
public static final EnumSerializer<Txn.Kind> kind = new EnumSerializer<>(Txn.Kind.class);
|
||||
|
||||
public static class TimestampSerializer<T extends Timestamp> implements IVersionedSerializer<T>
|
||||
|
|
|
|||
|
|
@ -81,7 +81,7 @@ public class RecoverySerializers
|
|||
{
|
||||
void serializeNack(RecoverNack recoverNack, DataOutputPlus out, int version) throws IOException
|
||||
{
|
||||
CommandSerializers.ballot.serialize(recoverNack.supersededBy, out, version);
|
||||
CommandSerializers.nullableBallot.serialize(recoverNack.supersededBy, out, version);
|
||||
}
|
||||
|
||||
void serializeOk(RecoverOk recoverOk, DataOutputPlus out, int version) throws IOException
|
||||
|
|
@ -124,7 +124,7 @@ public class RecoverySerializers
|
|||
{
|
||||
boolean isOk = in.readBoolean();
|
||||
if (!isOk)
|
||||
return deserializeNack(CommandSerializers.ballot.deserialize(in, version), in, version);
|
||||
return deserializeNack(CommandSerializers.nullableBallot.deserialize(in, version), in, version);
|
||||
|
||||
return deserializeOk(CommandSerializers.txnId.deserialize(in, version),
|
||||
CommandSerializers.status.deserialize(in, version),
|
||||
|
|
@ -143,7 +143,7 @@ public class RecoverySerializers
|
|||
|
||||
long serializedNackSize(RecoverNack recoverNack, int version)
|
||||
{
|
||||
return CommandSerializers.ballot.serializedSize(recoverNack.supersededBy, version);
|
||||
return CommandSerializers.nullableBallot.serializedSize(recoverNack.supersededBy, version);
|
||||
}
|
||||
|
||||
long serializedOkSize(RecoverOk recoverOk, int version)
|
||||
|
|
|
|||
Loading…
Reference in New Issue