[ https://issues.apache.org/jira/browse/CASSANDRA-3997?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13237209#comment-13237209 ]
Jonathan Ellis commented on CASSANDRA-3997: ------------------------------------------- To update from IRC: Vijay said he tried jemalloc via LD_PRELOAD and hit corruption problems related to multi-threaded use. Which is odd, because http://www.canonware.com/jemalloc/, http://www.facebook.com/notes/facebook-engineering/scalable-memory-allocation-using-jemalloc/480222803919, and others claim jemalloc is designed for multithreaded use cases. (If there ARE thread safety problems w/ jemalloc, shouldn't the patch synchronize somewhere?) I did find http://comments.gmane.org/gmane.comp.db.redis.general/7736 which corroborates "weird problems w/ jemalloc and the jvm," although throwing redis into the mix definitely doesn't simplify things. I think this is worth following up on for two reasons: # I'd much rather let people customize malloc via preload, than having to write Java + JNA stubs for each # If there are corruption problems with jemalloc, it could affect our cache too Can you follow up on http://www.canonware.com/mailman/listinfo/jemalloc-discuss and see if they can clear anything up? > Make SerializingCache Memory Pluggable > -------------------------------------- > > Key: CASSANDRA-3997 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3997 > Project: Cassandra > Issue Type: Improvement > Components: Core > Reporter: Vijay > Assignee: Vijay > Priority: Minor > Labels: cache > Fix For: 1.2 > > Attachments: 0001-CASSANDRA-3997.patch, jna.zip > > > Serializing cache uses native malloc and free by making FM pluggable, users > will have a choice of gcc malloc, TCMalloc or JEMalloc as needed. > Initial tests shows less fragmentation in JEMalloc but the only issue with it > is that (both TCMalloc and JEMalloc) are kind of single threaded (at-least > they crash in my test otherwise). -- 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