Details
-
Bug
-
Status: Resolved
-
Low
-
Resolution: Fixed
-
None
-
None
-
Low
Description
Since native protocol version 5 we deserialize the flags in org.apache.cassandra.cql3.QueryOptions.Codec#decode as follows:
EnumSet<Flag> flags = Flag.deserialize(version.isGreaterOrEqualTo(ProtocolVersion.V5) ? (int)body.readUnsignedInt() : (int)body.readByte());
This works until the highest bit (0x80) is not used. readByte must be changed to readUnsignedByte.