[ 
https://issues.apache.org/jira/browse/CASSANDRA-19989?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17888062#comment-17888062
 ] 

David Capwell commented on CASSANDRA-19989:
-------------------------------------------

+1

> Extended TTL digest generation creates false digest mismatches during upgrades
> ------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-19989
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-19989
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Consistency/Repair, Messaging/Internode
>            Reporter: Caleb Rackliffe
>            Assignee: Caleb Rackliffe
>            Priority: Normal
>             Fix For: 5.0.x, 5.x
>
>
> CASSANDRA-14227 added support for TTLs all the way up to the year 2106, and 
> this is disabled in {{CASSANDRA_4}} storage compatibility mode. However, even 
> with {{CASSANDRA_4}} in use, {{LivenessInfo#digest()}} writes the local 
> expiration time as an 8-byte long, even when it could fit in a 4-byte int. 
> During an upgrade, 5.0 nodes will generate slightly different digests and 
> cause unnecessary read-repair traffic until the upgrade is complete and all 
> nodes use the new digest calculation. This should be easy to fix if we just 
> conditionally update the digest with int or long depending on the actual size 
> of the local expiration time. (That should also avoid writing an extra 4 
> bytes we don't need to the digest in many cases.)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to