Merge branch 'cassandra-6.0' into trunk

This commit is contained in:
Aleksey Yeshchenko 2026-06-15 11:24:16 +01:00
commit 629638b4db
12 changed files with 28 additions and 15 deletions

View File

@ -40,6 +40,7 @@ Merged from 6.0:
* Introduce minimum_threshold for data resurrection startup check (CASSANDRA-21293) * Introduce minimum_threshold for data resurrection startup check (CASSANDRA-21293)
* Synchronously publish changes to local gossip state following metadata updates (CASSANDRA-21239) * Synchronously publish changes to local gossip state following metadata updates (CASSANDRA-21239)
Merged from 5.0: Merged from 5.0:
* Fix RequestFailureReason serializer and nits in a few others (CASSANDRA-21437)
* Remove golang dependency in gen-doc and replace with python implementation (CASSANDRA-21432) * Remove golang dependency in gen-doc and replace with python implementation (CASSANDRA-21432)
* Use estimated compressed size for tables to check if there is enough free space for a compaction (CASSANDRA-21245) * Use estimated compressed size for tables to check if there is enough free space for a compaction (CASSANDRA-21245)
* Fix failing select on system_views.settings for non-string keys (CASSANDRA-21348) * Fix failing select on system_views.settings for non-string keys (CASSANDRA-21348)

View File

@ -58,7 +58,7 @@ public class SerializingCacheProvider implements CacheProvider<RowCacheKey, IRow
public long serializedSize(IRowCacheEntry entry) public long serializedSize(IRowCacheEntry entry)
{ {
int size = TypeSizes.sizeof(true); long size = TypeSizes.sizeof(true);
if (entry instanceof RowCacheSentinel) if (entry instanceof RowCacheSentinel)
size += TypeSizes.sizeof(((RowCacheSentinel) entry).sentinelId); size += TypeSizes.sizeof(((RowCacheSentinel) entry).sentinelId);
else else

View File

@ -231,9 +231,9 @@ public abstract class AbstractBounds<T extends RingPosition<T>> implements Seria
public long serializedSize(AbstractBounds<T> ab, int version) public long serializedSize(AbstractBounds<T> ab, int version)
{ {
// !WARNING! See serialize method above for why we still need to have that condition. // !WARNING! See serialize method above for why we still need to have that condition.
int size = version < MessagingService.VERSION_30 long size = version < MessagingService.VERSION_30
? TypeSizes.sizeof(kindInt(ab)) ? TypeSizes.sizeof(kindInt(ab))
: 1; : 1;
size += serializer.serializedSize(ab.left, version); size += serializer.serializedSize(ab.left, version);
size += serializer.serializedSize(ab.right, version); size += serializer.serializedSize(ab.right, version);
return size; return size;

View File

@ -138,22 +138,25 @@ public enum RequestFailureReason
{ {
} }
@Override
public void serialize(RequestFailureReason reason, DataOutputPlus out, int version) throws IOException public void serialize(RequestFailureReason reason, DataOutputPlus out, int version) throws IOException
{ {
assert version >= VERSION_40; assert version >= VERSION_40;
out.writeUnsignedVInt32(reason.code); out.writeUnsignedVInt32(reason.code);
} }
@Override
public RequestFailureReason deserialize(DataInputPlus in, int version) throws IOException public RequestFailureReason deserialize(DataInputPlus in, int version) throws IOException
{ {
assert version >= VERSION_40; assert version >= VERSION_40;
return fromCode(in.readUnsignedVInt32()); return fromCode(in.readUnsignedVInt32());
} }
@Override
public long serializedSize(RequestFailureReason reason, int version) public long serializedSize(RequestFailureReason reason, int version)
{ {
assert version >= VERSION_40; assert version >= VERSION_40;
return VIntCoding.computeVIntSize(reason.code); return VIntCoding.computeUnsignedVIntSize(reason.code);
} }
} }
} }

View File

@ -60,6 +60,7 @@ public class GossipDigestAck
class GossipDigestAckSerializer implements IVersionedSerializer<GossipDigestAck> class GossipDigestAckSerializer implements IVersionedSerializer<GossipDigestAck>
{ {
@Override
public void serialize(GossipDigestAck gDigestAckMessage, DataOutputPlus out, int version) throws IOException public void serialize(GossipDigestAck gDigestAckMessage, DataOutputPlus out, int version) throws IOException
{ {
GossipDigestSerializationHelper.serialize(gDigestAckMessage.gDigestList, out, version); GossipDigestSerializationHelper.serialize(gDigestAckMessage.gDigestList, out, version);
@ -72,6 +73,7 @@ class GossipDigestAckSerializer implements IVersionedSerializer<GossipDigestAck>
} }
} }
@Override
public GossipDigestAck deserialize(DataInputPlus in, int version) throws IOException public GossipDigestAck deserialize(DataInputPlus in, int version) throws IOException
{ {
List<GossipDigest> gDigestList = GossipDigestSerializationHelper.deserialize(in, version); List<GossipDigest> gDigestList = GossipDigestSerializationHelper.deserialize(in, version);
@ -87,9 +89,10 @@ class GossipDigestAckSerializer implements IVersionedSerializer<GossipDigestAck>
return new GossipDigestAck(gDigestList, epStateMap); return new GossipDigestAck(gDigestList, epStateMap);
} }
@Override
public long serializedSize(GossipDigestAck ack, int version) public long serializedSize(GossipDigestAck ack, int version)
{ {
int size = GossipDigestSerializationHelper.serializedSize(ack.gDigestList, version); long size = GossipDigestSerializationHelper.serializedSize(ack.gDigestList, version);
size += TypeSizes.sizeof(ack.epStateMap.size()); size += TypeSizes.sizeof(ack.epStateMap.size());
for (Map.Entry<InetAddressAndPort, EndpointState> entry : ack.epStateMap.entrySet()) for (Map.Entry<InetAddressAndPort, EndpointState> entry : ack.epStateMap.entrySet())
size += inetAddressAndPortSerializer.serializedSize(entry.getKey(), version) size += inetAddressAndPortSerializer.serializedSize(entry.getKey(), version)

View File

@ -74,9 +74,9 @@ class GossipDigestSerializationHelper
return gDigests; return gDigests;
} }
static int serializedSize(List<GossipDigest> digests, int version) static long serializedSize(List<GossipDigest> digests, int version)
{ {
int size = TypeSizes.sizeof(digests.size()); long size = TypeSizes.sizeof(digests.size());
for (GossipDigest digest : digests) for (GossipDigest digest : digests)
size += GossipDigest.serializer.serializedSize(digest, version); size += GossipDigest.serializer.serializedSize(digest, version);
return size; return size;

View File

@ -49,7 +49,7 @@ class CustomParamsSerializer implements IVersionedSerializer<Map<String,byte[]>>
@Override @Override
public long serializedSize(Map<String, byte[]> t, int version) public long serializedSize(Map<String, byte[]> t, int version)
{ {
int size = TypeSizes.sizeofUnsignedVInt(t.size()); long size = TypeSizes.sizeofUnsignedVInt(t.size());
for (Map.Entry<String,byte[]> e : t.entrySet()) for (Map.Entry<String,byte[]> e : t.entrySet())
{ {
size += TypeSizes.sizeof(e.getKey()); size += TypeSizes.sizeof(e.getKey());

View File

@ -167,7 +167,7 @@ public class RepairJobDesc
public long serializedSize(RepairJobDesc desc, int version) public long serializedSize(RepairJobDesc desc, int version)
{ {
int size = TypeSizes.sizeof(desc.parentSessionId != null); long size = TypeSizes.sizeof(desc.parentSessionId != null);
if (desc.parentSessionId != null) if (desc.parentSessionId != null)
size += TimeUUID.sizeInBytes(); size += TimeUUID.sizeInBytes();
size += TimeUUID.sizeInBytes(); size += TimeUUID.sizeInBytes();

View File

@ -32,6 +32,7 @@ public class SchemaMutationsSerializer implements IVersionedSerializer<Collectio
{ {
public static final SchemaMutationsSerializer instance = new SchemaMutationsSerializer(); public static final SchemaMutationsSerializer instance = new SchemaMutationsSerializer();
@Override
public void serialize(Collection<Mutation> schema, DataOutputPlus out, int version) throws IOException public void serialize(Collection<Mutation> schema, DataOutputPlus out, int version) throws IOException
{ {
out.writeInt(schema.size()); out.writeInt(schema.size());
@ -39,6 +40,7 @@ public class SchemaMutationsSerializer implements IVersionedSerializer<Collectio
Mutation.serializer.serialize(mutation, out, version); Mutation.serializer.serialize(mutation, out, version);
} }
@Override
public Collection<Mutation> deserialize(DataInputPlus in, int version) throws IOException public Collection<Mutation> deserialize(DataInputPlus in, int version) throws IOException
{ {
int count = in.readInt(); int count = in.readInt();
@ -50,9 +52,10 @@ public class SchemaMutationsSerializer implements IVersionedSerializer<Collectio
return schema; return schema;
} }
@Override
public long serializedSize(Collection<Mutation> schema, int version) public long serializedSize(Collection<Mutation> schema, int version)
{ {
int size = TypeSizes.sizeof(schema.size()); long size = TypeSizes.sizeof(schema.size());
for (Mutation mutation : schema) for (Mutation mutation : schema)
size += mutation.serializedSize(version); size += mutation.serializedSize(version);
return size; return size;

View File

@ -65,6 +65,7 @@ public class StreamRequest
public static class StreamRequestSerializer implements IVersionedSerializer<StreamRequest> public static class StreamRequestSerializer implements IVersionedSerializer<StreamRequest>
{ {
@Override
public void serialize(StreamRequest request, DataOutputPlus out, int version) throws IOException public void serialize(StreamRequest request, DataOutputPlus out, int version) throws IOException
{ {
out.writeUTF(request.keyspace); out.writeUTF(request.keyspace);
@ -89,6 +90,7 @@ public class StreamRequest
} }
} }
@Override
public StreamRequest deserialize(DataInputPlus in, int version) throws IOException public StreamRequest deserialize(DataInputPlus in, int version) throws IOException
{ {
String keyspace = in.readUTF(); String keyspace = in.readUTF();
@ -126,13 +128,14 @@ public class StreamRequest
return replicas.build(); return replicas.build();
} }
@Override
public long serializedSize(StreamRequest request, int version) public long serializedSize(StreamRequest request, int version)
{ {
int size = TypeSizes.sizeof(request.keyspace); long size = TypeSizes.sizeof(request.keyspace);
size += TypeSizes.sizeof(request.columnFamilies.size()); size += TypeSizes.sizeof(request.columnFamilies.size());
size += inetAddressAndPortSerializer.serializedSize(request.full.endpoint(), version); size += inetAddressAndPortSerializer.serializedSize(request.full.endpoint(), version);
size += replicasSerializedSize(request.transientReplicas, version);
size += replicasSerializedSize(request.full, version); size += replicasSerializedSize(request.full, version);
size += replicasSerializedSize(request.transientReplicas, version);
for (String cf : request.columnFamilies) for (String cf : request.columnFamilies)
size += TypeSizes.sizeof(cf); size += TypeSizes.sizeof(cf);
return size; return size;

View File

@ -64,7 +64,7 @@ public final class BloomFilterSerializer implements IGenericSerializer<BloomFilt
@Override @Override
public long serializedSize(BloomFilter bf) public long serializedSize(BloomFilter bf)
{ {
int size = TypeSizes.sizeof(bf.hashCount); // hash count long size = TypeSizes.sizeof(bf.hashCount); // hash count
size += bf.bitset.serializedSize(); size += bf.bitset.serializedSize();
return size; return size;
} }

View File

@ -445,7 +445,7 @@ public class EstimatedHistogram implements DoubleToLongFunction
public long serializedSize(EstimatedHistogram eh) public long serializedSize(EstimatedHistogram eh)
{ {
int size = 0; long size = 0;
long[] offsets = eh.getBucketOffsets(); long[] offsets = eh.getBucketOffsets();
long[] buckets = eh.getBuckets(false); long[] buckets = eh.getBuckets(false);