[
https://issues.apache.org/jira/browse/CASSANDRA-1891?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jonathan Ellis updated CASSANDRA-1891:
--------------------------------------
Attachment: 1891-v2.txt
v2 (against 0.7 branch) adds a comment to ColumnSortedMap:
{code}
* Facade over a DataInput that contains IColumns in sorted order.
* We use this because passing a sorted map to the ConcurrentLinkedHashMap
constructor is the only way
* to invoke its private buildFromSorted method and avoid worst-case behavior
of CLHM.put.
{code}
and fixes the bug in deserialization (markedForDelete long comes *before*
column count, and had been moved to after).
tests pass now.
> large supercolumn deserialization invokes CSLM worst case scenario
> ------------------------------------------------------------------
>
> Key: CASSANDRA-1891
> URL: https://issues.apache.org/jira/browse/CASSANDRA-1891
> Project: Cassandra
> Issue Type: Improvement
> Components: Core
> Reporter: Cliff Moon
> Priority: Minor
> Fix For: 0.7.1
>
> Attachments: 1891-v2.txt, supercolumn.patch
>
>
> SuperColumn deserialization hits a worst case insert scenario for CSLM:
> inserting pre-sorted entries one at a time. Inside of CSLM this requires
> scanning to the end of the list and doing a comparison at every step for
> every item inserted. This patch supplies a SortedMap interface to the
> supercolumn deserialization. CSLM will do a bulk insert from a SortedMap
> interface supplied in the constructor.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.