Vladimir Krivopalov created CASSANDRA-14476:
-----------------------------------------------

             Summary: ShortType and ByteType are incorrectly considered 
variable-length types
                 Key: CASSANDRA-14476
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14476
             Project: Cassandra
          Issue Type: Bug
            Reporter: Vladimir Krivopalov


The AbstractType class has a method valueLengthIfFixed() that returns -1 for 
data types with a variable length and a positive value for types with a fixed 
length. This is primarily used for efficient serialization and deserialization. 

 

It turns out that there is an inconsistency in types ShortType and ByteType as 
those are in fact fixed-length types (2 bytes and 1 byte, respectively) but 
they don't have the valueLengthIfFixed() method overloaded and it returns -1 as 
if they were of variable length.

 

It would be good to fix that at some appropriate point, for example, when 
introducing a new version of SSTables format, to keep the meaning of the 
function consistent across data types. Saving some bytes in serialized format 
is a minor but pleasant bonus.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to