[ https://issues.apache.org/jira/browse/CASSANDRA-2893?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jonathan Ellis updated CASSANDRA-2893: -------------------------------------- Attachment: 2893-pauses.txt I can also reproduce the apparently atomic insert behavior in 1.0. I'm not sure what quirk of Java optimization is causing it, to be honest. But I'm not worried about it because when I forced pauses between the columns being added ("pauses" patch attached) then I did see the counts change. (Specifically, I initialized the row first with "stress -t 1 -n 1 -c 1 -K 1", then sent 10000 columns with "stress -t 1 -n 1 -c 10000 -K 1".) So whatever is making the updates highly likely to be isolated does not *guarantee* it, so I'm comfortable that our mental model of the 1.0 Memtable is valid. > Add row-level isolation > ----------------------- > > Key: CASSANDRA-2893 > URL: https://issues.apache.org/jira/browse/CASSANDRA-2893 > Project: Cassandra > Issue Type: Improvement > Reporter: Jonathan Ellis > Assignee: Sylvain Lebresne > Priority: Minor > Fix For: 1.1 > > Attachments: 0001-Move-deletion-infos-into-ISortedColumns-v2.patch, > 0001-Move-deletion-infos-into-ISortedColumns.patch, > 0002-Make-memtable-use-CF.addAll-v2.patch, > 0002-Make-memtable-use-CF.addAll.patch, > 0003-Add-AtomicSortedColumn-and-snapTree-v2.patch, > 0003-Add-AtomicSortedColumn-and-snapTree.patch, 2893-pauses.txt, > latency-plain.svg, latency.svg, row_isolation_test.py, > snaptree-0.1-SNAPSHOT.jar > > > This could be done using an the atomic ConcurrentMap operations from the > Memtable and something like http://code.google.com/p/pcollections/ to replace > the ConcurrentSkipListMap in ThreadSafeSortedColumns. The trick is that > pcollections does not provide a SortedMap, so we probably need to write our > own. > Googling [persistent sortedmap] I found > http://code.google.com/p/actord/source/browse/trunk/actord/src/main/scala/ff/collection > (in scala) and http://clojure.org/data_structures#Data Structures-Maps. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira