cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dimitar Dimitrov (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-14092) Max ttl of 20 years will overflow localDeletionTime
Date Mon, 29 Jan 2018 14:07:01 GMT

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

Dimitar Dimitrov commented on CASSANDRA-14092:
----------------------------------------------

Some review comments on the dtest and trunk changes:
 * On the dtest change:
 ## Shouldn't the dtest docstring [here|https://github.com/apache/cassandra-dtest/commit/83c73ef0a3cbe50232d3a9eea4fd26c877ea58db#diff-a8f4dac4af77196a8c7881abd067a5b9R345] say
something related to the TTL problem?
 ## The start time [here|https://github.com/apache/cassandra-dtest/commit/83c73ef0a3cbe50232d3a9eea4fd26c877ea58db#diff-a8f4dac4af77196a8c7881abd067a5b9R348] seems
redundant
 ## It may be good to extract the max TTL value in a variable - we may decide to keep a version
of this test after we patch by just reducing that value, but before we fix it nicely
 * On the trunk change:
 ## Maybe it's my English, but [this wording|https://github.com/apache/cassandra/compare/trunk...pauloricardomg:trunk-14092-v2#diff-5414c0e96996be355c3aff1184ec859aR48] sounds
a bit confusing to me, using "maximum supported date" and "limit date" for the same thing.
Thoughts? If you're also hesitant, what do you think about "Rows that should expire after
that date would still expire on that date."?
 ## You can quickly mention the relevant JIRA ticket [here|https://github.com/apache/cassandra/compare/trunk...pauloricardomg:trunk-14092-v2#diff-b7ca4b9c415e93b6cbfb31daf90cc598R185]
 ## Qualify the static access to {{Cell.sanitizeLocalDeletionTime}} [here|https://github.com/apache/cassandra/compare/trunk...pauloricardomg:trunk-14092-v2#diff-b7ca4b9c415e93b6cbfb31daf90cc598R53]
 ## Could you please add some comments/Javadoc for [{{Cell.sanitizeLocalDeletionTime}}|https://github.com/apache/cassandra/compare/trunk...pauloricardomg:trunk-14092-v2#diff-3e9f1fc67f99d27e92a3eb32201d8ca6R311]?
I would assume that {{NO_TTL}} and {{NO_DELETION_TIME}} are needed to determine whether the
cell is an expiring one, an expired one, or a tombstone, but I'm not too sure
 ## There are missing spaces between the boolean arguments of the delegation call for some
of the unit tests (e.g. [here|https://github.com/apache/cassandra/compare/trunk...pauloricardomg:trunk-14092-v2#diff-0d8cf6ca6ed99c947903359c1beaf386R74])

> Max ttl of 20 years will overflow localDeletionTime
> ---------------------------------------------------
>
>                 Key: CASSANDRA-14092
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14092
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Paulo Motta
>            Assignee: Paulo Motta
>            Priority: Blocker
>             Fix For: 2.1.20, 2.2.12, 3.0.16, 3.11.2
>
>
> CASSANDRA-4771 added a max value of 20 years for ttl to protect against [year 2038 overflow
bug|https://en.wikipedia.org/wiki/Year_2038_problem] for {{localDeletionTime}}.
> It turns out that next year the {{localDeletionTime}} will start overflowing with the
maximum ttl of 20 years ({{System.currentTimeMillis() + ttl(20 years) > Integer.MAX_VALUE}}),
so we should remove this limitation.



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

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


Mime
View raw message