You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Sylvain Lebresne (JIRA)" <ji...@apache.org> on 2011/07/18 16:46:57 UTC

[jira] [Created] (CASSANDRA-2912) CQL ignores client timestamp for full row deletion

CQL ignores client timestamp for full row deletion
--------------------------------------------------

                 Key: CASSANDRA-2912
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2912
             Project: Cassandra
          Issue Type: Bug
          Components: Core
    Affects Versions: 0.8.1
            Reporter: Sylvain Lebresne
            Assignee: Sylvain Lebresne
            Priority: Minor
             Fix For: 0.8.2
         Attachments: 0001-CQL-timestamp-row-deletion.patch



--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2912) CQL ignores client timestamp for full row deletion

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

Sylvain Lebresne commented on CASSANDRA-2912:
---------------------------------------------

A usingClauseDeleteObject is either TIMESTAMP or CONSISTENCY, so you at least want to allow setting both of them. Now if the question was why * instead of ? at the end, then it's mostly because I copied/pasted/modified usingClause where the * didn't seem to be a problem. I kind of think that having a * even if more than 2 doesn't make much sense is no big deal and will avoid, when we add a third possible usingClauseDeleteObjective, to be limited to 2 clauses just because we forgot that it was limited to 2 previously. But I don't really feel strongly about that.

> CQL ignores client timestamp for full row deletion
> --------------------------------------------------
>
>                 Key: CASSANDRA-2912
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2912
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.8.1
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>              Labels: cql
>             Fix For: 0.8.2
>
>         Attachments: 0001-CQL-timestamp-row-deletion.patch
>
>


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2912) CQL ignores client timestamp for full row deletion

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

Pavel Yaskevich updated CASSANDRA-2912:
---------------------------------------

    Reviewer: xedin

> CQL ignores client timestamp for full row deletion
> --------------------------------------------------
>
>                 Key: CASSANDRA-2912
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2912
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.8.1
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>              Labels: cql
>             Fix For: 0.8.2
>
>         Attachments: 0001-CQL-timestamp-row-deletion.patch
>
>


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2912) CQL ignores client timestamp for full row deletion

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

Sylvain Lebresne updated CASSANDRA-2912:
----------------------------------------

    Attachment:     (was: 0001-CQL-timestamp-row-deletion.patch)

> CQL ignores client timestamp for full row deletion
> --------------------------------------------------
>
>                 Key: CASSANDRA-2912
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2912
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.8.1
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>              Labels: cql
>             Fix For: 0.8.2
>
>         Attachments: 0001-CQL-timestamp-row-deletion.patch
>
>


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2912) CQL ignores client timestamp for full row deletion

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

Pavel Yaskevich commented on CASSANDRA-2912:
--------------------------------------------

{noformat}
usingClauseDelete[Attributes attrs]
    : K_USING usingClauseDeleteObjective[attrs] ( K_AND? usingClauseDeleteObjective[attrs] )*
    ;
{noformat}

This means that we allow user to use multiple number of usingClauseDeleteObjective statements, any motivation behind that I'm not getting?

> CQL ignores client timestamp for full row deletion
> --------------------------------------------------
>
>                 Key: CASSANDRA-2912
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2912
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.8.1
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>              Labels: cql
>             Fix For: 0.8.2
>
>         Attachments: 0001-CQL-timestamp-row-deletion.patch
>
>


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2912) CQL ignores client timestamp for full row deletion

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

Jonathan Ellis commented on CASSANDRA-2912:
-------------------------------------------

can you add a test for this?

> CQL ignores client timestamp for full row deletion
> --------------------------------------------------
>
>                 Key: CASSANDRA-2912
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2912
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.8.1
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>              Labels: cql
>             Fix For: 0.8.2
>
>         Attachments: 0001-CQL-timestamp-row-deletion.patch
>
>


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2912) CQL ignores client timestamp for full row deletion

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

Pavel Yaskevich commented on CASSANDRA-2912:
--------------------------------------------

I'm asking because that also means that user will be able to specify as many timestamps and consistency levels as he wants, we will need to split usingClauseDeleteObjective into two statements - one for consistency level and one for timestamp and use them in usingClauseDelete like (K_USING usingConsistencyLevel[attrs] (K_AND usingTimestamp[attrs])? ) to support language consistency. 

> CQL ignores client timestamp for full row deletion
> --------------------------------------------------
>
>                 Key: CASSANDRA-2912
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2912
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.8.1
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>              Labels: cql
>             Fix For: 0.8.2
>
>         Attachments: 0001-CQL-timestamp-row-deletion.patch
>
>


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2912) CQL ignores client timestamp for full row deletion

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

Hudson commented on CASSANDRA-2912:
-----------------------------------

Integrated in Cassandra-0.8 #226 (See [https://builds.apache.org/job/Cassandra-0.8/226/])
    respect client timestamp on full row deletions
patch by slebresne; reviewed by pyaskevich for CASSANDRA-2912

jbellis : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1148547
Files : 
* /cassandra/branches/cassandra-0.8/test/system/test_cql.py
* /cassandra/branches/cassandra-0.8/CHANGES.txt
* /cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/cql/Cql.g
* /cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/cql/DeleteStatement.java


