cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Benedict (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-6628) Cassandra crashes on Solaris sparcv9 using java 64bit
Date Mon, 03 Feb 2014 09:52:09 GMT

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

Benedict commented on CASSANDRA-6628:
-------------------------------------

bq. my changes to comparer would make it slower than pure java implementation

This isn't very surprising given what they were doing, but always good to have the confirmation
:-)

It should be possible to make a special unsafe comparer tailored for sparcv9 (and any other
aligned access only architectures) that is quite a bit faster, in the manner I mention above,
but it's not something we're likely to consider a priority in the near future. As always feel
free to have a crack at it yourself and submit, I'd be more than happy to review.

> Cassandra crashes on Solaris sparcv9 using java 64bit
> -----------------------------------------------------
>
>                 Key: CASSANDRA-6628
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6628
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>         Environment: checked 1.2.x line and 2.0.x
>            Reporter: Dmitry Shohov
>            Assignee: Dmitry Shohov
>             Fix For: 2.0.5
>
>         Attachments: solaris_unsafe_fix.patch, tmp.patch
>
>
> When running cassandra 2.0.4 (and other versions) on Solaris and java 64 bit, JVM crashes.
Issue is described once in CASSANDRA-4646 but closed as invalid.
> The reason for this crash is some memory allignment related problems and incorrect sun.misc.Unsafe
usage. If you look into DirectByteBuffer in jdk, you will see that it checks os.arch before
using getLong methods.
> I have a patch, which check for the os.arch and if it is not one of the known, it reads
longs and ints byte by byte.
> Although patch fixes the problem in cassandra, it will still crash without similar fixes
in the lz4 library. I already provided the patch for Unsafe usage in lz4.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Mime
View raw message