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/04/08 01:16:05 UTC

[jira] [Created] (CASSANDRA-2440) Merge ColumnOrSuperColumn and Counter thrift structure to avoid most of the counter API call duplication

Merge ColumnOrSuperColumn and Counter thrift structure to avoid most of the counter API call duplication
--------------------------------------------------------------------------------------------------------

                 Key: CASSANDRA-2440
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2440
             Project: Cassandra
          Issue Type: Improvement
          Components: API
            Reporter: Sylvain Lebresne
            Assignee: Sylvain Lebresne
             Fix For: 0.8


Having duplicate calls for all counter operation is ugly. Distinguishing a Column from a CounterColumn is a good idea, but I feel we went too far in making counters an API on its own. This ticket proposes to merge the Counter and ColumnOrSuperColumn thrift structure (while keeping CounterColumn and CounterSuperColumn) and to remove all the duplicate API calls.

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

[jira] [Commented] (CASSANDRA-2440) Merge ColumnOrSuperColumn and Counter thrift structure to avoid most of the counter API call duplication

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

Sylvain Lebresne commented on CASSANDRA-2440:
---------------------------------------------

bq.  Could we perhaps also merge CounterSuperColumn with SuperColumn by giving SuperColumn two lists?

I could see pros and cons for that. The cons for instance would be that with the patch as is, the COSC structure has a kind of nice symmetry (normal columm and sc/counter column and sc). In particular the distinction for counter/standard is done at the same 'level' (the COSC leve) which could maybe be a little simpler for client. Lastly, I'm more reluctant to make field of SuperColumn optional while Mutation already has all of its field optional.

Anyway I guess I don't really care so much one way or another. The main point was to remove all the duplicate API calls. But since I think I have a tiny preference for how it is right now, I'd be willing to be lazy and leave it at that unless there is strong feelings expressed for doing otherwise.

> Merge ColumnOrSuperColumn and Counter thrift structure to avoid most of the counter API call duplication
> --------------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2440
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2440
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>             Fix For: 0.8
>
>         Attachments: cassandra.thrift
>
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> Having duplicate calls for all counter operation is ugly. Distinguishing a Column from a CounterColumn is a good idea, but I feel we went too far in making counters an API on its own. This ticket proposes to merge the Counter and ColumnOrSuperColumn thrift structure (while keeping CounterColumn and CounterSuperColumn) and to remove all the duplicate API calls.

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

[jira] [Commented] (CASSANDRA-2440) Merge ColumnOrSuperColumn and Counter thrift structure to avoid most of the counter API call duplication

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

Hudson commented on CASSANDRA-2440:
-----------------------------------

Integrated in Cassandra #844 (See [https://hudson.apache.org/hudson/job/Cassandra/844/])
    Merge COSC and Counter thrift structure
patch by slebresne; reviewed by jbellis for CASSANDRA-2440


> Merge ColumnOrSuperColumn and Counter thrift structure to avoid most of the counter API call duplication
> --------------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2440
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2440
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API
>    Affects Versions: 0.8
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>             Fix For: 0.8
>
>         Attachments: 0001-Thrift-changes.patch, 0002-Merge-Counter-and-ColumnOrSuperColumn-thrift-structu.patch, cassandra.thrift
>
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> Having duplicate calls for all counter operation is ugly. Distinguishing a Column from a CounterColumn is a good idea, but I feel we went too far in making counters an API on its own. This ticket proposes to merge the Counter and ColumnOrSuperColumn thrift structure (while keeping CounterColumn and CounterSuperColumn) and to remove all the duplicate API calls.

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

[jira] [Updated] (CASSANDRA-2440) Merge ColumnOrSuperColumn and Counter thrift structure to avoid most of the counter API call duplication

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

Sylvain Lebresne updated CASSANDRA-2440:
----------------------------------------

    Attachment: 0002-Merge-Counter-and-ColumnOrSuperColumn-thrift-structu.patch
                0001-Thrift-changes.patch

