[
https://issues.apache.org/jira/browse/CASSANDRA-1546?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12915472#action_12915472
]
Sylvain Lebresne commented on CASSANDRA-1546:
---------------------------------------------
Say at the beginning A has for K the value 4 (the row counter will have only
one column, it's 'local counter
column', that is a column whose name is A id).
We add B. The sstable containing K with value 4 is streamed to B. For B, the
column streamed from
A is not it's 'local counter column' (it's the one of A), so it treats it as a
normal column.
During the bootstrap, A receives update to K as a leader, say we add 2. A will
insert 2 as
a LocalCounterColumn (terminology from the patch). Then A will read it's 'local
counter column'.
This read will merge the old value 4, with the newly inserted update 2, and
thus the result of
the read is a column with value 6. Then A will replicate the update to B by
sending to B the
value 6 (more precisely a column whose name is A id, value is 6 and timestamp
is the timestamp
of the new update. B receives that and treat that as a standard column (it will
overwrite the streamed
column with the value 4 because the timestamp will be greater).
> (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.