[ 
https://issues.apache.org/jira/browse/CASSANDRA-1546?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sylvain Lebresne updated CASSANDRA-1546:
----------------------------------------

    Attachment: 0002-Counters.patch
                0003-Generated-thrift-files-changes.patch

Attaching a new version of the patch that includes the support for counter as 
super columns.
I want to keep the counter-as-row too, because I believe in the marker idea a 
lot and that won't
fly for counter as super columns until we don't deserialize super columns 
entirely.

The details of the thrift API is a proposal, it can be discussed. In 
particular, for 
the batch_add call, it would have made more sense for it to take a map of 
CounterPath -> CounterUpdate. However, that doesn't work in python (because
CounterPath is not hashable and thus the map can't be constructed). So it takes
something similar to batch_mutate. However, if you use batch_add to insert non 
nested counters (the terminology of the patch for counter-as-row, by opposition 
to 
counter-as-super-columns that are called nested counters), then the first key 
of the
map can be anything (which is fine but weird).

Also, the get_counter_slice and multiget_counter_slice can't be used for non 
nested
counters. It won't be hard to add an equivalent of get_range_slices for 
counters, but 
that will have to wait.

Lastly, the implementation of batch_add sucks right now as it creates a new 
mutation 
for each update. Again, not hard to fix, just need some time for that. 

> (Yet another) approach to counting
> ----------------------------------
>
>                 Key: CASSANDRA-1546
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1546
>             Project: Cassandra
>          Issue Type: New Feature
>          Components: Core
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>             Fix For: 0.7.0
>
>         Attachments: 0001-Remove-IClock-from-internals.patch, 
> 0002-Counters.patch, 0003-Generated-thrift-files-changes.patch
>
>
> This could be described as a mix between CASSANDRA-1072 without clocks and 
> CASSANDRA-1421.
> More details in the comment below.

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

Reply via email to