> CQL ignores client timestamp for full row deletion
> --------------------------------------------------
>
>                 Key: CASSANDRA-2912
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2912
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.8.1
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>              Labels: cql
>             Fix For: 0.8.2
>
>         Attachments: 0001-CQL-timestamp-row-deletion.patch
>
>


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2912) CQL ignores client timestamp for full row deletion

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

Sylvain Lebresne updated CASSANDRA-2912:
----------------------------------------

    Attachment: 0001-CQL-timestamp-row-deletion.patch

> CQL ignores client timestamp for full row deletion
> --------------------------------------------------
>
>                 Key: CASSANDRA-2912
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2912
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.8.1
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>              Labels: cql
>             Fix For: 0.8.2
>
>         Attachments: 0001-CQL-timestamp-row-deletion.patch
>
>


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2912) CQL ignores client timestamp for full row deletion

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

Pavel Yaskevich commented on CASSANDRA-2912:
--------------------------------------------

Ok, lets leave it for now, +1.

> CQL ignores client timestamp for full row deletion
> --------------------------------------------------
>
>                 Key: CASSANDRA-2912
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2912
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.8.1
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>              Labels: cql
>             Fix For: 0.8.2
>
>         Attachments: 0001-CQL-timestamp-row-deletion.patch
>
>


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2912) CQL ignores client timestamp for full row deletion

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

Sylvain Lebresne updated CASSANDRA-2912:
----------------------------------------

    Attachment:     (was: 0001-CQL-timestamp-row-deletion.patch)

> CQL ignores client timestamp for full row deletion
> --------------------------------------------------
>
>                 Key: CASSANDRA-2912
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2912
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.8.1
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>              Labels: cql
>             Fix For: 0.8.2
>
>


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Issue Comment Edited] (CASSANDRA-2912) CQL ignores client timestamp for full row deletion

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

Pavel Yaskevich edited comment on CASSANDRA-2912 at 7/19/11 8:21 PM:
---------------------------------------------------------------------

I'm asking because that also means that user will be able to specify as many timestamps and consistency levels as he wants, we will need to split usingClauseDeleteObjective into two statements - one for consistency level and one for timestamp and use them in usingClauseDelete like (K_USING (usingConsistencyLevel[attrs] (K_AND usingTimestamp[attrs])? | usingTimestamp[attrs] (K_AND usingConsistencyLevel[attrs])?) to support language consistency. 

      was (Author: xedin):
    I'm asking because that also means that user will be able to specify as many timestamps and consistency levels as he wants, we will need to split usingClauseDeleteObjective into two statements - one for consistency level and one for timestamp and use them in usingClauseDelete like (K_USING usingConsistencyLevel[attrs] (K_AND usingTimestamp[attrs])? ) to support language consistency. 
  
> CQL ignores client timestamp for full row deletion
> --------------------------------------------------
>
>                 Key: CASSANDRA-2912
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2912
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.8.1
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>              Labels: cql
>             Fix For: 0.8.2
>
>         Attachments: 0001-CQL-timestamp-row-deletion.patch
>
>


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2912) CQL ignores client timestamp for full row deletion

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

Sylvain Lebresne updated CASSANDRA-2912:
----------------------------------------

    Attachment: 0001-CQL-timestamp-row-deletion.patch

> CQL ignores client timestamp for full row deletion
> --------------------------------------------------
>
>                 Key: CASSANDRA-2912
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2912
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.8.1
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>              Labels: cql
>             Fix For: 0.8.2
>
>         Attachments: 0001-CQL-timestamp-row-deletion.patch
>
>


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2912) CQL ignores client timestamp for full row deletion

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

Sylvain Lebresne commented on CASSANDRA-2912:
---------------------------------------------

bq. I'm asking because that also means that user will be able to specify as many timestamps and consistency levels as he wants

That's what I said. To rephrase:
* it's the case also for the UPDATE statement: we should do something for both or none.
* I personally don't think it's a problem, the last statement would be picked each time, which feels a reasonable behavior in that case. More precisely I don't think it's worth caring about.
* if we do want to add a restriction though, I think it would be easier to have Attributes throw an exception when one of its set method is called twice. Because your proposed fix will become a bit ugly for the UPDATE statement and it would be a pain to extend to future new clauses.

> CQL ignores client timestamp for full row deletion
> --------------------------------------------------
>
>                 Key: CASSANDRA-2912
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2912
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.8.1
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>              Labels: cql
>             Fix For: 0.8.2
>
>         Attachments: 0001-CQL-timestamp-row-deletion.patch
>
>


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2912) CQL ignores client timestamp for full row deletion

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

Sylvain Lebresne updated CASSANDRA-2912:
----------------------------------------

    Attachment: 0001-CQL-timestamp-row-deletion.patch

Turns out setting timestamp for DELETE wasn't working at all anyway because the parser wasn't allowing it. New attached patch fixes this and add tests for all of that.

> CQL ignores client timestamp for full row deletion
> --------------------------------------------------
>
>                 Key: CASSANDRA-2912
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2912
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.8.1
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>              Labels: cql
>             Fix For: 0.8.2
>
>         Attachments: 0001-CQL-timestamp-row-deletion.patch
>
>


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira