You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Nate McCall (JIRA)" <ji...@apache.org> on 2009/12/18 09:01:31 UTC

[jira] Created: (CASSANDRA-642) Implement get_range_slice in CliClient

Implement get_range_slice in CliClient
--------------------------------------

                 Key: CASSANDRA-642
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-642
             Project: Cassandra
          Issue Type: New Feature
            Reporter: Nate McCall
            Priority: Minor
             Fix For: 0.5


Provide access to get_range_slice API method in CliClient

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CASSANDRA-642) Implement get_range_slice in CliClient

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

Nate McCall commented on CASSANDRA-642:
---------------------------------------

I based the patch against 0.5 branch as I am awaiting the release on that after the list announcement last week - I put that in the 'Fix Version' but probably should have been more specific in the comment. 

Understood (and agreed) about maintaining of the simplicity of cli. Those are some good points that I did not consider. 

Your last statement makes me feel as though I am missing something with get_range_slice on the API. I am still coming up to speed on the types available to the CompareWith configuration, would a correct slicing approach have to appropriately handle whatever "AbstractType" implementation showed up? (I may have just answered my own question there but please do let me know if I am off on that mark). 

Otherwise, thanks for the informative reply.

> Implement get_range_slice in CliClient
> --------------------------------------
>
>                 Key: CASSANDRA-642
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-642
>             Project: Cassandra
>          Issue Type: New Feature
>            Reporter: Nate McCall
>            Priority: Minor
>             Fix For: 0.5
>
>         Attachments: patch.txt
>
>
> Provide access to get_range_slice API method in CliClient

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CASSANDRA-642) Implement get_range_slice in CliClient

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

Eric Evans commented on CASSANDRA-642:
--------------------------------------

A couple of things. 1) I didn't test out the patch because it doesn't apply, perhaps it needs to be rebased against trunk, and 2) I'm not sure this patch is a good idea for a number of reasons.

I'm of the opinion that the cli should be left very simple. I think we should encourage people to use it as a quick means of testing a node/cluster, or to become familiar with the basics of the data-model without requiring them to write any code. I worry that giving people the impression that it is a serious tool will set unattainable expectations, and the simple fact that it is a text interface makes it unsuitable (remember that column and super column names and values are binary).

Additionally, if we were to add slice functionality, I don't think this is the way. For example, the command name used here ("slice") is generic enough that IMO it would need to cover all slice functionality, and I don't think there is a straightforward syntax that would accommodate that.I also don't think that the syntax chosen here is the best way to express a range of keys since it looks like arithmetic instead of a range specification.

> Implement get_range_slice in CliClient
> --------------------------------------
>
>                 Key: CASSANDRA-642
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-642
>             Project: Cassandra
>          Issue Type: New Feature
>            Reporter: Nate McCall
>            Priority: Minor
>             Fix For: 0.5
>
>         Attachments: patch.txt
>
>
> Provide access to get_range_slice API method in CliClient

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CASSANDRA-642) Implement get_range_slice in CliClient

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

Eric Evans commented on CASSANDRA-642:
--------------------------------------

"Your last statement makes me feel as though I am missing something with get_range_slice on the API. I am still coming up to speed on the types available to the CompareWith configuration, would a correct slicing approach have to appropriately handle whatever "AbstractType" implementation showed up? (I may have just answered my own question there but please do let me know if I am off on that mark)."

Well, this is what I meant when I said that the cli was not a good solution for serious work (due to it being text-based). We pass around byte[] representations of AbstractType extending objects for column and super column names and translating these to and from strings isn't The Way. :)

What I was referring to in my last statement is that there are column slices against a record (by key), and column slices against ranges of records (by multiple keys), and both can be done with predicates. I was saying that "slice" is generic enough command term that it should support all forms (and that that would be Hard to do well ;).

> Implement get_range_slice in CliClient
> --------------------------------------
>
>                 Key: CASSANDRA-642
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-642
>             Project: Cassandra
>          Issue Type: New Feature
>            Reporter: Nate McCall
>            Priority: Minor
>             Fix For: 0.5
>
>         Attachments: patch.txt
>
>
> Provide access to get_range_slice API method in CliClient

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CASSANDRA-642) Implement get_range_slice in CliClient

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

Nate McCall updated CASSANDRA-642:
----------------------------------

    Attachment: patch.txt

> Implement get_range_slice in CliClient
> --------------------------------------
>
>                 Key: CASSANDRA-642
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-642
>             Project: Cassandra
>          Issue Type: New Feature
>            Reporter: Nate McCall
>            Priority: Minor
>             Fix For: 0.5
>
>         Attachments: patch.txt
>
>
> Provide access to get_range_slice API method in CliClient

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CASSANDRA-642) Implement get_range_slice in CliClient

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

Nate McCall commented on CASSANDRA-642:
---------------------------------------

Understood - thanks again for the feedback and explanation.

> Implement get_range_slice in CliClient
> --------------------------------------
>
>                 Key: CASSANDRA-642
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-642
>             Project: Cassandra
>          Issue Type: New Feature
>            Reporter: Nate McCall
>            Assignee: Eric Evans
>            Priority: Minor
>             Fix For: 0.5
>
>         Attachments: patch.txt
>
>
> Provide access to get_range_slice API method in CliClient

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CASSANDRA-642) Implement get_range_slice in CliClient

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

Nate McCall edited comment on CASSANDRA-642 at 12/18/09 8:13 AM:
-----------------------------------------------------------------

This patch contains changes providing get_range_slice access to the CliClient. I added this to help myself get a handle on quite how this API method works - hopefully this might be useful enough to others for inclusion. Cli.g might be a little hacky due to my lack of experience with Antlr - do let me know if I can change anything there.

      was (Author: zznate):
    This patch contains changes providing get_range_slice access to the CliClient. I added this to help myself get a handle on quite how this API method works - hopefully this might be useful enough to others for inclusion.
  
> Implement get_range_slice in CliClient
> --------------------------------------
>
>                 Key: CASSANDRA-642
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-642
>             Project: Cassandra
>          Issue Type: New Feature
>            Reporter: Nate McCall
>            Priority: Minor
>             Fix For: 0.5
>
>         Attachments: patch.txt
>
>
> Provide access to get_range_slice API method in CliClient

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.