Patch attached (first patch is cassandra.thrift plus the thrift generated file changes, patch two is the rest). 

> Merge ColumnOrSuperColumn and Counter thrift structure to avoid most of the counter API call duplication
> --------------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2440
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2440
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>             Fix For: 0.8
>
>         Attachments: 0001-Thrift-changes.patch, 0002-Merge-Counter-and-ColumnOrSuperColumn-thrift-structu.patch, cassandra.thrift
>
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> Having duplicate calls for all counter operation is ugly. Distinguishing a Column from a CounterColumn is a good idea, but I feel we went too far in making counters an API on its own. This ticket proposes to merge the Counter and ColumnOrSuperColumn thrift structure (while keeping CounterColumn and CounterSuperColumn) and to remove all the duplicate API calls.

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

[jira] [Commented] (CASSANDRA-2440) Merge ColumnOrSuperColumn and Counter thrift structure to avoid most of the counter API call duplication

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

Stu Hood commented on CASSANDRA-2440:
-------------------------------------

Looks good. Could we perhaps also merge CounterSuperColumn with SuperColumn by giving SuperColumn two lists? There really isn't any such thing as a CounterSuperColumn per-say... just a SuperColumn holding counters.

> Merge ColumnOrSuperColumn and Counter thrift structure to avoid most of the counter API call duplication
> --------------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2440
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2440
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>             Fix For: 0.8
>
>         Attachments: cassandra.thrift
>
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> Having duplicate calls for all counter operation is ugly. Distinguishing a Column from a CounterColumn is a good idea, but I feel we went too far in making counters an API on its own. This ticket proposes to merge the Counter and ColumnOrSuperColumn thrift structure (while keeping CounterColumn and CounterSuperColumn) and to remove all the duplicate API calls.

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

[jira] [Updated] (CASSANDRA-2440) Merge ColumnOrSuperColumn and Counter thrift structure to avoid most of the counter API call duplication

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

Sylvain Lebresne updated CASSANDRA-2440:
----------------------------------------

    Attachment: cassandra.thrift

Attaching a tentative API for now. After the merge of Counter and ColumnOrSuperColumn, the only method specific to counters are
  * add - because we still distinguish Column and CounterColumn, so we can't use insert here.
  * remove_counter - We don't have timestamps for counters (more precisely we use server timestamps) and we can't have the timestamp optional in the remove method.

For the remove_counter method, I could be fine keeping only the remove method and ignoring the timestamp if it's a counter CF, but I'm not sure it is really cleaner and since counter removal is a bit limited it feels like a good idea to keep a separate call.

> Merge ColumnOrSuperColumn and Counter thrift structure to avoid most of the counter API call duplication
> --------------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2440
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2440
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>             Fix For: 0.8
>
>         Attachments: cassandra.thrift
>
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> Having duplicate calls for all counter operation is ugly. Distinguishing a Column from a CounterColumn is a good idea, but I feel we went too far in making counters an API on its own. This ticket proposes to merge the Counter and ColumnOrSuperColumn thrift structure (while keeping CounterColumn and CounterSuperColumn) and to remove all the duplicate API calls.

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

[jira] [Commented] (CASSANDRA-2440) Merge ColumnOrSuperColumn and Counter thrift structure to avoid most of the counter API call duplication

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

Jonathan Ellis commented on CASSANDRA-2440:
-------------------------------------------

+1

> Merge ColumnOrSuperColumn and Counter thrift structure to avoid most of the counter API call duplication
> --------------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2440
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2440
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>             Fix For: 0.8
>
>         Attachments: 0001-Thrift-changes.patch, 0002-Merge-Counter-and-ColumnOrSuperColumn-thrift-structu.patch, cassandra.thrift
>
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> Having duplicate calls for all counter operation is ugly. Distinguishing a Column from a CounterColumn is a good idea, but I feel we went too far in making counters an API on its own. This ticket proposes to merge the Counter and ColumnOrSuperColumn thrift structure (while keeping CounterColumn and CounterSuperColumn) and to remove all the duplicate API calls.

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