You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Todd Nine (JIRA)" <ji...@apache.org> on 2012/10/05 21:36:02 UTC

[jira] [Created] (CASSANDRA-4771) Setting TTL to Integer.MAX causes columns to not be persisted.

Todd Nine created CASSANDRA-4771:
------------------------------------

             Summary: Setting TTL to Integer.MAX causes columns to not be persisted.
                 Key: CASSANDRA-4771
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4771
             Project: Cassandra
          Issue Type: Bug
          Components: Core
    Affects Versions: 1.0.12
            Reporter: Todd Nine
            Priority: Blocker


When inserting columns via batch mutation, we have an edge case where columns will be set to Integer.MAX.  When setting the column expiration time to Integer.MAX, the columns do not appear to be persisted.

Fails:

Integer.MAX 
Integer.MAX/2

Works:
Integer.MAX/3



--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-4771) Setting TTL to Integer.MAX causes columns to not be persisted.

Posted by "Sylvain Lebresne (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4771?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Sylvain Lebresne updated CASSANDRA-4771:
----------------------------------------

    Priority: Major  (was: Blocker)
    
> Setting TTL to Integer.MAX causes columns to not be persisted.
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-4771
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4771
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.0.12
>            Reporter: Todd Nine
>            Assignee: Dave Brosius
>             Fix For: 1.2.0 beta 2
>
>         Attachments: 4771_b.txt, 4771.txt
>
>
> When inserting columns via batch mutation, we have an edge case where columns will be set to Integer.MAX.  When setting the column expiration time to Integer.MAX, the columns do not appear to be persisted.
> Fails:
> Integer.MAX_VALUE 
> Integer.MAX_VALUE/2
> Works:
> Integer.MAX_VALUE/3

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-4771) Setting TTL to Integer.MAX causes columns to not be persisted.

Posted by "Brandon Williams (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4771?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Brandon Williams updated CASSANDRA-4771:
----------------------------------------

    Reviewer: slebresne
    
> Setting TTL to Integer.MAX causes columns to not be persisted.
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-4771
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4771
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.0.12
>            Reporter: Todd Nine
>            Assignee: Dave Brosius
>            Priority: Blocker
>             Fix For: 1.2.0 beta 2
>
>         Attachments: 4771.txt
>
>
> When inserting columns via batch mutation, we have an edge case where columns will be set to Integer.MAX.  When setting the column expiration time to Integer.MAX, the columns do not appear to be persisted.
> Fails:
> Integer.MAX_VALUE 
> Integer.MAX_VALUE/2
> Works:
> Integer.MAX_VALUE/3

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Comment Edited] (CASSANDRA-4771) Setting TTL to Integer.MAX causes columns to not be persisted.

Posted by "Dave Brosius (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4771?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13471224#comment-13471224 ] 

Dave Brosius edited comment on CASSANDRA-4771 at 10/7/12 1:04 PM:
------------------------------------------------------------------

The value written is delta-ed from the current time as

(System.currentTimeMillis() / 1000) + timeToLive

which causes the written ttl to go negative

the error back to the client could be better, and perhaps pre-flighted.
                
      was (Author: dbrosius@apache.org):
    The value written is delta-ed from the current time as

(System.currentTimeMillis() / 1000) + timeToLive

which causes the written ttl to go negative
                  
> Setting TTL to Integer.MAX causes columns to not be persisted.
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-4771
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4771
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.0.12
>            Reporter: Todd Nine
>            Priority: Blocker
>
> When inserting columns via batch mutation, we have an edge case where columns will be set to Integer.MAX.  When setting the column expiration time to Integer.MAX, the columns do not appear to be persisted.
> Fails:
> Integer.MAX_VALUE 
> Integer.MAX_VALUE/2
> Works:
> Integer.MAX_VALUE/3

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-4771) Setting TTL to Integer.MAX causes columns to not be persisted.

Posted by "Dave Brosius (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4771?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dave Brosius updated CASSANDRA-4771:
------------------------------------

    Attachment: 4771.txt

fix preflighting to catch ttl too large problems. 4771.txt
                
> Setting TTL to Integer.MAX causes columns to not be persisted.
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-4771
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4771
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.0.12
>            Reporter: Todd Nine
>            Assignee: Dave Brosius
>            Priority: Blocker
>             Fix For: 1.2.0 beta 2
>
>         Attachments: 4771.txt
>
>
> When inserting columns via batch mutation, we have an edge case where columns will be set to Integer.MAX.  When setting the column expiration time to Integer.MAX, the columns do not appear to be persisted.
> Fails:
> Integer.MAX_VALUE 
> Integer.MAX_VALUE/2
> Works:
> Integer.MAX_VALUE/3

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-4771) Setting TTL to Integer.MAX causes columns to not be persisted.

Posted by "Todd Nine (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4771?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Todd Nine updated CASSANDRA-4771:
---------------------------------

    Description: 
When inserting columns via batch mutation, we have an edge case where columns will be set to Integer.MAX.  When setting the column expiration time to Integer.MAX, the columns do not appear to be persisted.

Fails:

Integer.MAX_VALUE 
Integer.MAX_VALUE/2

Works:
Integer.MAX_VALUE/3



  was:
When inserting columns via batch mutation, we have an edge case where columns will be set to Integer.MAX.  When setting the column expiration time to Integer.MAX, the columns do not appear to be persisted.

Fails:

Integer.MAX 
Integer.MAX/2

Works:
Integer.MAX/3



    
> Setting TTL to Integer.MAX causes columns to not be persisted.
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-4771
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4771
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.0.12
>            Reporter: Todd Nine
>            Priority: Blocker
>
> When inserting columns via batch mutation, we have an edge case where columns will be set to Integer.MAX.  When setting the column expiration time to Integer.MAX, the columns do not appear to be persisted.
> Fails:
> Integer.MAX_VALUE 
> Integer.MAX_VALUE/2
> Works:
> Integer.MAX_VALUE/3

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-4771) Setting TTL to Integer.MAX causes columns to not be persisted.

Posted by "Dave Brosius (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4771?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dave Brosius updated CASSANDRA-4771:
------------------------------------

    Attachment: 4771_b.txt

makes sense

1) patch against 1.1
2) limit to 20 years
3) exception contains requested vs max limit
4) added to cql
                
> Setting TTL to Integer.MAX causes columns to not be persisted.
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-4771
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4771
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.0.12
>            Reporter: Todd Nine
>            Assignee: Dave Brosius
>            Priority: Blocker
>             Fix For: 1.2.0 beta 2
>
>         Attachments: 4771_b.txt, 4771.txt
>
>
> When inserting columns via batch mutation, we have an edge case where columns will be set to Integer.MAX.  When setting the column expiration time to Integer.MAX, the columns do not appear to be persisted.
> Fails:
> Integer.MAX_VALUE 
> Integer.MAX_VALUE/2
> Works:
> Integer.MAX_VALUE/3

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CASSANDRA-4771) Setting TTL to Integer.MAX causes columns to not be persisted.

Posted by "Sylvain Lebresne (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4771?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13471560#comment-13471560 ] 

Sylvain Lebresne commented on CASSANDRA-4771:
---------------------------------------------

I think we'll want to fix that for CQL too (in ModificationStatement.validate(); and yes, that would be nice to not have duplication of the validation code but ...). Also, the patch is against trunk, we should push that to 1.1. Last thing: just returning "ttl too large" doesn't really help to know why it is too large, and it can be hard to check in the application that your ttl won't be too large. Maybe it would be simpler to pick a fixed max TTL value, like say 20 years (which would give us something like 16 years to lift that limitation)?
                
> Setting TTL to Integer.MAX causes columns to not be persisted.
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-4771
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4771
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.0.12
>            Reporter: Todd Nine
>            Assignee: Dave Brosius
>            Priority: Blocker
>             Fix For: 1.2.0 beta 2
>
>         Attachments: 4771.txt
>
>
> When inserting columns via batch mutation, we have an edge case where columns will be set to Integer.MAX.  When setting the column expiration time to Integer.MAX, the columns do not appear to be persisted.
> Fails:
> Integer.MAX_VALUE 
> Integer.MAX_VALUE/2
> Works:
> Integer.MAX_VALUE/3

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CASSANDRA-4771) Setting TTL to Integer.MAX causes columns to not be persisted.

Posted by "Sylvain Lebresne (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4771?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13472187#comment-13472187 ] 

Sylvain Lebresne commented on CASSANDRA-4771:
---------------------------------------------

nit: I would have put MAX_TTL in ExpiringColumn rather than IColumn.

But +1 in any case.
                
> Setting TTL to Integer.MAX causes columns to not be persisted.
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-4771
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4771
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.0.12
>            Reporter: Todd Nine
>            Assignee: Dave Brosius
>             Fix For: 1.2.0 beta 2
>
>         Attachments: 4771_b.txt, 4771.txt
>
>
> When inserting columns via batch mutation, we have an edge case where columns will be set to Integer.MAX.  When setting the column expiration time to Integer.MAX, the columns do not appear to be persisted.
> Fails:
> Integer.MAX_VALUE 
> Integer.MAX_VALUE/2
> Works:
> Integer.MAX_VALUE/3

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CASSANDRA-4771) Setting TTL to Integer.MAX causes columns to not be persisted.

Posted by "Dave Brosius (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4771?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13471224#comment-13471224 ] 

Dave Brosius commented on CASSANDRA-4771:
-----------------------------------------

The value written is delta-ed from the current time as

(System.currentTimeMillis() / 1000) + timeToLive

which causes the written ttl to go negative
                
> Setting TTL to Integer.MAX causes columns to not be persisted.
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-4771
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4771
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.0.12
>            Reporter: Todd Nine
>            Priority: Blocker
>
> When inserting columns via batch mutation, we have an edge case where columns will be set to Integer.MAX.  When setting the column expiration time to Integer.MAX, the columns do not appear to be persisted.
> Fails:
> Integer.MAX_VALUE 
> Integer.MAX_VALUE/2
> Works:
> Integer.MAX_VALUE/3

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira