cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Benjamin Manes (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-2661) Canary CLHM v1.2
Date Thu, 19 May 2011 01:22:47 GMT

    [ https://issues.apache.org/jira/browse/CASSANDRA-2661?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13035909#comment-13035909
] 

Benjamin Manes commented on CASSANDRA-2661:
-------------------------------------------

Validated compatibility with NonBlockingHashMap.

CLHM is implemented as a decorator to CHM to provide the bounded capacity semantics. This
allows it to remain a light-weight addition without incurring the complexity of the hash-table
design. It is implemented as a mostly non-blocking decorator, where the blocking calls are
low impact (#clear(), snapshot views).

As described in [1], the java_util_concurrent_chm.jar can be added to the bootclasspath to
swap CHM with NBHM. If Cassandra did this, then it would transparently switch the backing
hash-table for CLHM and observe the scalability benefits. This would be preferred v.s. requiring
changes by CLHM. It does not appear that Cassandra is taking advantage of this at this time.

[1] http://high-scale-lib.cvs.sourceforge.net/viewvc/high-scale-lib/high-scale-lib/README

> Canary CLHM v1.2
> ----------------
>
>                 Key: CASSANDRA-2661
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2661
>             Project: Cassandra
>          Issue Type: Task
>            Reporter: Benjamin Manes
>         Attachments: clhm-20110517.jar
>
>
> I am hoping to release ConcurrentLinkedHashMap v1.2 by the end of the week. This task
is optional, but gives you the opportunity to canary the library and provide any final feedback.
There are currently 285 tests (some threaded) plus a load test, so reliability-wise I'm fairly
confident.
> This release has numerous performance improvements. See the change log for details.
> It also includes a few useful features that may be of interest,
>  - Snapshot iteration in order of hotness (CASSANDRA-1966)
>  - Optionally defer LRU maintenance penalty to a background executor (instead of amortized
on caller threads)
> http://code.google.com/p/concurrentlinkedhashmap/

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

Mime
View raw message