# JVM crash on 64 bit SPARC with Elasticsearch 1.2.2 due to unaligned memory access

**URL:** https://discuss.elastic.co/t/jvm-crash-on-64-bit-sparc-with-elasticsearch-1-2-2-due-to-unaligned-memory-access/18786
**Category:** Elasticsearch
**Created:** [July 22, 2014, 9:43am UTC](https://discuss.elastic.co/t/jvm-crash-on-64-bit-sparc-with-elasticsearch-1-2-2-due-to-unaligned-memory-access/18786 "2014-07-22T09:43:28Z")
**Posts on this page:** 7
**Page:** 2

<div class="post-metadata">

### Author: ![tony\_aponte](https://avatars.discourse-cdn.com/v4/letter/t/e56c9b/32.png) [@tony\_aponte](https://discuss.elastic.co/u/tony_aponte)
#### Post date: [August 29, 2014, 2:29pm UTC](https://discuss.elastic.co/t/jvm-crash-on-64-bit-sparc-with-elasticsearch-1-2-2-due-to-unaligned-memory-access/18786/21 "2014-08-29T14:29:50Z")

</div>

Thanks again and sorry to bother you guys but I'm new to Github and don't  
know what do do from here. Can you point me to the right place where I can  
take the next step to put this patch on my server? I only know how to  
untar the tarball I downloaded from the main ES page.

Thanks.  
Tony

On Wednesday, August 27, 2014 1:35:06 PM UTC-4, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:

> Kudos!
> 
> Tony
> 
> On Wednesday, August 27, 2014 1:16:11 PM UTC-4, Jörg Prante wrote:
> 
> > All praise should go to the fantastic Elasticsearch team who did not  
> > hesitate to test the fix immediately and replaced it with a better working  
> > solution, since the lzf-compress software is having weaknesses regarding  
> > threadsafety.
> > 
> > Jörg
> > 
> > On Wed, Aug 27, 2014 at 7:01 PM, Ivan Brusic [iv...@brusic.com](mailto:iv...@brusic.com) wrote:
> > 
> > > Amazing job. Great work.
> > > 
> > > --  
> > > Ivan
> > > 
> > > On Tue, Aug 26, 2014 at 12:41 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<[joerg...@gmail.com](mailto:joerg...@gmail.com)
> > > 
> > > > wrote:
> > > 
> > > > I fixed the issue by setting the safe LZF encoder in LZFCompressor and  
> > > > opened a pull request
> > > > 
> > > > [Add LZF safe encoder in LZFCompressor by jprante · Pull Request #7466 · elastic/elasticsearch · GitHub](https://github.com/elasticsearch/elasticsearch/pull/7466)
> > > > 
> > > > Jörg
> > > > 
> > > > On Tue, Aug 26, 2014 at 8:17 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<[joerg...@gmail.com](mailto:joerg...@gmail.com)
> > > > 
> > > > > wrote:
> > > > 
> > > > > Still broken with lzf-compress 1.0.3
> > > > > 
> > > > > [Solaris SPARC JVM 64bit crash with Java 8u11 and Elasticsearch 1.3.3-SNAPSHOT (with lzf-compress 1.0.3) · GitHub](https://gist.github.com/jprante/d2d829b497db4963aea5)
> > > > > 
> > > > > Jörg
> > > > > 
> > > > > On Tue, Aug 26, 2014 at 7:54 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > 
> > > > > > Thanks for the logstash mapping command. I can reproduce it now.
> > > > > > 
> > > > > > It's the LZF encoder that bails out at  
> > > > > > org.elasticsearch.common.compress.lzf.impl.UnsafeChunkEncoderBE.\_getInt
> > > > > > 
> > > > > > which uses in turn sun.misc.Unsafe.getInt
> > > > > > 
> > > > > > I have created a gist of the JVM crash file at
> > > > > > 
> > > > > > [Solaris SPARC core dump with Java 8u11 64bit and Elasticsearch 1.3.2 · GitHub](https://gist.github.com/jprante/79f4b4c0b9fd83eb1c9b)
> > > > > > 
> > > > > > There has been a fix in LZF lately  
> > > > > > [Streamling #37 fix a bit; would be neat to have a machine to run BE t… · ning/compress@db7f51b · GitHub](https://github.com/ning/compress/commit/db7f51bddc5b7beb47da77eeeab56882c650bff7)
> > > > > > 
> > > > > > for version 1.0.3 which has been released recently.
> > > > > > 
> > > > > > I will build a snapshot ES version with LZF 1.0.3 and see if this  
> > > > > > works...
> > > > > > 
> > > > > > Jörg
> > > > > > 
> > > > > > On Mon, Aug 25, 2014 at 11:30 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > > > > 
> > > > > > > I captured a WireShark trace of the interaction between ES and  
> > > > > > > Logstash 1.4.1. The error occurs even before my data is sent. Can you try  
> > > > > > > to reproduce it on your testbed with this message I captured?
> > > > > > > 
> > > > > > > curl -XPUT [http://amssc103-mgmt-app2:9200/\_template/logstash](http://amssc103-mgmt-app2:9200/_template/logstash) -d @y
> > > > > > > 
> > > > > > > Contests of file 'y":  
> > > > > > > { "template" : "logstash-_", "settings" : {  
> > > > > > > "index.refresh\_interval" : "5s" }, "mappings" : { "default" : {  
> > > > > > > "\_all" : {"enabled" : true}, "dynamic\_templates" : [ {  
> > > > > > > "string\_fields" : { "match" : "_", "match\_mapping\_type"  
> > > > > > > : "string", "mapping" : { "type" : "string", "index"  
> > > > > > > : "analyzed", "omit\_norms" : true, "fields" : {  
> > > > > > > "raw" : {"type": "string", "index" : "not\_analyzed", "ignore\_above" :  
> > > > > > > 256} } } } } ], "properties" :  
> > > > > > > { "@version": { "type": "string", "index": "not\_analyzed" },  
> > > > > > > "geoip" : { "type" : "object", "dynamic": true,  
> > > > > > > "path": "full", "properties" : {  
> > > > > > > "location" : { "type" : "geo\_point" } } } } }  
> > > > > > > }}
> > > > > > > 
> > > > > > > On Monday, August 25, 2014 3:53:18 PM UTC-4, [tony....@iqor.com](mailto:tony....@iqor.com)  
> > > > > > > wrote:
> > > > > > > 
> > > > > > > > I have no plugins installed (yet) and only changed  
> > > > > > > > "es.logger.level" to DEBUG in logging.yml.
> > > > > > > > 
> > > > > > > > elasticsearch.yml:  
> > > > > > > > cluster.name: es-AMS1Cluster  
> > > > > > > > node.name: "KYLIE1"  
> > > > > > > > node.rack: amssc2client02  
> > > > > > > > path.data: /export/home/apontet/elasticsearch/data  
> > > > > > > > path.work: /export/home/apontet/elasticsearch/work  
> > > > > > > > path.logs: /export/home/apontet/elasticsearch/logs  
> > > > > > > > network.host: \*\*\*\*\*\*\*\* \<===== sanitized line; file contains  
> > > > > > > > actual server IP  
> > > > > > > > discovery.zen.ping.multicast.enabled: false  
> > > > > > > > discovery.zen.ping.unicast.hosts: ["s1", "s2", "s3", "s5" , "s6",  
> > > > > > > > "s7"] \<===== Also sanitized
> > > > > > > > 
> > > > > > > > Thanks,  
> > > > > > > > Tony
> > > > > > > > 
> > > > > > > > On Saturday, August 23, 2014 6:29:40 AM UTC-4, Jörg Prante wrote:
> > > > > > > > 
> > > > > > > > > I tested a simple "Hello World" document on Elasticsearch 1.3.2  
> > > > > > > > > with Oracle JDK 1.7.0\_17 64-bit Server VM, Sparc Solaris 10, default  
> > > > > > > > > settings.
> > > > > > > > > 
> > > > > > > > > No issues.
> > > > > > > > > 
> > > > > > > > > So I would like to know more about the settings in  
> > > > > > > > > elasticsearch.yml, the mappings, and the installed plugins.
> > > > > > > > > 
> > > > > > > > > Jörg
> > > > > > > > > 
> > > > > > > > > On Sat, Aug 23, 2014 at 11:25 AM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > > > > > 
> > > > > > > > > > I have some Solaris 10 Sparc V440/V445 servers available and can  
> > > > > > > > > > try to reproduce over the weekend.
> > > > > > > > > > 
> > > > > > > > > > Jörg
> > > > > > > > > > 
> > > > > > > > > > On Sat, Aug 23, 2014 at 4:37 AM, Robert Muir \<  
> > > > > > > > > > [rober...@elasticsearch.com](mailto:rober...@elasticsearch.com)\> wrote:
> > > > > > > > > > 
> > > > > > > > > > > How big is it? Maybe i can have it anyway? I pulled two ancient  
> > > > > > > > > > > ultrasparcs out of my closet to try to debug your issue, but unfortunately  
> > > > > > > > > > > they are a pita to work with (dead nvram battery on both, zeroed mac  
> > > > > > > > > > > address, etc.) Id still love to get to the bottom of this.  
> > > > > > > > > > > On Aug 22, 2014 3:59 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > > > > > > > > > 
> > > > > > > > > > > > Hi Adrien,  
> > > > > > > > > > > > It's a bunch of garbled binary data, basically a dump of the  
> > > > > > > > > > > > process image.  
> > > > > > > > > > > > Tony
> > > > > > > > > > > > 
> > > > > > > > > > > > On Thursday, August 21, 2014 6:36:12 PM UTC-4, Adrien Grand  
> > > > > > > > > > > > wrote:
> > > > > > > > > > > > 
> > > > > > > > > > > > > Hi Tony,
> > > > > > > > > > > > > 
> > > > > > > > > > > > > Do you have more information in the core dump file? (cf. the  
> > > > > > > > > > > > > "Core dump written" line that you pasted)
> > > > > > > > > > > > > 
> > > > > > > > > > > > > On Thu, Aug 21, 2014 at 7:53 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > > > > > > > > > > > 
> > > > > > > > > > > > > > Hello,  
> > > > > > > > > > > > > > I installed ES 1.3.2 on a spare Solaris 11/ T4-4 SPARC server  
> > > > > > > > > > > > > > to scale out of small x86 machine. I get a similar exception running ES  
> > > > > > > > > > > > > > with JAVA\_OPTS=-d64. When Logstash 1.4.1 sends the first message I get the  
> > > > > > > > > > > > > > error below on the ES process:
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > # A fatal error has been detected by the Java Runtime
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > Environment:
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > # SIGBUS (0xa) at pc=0xffffffff7a9a3d8c, pid=14473, tid=209
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > # JRE version: 7.0\_25-b15
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > # Java VM: Java HotSpot(TM) 64-Bit Server VM (23.25-b01 mixed
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > mode solaris-sparc compressed oops)
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > # Problematic frame:
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > # V [libjvm.so+0xba3d8c] Unsafe\_GetInt+0x158
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > # Core dump written. Default location:
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > /export/home/elasticsearch/elasticsearch-1.3.2/core or  
> > > > > > > > > > > > > > core.14473
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > # If you would like to submit a bug report, please visit:
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > # [http://bugreport.sun.com/bugreport/crash.jsp](http://bugreport.sun.com/bugreport/crash.jsp)
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > --------------- T H R E A D ---------------
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > Current thread (0x0000000107078000): JavaThread  
> > > > > > > > > > > > > > "elasticsearch[KYLIE1][http\_server\_worker][T#17]{New I/O  
> > > > > > > > > > > > > > worker #147}" daemon [\_thread\_in\_vm, id=209, stack(0xffffffff5b800000,  
> > > > > > > > > > > > > > 0xffffffff5b840000)]
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > siginfo:si\_signo=SIGBUS: si\_errno=0, si\_code=1 (BUS\_ADRALN),  
> > > > > > > > > > > > > > si\_addr=0x0000000709cc09e7
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > I can run ES using 32bit java but have to shrink  
> > > > > > > > > > > > > > ES\_HEAPS\_SIZE more than I want to. Any assistance would be appreciated.
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > Regards,  
> > > > > > > > > > > > > > Tony
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > On Tuesday, July 22, 2014 5:43:28 AM UTC-4, David Roberts  
> > > > > > > > > > > > > > wrote:
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > Hello,
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > After upgrading from Elasticsearch 1.0.1 to 1.2.2 I'm  
> > > > > > > > > > > > > > > getting JVM core dumps on Solaris 10 on SPARC.
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # A fatal error has been detected by the Java Runtime
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > Environment:
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # SIGBUS (0xa) at pc=0xffffffff7e452d78, pid=15483, tid=263
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # JRE version: Java(TM) SE Runtime Environment (7.0\_55-b13)
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > (build 1.7.0\_55-b13)
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # Java VM: Java HotSpot(TM) 64-Bit Server VM (24.55-b03
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > mixed mode solaris-sparc compressed oops)
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # Problematic frame:
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # V [libjvm.so+0xc52d78] Unsafe\_GetLong+0x158
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > I'm pretty sure the problem here is that Elasticsearch is  
> > > > > > > > > > > > > > > making increasing use of "unsafe" functions in Java, presumably to speed  
> > > > > > > > > > > > > > > things up, and some CPUs are more picky than others about memory  
> > > > > > > > > > > > > > > alignment. In particular, x86 will tolerate misaligned memory access  
> > > > > > > > > > > > > > > whereas SPARC won't.
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > Somebody has tried to report this to Oracle in the past and  
> > > > > > > > > > > > > > > (understandably) Oracle has said that if you're going to use unsafe  
> > > > > > > > > > > > > > > functions you need to understand what you're doing:  
> > > > > > > > > > > > > > > [Bug Database](http://bugs.java.com/bugdatabase/view_bug.do?bug_id=8021574)
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > A quick grep through the code of the two versions of  
> > > > > > > > > > > > > > > Elasticsearch shows that the new use of "unsafe" memory access functions is  
> > > > > > > > > > > > > > > in the BytesReference, MurmurHash3 and HyperLogLogPlusPlus classes:
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > bash-3.2$ git checkout v1.0.1  
> > > > > > > > > > > > > > > Checking out files: 100% (2904/2904), done.
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > bash-3.2$ find . -name '\*.java' | xargs grep UnsafeUtils  
> > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/UnsafeUtils.java:public  
> > > > > > > > > > > > > > > enum UnsafeUtils {  
> > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/bucket  
> > > > > > > > > > > > > > > /BytesRefHash.java: if (id == -1L ||  
> > > > > > > > > > > > > > > UnsafeUtils.equals(key, get(id, spare))) {  
> > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/bucket  
> > > > > > > > > > > > > > > /BytesRefHash.java: } else if  
> > > > > > > > > > > > > > > (UnsafeUtils.equals(key, get(curId, spare))) {  
> > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/Byte  
> > > > > > > > > > > > > > > sRefComparisonsBenchmark.java:import  
> > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/Byte  
> > > > > > > > > > > > > > > sRefComparisonsBenchmark.java: return  
> > > > > > > > > > > > > > > UnsafeUtils.equals(b1, b2);
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > bash-3.2$ git checkout v1.2.2  
> > > > > > > > > > > > > > > Checking out files: 100% (2220/2220), done.
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > bash-3.2$ find . -name '\*.java' | xargs grep UnsafeUtils  
> > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/bytes/BytesReference.java:import  
> > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/bytes/BytesReferenc  
> > > > > > > > > > > > > > > e.java: return UnsafeUtils.equals(a.array(),  
> > > > > > > > > > > > > > > a.arrayOffset(), b.array(), b.arrayOffset(), a.length());  
> > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/MurmurHash3.java:import  
> > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/MurmurHash3.java:  
> > > > > > > > > > > > > > > return UnsafeUtils.readLongLE(key, blockOffset);  
> > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/MurmurHash3.ja  
> > > > > > > > > > > > > > > va: long k1 = UnsafeUtils.readLongLE(key, i);  
> > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/MurmurHash3.ja  
> > > > > > > > > > > > > > > va: long k2 = UnsafeUtils.readLongLE(key, i
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > - 8);  
> > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/BytesRefHash.java:  
> > > > > > > > > > > > > > > if (id == -1L || UnsafeUtils.equals(key, get(id, spare))) {  
> > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/BytesRefHash.java:  
> > > > > > > > > > > > > > > } else if (UnsafeUtils.equals(key, get(curId, spare))) {  
> > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/UnsafeUtils.java:public  
> > > > > > > > > > > > > > > enum UnsafeUtils {  
> > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/metric  
> > > > > > > > > > > > > > > s/cardinality/HyperLogLogPlusPlus.java:import  
> > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/metric  
> > > > > > > > > > > > > > > s/cardinality/HyperLogLogPlusPlus.java: return  
> > > > > > > > > > > > > > > UnsafeUtils.readIntLE(readSpare.bytes, readSpare.offset);  
> > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/Byte  
> > > > > > > > > > > > > > > sRefComparisonsBenchmark.java:import  
> > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/Byte  
> > > > > > > > > > > > > > > sRefComparisonsBenchmark.java: return  
> > > > > > > > > > > > > > > UnsafeUtils.equals(b1, b2);
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > Presumably one of these three new uses is what is causing  
> > > > > > > > > > > > > > > the JVM SIGBUS error I'm seeing.
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > A quick look at the MurmurHash3 class shows that the hash128  
> > > > > > > > > > > > > > > method accepts an arbitrary offset and passes it to an unsafe function with  
> > > > > > > > > > > > > > > no check that it's a multiple of 8:
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > public static Hash128 hash128(byte[] key, int offset, 
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > int length, long seed, Hash128 hash) {  
> > > > > > > > > > > > > > > long h1 = seed;  
> > > > > > > > > > > > > > > long h2 = seed;
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > if (length >= 16) {
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > final int len16 = length & 0xFFFFFFF0; // higher 
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > multiple of 16 that is lower than or equal to length  
> > > > > > > > > > > > > > > final int end = offset + len16;  
> > > > > > > > > > > > > > > for (int i = offset; i \< end; i += 16) {  
> > > > > > > > > > > > > > > long k1 = UnsafeUtils.readLongLE(key, i);  
> > > > > > > > > > > > > > > long k2 = UnsafeUtils.readLongLE(key, i + 8);
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > This is a recipe for generating JVM core dumps on  
> > > > > > > > > > > > > > > architectures such as SPARC, Itanium and PowerPC that don't support  
> > > > > > > > > > > > > > > unaligned 64 bit memory access.
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > Does Elasticsearch have any policy for support of hardware  
> > > > > > > > > > > > > > > other than x86? If not, I don't think many people would care but you  
> > > > > > > > > > > > > > > really ought to clearly say so on your platform support page. If you do  
> > > > > > > > > > > > > > > intend to support non-x86 architectures then you need to be much more  
> > > > > > > > > > > > > > > careful about the use of unsafe memory accesses.
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > Regards,
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > David
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > --  
> > > > > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > > > > To unsubscribe from this group and stop receiving emails from  
> > > > > > > > > > > > > > it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-b63](https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-b63)  
> > > > > > > > > > > > > > e-4c2e-87c3-029fc58449fc%[40googlegroups.com](http://40googlegroups.com)  
> > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-b63e-4c2e-87c3-029fc58449fc%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-b63e-4c2e-87c3-029fc58449fc%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > > > .
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > > > > > > > 
> > > > > > > > > > > > > --  
> > > > > > > > > > > > > Adrien Grand
> > > > > > > > > > > > 
> > > > > > > > > > > > --  
> > > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > > To unsubscribe from this group and stop receiving emails from  
> > > > > > > > > > > > it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/12aa33de-](https://groups.google.com/d/msgid/elasticsearch/12aa33de-)  
> > > > > > > > > > > > ccc7-485a-8c52-562f3e91a535%[40googlegroups.com](http://40googlegroups.com)  
> > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc7-485a-8c52-562f3e91a535%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc7-485a-8c52-562f3e91a535%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > .  
> > > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > > > > > 
> > > > > > > > > > > --  
> > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > To unsubscribe from this group and stop receiving emails from  
> > > > > > > > > > > it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/](https://groups.google.com/d/msgid/elasticsearch/)  
> > > > > > > > > > > CAMUKNZXOKeJq8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%  
> > > > > > > > > > > [40mail.gmail.com](http://40mail.gmail.com)  
> > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJq8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJq8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > .
> > > > > > > > > > > 
> > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > > > 
> > > > > > > > > --  
> > > > > > > > > You received this message because you are subscribed to the Google  
> > > > > > > > > Groups "elasticsearch" group.  
> > > > > > > > > To unsubscribe from this group and stop receiving emails from it,  
> > > > > > > > > send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/c62191ea-543b-462d-95e9-aff125c0a6f0%40googlegroups.com](https://groups.google.com/d/msgid/elasticsearch/c62191ea-543b-462d-95e9-aff125c0a6f0%40googlegroups.com)  
> > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/c62191ea-543b-462d-95e9-aff125c0a6f0%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/c62191ea-543b-462d-95e9-aff125c0a6f0%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > .
> > > > > > > 
> > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > 
> > > > --  
> > > > You received this message because you are subscribed to the Google  
> > > > Groups "elasticsearch" group.  
> > > > To unsubscribe from this group and stop receiving emails from it, send  
> > > > an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > To view this discussion on the web visit  
> > > > [https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOqhgOSiRhmweSR5wLs%2BJiO70\_CSRO%2BFS2zOU9VKzg%40mail.gmail.com](https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOqhgOSiRhmweSR5wLs%2BJiO70_CSRO%2BFS2zOU9VKzg%40mail.gmail.com)  
> > > > [https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOqhgOSiRhmweSR5wLs%2BJiO70\_CSRO%2BFS2zOU9VKzg%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOqhgOSiRhmweSR5wLs%2BJiO70_CSRO%2BFS2zOU9VKzg%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > > .
> > > > 
> > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > 
> > > --  
> > > You received this message because you are subscribed to the Google  
> > > Groups "elasticsearch" group.  
> > > To unsubscribe from this group and stop receiving emails from it, send  
> > > an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > To view this discussion on the web visit  
> > > [https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw\_mpHc0Q866fcso\_1LZCFiyw%40mail.gmail.com](https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw_mpHc0Q866fcso_1LZCFiyw%40mail.gmail.com)  
> > > [https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw\_mpHc0Q866fcso\_1LZCFiyw%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw_mpHc0Q866fcso_1LZCFiyw%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > .
> > > 
> > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
To view this discussion on the web visit [https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com](https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com).  
For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

---

<div class="post-metadata">

### Author: ![jprante](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/jprante/32/44941_2.png) [@jprante](https://discuss.elastic.co/u/jprante)
#### Post date: [August 29, 2014, 3:21pm UTC](https://discuss.elastic.co/t/jvm-crash-on-64-bit-sparc-with-elasticsearch-1-2-2-due-to-unaligned-memory-access/18786/22 "2014-08-29T15:21:21Z")

</div>

Do you want to build from source? Or do you want to install a fresh binary?

At [jenkins.elasticsearch.org](http://jenkins.elasticsearch.org) I can not find any snapshot builds but it may  
be just me.

It would be a nice add-on to provide snapshot builds for users that eagerly  
await bug fixes or take a ride on the bleeding edge before the next release  
arrives, without release notes etc.

Jörg

On Fri, Aug 29, 2014 at 4:29 PM, [tony.aponte@iqor.com](mailto:tony.aponte@iqor.com) wrote:

> Thanks again and sorry to bother you guys but I'm new to Github and don't  
> know what do do from here. Can you point me to the right place where I can  
> take the next step to put this patch on my server? I only know how to  
> untar the tarball I downloaded from the main ES page.
> 
> Thanks.  
> Tony
> 
> On Wednesday, August 27, 2014 1:35:06 PM UTC-4, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> 
> > Kudos!
> > 
> > Tony
> > 
> > On Wednesday, August 27, 2014 1:16:11 PM UTC-4, Jörg Prante wrote:
> > 
> > > All praise should go to the fantastic Elasticsearch team who did not  
> > > hesitate to test the fix immediately and replaced it with a better working  
> > > solution, since the lzf-compress software is having weaknesses regarding  
> > > threadsafety.
> > > 
> > > Jörg
> > > 
> > > On Wed, Aug 27, 2014 at 7:01 PM, Ivan Brusic [iv...@brusic.com](mailto:iv...@brusic.com) wrote:
> > > 
> > > > Amazing job. Great work.
> > > > 
> > > > --  
> > > > Ivan
> > > > 
> > > > On Tue, Aug 26, 2014 at 12:41 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > 
> > > > > I fixed the issue by setting the safe LZF encoder in LZFCompressor and  
> > > > > opened a pull request
> > > > > 
> > > > > [Add LZF safe encoder in LZFCompressor by jprante · Pull Request #7466 · elastic/elasticsearch · GitHub](https://github.com/elasticsearch/elasticsearch/pull/7466)
> > > > > 
> > > > > Jörg
> > > > > 
> > > > > On Tue, Aug 26, 2014 at 8:17 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > 
> > > > > > Still broken with lzf-compress 1.0.3
> > > > > > 
> > > > > > [Solaris SPARC JVM 64bit crash with Java 8u11 and Elasticsearch 1.3.3-SNAPSHOT (with lzf-compress 1.0.3) · GitHub](https://gist.github.com/jprante/d2d829b497db4963aea5)
> > > > > > 
> > > > > > Jörg
> > > > > > 
> > > > > > On Tue, Aug 26, 2014 at 7:54 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > > 
> > > > > > > Thanks for the logstash mapping command. I can reproduce it now.
> > > > > > > 
> > > > > > > It's the LZF encoder that bails out at org.elasticsearch.common.  
> > > > > > > compress.lzf.impl.UnsafeChunkEncoderBE.\_getInt
> > > > > > > 
> > > > > > > which uses in turn sun.misc.Unsafe.getInt
> > > > > > > 
> > > > > > > I have created a gist of the JVM crash file at
> > > > > > > 
> > > > > > > [Solaris SPARC core dump with Java 8u11 64bit and Elasticsearch 1.3.2 · GitHub](https://gist.github.com/jprante/79f4b4c0b9fd83eb1c9b)
> > > > > > > 
> > > > > > > There has been a fix in LZF lately [https://github.com/](https://github.com/)  
> > > > > > > ning/compress/commit/db7f51bddc5b7beb47da77eeeab56882c650bff7
> > > > > > > 
> > > > > > > for version 1.0.3 which has been released recently.
> > > > > > > 
> > > > > > > I will build a snapshot ES version with LZF 1.0.3 and see if this  
> > > > > > > works...
> > > > > > > 
> > > > > > > Jörg
> > > > > > > 
> > > > > > > On Mon, Aug 25, 2014 at 11:30 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > > > > > 
> > > > > > > > I captured a WireShark trace of the interaction between ES and  
> > > > > > > > Logstash 1.4.1. The error occurs even before my data is sent. Can you try  
> > > > > > > > to reproduce it on your testbed with this message I captured?
> > > > > > > > 
> > > > > > > > curl -XPUT [http://amssc103-mgmt-app2:9200/\_template/logstash](http://amssc103-mgmt-app2:9200/_template/logstash) -d @y
> > > > > > > > 
> > > > > > > > Contests of file 'y":  
> > > > > > > > { "template" : "logstash-_", "settings" : {  
> > > > > > > > "index.refresh\_interval" : "5s" }, "mappings" : { "default" : {  
> > > > > > > > "\_all" : {"enabled" : true}, "dynamic\_templates" : [ {  
> > > > > > > > "string\_fields" : { "match" : "_", "match\_mapping\_type"  
> > > > > > > > : "string", "mapping" : { "type" : "string", "index"  
> > > > > > > > : "analyzed", "omit\_norms" : true, "fields" : {  
> > > > > > > > "raw" : {"type": "string", "index" : "not\_analyzed", "ignore\_above" :  
> > > > > > > > 256} } } } } ], "properties" :  
> > > > > > > > { "@version": { "type": "string", "index": "not\_analyzed" },  
> > > > > > > > "geoip" : { "type" : "object", "dynamic": true,  
> > > > > > > > "path": "full", "properties" : {  
> > > > > > > > "location" : { "type" : "geo\_point" } } } } }  
> > > > > > > > }}
> > > > > > > > 
> > > > > > > > On Monday, August 25, 2014 3:53:18 PM UTC-4, [tony....@iqor.com](mailto:tony....@iqor.com)  
> > > > > > > > wrote:
> > > > > > > > 
> > > > > > > > > I have no plugins installed (yet) and only changed  
> > > > > > > > > "es.logger.level" to DEBUG in logging.yml.
> > > > > > > > > 
> > > > > > > > > elasticsearch.yml:  
> > > > > > > > > cluster.name: es-AMS1Cluster  
> > > > > > > > > node.name: "KYLIE1"  
> > > > > > > > > node.rack: amssc2client02  
> > > > > > > > > path.data: /export/home/apontet/elasticsearch/data  
> > > > > > > > > path.work: /export/home/apontet/elasticsearch/work  
> > > > > > > > > path.logs: /export/home/apontet/elasticsearch/logs  
> > > > > > > > > network.host: \*\*\*\*\*\*\*\* \<===== sanitized line; file contains  
> > > > > > > > > actual server IP  
> > > > > > > > > discovery.zen.ping.multicast.enabled: false  
> > > > > > > > > discovery.zen.ping.unicast.hosts: ["s1", "s2", "s3", "s5" , "s6",  
> > > > > > > > > "s7"] \<===== Also sanitized
> > > > > > > > > 
> > > > > > > > > Thanks,  
> > > > > > > > > Tony
> > > > > > > > > 
> > > > > > > > > On Saturday, August 23, 2014 6:29:40 AM UTC-4, Jörg Prante wrote:
> > > > > > > > > 
> > > > > > > > > > I tested a simple "Hello World" document on Elasticsearch 1.3.2  
> > > > > > > > > > with Oracle JDK 1.7.0\_17 64-bit Server VM, Sparc Solaris 10, default  
> > > > > > > > > > settings.
> > > > > > > > > > 
> > > > > > > > > > No issues.
> > > > > > > > > > 
> > > > > > > > > > So I would like to know more about the settings in  
> > > > > > > > > > elasticsearch.yml, the mappings, and the installed plugins.
> > > > > > > > > > 
> > > > > > > > > > Jörg
> > > > > > > > > > 
> > > > > > > > > > On Sat, Aug 23, 2014 at 11:25 AM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > > > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > > > > > > 
> > > > > > > > > > > I have some Solaris 10 Sparc V440/V445 servers available and can  
> > > > > > > > > > > try to reproduce over the weekend.
> > > > > > > > > > > 
> > > > > > > > > > > Jörg
> > > > > > > > > > > 
> > > > > > > > > > > On Sat, Aug 23, 2014 at 4:37 AM, Robert Muir \<  
> > > > > > > > > > > [rober...@elasticsearch.com](mailto:rober...@elasticsearch.com)\> wrote:
> > > > > > > > > > > 
> > > > > > > > > > > > How big is it? Maybe i can have it anyway? I pulled two ancient  
> > > > > > > > > > > > ultrasparcs out of my closet to try to debug your issue, but unfortunately  
> > > > > > > > > > > > they are a pita to work with (dead nvram battery on both, zeroed mac  
> > > > > > > > > > > > address, etc.) Id still love to get to the bottom of this.  
> > > > > > > > > > > > On Aug 22, 2014 3:59 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > > > > > > > > > > 
> > > > > > > > > > > > > Hi Adrien,  
> > > > > > > > > > > > > It's a bunch of garbled binary data, basically a dump of the  
> > > > > > > > > > > > > process image.  
> > > > > > > > > > > > > Tony
> > > > > > > > > > > > > 
> > > > > > > > > > > > > On Thursday, August 21, 2014 6:36:12 PM UTC-4, Adrien Grand  
> > > > > > > > > > > > > wrote:
> > > > > > > > > > > > > 
> > > > > > > > > > > > > > Hi Tony,
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > Do you have more information in the core dump file? (cf. the  
> > > > > > > > > > > > > > "Core dump written" line that you pasted)
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > On Thu, Aug 21, 2014 at 7:53 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > Hello,  
> > > > > > > > > > > > > > > I installed ES 1.3.2 on a spare Solaris 11/ T4-4 SPARC  
> > > > > > > > > > > > > > > server to scale out of small x86 machine. I get a similar exception  
> > > > > > > > > > > > > > > running ES with JAVA\_OPTS=-d64. When Logstash 1.4.1 sends the first  
> > > > > > > > > > > > > > > message I get the error below on the ES process:
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # A fatal error has been detected by the Java Runtime
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > Environment:
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # SIGBUS (0xa) at pc=0xffffffff7a9a3d8c, pid=14473, tid=209
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # JRE version: 7.0\_25-b15
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # Java VM: Java HotSpot(TM) 64-Bit Server VM (23.25-b01
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > mixed mode solaris-sparc compressed oops)
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # Problematic frame:
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # V [libjvm.so+0xba3d8c] Unsafe\_GetInt+0x158
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # Core dump written. Default location:
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > /export/home/elasticsearch/elasticsearch-1.3.2/core or  
> > > > > > > > > > > > > > > core.14473
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # If you would like to submit a bug report, please visit:
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # [http://bugreport.sun.com/bugreport/crash.jsp](http://bugreport.sun.com/bugreport/crash.jsp)
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > --------------- T H R E A D ---------------
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > Current thread (0x0000000107078000): JavaThread  
> > > > > > > > > > > > > > > "elasticsearch[KYLIE1][http\_server\_worker][T#17]{New I/O  
> > > > > > > > > > > > > > > worker #147}" daemon [\_thread\_in\_vm, id=209, stack(0xffffffff5b800000,  
> > > > > > > > > > > > > > > 0xffffffff5b840000)]
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > siginfo:si\_signo=SIGBUS: si\_errno=0, si\_code=1 (BUS\_ADRALN),  
> > > > > > > > > > > > > > > si\_addr=0x0000000709cc09e7
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > I can run ES using 32bit java but have to shrink  
> > > > > > > > > > > > > > > ES\_HEAPS\_SIZE more than I want to. Any assistance would be appreciated.
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > Regards,  
> > > > > > > > > > > > > > > Tony
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > On Tuesday, July 22, 2014 5:43:28 AM UTC-4, David Roberts  
> > > > > > > > > > > > > > > wrote:
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > Hello,
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > After upgrading from Elasticsearch 1.0.1 to 1.2.2 I'm  
> > > > > > > > > > > > > > > > getting JVM core dumps on Solaris 10 on SPARC.
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # A fatal error has been detected by the Java Runtime
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > Environment:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # SIGBUS (0xa) at pc=0xffffffff7e452d78, pid=15483, tid=263
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # JRE version: Java(TM) SE Runtime Environment (7.0\_55-b13)
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > (build 1.7.0\_55-b13)
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # Java VM: Java HotSpot(TM) 64-Bit Server VM (24.55-b03
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > mixed mode solaris-sparc compressed oops)
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # Problematic frame:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # V [libjvm.so+0xc52d78] Unsafe\_GetLong+0x158
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > I'm pretty sure the problem here is that Elasticsearch is  
> > > > > > > > > > > > > > > > making increasing use of "unsafe" functions in Java, presumably to speed  
> > > > > > > > > > > > > > > > things up, and some CPUs are more picky than others about memory  
> > > > > > > > > > > > > > > > alignment. In particular, x86 will tolerate misaligned memory access  
> > > > > > > > > > > > > > > > whereas SPARC won't.
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > Somebody has tried to report this to Oracle in the past and  
> > > > > > > > > > > > > > > > (understandably) Oracle has said that if you're going to use unsafe  
> > > > > > > > > > > > > > > > functions you need to understand what you're doing:  
> > > > > > > > > > > > > > > > [Bug Database](http://bugs.java.com/bugdatabase/view_bug.do?bug_id=8021574)
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > A quick grep through the code of the two versions of  
> > > > > > > > > > > > > > > > Elasticsearch shows that the new use of "unsafe" memory access functions is  
> > > > > > > > > > > > > > > > in the BytesReference, MurmurHash3 and HyperLogLogPlusPlus classes:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > bash-3.2$ git checkout v1.0.1  
> > > > > > > > > > > > > > > > Checking out files: 100% (2904/2904), done.
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > bash-3.2$ find . -name '\*.java' | xargs grep UnsafeUtils  
> > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/UnsafeUtils.  
> > > > > > > > > > > > > > > > java:public enum UnsafeUtils {  
> > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > bucket/BytesRefHash.java: if (id == -1L ||  
> > > > > > > > > > > > > > > > UnsafeUtils.equals(key, get(id, spare))) {  
> > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > bucket/BytesRefHash.java: } else if  
> > > > > > > > > > > > > > > > (UnsafeUtils.equals(key, get(curId, spare))) {  
> > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java:import  
> > > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java: return  
> > > > > > > > > > > > > > > > UnsafeUtils.equals(b1, b2);
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > bash-3.2$ git checkout v1.2.2  
> > > > > > > > > > > > > > > > Checking out files: 100% (2220/2220), done.
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > bash-3.2$ find . -name '\*.java' | xargs grep UnsafeUtils  
> > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/bytes/  
> > > > > > > > > > > > > > > > BytesReference.java:import org.elasticsearch.common.util.  
> > > > > > > > > > > > > > > > UnsafeUtils;  
> > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/bytes/  
> > > > > > > > > > > > > > > > BytesReference.java: return  
> > > > > > > > > > > > > > > > UnsafeUtils.equals(a.array(), a.arrayOffset(), b.array(), b.arrayOffset(),  
> > > > > > > > > > > > > > > > a.length());  
> > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/MurmurHash3.  
> > > > > > > > > > > > > > > > java:import org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/MurmurHash3.  
> > > > > > > > > > > > > > > > java: return UnsafeUtils.readLongLE(key,  
> > > > > > > > > > > > > > > > blockOffset);  
> > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/MurmurHash3.  
> > > > > > > > > > > > > > > > java: long k1 = UnsafeUtils.readLongLE(key,  
> > > > > > > > > > > > > > > > i);  
> > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/MurmurHash3.  
> > > > > > > > > > > > > > > > java: long k2 = UnsafeUtils.readLongLE(key,  
> > > > > > > > > > > > > > > > i + 8);  
> > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/BytesRefHash.  
> > > > > > > > > > > > > > > > java: if (id == -1L || UnsafeUtils.equals(key,  
> > > > > > > > > > > > > > > > get(id, spare))) {  
> > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/BytesRefHash.  
> > > > > > > > > > > > > > > > java: } else if (UnsafeUtils.equals(key,  
> > > > > > > > > > > > > > > > get(curId, spare))) {  
> > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/UnsafeUtils.  
> > > > > > > > > > > > > > > > java:public enum UnsafeUtils {  
> > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > metrics/cardinality/HyperLogLogPlusPlus.java:import  
> > > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > metrics/cardinality/HyperLogLogPlusPlus.java:  
> > > > > > > > > > > > > > > > return UnsafeUtils.readIntLE(readSpare.bytes,  
> > > > > > > > > > > > > > > > readSpare.offset);  
> > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java:import  
> > > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java: return  
> > > > > > > > > > > > > > > > UnsafeUtils.equals(b1, b2);
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > Presumably one of these three new uses is what is causing  
> > > > > > > > > > > > > > > > the JVM SIGBUS error I'm seeing.
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > A quick look at the MurmurHash3 class shows that the  
> > > > > > > > > > > > > > > > hash128 method accepts an arbitrary offset and passes it to an unsafe  
> > > > > > > > > > > > > > > > function with no check that it's a multiple of 8:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > public static Hash128 hash128(byte[] key, int offset,
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > int length, long seed, Hash128 hash) {  
> > > > > > > > > > > > > > > > long h1 = seed;  
> > > > > > > > > > > > > > > > long h2 = seed;
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > if (length >= 16) {
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > final int len16 = length & 0xFFFFFFF0; //
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > higher multiple of 16 that is lower than or equal to length  
> > > > > > > > > > > > > > > > final int end = offset + len16;  
> > > > > > > > > > > > > > > > for (int i = offset; i \< end; i += 16) {  
> > > > > > > > > > > > > > > > long k1 = UnsafeUtils.readLongLE(key, i);  
> > > > > > > > > > > > > > > > long k2 = UnsafeUtils.readLongLE(key, i +  
> > > > > > > > > > > > > > > > 8);
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > This is a recipe for generating JVM core dumps on  
> > > > > > > > > > > > > > > > architectures such as SPARC, Itanium and PowerPC that don't support  
> > > > > > > > > > > > > > > > unaligned 64 bit memory access.
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > Does Elasticsearch have any policy for support of hardware  
> > > > > > > > > > > > > > > > other than x86? If not, I don't think many people would care but you  
> > > > > > > > > > > > > > > > really ought to clearly say so on your platform support page. If you do  
> > > > > > > > > > > > > > > > intend to support non-x86 architectures then you need to be much more  
> > > > > > > > > > > > > > > > careful about the use of unsafe memory accesses.
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > Regards,
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > David
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > --  
> > > > > > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > > > > > To unsubscribe from this group and stop receiving emails  
> > > > > > > > > > > > > > > from it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-b63](https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-b63)  
> > > > > > > > > > > > > > > e-4c2e-87c3-029fc58449fc%[40googlegroups.com](http://40googlegroups.com)  
> > > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-b63e-4c2e-87c3-029fc58449fc%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-b63e-4c2e-87c3-029fc58449fc%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > > > > .
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > --  
> > > > > > > > > > > > > > Adrien Grand
> > > > > > > > > > > > > 
> > > > > > > > > > > > > --  
> > > > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > > > To unsubscribe from this group and stop receiving emails from  
> > > > > > > > > > > > > it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc](https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc)  
> > > > > > > > > > > > > 7-485a-8c52-562f3e91a535%[40googlegroups.com](http://40googlegroups.com)  
> > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc7-485a-8c52-562f3e91a535%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc7-485a-8c52-562f3e91a535%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > > .  
> > > > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > > > > > > 
> > > > > > > > > > > > --  
> > > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > > To unsubscribe from this group and stop receiving emails from  
> > > > > > > > > > > > it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJ](https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJ)  
> > > > > > > > > > > > q8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%[40mail.gmail.com](http://40mail.gmail.com)  
> > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJq8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJq8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > .
> > > > > > > > > > > > 
> > > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > > > > 
> > > > > > > > > > --  
> > > > > > > > > > You received this message because you are subscribed to the Google  
> > > > > > > > > > Groups "elasticsearch" group.  
> > > > > > > > > > To unsubscribe from this group and stop receiving emails from it,  
> > > > > > > > > > send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/c62191ea-](https://groups.google.com/d/msgid/elasticsearch/c62191ea-)  
> > > > > > > > > > 543b-462d-95e9-aff125c0a6f0%[40googlegroups.com](http://40googlegroups.com)  
> > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/c62191ea-543b-462d-95e9-aff125c0a6f0%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/c62191ea-543b-462d-95e9-aff125c0a6f0%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > .
> > > > > > > > 
> > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > 
> > > > > --  
> > > > > You received this message because you are subscribed to the Google  
> > > > > Groups "elasticsearch" group.  
> > > > > To unsubscribe from this group and stop receiving emails from it, send  
> > > > > an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > To view this discussion on the web visit [https://groups.google.com/d/](https://groups.google.com/d/)  
> > > > > msgid/elasticsearch/CAKdsXoHrOOqhgOSiRhmweSR5wLs%  
> > > > > 2BJiO70\_CSRO%2BFS2zOU9VKzg%[40mail.gmail.com](http://40mail.gmail.com)  
> > > > > [https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOqhgOSiRhmweSR5wLs%2BJiO70\_CSRO%2BFS2zOU9VKzg%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOqhgOSiRhmweSR5wLs%2BJiO70_CSRO%2BFS2zOU9VKzg%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > > > .
> > > > > 
> > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > 
> > > > --  
> > > > You received this message because you are subscribed to the Google  
> > > > Groups "elasticsearch" group.  
> > > > To unsubscribe from this group and stop receiving emails from it, send  
> > > > an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > To view this discussion on the web visit [https://groups.google.com/d/](https://groups.google.com/d/)  
> > > > msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw\_  
> > > > mpHc0Q866fcso\_1LZCFiyw%[40mail.gmail.com](http://40mail.gmail.com)  
> > > > [https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw\_mpHc0Q866fcso\_1LZCFiyw%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw_mpHc0Q866fcso_1LZCFiyw%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > > .
> > > > 
> > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > 
> > > --  
> > > You received this message because you are subscribed to the Google Groups  
> > > "elasticsearch" group.  
> > > To unsubscribe from this group and stop receiving emails from it, send an  
> > > email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
> > > To view this discussion on the web visit  
> > > [https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com](https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com)  
> > > [https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > .
> 
> For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
To view this discussion on the web visit [https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHM\_WaMa%2BksJWJT1i3\_KmSgkxrwbeZk8%3DLwvw5JPGKZiQ%40mail.gmail.com](https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHM_WaMa%2BksJWJT1i3_KmSgkxrwbeZk8%3DLwvw5JPGKZiQ%40mail.gmail.com).  
For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

---

<div class="post-metadata">

### Author: ![Ivan](https://avatars.discourse-cdn.com/v4/letter/i/df788c/32.png) [@Ivan](https://discuss.elastic.co/u/Ivan)
#### Post date: [August 29, 2014, 4:20pm UTC](https://discuss.elastic.co/t/jvm-crash-on-64-bit-sparc-with-elasticsearch-1-2-2-due-to-unaligned-memory-access/18786/23 "2014-08-29T16:20:19Z")

</div>

The snapshot repo is still "active", but it is a bit behind and does not  
include this patch:

[https://oss.sonatype.org/content/repositories/snapshots/org/elasticsearch/elasticsearch/](https://oss.sonatype.org/content/repositories/snapshots/org/elasticsearch/elasticsearch/)

--  
Ivan

On Fri, Aug 29, 2014 at 8:21 AM, [joergprante@gmail.com](mailto:joergprante@gmail.com) \<  
[joergprante@gmail.com](mailto:joergprante@gmail.com)\> wrote:

> Do you want to build from source? Or do you want to install a fresh binary?
> 
> At [jenkins.elasticsearch.org](http://jenkins.elasticsearch.org) I can not find any snapshot builds but it  
> may be just me.
> 
> It would be a nice add-on to provide snapshot builds for users that  
> eagerly await bug fixes or take a ride on the bleeding edge before the next  
> release arrives, without release notes etc.
> 
> Jörg
> 
> On Fri, Aug 29, 2014 at 4:29 PM, [tony.aponte@iqor.com](mailto:tony.aponte@iqor.com) wrote:
> 
> > Thanks again and sorry to bother you guys but I'm new to Github and don't  
> > know what do do from here. Can you point me to the right place where I can  
> > take the next step to put this patch on my server? I only know how to  
> > untar the tarball I downloaded from the main ES page.
> > 
> > Thanks.  
> > Tony
> > 
> > On Wednesday, August 27, 2014 1:35:06 PM UTC-4, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > 
> > > Kudos!
> > > 
> > > Tony
> > > 
> > > On Wednesday, August 27, 2014 1:16:11 PM UTC-4, Jörg Prante wrote:
> > > 
> > > > All praise should go to the fantastic Elasticsearch team who did not  
> > > > hesitate to test the fix immediately and replaced it with a better working  
> > > > solution, since the lzf-compress software is having weaknesses regarding  
> > > > threadsafety.
> > > > 
> > > > Jörg
> > > > 
> > > > On Wed, Aug 27, 2014 at 7:01 PM, Ivan Brusic [iv...@brusic.com](mailto:iv...@brusic.com) wrote:
> > > > 
> > > > > Amazing job. Great work.
> > > > > 
> > > > > --  
> > > > > Ivan
> > > > > 
> > > > > On Tue, Aug 26, 2014 at 12:41 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > 
> > > > > > I fixed the issue by setting the safe LZF encoder in LZFCompressor  
> > > > > > and opened a pull request
> > > > > > 
> > > > > > [Add LZF safe encoder in LZFCompressor by jprante · Pull Request #7466 · elastic/elasticsearch · GitHub](https://github.com/elasticsearch/elasticsearch/pull/7466)
> > > > > > 
> > > > > > Jörg
> > > > > > 
> > > > > > On Tue, Aug 26, 2014 at 8:17 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > > 
> > > > > > > Still broken with lzf-compress 1.0.3
> > > > > > > 
> > > > > > > [Solaris SPARC JVM 64bit crash with Java 8u11 and Elasticsearch 1.3.3-SNAPSHOT (with lzf-compress 1.0.3) · GitHub](https://gist.github.com/jprante/d2d829b497db4963aea5)
> > > > > > > 
> > > > > > > Jörg
> > > > > > > 
> > > > > > > On Tue, Aug 26, 2014 at 7:54 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > > > 
> > > > > > > > Thanks for the logstash mapping command. I can reproduce it now.
> > > > > > > > 
> > > > > > > > It's the LZF encoder that bails out at org.elasticsearch.common.  
> > > > > > > > compress.lzf.impl.UnsafeChunkEncoderBE.\_getInt
> > > > > > > > 
> > > > > > > > which uses in turn sun.misc.Unsafe.getInt
> > > > > > > > 
> > > > > > > > I have created a gist of the JVM crash file at
> > > > > > > > 
> > > > > > > > [Solaris SPARC core dump with Java 8u11 64bit and Elasticsearch 1.3.2 · GitHub](https://gist.github.com/jprante/79f4b4c0b9fd83eb1c9b)
> > > > > > > > 
> > > > > > > > There has been a fix in LZF lately [https://github.com/](https://github.com/)  
> > > > > > > > ning/compress/commit/db7f51bddc5b7beb47da77eeeab56882c650bff7
> > > > > > > > 
> > > > > > > > for version 1.0.3 which has been released recently.
> > > > > > > > 
> > > > > > > > I will build a snapshot ES version with LZF 1.0.3 and see if this  
> > > > > > > > works...
> > > > > > > > 
> > > > > > > > Jörg
> > > > > > > > 
> > > > > > > > On Mon, Aug 25, 2014 at 11:30 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > > > > > > 
> > > > > > > > > I captured a WireShark trace of the interaction between ES and  
> > > > > > > > > Logstash 1.4.1. The error occurs even before my data is sent. Can you try  
> > > > > > > > > to reproduce it on your testbed with this message I captured?
> > > > > > > > > 
> > > > > > > > > curl -XPUT [http://amssc103-mgmt-app2:9200/\_template/logstash](http://amssc103-mgmt-app2:9200/_template/logstash) -d @y
> > > > > > > > > 
> > > > > > > > > Contests of file 'y":  
> > > > > > > > > { "template" : "logstash-_", "settings" : {  
> > > > > > > > > "index.refresh\_interval" : "5s" }, "mappings" : { "default" : {  
> > > > > > > > > "\_all" : {"enabled" : true}, "dynamic\_templates" : [ {  
> > > > > > > > > "string\_fields" : { "match" : "_", "match\_mapping\_type"  
> > > > > > > > > : "string", "mapping" : { "type" : "string", "index"  
> > > > > > > > > : "analyzed", "omit\_norms" : true, "fields" : {  
> > > > > > > > > "raw" : {"type": "string", "index" : "not\_analyzed", "ignore\_above" :  
> > > > > > > > > 256} } } } } ], "properties" :  
> > > > > > > > > { "@version": { "type": "string", "index": "not\_analyzed" },  
> > > > > > > > > "geoip" : { "type" : "object", "dynamic": true,  
> > > > > > > > > "path": "full", "properties" : {  
> > > > > > > > > "location" : { "type" : "geo\_point" } } } } }  
> > > > > > > > > }}
> > > > > > > > > 
> > > > > > > > > On Monday, August 25, 2014 3:53:18 PM UTC-4, [tony....@iqor.com](mailto:tony....@iqor.com)  
> > > > > > > > > wrote:
> > > > > > > > > 
> > > > > > > > > > I have no plugins installed (yet) and only changed  
> > > > > > > > > > "es.logger.level" to DEBUG in logging.yml.
> > > > > > > > > > 
> > > > > > > > > > elasticsearch.yml:  
> > > > > > > > > > cluster.name: es-AMS1Cluster  
> > > > > > > > > > node.name: "KYLIE1"  
> > > > > > > > > > node.rack: amssc2client02  
> > > > > > > > > > path.data: /export/home/apontet/elasticsearch/data  
> > > > > > > > > > path.work: /export/home/apontet/elasticsearch/work  
> > > > > > > > > > path.logs: /export/home/apontet/elasticsearch/logs  
> > > > > > > > > > network.host: \*\*\*\*\*\*\*\* \<===== sanitized line; file contains  
> > > > > > > > > > actual server IP  
> > > > > > > > > > discovery.zen.ping.multicast.enabled: false  
> > > > > > > > > > discovery.zen.ping.unicast.hosts: ["s1", "s2", "s3", "s5" ,  
> > > > > > > > > > "s6", "s7"] \<===== Also sanitized
> > > > > > > > > > 
> > > > > > > > > > Thanks,  
> > > > > > > > > > Tony
> > > > > > > > > > 
> > > > > > > > > > On Saturday, August 23, 2014 6:29:40 AM UTC-4, Jörg Prante wrote:
> > > > > > > > > > 
> > > > > > > > > > > I tested a simple "Hello World" document on Elasticsearch 1.3.2  
> > > > > > > > > > > with Oracle JDK 1.7.0\_17 64-bit Server VM, Sparc Solaris 10, default  
> > > > > > > > > > > settings.
> > > > > > > > > > > 
> > > > > > > > > > > No issues.
> > > > > > > > > > > 
> > > > > > > > > > > So I would like to know more about the settings in  
> > > > > > > > > > > elasticsearch.yml, the mappings, and the installed plugins.
> > > > > > > > > > > 
> > > > > > > > > > > Jörg
> > > > > > > > > > > 
> > > > > > > > > > > On Sat, Aug 23, 2014 at 11:25 AM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > > > > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > > > > > > > 
> > > > > > > > > > > > I have some Solaris 10 Sparc V440/V445 servers available and  
> > > > > > > > > > > > can try to reproduce over the weekend.
> > > > > > > > > > > > 
> > > > > > > > > > > > Jörg
> > > > > > > > > > > > 
> > > > > > > > > > > > On Sat, Aug 23, 2014 at 4:37 AM, Robert Muir \<  
> > > > > > > > > > > > [rober...@elasticsearch.com](mailto:rober...@elasticsearch.com)\> wrote:
> > > > > > > > > > > > 
> > > > > > > > > > > > > How big is it? Maybe i can have it anyway? I pulled two  
> > > > > > > > > > > > > ancient ultrasparcs out of my closet to try to debug your issue, but  
> > > > > > > > > > > > > unfortunately they are a pita to work with (dead nvram battery on both,  
> > > > > > > > > > > > > zeroed mac address, etc.) Id still love to get to the bottom of this.  
> > > > > > > > > > > > > On Aug 22, 2014 3:59 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > > > > > > > > > > > 
> > > > > > > > > > > > > > Hi Adrien,  
> > > > > > > > > > > > > > It's a bunch of garbled binary data, basically a dump of the  
> > > > > > > > > > > > > > process image.  
> > > > > > > > > > > > > > Tony
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > On Thursday, August 21, 2014 6:36:12 PM UTC-4, Adrien Grand  
> > > > > > > > > > > > > > wrote:
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > Hi Tony,
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > Do you have more information in the core dump file? (cf. the  
> > > > > > > > > > > > > > > "Core dump written" line that you pasted)
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > On Thu, Aug 21, 2014 at 7:53 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > Hello,  
> > > > > > > > > > > > > > > > I installed ES 1.3.2 on a spare Solaris 11/ T4-4 SPARC  
> > > > > > > > > > > > > > > > server to scale out of small x86 machine. I get a similar exception  
> > > > > > > > > > > > > > > > running ES with JAVA\_OPTS=-d64. When Logstash 1.4.1 sends the first  
> > > > > > > > > > > > > > > > message I get the error below on the ES process:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # A fatal error has been detected by the Java Runtime
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > Environment:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # SIGBUS (0xa) at pc=0xffffffff7a9a3d8c, pid=14473, tid=209
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # JRE version: 7.0\_25-b15
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # Java VM: Java HotSpot(TM) 64-Bit Server VM (23.25-b01
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > mixed mode solaris-sparc compressed oops)
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # Problematic frame:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # V [libjvm.so+0xba3d8c] Unsafe\_GetInt+0x158
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # Core dump written. Default location:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > /export/home/elasticsearch/elasticsearch-1.3.2/core or  
> > > > > > > > > > > > > > > > core.14473
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # If you would like to submit a bug report, please visit:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # [http://bugreport.sun.com/bugreport/crash.jsp](http://bugreport.sun.com/bugreport/crash.jsp)
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > --------------- T H R E A D ---------------
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > Current thread (0x0000000107078000): JavaThread  
> > > > > > > > > > > > > > > > "elasticsearch[KYLIE1][http\_server\_worker][T#17]{New I/O  
> > > > > > > > > > > > > > > > worker #147}" daemon [\_thread\_in\_vm, id=209, stack(0xffffffff5b800000,  
> > > > > > > > > > > > > > > > 0xffffffff5b840000)]
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > siginfo:si\_signo=SIGBUS: si\_errno=0, si\_code=1  
> > > > > > > > > > > > > > > > (BUS\_ADRALN), si\_addr=0x0000000709cc09e7
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > I can run ES using 32bit java but have to shrink  
> > > > > > > > > > > > > > > > ES\_HEAPS\_SIZE more than I want to. Any assistance would be appreciated.
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > Regards,  
> > > > > > > > > > > > > > > > Tony
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > On Tuesday, July 22, 2014 5:43:28 AM UTC-4, David Roberts  
> > > > > > > > > > > > > > > > wrote:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Hello,
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > After upgrading from Elasticsearch 1.0.1 to 1.2.2 I'm  
> > > > > > > > > > > > > > > > > getting JVM core dumps on Solaris 10 on SPARC.
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # A fatal error has been detected by the Java Runtime
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Environment:
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # SIGBUS (0xa) at pc=0xffffffff7e452d78, pid=15483,
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > tid=263
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # JRE version: Java(TM) SE Runtime Environment
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > (7.0\_55-b13) (build 1.7.0\_55-b13)
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # Java VM: Java HotSpot(TM) 64-Bit Server VM (24.55-b03
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > mixed mode solaris-sparc compressed oops)
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # Problematic frame:
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # V [libjvm.so+0xc52d78] Unsafe\_GetLong+0x158
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > I'm pretty sure the problem here is that Elasticsearch is  
> > > > > > > > > > > > > > > > > making increasing use of "unsafe" functions in Java, presumably to speed  
> > > > > > > > > > > > > > > > > things up, and some CPUs are more picky than others about memory  
> > > > > > > > > > > > > > > > > alignment. In particular, x86 will tolerate misaligned memory access  
> > > > > > > > > > > > > > > > > whereas SPARC won't.
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Somebody has tried to report this to Oracle in the past  
> > > > > > > > > > > > > > > > > and (understandably) Oracle has said that if you're going to use unsafe  
> > > > > > > > > > > > > > > > > functions you need to understand what you're doing:  
> > > > > > > > > > > > > > > > > [http://bugs.java.com/bugdatabase/view\_bug.do?bug\_](http://bugs.java.com/bugdatabase/view_bug.do?bug_)  
> > > > > > > > > > > > > > > > > id=8021574
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > A quick grep through the code of the two versions of  
> > > > > > > > > > > > > > > > > Elasticsearch shows that the new use of "unsafe" memory access functions is  
> > > > > > > > > > > > > > > > > in the BytesReference, MurmurHash3 and HyperLogLogPlusPlus classes:
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > bash-3.2$ git checkout v1.0.1  
> > > > > > > > > > > > > > > > > Checking out files: 100% (2904/2904), done.
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > bash-3.2$ find . -name '\*.java' | xargs grep UnsafeUtils  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/UnsafeUtils.  
> > > > > > > > > > > > > > > > > java:public enum UnsafeUtils {  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > > bucket/BytesRefHash.java: if (id == -1L ||  
> > > > > > > > > > > > > > > > > UnsafeUtils.equals(key, get(id, spare))) {  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > > bucket/BytesRefHash.java: } else if  
> > > > > > > > > > > > > > > > > (UnsafeUtils.equals(key, get(curId, spare))) {  
> > > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java:import  
> > > > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java: return  
> > > > > > > > > > > > > > > > > UnsafeUtils.equals(b1, b2);
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > bash-3.2$ git checkout v1.2.2  
> > > > > > > > > > > > > > > > > Checking out files: 100% (2220/2220), done.
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > bash-3.2$ find . -name '\*.java' | xargs grep UnsafeUtils  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/bytes/  
> > > > > > > > > > > > > > > > > BytesReference.java:import org.elasticsearch.common.util.  
> > > > > > > > > > > > > > > > > UnsafeUtils;  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/bytes/  
> > > > > > > > > > > > > > > > > BytesReference.java: return  
> > > > > > > > > > > > > > > > > UnsafeUtils.equals(a.array(), a.arrayOffset(), b.array(), b.arrayOffset(),  
> > > > > > > > > > > > > > > > > a.length());  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/MurmurHash3.  
> > > > > > > > > > > > > > > > > java:import org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/MurmurHash3.  
> > > > > > > > > > > > > > > > > java: return UnsafeUtils.readLongLE(key,  
> > > > > > > > > > > > > > > > > blockOffset);  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/MurmurHash3.  
> > > > > > > > > > > > > > > > > java: long k1 =  
> > > > > > > > > > > > > > > > > UnsafeUtils.readLongLE(key, i);  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/MurmurHash3.  
> > > > > > > > > > > > > > > > > java: long k2 =  
> > > > > > > > > > > > > > > > > UnsafeUtils.readLongLE(key, i + 8);  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/  
> > > > > > > > > > > > > > > > > BytesRefHash.java: if (id == -1L ||  
> > > > > > > > > > > > > > > > > UnsafeUtils.equals(key, get(id, spare))) {  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/  
> > > > > > > > > > > > > > > > > BytesRefHash.java: } else if  
> > > > > > > > > > > > > > > > > (UnsafeUtils.equals(key, get(curId, spare))) {  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/UnsafeUtils.  
> > > > > > > > > > > > > > > > > java:public enum UnsafeUtils {  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > > metrics/cardinality/HyperLogLogPlusPlus.java:import  
> > > > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > > metrics/cardinality/HyperLogLogPlusPlus.java:  
> > > > > > > > > > > > > > > > > return UnsafeUtils.readIntLE(readSpare.bytes,  
> > > > > > > > > > > > > > > > > readSpare.offset);  
> > > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java:import  
> > > > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java: return  
> > > > > > > > > > > > > > > > > UnsafeUtils.equals(b1, b2);
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Presumably one of these three new uses is what is causing  
> > > > > > > > > > > > > > > > > the JVM SIGBUS error I'm seeing.
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > A quick look at the MurmurHash3 class shows that the  
> > > > > > > > > > > > > > > > > hash128 method accepts an arbitrary offset and passes it to an unsafe  
> > > > > > > > > > > > > > > > > function with no check that it's a multiple of 8:
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > > public static Hash128 hash128(byte[] key, int offset,
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > int length, long seed, Hash128 hash) {  
> > > > > > > > > > > > > > > > > long h1 = seed;  
> > > > > > > > > > > > > > > > > long h2 = seed;
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > > if (length >= 16) {
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > final int len16 = length & 0xFFFFFFF0; //
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > higher multiple of 16 that is lower than or equal to length  
> > > > > > > > > > > > > > > > > final int end = offset + len16;  
> > > > > > > > > > > > > > > > > for (int i = offset; i \< end; i += 16) {  
> > > > > > > > > > > > > > > > > long k1 = UnsafeUtils.readLongLE(key, i);  
> > > > > > > > > > > > > > > > > long k2 = UnsafeUtils.readLongLE(key, i +  
> > > > > > > > > > > > > > > > > 8);
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > This is a recipe for generating JVM core dumps on  
> > > > > > > > > > > > > > > > > architectures such as SPARC, Itanium and PowerPC that don't support  
> > > > > > > > > > > > > > > > > unaligned 64 bit memory access.
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Does Elasticsearch have any policy for support of hardware  
> > > > > > > > > > > > > > > > > other than x86? If not, I don't think many people would care but you  
> > > > > > > > > > > > > > > > > really ought to clearly say so on your platform support page. If you do  
> > > > > > > > > > > > > > > > > intend to support non-x86 architectures then you need to be much more  
> > > > > > > > > > > > > > > > > careful about the use of unsafe memory accesses.
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Regards,
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > David
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > --  
> > > > > > > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > > > > > > To unsubscribe from this group and stop receiving emails  
> > > > > > > > > > > > > > > > from it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-](https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-)  
> > > > > > > > > > > > > > > > b63e-4c2e-87c3-029fc58449fc%[40googlegroups.com](http://40googlegroups.com)  
> > > > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-b63e-4c2e-87c3-029fc58449fc%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-b63e-4c2e-87c3-029fc58449fc%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > > > > > .
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > --  
> > > > > > > > > > > > > > > Adrien Grand
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > --  
> > > > > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > > > > To unsubscribe from this group and stop receiving emails from  
> > > > > > > > > > > > > > it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc](https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc)  
> > > > > > > > > > > > > > 7-485a-8c52-562f3e91a535%[40googlegroups.com](http://40googlegroups.com)  
> > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc7-485a-8c52-562f3e91a535%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc7-485a-8c52-562f3e91a535%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > > > .  
> > > > > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > > > > > > > 
> > > > > > > > > > > > > --  
> > > > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > > > To unsubscribe from this group and stop receiving emails from  
> > > > > > > > > > > > > it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJ](https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJ)  
> > > > > > > > > > > > > q8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%[40mail.gmail.com](http://40mail.gmail.com)  
> > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJq8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJq8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > > .
> > > > > > > > > > > > > 
> > > > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > > > > > 
> > > > > > > > > > > --  
> > > > > > > > > > > You received this message because you are subscribed to the Google  
> > > > > > > > > > > Groups "elasticsearch" group.  
> > > > > > > > > > > To unsubscribe from this group and stop receiving emails from it,  
> > > > > > > > > > > send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/c62191ea-](https://groups.google.com/d/msgid/elasticsearch/c62191ea-)  
> > > > > > > > > > > 543b-462d-95e9-aff125c0a6f0%[40googlegroups.com](http://40googlegroups.com)  
> > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/c62191ea-543b-462d-95e9-aff125c0a6f0%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/c62191ea-543b-462d-95e9-aff125c0a6f0%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > .
> > > > > > > > > 
> > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > 
> > > > > > --  
> > > > > > You received this message because you are subscribed to the Google  
> > > > > > Groups "elasticsearch" group.  
> > > > > > To unsubscribe from this group and stop receiving emails from it,  
> > > > > > send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > To view this discussion on the web visit  
> > > > > > [https://groups.google.com/d/msgid/elasticsearch/](https://groups.google.com/d/msgid/elasticsearch/)  
> > > > > > CAKdsXoHrOOqhgOSiRhmweSR5wLs%2BJiO70\_CSRO%2BFS2zOU9VKzg%  
> > > > > > [40mail.gmail.com](http://40mail.gmail.com)  
> > > > > > [https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOqhgOSiRhmweSR5wLs%2BJiO70\_CSRO%2BFS2zOU9VKzg%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOqhgOSiRhmweSR5wLs%2BJiO70_CSRO%2BFS2zOU9VKzg%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > > > > .
> > > > > > 
> > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > 
> > > > > --  
> > > > > You received this message because you are subscribed to the Google  
> > > > > Groups "elasticsearch" group.  
> > > > > To unsubscribe from this group and stop receiving emails from it, send  
> > > > > an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > To view this discussion on the web visit [https://groups.google.com/d/](https://groups.google.com/d/)  
> > > > > msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw\_  
> > > > > mpHc0Q866fcso\_1LZCFiyw%[40mail.gmail.com](http://40mail.gmail.com)  
> > > > > [https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw\_mpHc0Q866fcso\_1LZCFiyw%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw_mpHc0Q866fcso_1LZCFiyw%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > > > .
> > > > > 
> > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > 
> > > > --  
> > > > You received this message because you are subscribed to the Google Groups  
> > > > "elasticsearch" group.  
> > > > To unsubscribe from this group and stop receiving emails from it, send an  
> > > > email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
> > > > To view this discussion on the web visit  
> > > > [https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com](https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com)  
> > > > [https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > .
> > 
> > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> 
> --  
> You received this message because you are subscribed to the Google Groups  
> "elasticsearch" group.  
> To unsubscribe from this group and stop receiving emails from it, send an  
> email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
> To view this discussion on the web visit  
> [https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHM\_WaMa%2BksJWJT1i3\_KmSgkxrwbeZk8%3DLwvw5JPGKZiQ%40mail.gmail.com](https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHM_WaMa%2BksJWJT1i3_KmSgkxrwbeZk8%3DLwvw5JPGKZiQ%40mail.gmail.com)  
> [https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHM\_WaMa%2BksJWJT1i3\_KmSgkxrwbeZk8%3DLwvw5JPGKZiQ%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHM_WaMa%2BksJWJT1i3_KmSgkxrwbeZk8%3DLwvw5JPGKZiQ%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> .
> 
> For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
To view this discussion on the web visit [https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAfc\_R23ZxHKqQhG5Eq6WOLCK%3DjOA6cs%2Bu5mYT72VA79w%40mail.gmail.com](https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAfc_R23ZxHKqQhG5Eq6WOLCK%3DjOA6cs%2Bu5mYT72VA79w%40mail.gmail.com).  
For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

---

<div class="post-metadata">

### Author: ![tony\_aponte](https://avatars.discourse-cdn.com/v4/letter/t/e56c9b/32.png) [@tony\_aponte](https://discuss.elastic.co/u/tony_aponte)
#### Post date: [August 29, 2014, 5:36pm UTC](https://discuss.elastic.co/t/jvm-crash-on-64-bit-sparc-with-elasticsearch-1-2-2-due-to-unaligned-memory-access/18786/24 "2014-08-29T17:36:57Z")

</div>

The easiest for me is to install fresh binaries but I'm not shy about  
learning about Maven while I build it from source.

Thanks  
Tony

On Friday, August 29, 2014 11:21:34 AM UTC-4, Jörg Prante wrote:

> Do you want to build from source? Or do you want to install a fresh binary?
> 
> At [jenkins.elasticsearch.org](http://jenkins.elasticsearch.org) I can not find any snapshot builds but it  
> may be just me.
> 
> It would be a nice add-on to provide snapshot builds for users that  
> eagerly await bug fixes or take a ride on the bleeding edge before the next  
> release arrives, without release notes etc.
> 
> Jörg
> 
> On Fri, Aug 29, 2014 at 4:29 PM, \<[tony....@iqor.com](mailto:tony....@iqor.com) \<javascript:\>\> wrote:
> 
> > Thanks again and sorry to bother you guys but I'm new to Github and don't  
> > know what do do from here. Can you point me to the right place where I can  
> > take the next step to put this patch on my server? I only know how to  
> > untar the tarball I downloaded from the main ES page.
> > 
> > Thanks.  
> > Tony
> > 
> > On Wednesday, August 27, 2014 1:35:06 PM UTC-4, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > 
> > > Kudos!
> > > 
> > > Tony
> > > 
> > > On Wednesday, August 27, 2014 1:16:11 PM UTC-4, Jörg Prante wrote:
> > > 
> > > > All praise should go to the fantastic Elasticsearch team who did not  
> > > > hesitate to test the fix immediately and replaced it with a better working  
> > > > solution, since the lzf-compress software is having weaknesses regarding  
> > > > threadsafety.
> > > > 
> > > > Jörg
> > > > 
> > > > On Wed, Aug 27, 2014 at 7:01 PM, Ivan Brusic [iv...@brusic.com](mailto:iv...@brusic.com) wrote:
> > > > 
> > > > > Amazing job. Great work.
> > > > > 
> > > > > --  
> > > > > Ivan
> > > > > 
> > > > > On Tue, Aug 26, 2014 at 12:41 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > 
> > > > > > I fixed the issue by setting the safe LZF encoder in LZFCompressor  
> > > > > > and opened a pull request
> > > > > > 
> > > > > > [Add LZF safe encoder in LZFCompressor by jprante · Pull Request #7466 · elastic/elasticsearch · GitHub](https://github.com/elasticsearch/elasticsearch/pull/7466)
> > > > > > 
> > > > > > Jörg
> > > > > > 
> > > > > > On Tue, Aug 26, 2014 at 8:17 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > > 
> > > > > > > Still broken with lzf-compress 1.0.3
> > > > > > > 
> > > > > > > [Solaris SPARC JVM 64bit crash with Java 8u11 and Elasticsearch 1.3.3-SNAPSHOT (with lzf-compress 1.0.3) · GitHub](https://gist.github.com/jprante/d2d829b497db4963aea5)
> > > > > > > 
> > > > > > > Jörg
> > > > > > > 
> > > > > > > On Tue, Aug 26, 2014 at 7:54 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > > > 
> > > > > > > > Thanks for the logstash mapping command. I can reproduce it now.
> > > > > > > > 
> > > > > > > > It's the LZF encoder that bails out at org.elasticsearch.common.  
> > > > > > > > compress.lzf.impl.UnsafeChunkEncoderBE.\_getInt
> > > > > > > > 
> > > > > > > > which uses in turn sun.misc.Unsafe.getInt
> > > > > > > > 
> > > > > > > > I have created a gist of the JVM crash file at
> > > > > > > > 
> > > > > > > > [Solaris SPARC core dump with Java 8u11 64bit and Elasticsearch 1.3.2 · GitHub](https://gist.github.com/jprante/79f4b4c0b9fd83eb1c9b)
> > > > > > > > 
> > > > > > > > There has been a fix in LZF lately [https://github.com/](https://github.com/)  
> > > > > > > > ning/compress/commit/db7f51bddc5b7beb47da77eeeab56882c650bff7
> > > > > > > > 
> > > > > > > > for version 1.0.3 which has been released recently.
> > > > > > > > 
> > > > > > > > I will build a snapshot ES version with LZF 1.0.3 and see if this  
> > > > > > > > works...
> > > > > > > > 
> > > > > > > > Jörg
> > > > > > > > 
> > > > > > > > On Mon, Aug 25, 2014 at 11:30 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > > > > > > 
> > > > > > > > > I captured a WireShark trace of the interaction between ES and  
> > > > > > > > > Logstash 1.4.1. The error occurs even before my data is sent. Can you try  
> > > > > > > > > to reproduce it on your testbed with this message I captured?
> > > > > > > > > 
> > > > > > > > > curl -XPUT [http://amssc103-mgmt-app2:9200/\_template/logstash](http://amssc103-mgmt-app2:9200/_template/logstash) -d @y
> > > > > > > > > 
> > > > > > > > > Contests of file 'y":  
> > > > > > > > > { "template" : "logstash-_", "settings" : {  
> > > > > > > > > "index.refresh\_interval" : "5s" }, "mappings" : { "default" : {  
> > > > > > > > > "\_all" : {"enabled" : true}, "dynamic\_templates" : [ {  
> > > > > > > > > "string\_fields" : { "match" : "_", "match\_mapping\_type"  
> > > > > > > > > : "string", "mapping" : { "type" : "string", "index"  
> > > > > > > > > : "analyzed", "omit\_norms" : true, "fields" : {  
> > > > > > > > > "raw" : {"type": "string", "index" : "not\_analyzed", "ignore\_above" :  
> > > > > > > > > 256} } } } } ], "properties" :  
> > > > > > > > > { "@version": { "type": "string", "index": "not\_analyzed" },  
> > > > > > > > > "geoip" : { "type" : "object", "dynamic": true,  
> > > > > > > > > "path": "full", "properties" : {  
> > > > > > > > > "location" : { "type" : "geo\_point" } } } } }  
> > > > > > > > > }}
> > > > > > > > > 
> > > > > > > > > On Monday, August 25, 2014 3:53:18 PM UTC-4, [tony....@iqor.com](mailto:tony....@iqor.com)  
> > > > > > > > > wrote:
> > > > > > > > > 
> > > > > > > > > > I have no plugins installed (yet) and only changed  
> > > > > > > > > > "es.logger.level" to DEBUG in logging.yml.
> > > > > > > > > > 
> > > > > > > > > > elasticsearch.yml:  
> > > > > > > > > > cluster.name: es-AMS1Cluster  
> > > > > > > > > > node.name: "KYLIE1"  
> > > > > > > > > > node.rack: amssc2client02  
> > > > > > > > > > path.data: /export/home/apontet/elasticsearch/data  
> > > > > > > > > > path.work: /export/home/apontet/elasticsearch/work  
> > > > > > > > > > path.logs: /export/home/apontet/elasticsearch/logs  
> > > > > > > > > > network.host: \*\*\*\*\*\*\*\* \<===== sanitized line; file contains  
> > > > > > > > > > actual server IP  
> > > > > > > > > > discovery.zen.ping.multicast.enabled: false  
> > > > > > > > > > discovery.zen.ping.unicast.hosts: ["s1", "s2", "s3", "s5" ,  
> > > > > > > > > > "s6", "s7"] \<===== Also sanitized
> > > > > > > > > > 
> > > > > > > > > > Thanks,  
> > > > > > > > > > Tony
> > > > > > > > > > 
> > > > > > > > > > On Saturday, August 23, 2014 6:29:40 AM UTC-4, Jörg Prante wrote:
> > > > > > > > > > 
> > > > > > > > > > > I tested a simple "Hello World" document on Elasticsearch 1.3.2  
> > > > > > > > > > > with Oracle JDK 1.7.0\_17 64-bit Server VM, Sparc Solaris 10, default  
> > > > > > > > > > > settings.
> > > > > > > > > > > 
> > > > > > > > > > > No issues.
> > > > > > > > > > > 
> > > > > > > > > > > So I would like to know more about the settings in  
> > > > > > > > > > > elasticsearch.yml, the mappings, and the installed plugins.
> > > > > > > > > > > 
> > > > > > > > > > > Jörg
> > > > > > > > > > > 
> > > > > > > > > > > On Sat, Aug 23, 2014 at 11:25 AM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > > > > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > > > > > > > 
> > > > > > > > > > > > I have some Solaris 10 Sparc V440/V445 servers available and  
> > > > > > > > > > > > can try to reproduce over the weekend.
> > > > > > > > > > > > 
> > > > > > > > > > > > Jörg
> > > > > > > > > > > > 
> > > > > > > > > > > > On Sat, Aug 23, 2014 at 4:37 AM, Robert Muir \<  
> > > > > > > > > > > > [rober...@elasticsearch.com](mailto:rober...@elasticsearch.com)\> wrote:
> > > > > > > > > > > > 
> > > > > > > > > > > > > How big is it? Maybe i can have it anyway? I pulled two  
> > > > > > > > > > > > > ancient ultrasparcs out of my closet to try to debug your issue, but  
> > > > > > > > > > > > > unfortunately they are a pita to work with (dead nvram battery on both,  
> > > > > > > > > > > > > zeroed mac address, etc.) Id still love to get to the bottom of this.  
> > > > > > > > > > > > > On Aug 22, 2014 3:59 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > > > > > > > > > > > 
> > > > > > > > > > > > > > Hi Adrien,  
> > > > > > > > > > > > > > It's a bunch of garbled binary data, basically a dump of the  
> > > > > > > > > > > > > > process image.  
> > > > > > > > > > > > > > Tony
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > On Thursday, August 21, 2014 6:36:12 PM UTC-4, Adrien Grand  
> > > > > > > > > > > > > > wrote:
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > Hi Tony,
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > Do you have more information in the core dump file? (cf. the  
> > > > > > > > > > > > > > > "Core dump written" line that you pasted)
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > On Thu, Aug 21, 2014 at 7:53 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > Hello,  
> > > > > > > > > > > > > > > > I installed ES 1.3.2 on a spare Solaris 11/ T4-4 SPARC  
> > > > > > > > > > > > > > > > server to scale out of small x86 machine. I get a similar exception  
> > > > > > > > > > > > > > > > running ES with JAVA\_OPTS=-d64. When Logstash 1.4.1 sends the first  
> > > > > > > > > > > > > > > > message I get the error below on the ES process:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # A fatal error has been detected by the Java Runtime
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > Environment:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # SIGBUS (0xa) at pc=0xffffffff7a9a3d8c, pid=14473, tid=209
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # JRE version: 7.0\_25-b15
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # Java VM: Java HotSpot(TM) 64-Bit Server VM (23.25-b01
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > mixed mode solaris-sparc compressed oops)
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # Problematic frame:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # V [libjvm.so+0xba3d8c] Unsafe\_GetInt+0x158
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # Core dump written. Default location:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > /export/home/elasticsearch/elasticsearch-1.3.2/core or  
> > > > > > > > > > > > > > > > core.14473
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # If you would like to submit a bug report, please visit:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # [http://bugreport.sun.com/bugreport/crash.jsp](http://bugreport.sun.com/bugreport/crash.jsp)
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > --------------- T H R E A D ---------------
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > Current thread (0x0000000107078000): JavaThread  
> > > > > > > > > > > > > > > > "elasticsearch[KYLIE1][http\_server\_worker][T#17]{New I/O  
> > > > > > > > > > > > > > > > worker #147}" daemon [\_thread\_in\_vm, id=209, stack(0xffffffff5b800000,  
> > > > > > > > > > > > > > > > 0xffffffff5b840000)]
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > siginfo:si\_signo=SIGBUS: si\_errno=0, si\_code=1  
> > > > > > > > > > > > > > > > (BUS\_ADRALN), si\_addr=0x0000000709cc09e7
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > I can run ES using 32bit java but have to shrink  
> > > > > > > > > > > > > > > > ES\_HEAPS\_SIZE more than I want to. Any assistance would be appreciated.
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > Regards,  
> > > > > > > > > > > > > > > > Tony
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > On Tuesday, July 22, 2014 5:43:28 AM UTC-4, David Roberts  
> > > > > > > > > > > > > > > > wrote:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Hello,
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > After upgrading from Elasticsearch 1.0.1 to 1.2.2 I'm  
> > > > > > > > > > > > > > > > > getting JVM core dumps on Solaris 10 on SPARC.
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # A fatal error has been detected by the Java Runtime
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Environment:
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # SIGBUS (0xa) at pc=0xffffffff7e452d78, pid=15483,
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > tid=263
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # JRE version: Java(TM) SE Runtime Environment
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > (7.0\_55-b13) (build 1.7.0\_55-b13)
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # Java VM: Java HotSpot(TM) 64-Bit Server VM (24.55-b03
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > mixed mode solaris-sparc compressed oops)
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # Problematic frame:
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # V [libjvm.so+0xc52d78] Unsafe\_GetLong+0x158
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > I'm pretty sure the problem here is that Elasticsearch is  
> > > > > > > > > > > > > > > > > making increasing use of "unsafe" functions in Java, presumably to speed  
> > > > > > > > > > > > > > > > > things up, and some CPUs are more picky than others about memory  
> > > > > > > > > > > > > > > > > alignment. In particular, x86 will tolerate misaligned memory access  
> > > > > > > > > > > > > > > > > whereas SPARC won't.
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Somebody has tried to report this to Oracle in the past  
> > > > > > > > > > > > > > > > > and (understandably) Oracle has said that if you're going to use unsafe  
> > > > > > > > > > > > > > > > > functions you need to understand what you're doing:  
> > > > > > > > > > > > > > > > > [http://bugs.java.com/bugdatabase/view\_bug.do?bug\_](http://bugs.java.com/bugdatabase/view_bug.do?bug_)  
> > > > > > > > > > > > > > > > > id=8021574
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > A quick grep through the code of the two versions of  
> > > > > > > > > > > > > > > > > Elasticsearch shows that the new use of "unsafe" memory access functions is  
> > > > > > > > > > > > > > > > > in the BytesReference, MurmurHash3 and HyperLogLogPlusPlus classes:
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > bash-3.2$ git checkout v1.0.1  
> > > > > > > > > > > > > > > > > Checking out files: 100% (2904/2904), done.
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > bash-3.2$ find . -name '\*.java' | xargs grep UnsafeUtils  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/UnsafeUtils.  
> > > > > > > > > > > > > > > > > java:public enum UnsafeUtils {  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > > bucket/BytesRefHash.java: if (id == -1L ||  
> > > > > > > > > > > > > > > > > UnsafeUtils.equals(key, get(id, spare))) {  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > > bucket/BytesRefHash.java: } else if  
> > > > > > > > > > > > > > > > > (UnsafeUtils.equals(key, get(curId, spare))) {  
> > > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java:import  
> > > > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java: return  
> > > > > > > > > > > > > > > > > UnsafeUtils.equals(b1, b2);
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > bash-3.2$ git checkout v1.2.2  
> > > > > > > > > > > > > > > > > Checking out files: 100% (2220/2220), done.
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > bash-3.2$ find . -name '\*.java' | xargs grep UnsafeUtils  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/bytes/  
> > > > > > > > > > > > > > > > > BytesReference.java:import org.elasticsearch.common.util.  
> > > > > > > > > > > > > > > > > UnsafeUtils;  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/bytes/  
> > > > > > > > > > > > > > > > > BytesReference.java: return  
> > > > > > > > > > > > > > > > > UnsafeUtils.equals(a.array(), a.arrayOffset(), b.array(), b.arrayOffset(),  
> > > > > > > > > > > > > > > > > a.length());  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/MurmurHash3.  
> > > > > > > > > > > > > > > > > java:import org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/MurmurHash3.  
> > > > > > > > > > > > > > > > > java: return UnsafeUtils.readLongLE(key,  
> > > > > > > > > > > > > > > > > blockOffset);  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/MurmurHash3.  
> > > > > > > > > > > > > > > > > java: long k1 =  
> > > > > > > > > > > > > > > > > UnsafeUtils.readLongLE(key, i);  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/MurmurHash3.  
> > > > > > > > > > > > > > > > > java: long k2 =  
> > > > > > > > > > > > > > > > > UnsafeUtils.readLongLE(key, i + 8);  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/  
> > > > > > > > > > > > > > > > > BytesRefHash.java: if (id == -1L ||  
> > > > > > > > > > > > > > > > > UnsafeUtils.equals(key, get(id, spare))) {  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/  
> > > > > > > > > > > > > > > > > BytesRefHash.java: } else if  
> > > > > > > > > > > > > > > > > (UnsafeUtils.equals(key, get(curId, spare))) {  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/UnsafeUtils.  
> > > > > > > > > > > > > > > > > java:public enum UnsafeUtils {  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > > metrics/cardinality/HyperLogLogPlusPlus.java:import  
> > > > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > > metrics/cardinality/HyperLogLogPlusPlus.java:  
> > > > > > > > > > > > > > > > > return UnsafeUtils.readIntLE(readSpare.bytes,  
> > > > > > > > > > > > > > > > > readSpare.offset);  
> > > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java:import  
> > > > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java: return  
> > > > > > > > > > > > > > > > > UnsafeUtils.equals(b1, b2);
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Presumably one of these three new uses is what is causing  
> > > > > > > > > > > > > > > > > the JVM SIGBUS error I'm seeing.
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > A quick look at the MurmurHash3 class shows that the  
> > > > > > > > > > > > > > > > > hash128 method accepts an arbitrary offset and passes it to an unsafe  
> > > > > > > > > > > > > > > > > function with no check that it's a multiple of 8:
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > > public static Hash128 hash128(byte[] key, int offset, 
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > int length, long seed, Hash128 hash) {  
> > > > > > > > > > > > > > > > > long h1 = seed;  
> > > > > > > > > > > > > > > > > long h2 = seed;
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > > if (length >= 16) {
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > final int len16 = length & 0xFFFFFFF0; // 
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > higher multiple of 16 that is lower than or equal to length  
> > > > > > > > > > > > > > > > > final int end = offset + len16;  
> > > > > > > > > > > > > > > > > for (int i = offset; i \< end; i += 16) {  
> > > > > > > > > > > > > > > > > long k1 = UnsafeUtils.readLongLE(key, i);  
> > > > > > > > > > > > > > > > > long k2 = UnsafeUtils.readLongLE(key, i +  
> > > > > > > > > > > > > > > > > 8);
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > This is a recipe for generating JVM core dumps on  
> > > > > > > > > > > > > > > > > architectures such as SPARC, Itanium and PowerPC that don't support  
> > > > > > > > > > > > > > > > > unaligned 64 bit memory access.
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Does Elasticsearch have any policy for support of hardware  
> > > > > > > > > > > > > > > > > other than x86? If not, I don't think many people would care but you  
> > > > > > > > > > > > > > > > > really ought to clearly say so on your platform support page. If you do  
> > > > > > > > > > > > > > > > > intend to support non-x86 architectures then you need to be much more  
> > > > > > > > > > > > > > > > > careful about the use of unsafe memory accesses.
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Regards,
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > David
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > --  
> > > > > > > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > > > > > > To unsubscribe from this group and stop receiving emails  
> > > > > > > > > > > > > > > > from it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-](https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-)  
> > > > > > > > > > > > > > > > b63e-4c2e-87c3-029fc58449fc%[40googlegroups.com](http://40googlegroups.com)  
> > > > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-b63e-4c2e-87c3-029fc58449fc%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-b63e-4c2e-87c3-029fc58449fc%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > > > > > .
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > --  
> > > > > > > > > > > > > > > Adrien Grand
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > --  
> > > > > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > > > > To unsubscribe from this group and stop receiving emails from  
> > > > > > > > > > > > > > it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc](https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc)  
> > > > > > > > > > > > > > 7-485a-8c52-562f3e91a535%[40googlegroups.com](http://40googlegroups.com)  
> > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc7-485a-8c52-562f3e91a535%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc7-485a-8c52-562f3e91a535%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > > > .  
> > > > > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > > > > > > > 
> > > > > > > > > > > > > --  
> > > > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > > > To unsubscribe from this group and stop receiving emails from  
> > > > > > > > > > > > > it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJ](https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJ)  
> > > > > > > > > > > > > q8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%[40mail.gmail.com](http://40mail.gmail.com)  
> > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJq8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJq8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > > .
> > > > > > > > > > > > > 
> > > > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > > > > > 
> > > > > > > > > > > --  
> > > > > > > > > > > You received this message because you are subscribed to the Google  
> > > > > > > > > > > Groups "elasticsearch" group.  
> > > > > > > > > > > To unsubscribe from this group and stop receiving emails from it,  
> > > > > > > > > > > send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/c62191ea-](https://groups.google.com/d/msgid/elasticsearch/c62191ea-)  
> > > > > > > > > > > 543b-462d-95e9-aff125c0a6f0%[40googlegroups.com](http://40googlegroups.com)  
> > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/c62191ea-543b-462d-95e9-aff125c0a6f0%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/c62191ea-543b-462d-95e9-aff125c0a6f0%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > .
> > > > > > > > > 
> > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > 
> > > > > > --  
> > > > > > You received this message because you are subscribed to the Google  
> > > > > > Groups "elasticsearch" group.  
> > > > > > To unsubscribe from this group and stop receiving emails from it,  
> > > > > > send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > To view this discussion on the web visit  
> > > > > > [https://groups.google.com/d/msgid/elasticsearch/](https://groups.google.com/d/msgid/elasticsearch/)  
> > > > > > CAKdsXoHrOOqhgOSiRhmweSR5wLs%2BJiO70\_CSRO%2BFS2zOU9VKzg%  
> > > > > > [40mail.gmail.com](http://40mail.gmail.com)  
> > > > > > [https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOqhgOSiRhmweSR5wLs%2BJiO70\_CSRO%2BFS2zOU9VKzg%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOqhgOSiRhmweSR5wLs%2BJiO70_CSRO%2BFS2zOU9VKzg%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > > > > .
> > > > > > 
> > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > 
> > > > > --  
> > > > > You received this message because you are subscribed to the Google  
> > > > > Groups "elasticsearch" group.  
> > > > > To unsubscribe from this group and stop receiving emails from it, send  
> > > > > an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > To view this discussion on the web visit [https://groups.google.com/d/](https://groups.google.com/d/)  
> > > > > msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw\_  
> > > > > mpHc0Q866fcso\_1LZCFiyw%[40mail.gmail.com](http://40mail.gmail.com)  
> > > > > [https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw\_mpHc0Q866fcso\_1LZCFiyw%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw_mpHc0Q866fcso_1LZCFiyw%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > > > .
> > > > > 
> > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > 
> > > > --  
> > > > You received this message because you are subscribed to the Google Groups  
> > > > "elasticsearch" group.  
> > > > To unsubscribe from this group and stop receiving emails from it, send an  
> > > > email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com) \<javascript:\>.  
> > > > To view this discussion on the web visit  
> > > > [https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com](https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com)  
> > > > [https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > .
> > 
> > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
To view this discussion on the web visit [https://groups.google.com/d/msgid/elasticsearch/45c53e81-2c8a-40cd-aadd-15891a09e30d%40googlegroups.com](https://groups.google.com/d/msgid/elasticsearch/45c53e81-2c8a-40cd-aadd-15891a09e30d%40googlegroups.com).  
For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

---

<div class="post-metadata">

### Author: ![jprante](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/jprante/32/44941_2.png) [@jprante](https://discuss.elastic.co/u/jprante)
#### Post date: [August 29, 2014, 7:27pm UTC](https://discuss.elastic.co/t/jvm-crash-on-64-bit-sparc-with-elasticsearch-1-2-2-due-to-unaligned-memory-access/18786/25 "2014-08-29T19:27:18Z")

</div>

Quick guide:

- install Java 7 (or Java 8), Apache Maven, and git, also ensure internet  
connection to the Maven central repo

- clone 1.3 branch only (you could also clone the whole repo and switch to  
the branch): git clone [GitHub - elastic/elasticsearch: Free and Open, Distributed, RESTful Search Engine](https://github.com/elasticsearch/elasticsearch.git)  
--branch 1.3 --single-branch es-1.3

- enter folder es-1.3

- start build: mvn -DskipTests clean install

- wait a few minutes while Maven loads all dependent artifacts and compiles  
~3000 source files

The result will be a complete build of all binaries. In the 'target'  
folder, after the "Build complete" message of Maven, you will see a file  
"elasticsearch-.jar"

is something like "1.3.3-SNAPSHOT". You can copy this file into  
your existing Elasticsearch 1.3.x installation "lib" folder. Do not forget  
to adjust "bin/elasticsearch.in.sh" to point to the new  
elasticsearch-.jar file in the classpath configuration (at the top  
lines). This must be the first jar on the classpath so it can patch Lucene  
jars.

If you have already data in the existing Elasticsearch I recommend to  
backup everything before starting the new snapshot build - no guarantees,  
use at your own risk.

Jörg

On Fri, Aug 29, 2014 at 7:36 PM, [tony.aponte@iqor.com](mailto:tony.aponte@iqor.com) wrote:

> The easiest for me is to install fresh binaries but I'm not shy about  
> learning about Maven while I build it from source.
> 
> Thanks  
> Tony
> 
> On Friday, August 29, 2014 11:21:34 AM UTC-4, Jörg Prante wrote:
> 
> > Do you want to build from source? Or do you want to install a fresh  
> > binary?
> > 
> > At [jenkins.elasticsearch.org](http://jenkins.elasticsearch.org) I can not find any snapshot builds but it  
> > may be just me.
> > 
> > It would be a nice add-on to provide snapshot builds for users that  
> > eagerly await bug fixes or take a ride on the bleeding edge before the next  
> > release arrives, without release notes etc.
> > 
> > Jörg
> > 
> > On Fri, Aug 29, 2014 at 4:29 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > 
> > > Thanks again and sorry to bother you guys but I'm new to Github and  
> > > don't know what do do from here. Can you point me to the right place where  
> > > I can take the next step to put this patch on my server? I only know how  
> > > to untar the tarball I downloaded from the main ES page.
> > > 
> > > Thanks.  
> > > Tony
> > > 
> > > On Wednesday, August 27, 2014 1:35:06 PM UTC-4, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > 
> > > > Kudos!
> > > > 
> > > > Tony
> > > > 
> > > > On Wednesday, August 27, 2014 1:16:11 PM UTC-4, Jörg Prante wrote:
> > > > 
> > > > > All praise should go to the fantastic Elasticsearch team who did not  
> > > > > hesitate to test the fix immediately and replaced it with a better working  
> > > > > solution, since the lzf-compress software is having weaknesses regarding  
> > > > > threadsafety.
> > > > > 
> > > > > Jörg
> > > > > 
> > > > > On Wed, Aug 27, 2014 at 7:01 PM, Ivan Brusic [iv...@brusic.com](mailto:iv...@brusic.com) wrote:
> > > > > 
> > > > > > Amazing job. Great work.
> > > > > > 
> > > > > > --  
> > > > > > Ivan
> > > > > > 
> > > > > > On Tue, Aug 26, 2014 at 12:41 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > > 
> > > > > > > I fixed the issue by setting the safe LZF encoder in LZFCompressor  
> > > > > > > and opened a pull request
> > > > > > > 
> > > > > > > [Add LZF safe encoder in LZFCompressor by jprante · Pull Request #7466 · elastic/elasticsearch · GitHub](https://github.com/elasticsearch/elasticsearch/pull/7466)
> > > > > > > 
> > > > > > > Jörg
> > > > > > > 
> > > > > > > On Tue, Aug 26, 2014 at 8:17 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > > > 
> > > > > > > > Still broken with lzf-compress 1.0.3
> > > > > > > > 
> > > > > > > > [Solaris SPARC JVM 64bit crash with Java 8u11 and Elasticsearch 1.3.3-SNAPSHOT (with lzf-compress 1.0.3) · GitHub](https://gist.github.com/jprante/d2d829b497db4963aea5)
> > > > > > > > 
> > > > > > > > Jörg
> > > > > > > > 
> > > > > > > > On Tue, Aug 26, 2014 at 7:54 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > > > > 
> > > > > > > > > Thanks for the logstash mapping command. I can reproduce it now.
> > > > > > > > > 
> > > > > > > > > It's the LZF encoder that bails out at [org.elasticsearch.common.co](http://org.elasticsearch.common.co)  
> > > > > > > > > mpress.lzf.impl.UnsafeChunkEncoderBE.\_getInt
> > > > > > > > > 
> > > > > > > > > which uses in turn sun.misc.Unsafe.getInt
> > > > > > > > > 
> > > > > > > > > I have created a gist of the JVM crash file at
> > > > > > > > > 
> > > > > > > > > [Solaris SPARC core dump with Java 8u11 64bit and Elasticsearch 1.3.2 · GitHub](https://gist.github.com/jprante/79f4b4c0b9fd83eb1c9b)
> > > > > > > > > 
> > > > > > > > > There has been a fix in LZF lately [Ning · GitHub](https://github.com/ning)  
> > > > > > > > > /compress/commit/db7f51bddc5b7beb47da77eeeab56882c650bff7
> > > > > > > > > 
> > > > > > > > > for version 1.0.3 which has been released recently.
> > > > > > > > > 
> > > > > > > > > I will build a snapshot ES version with LZF 1.0.3 and see if this  
> > > > > > > > > works...
> > > > > > > > > 
> > > > > > > > > Jörg
> > > > > > > > > 
> > > > > > > > > On Mon, Aug 25, 2014 at 11:30 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > > > > > > > 
> > > > > > > > > > I captured a WireShark trace of the interaction between ES and  
> > > > > > > > > > Logstash 1.4.1. The error occurs even before my data is sent. Can you try  
> > > > > > > > > > to reproduce it on your testbed with this message I captured?
> > > > > > > > > > 
> > > > > > > > > > curl -XPUT [http://amssc103-mgmt-app2:9200/\_template/logstash](http://amssc103-mgmt-app2:9200/_template/logstash) -d  
> > > > > > > > > > @y
> > > > > > > > > > 
> > > > > > > > > > Contests of file 'y":  
> > > > > > > > > > { "template" : "logstash-_", "settings" : {  
> > > > > > > > > > "index.refresh\_interval" : "5s" }, "mappings" : { "default" : {  
> > > > > > > > > > "\_all" : {"enabled" : true}, "dynamic\_templates" : [ {  
> > > > > > > > > > "string\_fields" : { "match" : "_", "match\_mapping\_type"  
> > > > > > > > > > : "string", "mapping" : { "type" : "string", "index"  
> > > > > > > > > > : "analyzed", "omit\_norms" : true, "fields" : {  
> > > > > > > > > > "raw" : {"type": "string", "index" : "not\_analyzed", "ignore\_above" :  
> > > > > > > > > > 256} } } } } ], "properties" :  
> > > > > > > > > > { "@version": { "type": "string", "index": "not\_analyzed" },  
> > > > > > > > > > "geoip" : { "type" : "object", "dynamic": true,  
> > > > > > > > > > "path": "full", "properties" : {  
> > > > > > > > > > "location" : { "type" : "geo\_point" } } } } }  
> > > > > > > > > > }}
> > > > > > > > > > 
> > > > > > > > > > On Monday, August 25, 2014 3:53:18 PM UTC-4, [tony....@iqor.com](mailto:tony....@iqor.com)  
> > > > > > > > > > wrote:
> > > > > > > > > > 
> > > > > > > > > > > I have no plugins installed (yet) and only changed  
> > > > > > > > > > > "es.logger.level" to DEBUG in logging.yml.
> > > > > > > > > > > 
> > > > > > > > > > > elasticsearch.yml:  
> > > > > > > > > > > cluster.name: es-AMS1Cluster  
> > > > > > > > > > > node.name: "KYLIE1"  
> > > > > > > > > > > node.rack: amssc2client02  
> > > > > > > > > > > path.data: /export/home/apontet/elasticsearch/data  
> > > > > > > > > > > path.work: /export/home/apontet/elasticsearch/work  
> > > > > > > > > > > path.logs: /export/home/apontet/elasticsearch/logs  
> > > > > > > > > > > network.host: \*\*\*\*\*\*\*\* \<===== sanitized line; file  
> > > > > > > > > > > contains actual server IP  
> > > > > > > > > > > discovery.zen.ping.multicast.enabled: false  
> > > > > > > > > > > discovery.zen.ping.unicast.hosts: ["s1", "s2", "s3", "s5" ,  
> > > > > > > > > > > "s6", "s7"] \<===== Also sanitized
> > > > > > > > > > > 
> > > > > > > > > > > Thanks,  
> > > > > > > > > > > Tony
> > > > > > > > > > > 
> > > > > > > > > > > On Saturday, August 23, 2014 6:29:40 AM UTC-4, Jörg Prante wrote:
> > > > > > > > > > > 
> > > > > > > > > > > > I tested a simple "Hello World" document on Elasticsearch 1.3.2  
> > > > > > > > > > > > with Oracle JDK 1.7.0\_17 64-bit Server VM, Sparc Solaris 10, default  
> > > > > > > > > > > > settings.
> > > > > > > > > > > > 
> > > > > > > > > > > > No issues.
> > > > > > > > > > > > 
> > > > > > > > > > > > So I would like to know more about the settings in  
> > > > > > > > > > > > elasticsearch.yml, the mappings, and the installed plugins.
> > > > > > > > > > > > 
> > > > > > > > > > > > Jörg
> > > > > > > > > > > > 
> > > > > > > > > > > > On Sat, Aug 23, 2014 at 11:25 AM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > > > > > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > > > > > > > > 
> > > > > > > > > > > > > I have some Solaris 10 Sparc V440/V445 servers available and  
> > > > > > > > > > > > > can try to reproduce over the weekend.
> > > > > > > > > > > > > 
> > > > > > > > > > > > > Jörg
> > > > > > > > > > > > > 
> > > > > > > > > > > > > On Sat, Aug 23, 2014 at 4:37 AM, Robert Muir \<  
> > > > > > > > > > > > > [rober...@elasticsearch.com](mailto:rober...@elasticsearch.com)\> wrote:
> > > > > > > > > > > > > 
> > > > > > > > > > > > > > How big is it? Maybe i can have it anyway? I pulled two  
> > > > > > > > > > > > > > ancient ultrasparcs out of my closet to try to debug your issue, but  
> > > > > > > > > > > > > > unfortunately they are a pita to work with (dead nvram battery on both,  
> > > > > > > > > > > > > > zeroed mac address, etc.) Id still love to get to the bottom of this.  
> > > > > > > > > > > > > > On Aug 22, 2014 3:59 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > Hi Adrien,  
> > > > > > > > > > > > > > > It's a bunch of garbled binary data, basically a dump of the  
> > > > > > > > > > > > > > > process image.  
> > > > > > > > > > > > > > > Tony
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > On Thursday, August 21, 2014 6:36:12 PM UTC-4, Adrien Grand  
> > > > > > > > > > > > > > > wrote:
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > Hi Tony,
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > Do you have more information in the core dump file? (cf.  
> > > > > > > > > > > > > > > > the "Core dump written" line that you pasted)
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > On Thu, Aug 21, 2014 at 7:53 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Hello,  
> > > > > > > > > > > > > > > > > I installed ES 1.3.2 on a spare Solaris 11/ T4-4 SPARC  
> > > > > > > > > > > > > > > > > server to scale out of small x86 machine. I get a similar exception  
> > > > > > > > > > > > > > > > > running ES with JAVA\_OPTS=-d64. When Logstash 1.4.1 sends the first  
> > > > > > > > > > > > > > > > > message I get the error below on the ES process:
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # A fatal error has been detected by the Java Runtime
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Environment:
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # SIGBUS (0xa) at pc=0xffffffff7a9a3d8c, pid=14473,
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > tid=209
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # JRE version: 7.0\_25-b15
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # Java VM: Java HotSpot(TM) 64-Bit Server VM (23.25-b01
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > mixed mode solaris-sparc compressed oops)
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # Problematic frame:
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # V [libjvm.so+0xba3d8c] Unsafe\_GetInt+0x158
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # Core dump written. Default location:
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > /export/home/elasticsearch/elasticsearch-1.3.2/core or  
> > > > > > > > > > > > > > > > > core.14473
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # If you would like to submit a bug report, please visit:
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # [http://bugreport.sun.com/bugreport/crash.jsp](http://bugreport.sun.com/bugreport/crash.jsp)
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > --------------- T H R E A D ---------------
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Current thread (0x0000000107078000): JavaThread  
> > > > > > > > > > > > > > > > > "elasticsearch[KYLIE1][http\_server\_worker][T#17]{New I/O  
> > > > > > > > > > > > > > > > > worker #147}" daemon [\_thread\_in\_vm, id=209, stack(0xffffffff5b800000,  
> > > > > > > > > > > > > > > > > 0xffffffff5b840000)]
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > siginfo:si\_signo=SIGBUS: si\_errno=0, si\_code=1  
> > > > > > > > > > > > > > > > > (BUS\_ADRALN), si\_addr=0x0000000709cc09e7
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > I can run ES using 32bit java but have to shrink  
> > > > > > > > > > > > > > > > > ES\_HEAPS\_SIZE more than I want to. Any assistance would be appreciated.
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Regards,  
> > > > > > > > > > > > > > > > > Tony
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > On Tuesday, July 22, 2014 5:43:28 AM UTC-4, David Roberts  
> > > > > > > > > > > > > > > > > wrote:
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > Hello,
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > After upgrading from Elasticsearch 1.0.1 to 1.2.2 I'm  
> > > > > > > > > > > > > > > > > > getting JVM core dumps on Solaris 10 on SPARC.
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # A fatal error has been detected by the Java Runtime
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > Environment:
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # SIGBUS (0xa) at pc=0xffffffff7e452d78, pid=15483,
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > tid=263
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # JRE version: Java(TM) SE Runtime Environment
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > (7.0\_55-b13) (build 1.7.0\_55-b13)
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # Java VM: Java HotSpot(TM) 64-Bit Server VM (24.55-b03
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > mixed mode solaris-sparc compressed oops)
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # Problematic frame:
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # V [libjvm.so+0xc52d78] Unsafe\_GetLong+0x158
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > I'm pretty sure the problem here is that Elasticsearch is  
> > > > > > > > > > > > > > > > > > making increasing use of "unsafe" functions in Java, presumably to speed  
> > > > > > > > > > > > > > > > > > things up, and some CPUs are more picky than others about memory  
> > > > > > > > > > > > > > > > > > alignment. In particular, x86 will tolerate misaligned memory access  
> > > > > > > > > > > > > > > > > > whereas SPARC won't.
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > Somebody has tried to report this to Oracle in the past  
> > > > > > > > > > > > > > > > > > and (understandably) Oracle has said that if you're going to use unsafe  
> > > > > > > > > > > > > > > > > > functions you need to understand what you're doing:  
> > > > > > > > > > > > > > > > > > [http://bugs.java.com/bugdatabase/view\_bug.do?bug\_](http://bugs.java.com/bugdatabase/view_bug.do?bug_)  
> > > > > > > > > > > > > > > > > > id=8021574
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > A quick grep through the code of the two versions of  
> > > > > > > > > > > > > > > > > > Elasticsearch shows that the new use of "unsafe" memory access functions is  
> > > > > > > > > > > > > > > > > > in the BytesReference, MurmurHash3 and HyperLogLogPlusPlus classes:
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > bash-3.2$ git checkout v1.0.1  
> > > > > > > > > > > > > > > > > > Checking out files: 100% (2904/2904), done.
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > bash-3.2$ find . -name '\*.java' | xargs grep UnsafeUtils  
> > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/  
> > > > > > > > > > > > > > > > > > UnsafeUtils.java:public enum UnsafeUtils {  
> > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > > > bucket/BytesRefHash.java: if (id == -1L ||  
> > > > > > > > > > > > > > > > > > UnsafeUtils.equals(key, get(id, spare))) {  
> > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > > > bucket/BytesRefHash.java: } else if  
> > > > > > > > > > > > > > > > > > (UnsafeUtils.equals(key, get(curId, spare))) {  
> > > > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java:import  
> > > > > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java: return  
> > > > > > > > > > > > > > > > > > UnsafeUtils.equals(b1, b2);
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > bash-3.2$ git checkout v1.2.2  
> > > > > > > > > > > > > > > > > > Checking out files: 100% (2220/2220), done.
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > bash-3.2$ find . -name '\*.java' | xargs grep UnsafeUtils  
> > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/bytes/  
> > > > > > > > > > > > > > > > > > BytesReference.java:import org.elasticsearch.common.util.  
> > > > > > > > > > > > > > > > > > UnsafeUtils;  
> > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/bytes/  
> > > > > > > > > > > > > > > > > > BytesReference.java: return  
> > > > > > > > > > > > > > > > > > UnsafeUtils.equals(a.array(), a.arrayOffset(), b.array(), b.arrayOffset(),  
> > > > > > > > > > > > > > > > > > a.length());  
> > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/  
> > > > > > > > > > > > > > > > > > MurmurHash3.java:import org.elasticsearch.common.util.  
> > > > > > > > > > > > > > > > > > UnsafeUtils;  
> > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/  
> > > > > > > > > > > > > > > > > > MurmurHash3.java: return  
> > > > > > > > > > > > > > > > > > UnsafeUtils.readLongLE(key, blockOffset);  
> > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/  
> > > > > > > > > > > > > > > > > > MurmurHash3.java: long k1 =  
> > > > > > > > > > > > > > > > > > UnsafeUtils.readLongLE(key, i);  
> > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/  
> > > > > > > > > > > > > > > > > > MurmurHash3.java: long k2 =  
> > > > > > > > > > > > > > > > > > UnsafeUtils.readLongLE(key, i + 8);  
> > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/  
> > > > > > > > > > > > > > > > > > BytesRefHash.java: if (id == -1L ||  
> > > > > > > > > > > > > > > > > > UnsafeUtils.equals(key, get(id, spare))) {  
> > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/  
> > > > > > > > > > > > > > > > > > BytesRefHash.java: } else if  
> > > > > > > > > > > > > > > > > > (UnsafeUtils.equals(key, get(curId, spare))) {  
> > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/  
> > > > > > > > > > > > > > > > > > UnsafeUtils.java:public enum UnsafeUtils {  
> > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > > > metrics/cardinality/HyperLogLogPlusPlus.java:import  
> > > > > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > > > metrics/cardinality/HyperLogLogPlusPlus.java:  
> > > > > > > > > > > > > > > > > > return UnsafeUtils.readIntLE(readSpare.bytes,  
> > > > > > > > > > > > > > > > > > readSpare.offset);  
> > > > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java:import  
> > > > > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java: return  
> > > > > > > > > > > > > > > > > > UnsafeUtils.equals(b1, b2);
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > Presumably one of these three new uses is what is causing  
> > > > > > > > > > > > > > > > > > the JVM SIGBUS error I'm seeing.
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > A quick look at the MurmurHash3 class shows that the  
> > > > > > > > > > > > > > > > > > hash128 method accepts an arbitrary offset and passes it to an unsafe  
> > > > > > > > > > > > > > > > > > function with no check that it's a multiple of 8:
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > > > public static Hash128 hash128(byte[] key, int offset,
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > int length, long seed, Hash128 hash) {  
> > > > > > > > > > > > > > > > > > long h1 = seed;  
> > > > > > > > > > > > > > > > > > long h2 = seed;
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > > > if (length >= 16) {
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > final int len16 = length & 0xFFFFFFF0; //
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > higher multiple of 16 that is lower than or equal to length  
> > > > > > > > > > > > > > > > > > final int end = offset + len16;  
> > > > > > > > > > > > > > > > > > for (int i = offset; i \< end; i += 16) {  
> > > > > > > > > > > > > > > > > > long k1 = UnsafeUtils.readLongLE(key, i);  
> > > > > > > > > > > > > > > > > > long k2 = UnsafeUtils.readLongLE(key, i +  
> > > > > > > > > > > > > > > > > > 8);
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > This is a recipe for generating JVM core dumps on  
> > > > > > > > > > > > > > > > > > architectures such as SPARC, Itanium and PowerPC that don't support  
> > > > > > > > > > > > > > > > > > unaligned 64 bit memory access.
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > Does Elasticsearch have any policy for support of  
> > > > > > > > > > > > > > > > > > hardware other than x86? If not, I don't think many people would care but  
> > > > > > > > > > > > > > > > > > you really ought to clearly say so on your platform support page. If you  
> > > > > > > > > > > > > > > > > > do intend to support non-x86 architectures then you need to be much more  
> > > > > > > > > > > > > > > > > > careful about the use of unsafe memory accesses.
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > Regards,
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > David
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > --  
> > > > > > > > > > > > > > > > > You received this message because you are subscribed to  
> > > > > > > > > > > > > > > > > the Google Groups "elasticsearch" group.  
> > > > > > > > > > > > > > > > > To unsubscribe from this group and stop receiving emails  
> > > > > > > > > > > > > > > > > from it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com)  
> > > > > > > > > > > > > > > > > .  
> > > > > > > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-](https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-)  
> > > > > > > > > > > > > > > > > b63e-4c2e-87c3-029fc58449fc%[40googlegroups.com](http://40googlegroups.com)  
> > > > > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-b63e-4c2e-87c3-029fc58449fc%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-b63e-4c2e-87c3-029fc58449fc%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > > > > > > .
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout)  
> > > > > > > > > > > > > > > > > .
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > --  
> > > > > > > > > > > > > > > > Adrien Grand
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > --  
> > > > > > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > > > > > To unsubscribe from this group and stop receiving emails  
> > > > > > > > > > > > > > > from it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc](https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc)  
> > > > > > > > > > > > > > > 7-485a-8c52-562f3e91a535%[40googlegroups.com](http://40googlegroups.com)  
> > > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc7-485a-8c52-562f3e91a535%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc7-485a-8c52-562f3e91a535%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > > > > .  
> > > > > > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > --  
> > > > > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > > > > To unsubscribe from this group and stop receiving emails from  
> > > > > > > > > > > > > > it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJ](https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJ)  
> > > > > > > > > > > > > > q8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%[40mail.gmail.com](http://40mail.gmail.com)  
> > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJq8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJq8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > > > .
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > > > > > > 
> > > > > > > > > > > > --  
> > > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > > To unsubscribe from this group and stop receiving emails from it,  
> > > > > > > > > > > > send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/c62191ea-543](https://groups.google.com/d/msgid/elasticsearch/c62191ea-543)  
> > > > > > > > > > > > b-462d-95e9-aff125c0a6f0%[40googlegroups.com](http://40googlegroups.com)  
> > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/c62191ea-543b-462d-95e9-aff125c0a6f0%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/c62191ea-543b-462d-95e9-aff125c0a6f0%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > .
> > > > > > > > > > 
> > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > 
> > > > > > > --  
> > > > > > > You received this message because you are subscribed to the Google  
> > > > > > > Groups "elasticsearch" group.  
> > > > > > > To unsubscribe from this group and stop receiving emails from it,  
> > > > > > > send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > To view this discussion on the web visit  
> > > > > > > [https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOq](https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOq)  
> > > > > > > hgOSiRhmweSR5wLs%2BJiO70\_CSRO%2BFS2zOU9VKzg%[40mail.gmail.com](http://40mail.gmail.com)  
> > > > > > > [https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOqhgOSiRhmweSR5wLs%2BJiO70\_CSRO%2BFS2zOU9VKzg%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOqhgOSiRhmweSR5wLs%2BJiO70_CSRO%2BFS2zOU9VKzg%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > > > > > .
> > > > > > > 
> > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > 
> > > > > > --  
> > > > > > You received this message because you are subscribed to the Google  
> > > > > > Groups "elasticsearch" group.  
> > > > > > To unsubscribe from this group and stop receiving emails from it,  
> > > > > > send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > To view this discussion on the web visit [https://groups.google.com/d/](https://groups.google.com/d/)  
> > > > > > msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw\_mpHc0Q866  
> > > > > > fcso\_1LZCFiyw%[40mail.gmail.com](http://40mail.gmail.com)  
> > > > > > [https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw\_mpHc0Q866fcso\_1LZCFiyw%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw_mpHc0Q866fcso_1LZCFiyw%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > > > > .
> > > > > > 
> > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > 
> > > > > --  
> > > > > You received this message because you are subscribed to the Google  
> > > > > Groups "elasticsearch" group.  
> > > > > To unsubscribe from this group and stop receiving emails from it, send  
> > > > > an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > To view this discussion on the web visit [https://groups.google.com/d/](https://groups.google.com/d/)  
> > > > > msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%  
> > > > > [40googlegroups.com](http://40googlegroups.com)  
> > > > > [https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > .
> > > 
> > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > 
> > --  
> > You received this message because you are subscribed to the Google Groups  
> > "elasticsearch" group.  
> > To unsubscribe from this group and stop receiving emails from it, send an  
> > email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
> > To view this discussion on the web visit  
> > [https://groups.google.com/d/msgid/elasticsearch/45c53e81-2c8a-40cd-aadd-15891a09e30d%40googlegroups.com](https://groups.google.com/d/msgid/elasticsearch/45c53e81-2c8a-40cd-aadd-15891a09e30d%40googlegroups.com)  
> > [https://groups.google.com/d/msgid/elasticsearch/45c53e81-2c8a-40cd-aadd-15891a09e30d%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/45c53e81-2c8a-40cd-aadd-15891a09e30d%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > .
> 
> For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
To view this discussion on the web visit [https://groups.google.com/d/msgid/elasticsearch/CAKdsXoGwULTWgvG7FZU2%2BC2YtS8Q5KYf7c8sJh6hX3Y8qWj8og%40mail.gmail.com](https://groups.google.com/d/msgid/elasticsearch/CAKdsXoGwULTWgvG7FZU2%2BC2YtS8Q5KYf7c8sJh6hX3Y8qWj8og%40mail.gmail.com).  
For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

---

<div class="post-metadata">

### Author: ![tony\_aponte](https://avatars.discourse-cdn.com/v4/letter/t/e56c9b/32.png) [@tony\_aponte](https://discuss.elastic.co/u/tony_aponte)
#### Post date: [August 29, 2014, 8:00pm UTC](https://discuss.elastic.co/t/jvm-crash-on-64-bit-sparc-with-elasticsearch-1-2-2-due-to-unaligned-memory-access/18786/26 "2014-08-29T20:00:17Z")

</div>

Thank you very much.  
Tony

On Friday, August 29, 2014 3:27:33 PM UTC-4, Jörg Prante wrote:

> Quick guide:
> 
> - install Java 7 (or Java 8), Apache Maven, and git, also ensure internet  
> connection to the Maven central repo
> 
> - clone 1.3 branch only (you could also clone the whole repo and switch to  
> the branch): git clone [GitHub - elastic/elasticsearch: Free and Open, Distributed, RESTful Search Engine](https://github.com/elasticsearch/elasticsearch.git)  
> --branch 1.3 --single-branch es-1.3
> 
> - enter folder es-1.3
> 
> - start build: mvn -DskipTests clean install
> 
> - wait a few minutes while Maven loads all dependent artifacts and  
> compiles ~3000 source files
> 
> The result will be a complete build of all binaries. In the 'target'  
> folder, after the "Build complete" message of Maven, you will see a file  
> "elasticsearch-.jar"
> 
> is something like "1.3.3-SNAPSHOT". You can copy this file into  
> your existing Elasticsearch 1.3.x installation "lib" folder. Do not forget  
> to adjust "bin/elasticsearch.in.sh" to point to the new  
> elasticsearch-.jar file in the classpath configuration (at the top  
> lines). This must be the first jar on the classpath so it can patch Lucene  
> jars.
> 
> If you have already data in the existing Elasticsearch I recommend to  
> backup everything before starting the new snapshot build - no guarantees,  
> use at your own risk.
> 
> Jörg
> 
> On Fri, Aug 29, 2014 at 7:36 PM, \<[tony....@iqor.com](mailto:tony....@iqor.com) \<javascript:\>\> wrote:
> 
> > The easiest for me is to install fresh binaries but I'm not shy about  
> > learning about Maven while I build it from source.
> > 
> > Thanks  
> > Tony
> > 
> > On Friday, August 29, 2014 11:21:34 AM UTC-4, Jörg Prante wrote:
> > 
> > > Do you want to build from source? Or do you want to install a fresh  
> > > binary?
> > > 
> > > At [jenkins.elasticsearch.org](http://jenkins.elasticsearch.org) I can not find any snapshot builds but it  
> > > may be just me.
> > > 
> > > It would be a nice add-on to provide snapshot builds for users that  
> > > eagerly await bug fixes or take a ride on the bleeding edge before the next  
> > > release arrives, without release notes etc.
> > > 
> > > Jörg
> > > 
> > > On Fri, Aug 29, 2014 at 4:29 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > 
> > > > Thanks again and sorry to bother you guys but I'm new to Github and  
> > > > don't know what do do from here. Can you point me to the right place where  
> > > > I can take the next step to put this patch on my server? I only know how  
> > > > to untar the tarball I downloaded from the main ES page.
> > > > 
> > > > Thanks.  
> > > > Tony
> > > > 
> > > > On Wednesday, August 27, 2014 1:35:06 PM UTC-4, [tony....@iqor.com](mailto:tony....@iqor.com)  
> > > > wrote:
> > > > 
> > > > > Kudos!
> > > > > 
> > > > > Tony
> > > > > 
> > > > > On Wednesday, August 27, 2014 1:16:11 PM UTC-4, Jörg Prante wrote:
> > > > > 
> > > > > > All praise should go to the fantastic Elasticsearch team who did not  
> > > > > > hesitate to test the fix immediately and replaced it with a better working  
> > > > > > solution, since the lzf-compress software is having weaknesses regarding  
> > > > > > threadsafety.
> > > > > > 
> > > > > > Jörg
> > > > > > 
> > > > > > On Wed, Aug 27, 2014 at 7:01 PM, Ivan Brusic [iv...@brusic.com](mailto:iv...@brusic.com)  
> > > > > > wrote:
> > > > > > 
> > > > > > > Amazing job. Great work.
> > > > > > > 
> > > > > > > --  
> > > > > > > Ivan
> > > > > > > 
> > > > > > > On Tue, Aug 26, 2014 at 12:41 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > > > 
> > > > > > > > I fixed the issue by setting the safe LZF encoder in LZFCompressor  
> > > > > > > > and opened a pull request
> > > > > > > > 
> > > > > > > > [Add LZF safe encoder in LZFCompressor by jprante · Pull Request #7466 · elastic/elasticsearch · GitHub](https://github.com/elasticsearch/elasticsearch/pull/7466)
> > > > > > > > 
> > > > > > > > Jörg
> > > > > > > > 
> > > > > > > > On Tue, Aug 26, 2014 at 8:17 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > > > > 
> > > > > > > > > Still broken with lzf-compress 1.0.3
> > > > > > > > > 
> > > > > > > > > [Solaris SPARC JVM 64bit crash with Java 8u11 and Elasticsearch 1.3.3-SNAPSHOT (with lzf-compress 1.0.3) · GitHub](https://gist.github.com/jprante/d2d829b497db4963aea5)
> > > > > > > > > 
> > > > > > > > > Jörg
> > > > > > > > > 
> > > > > > > > > On Tue, Aug 26, 2014 at 7:54 PM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > > > > > 
> > > > > > > > > > Thanks for the logstash mapping command. I can reproduce it now.
> > > > > > > > > > 
> > > > > > > > > > It's the LZF encoder that bails out at org.elasticsearch.common.  
> > > > > > > > > > compress.lzf.impl.UnsafeChunkEncoderBE.\_getInt
> > > > > > > > > > 
> > > > > > > > > > which uses in turn sun.misc.Unsafe.getInt
> > > > > > > > > > 
> > > > > > > > > > I have created a gist of the JVM crash file at
> > > > > > > > > > 
> > > > > > > > > > [Solaris SPARC core dump with Java 8u11 64bit and Elasticsearch 1.3.2 · GitHub](https://gist.github.com/jprante/79f4b4c0b9fd83eb1c9b)
> > > > > > > > > > 
> > > > > > > > > > There has been a fix in LZF lately [Ning · GitHub](https://github.com/ning)  
> > > > > > > > > > /compress/commit/db7f51bddc5b7beb47da77eeeab56882c650bff7
> > > > > > > > > > 
> > > > > > > > > > for version 1.0.3 which has been released recently.
> > > > > > > > > > 
> > > > > > > > > > I will build a snapshot ES version with LZF 1.0.3 and see if this  
> > > > > > > > > > works...
> > > > > > > > > > 
> > > > > > > > > > Jörg
> > > > > > > > > > 
> > > > > > > > > > On Mon, Aug 25, 2014 at 11:30 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > > > > > > > > 
> > > > > > > > > > > I captured a WireShark trace of the interaction between ES and  
> > > > > > > > > > > Logstash 1.4.1. The error occurs even before my data is sent. Can you try  
> > > > > > > > > > > to reproduce it on your testbed with this message I captured?
> > > > > > > > > > > 
> > > > > > > > > > > curl -XPUT [http://amssc103-mgmt-app2:9200/\_template/logstash](http://amssc103-mgmt-app2:9200/_template/logstash) -d  
> > > > > > > > > > > @y
> > > > > > > > > > > 
> > > > > > > > > > > Contests of file 'y":  
> > > > > > > > > > > { "template" : "logstash-_", "settings" : {  
> > > > > > > > > > > "index.refresh\_interval" : "5s" }, "mappings" : { "default" : {  
> > > > > > > > > > > "\_all" : {"enabled" : true}, "dynamic\_templates" : [ {  
> > > > > > > > > > > "string\_fields" : { "match" : "_", "match\_mapping\_type"  
> > > > > > > > > > > : "string", "mapping" : { "type" : "string", "index"  
> > > > > > > > > > > : "analyzed", "omit\_norms" : true, "fields" : {  
> > > > > > > > > > > "raw" : {"type": "string", "index" : "not\_analyzed", "ignore\_above" :  
> > > > > > > > > > > 256} } } } } ], "properties" :  
> > > > > > > > > > > { "@version": { "type": "string", "index": "not\_analyzed" },  
> > > > > > > > > > > "geoip" : { "type" : "object", "dynamic": true,  
> > > > > > > > > > > "path": "full", "properties" : {  
> > > > > > > > > > > "location" : { "type" : "geo\_point" } } } } }  
> > > > > > > > > > > }}
> > > > > > > > > > > 
> > > > > > > > > > > On Monday, August 25, 2014 3:53:18 PM UTC-4, [tony....@iqor.com](mailto:tony....@iqor.com)  
> > > > > > > > > > > wrote:
> > > > > > > > > > > 
> > > > > > > > > > > > I have no plugins installed (yet) and only changed  
> > > > > > > > > > > > "es.logger.level" to DEBUG in logging.yml.
> > > > > > > > > > > > 
> > > > > > > > > > > > elasticsearch.yml:  
> > > > > > > > > > > > cluster.name: es-AMS1Cluster  
> > > > > > > > > > > > node.name: "KYLIE1"  
> > > > > > > > > > > > node.rack: amssc2client02  
> > > > > > > > > > > > path.data: /export/home/apontet/elasticsearch/data  
> > > > > > > > > > > > path.work: /export/home/apontet/elasticsearch/work  
> > > > > > > > > > > > path.logs: /export/home/apontet/elasticsearch/logs  
> > > > > > > > > > > > network.host: \*\*\*\*\*\*\*\* \<===== sanitized line; file  
> > > > > > > > > > > > contains actual server IP  
> > > > > > > > > > > > discovery.zen.ping.multicast.enabled: false  
> > > > > > > > > > > > discovery.zen.ping.unicast.hosts: ["s1", "s2", "s3", "s5" ,  
> > > > > > > > > > > > "s6", "s7"] \<===== Also sanitized
> > > > > > > > > > > > 
> > > > > > > > > > > > Thanks,  
> > > > > > > > > > > > Tony
> > > > > > > > > > > > 
> > > > > > > > > > > > On Saturday, August 23, 2014 6:29:40 AM UTC-4, Jörg Prante  
> > > > > > > > > > > > wrote:
> > > > > > > > > > > > 
> > > > > > > > > > > > > I tested a simple "Hello World" document on Elasticsearch  
> > > > > > > > > > > > > 1.3.2 with Oracle JDK 1.7.0\_17 64-bit Server VM, Sparc Solaris 10, default  
> > > > > > > > > > > > > settings.
> > > > > > > > > > > > > 
> > > > > > > > > > > > > No issues.
> > > > > > > > > > > > > 
> > > > > > > > > > > > > So I would like to know more about the settings in  
> > > > > > > > > > > > > elasticsearch.yml, the mappings, and the installed plugins.
> > > > > > > > > > > > > 
> > > > > > > > > > > > > Jörg
> > > > > > > > > > > > > 
> > > > > > > > > > > > > On Sat, Aug 23, 2014 at 11:25 AM, [joerg...@gmail.com](mailto:joerg...@gmail.com) \<  
> > > > > > > > > > > > > [joerg...@gmail.com](mailto:joerg...@gmail.com)\> wrote:
> > > > > > > > > > > > > 
> > > > > > > > > > > > > > I have some Solaris 10 Sparc V440/V445 servers available and  
> > > > > > > > > > > > > > can try to reproduce over the weekend.
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > Jörg
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > On Sat, Aug 23, 2014 at 4:37 AM, Robert Muir \<  
> > > > > > > > > > > > > > [rober...@elasticsearch.com](mailto:rober...@elasticsearch.com)\> wrote:
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > How big is it? Maybe i can have it anyway? I pulled two  
> > > > > > > > > > > > > > > ancient ultrasparcs out of my closet to try to debug your issue, but  
> > > > > > > > > > > > > > > unfortunately they are a pita to work with (dead nvram battery on both,  
> > > > > > > > > > > > > > > zeroed mac address, etc.) Id still love to get to the bottom of this.  
> > > > > > > > > > > > > > > On Aug 22, 2014 3:59 PM, [tony....@iqor.com](mailto:tony....@iqor.com) wrote:
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > Hi Adrien,  
> > > > > > > > > > > > > > > > It's a bunch of garbled binary data, basically a dump of  
> > > > > > > > > > > > > > > > the process image.  
> > > > > > > > > > > > > > > > Tony
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > On Thursday, August 21, 2014 6:36:12 PM UTC-4, Adrien Grand  
> > > > > > > > > > > > > > > > wrote:
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Hi Tony,
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > Do you have more information in the core dump file? (cf.  
> > > > > > > > > > > > > > > > > the "Core dump written" line that you pasted)
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > On Thu, Aug 21, 2014 at 7:53 PM, [tony....@iqor.com](mailto:tony....@iqor.com)  
> > > > > > > > > > > > > > > > > wrote:
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > Hello,  
> > > > > > > > > > > > > > > > > > I installed ES 1.3.2 on a spare Solaris 11/ T4-4 SPARC  
> > > > > > > > > > > > > > > > > > server to scale out of small x86 machine. I get a similar exception  
> > > > > > > > > > > > > > > > > > running ES with JAVA\_OPTS=-d64. When Logstash 1.4.1 sends the first  
> > > > > > > > > > > > > > > > > > message I get the error below on the ES process:
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # A fatal error has been detected by the Java Runtime
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > Environment:
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # SIGBUS (0xa) at pc=0xffffffff7a9a3d8c, pid=14473,
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > tid=209
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # JRE version: 7.0\_25-b15
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # Java VM: Java HotSpot(TM) 64-Bit Server VM (23.25-b01
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > mixed mode solaris-sparc compressed oops)
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # Problematic frame:
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # V [libjvm.so+0xba3d8c] Unsafe\_GetInt+0x158
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # Core dump written. Default location:
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > /export/home/elasticsearch/elasticsearch-1.3.2/core or  
> > > > > > > > > > > > > > > > > > core.14473
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # If you would like to submit a bug report, please visit:
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # [http://bugreport.sun.com/bugreport/crash.jsp](http://bugreport.sun.com/bugreport/crash.jsp)
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > --------------- T H R E A D ---------------
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > Current thread (0x0000000107078000): JavaThread  
> > > > > > > > > > > > > > > > > > "elasticsearch[KYLIE1][http\_server\_worker][T#17]{New I/O  
> > > > > > > > > > > > > > > > > > worker #147}" daemon [\_thread\_in\_vm, id=209, stack(0xffffffff5b800000,  
> > > > > > > > > > > > > > > > > > 0xffffffff5b840000)]
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > siginfo:si\_signo=SIGBUS: si\_errno=0, si\_code=1  
> > > > > > > > > > > > > > > > > > (BUS\_ADRALN), si\_addr=0x0000000709cc09e7
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > I can run ES using 32bit java but have to shrink  
> > > > > > > > > > > > > > > > > > ES\_HEAPS\_SIZE more than I want to. Any assistance would be appreciated.
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > Regards,  
> > > > > > > > > > > > > > > > > > Tony
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > On Tuesday, July 22, 2014 5:43:28 AM UTC-4, David Roberts  
> > > > > > > > > > > > > > > > > > wrote:
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > Hello,
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > After upgrading from Elasticsearch 1.0.1 to 1.2.2 I'm  
> > > > > > > > > > > > > > > > > > > getting JVM core dumps on Solaris 10 on SPARC.
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > # A fatal error has been detected by the Java Runtime
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > Environment:
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > # SIGBUS (0xa) at pc=0xffffffff7e452d78, pid=15483,
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > tid=263
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > # 
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > # JRE version: Java(TM) SE Runtime Environment
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > (7.0\_55-b13) (build 1.7.0\_55-b13)
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > # Java VM: Java HotSpot(TM) 64-Bit Server VM (24.55-b03
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > mixed mode solaris-sparc compressed oops)
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > # Problematic frame:
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > # V [libjvm.so+0xc52d78] Unsafe\_GetLong+0x158
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > I'm pretty sure the problem here is that Elasticsearch  
> > > > > > > > > > > > > > > > > > > is making increasing use of "unsafe" functions in Java, presumably to speed  
> > > > > > > > > > > > > > > > > > > things up, and some CPUs are more picky than others about memory  
> > > > > > > > > > > > > > > > > > > alignment. In particular, x86 will tolerate misaligned memory access  
> > > > > > > > > > > > > > > > > > > whereas SPARC won't.
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > Somebody has tried to report this to Oracle in the past  
> > > > > > > > > > > > > > > > > > > and (understandably) Oracle has said that if you're going to use unsafe  
> > > > > > > > > > > > > > > > > > > functions you need to understand what you're doing:  
> > > > > > > > > > > > > > > > > > > [http://bugs.java.com/bugdatabase/view\_bug.do?bug\_](http://bugs.java.com/bugdatabase/view_bug.do?bug_)  
> > > > > > > > > > > > > > > > > > > id=8021574
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > A quick grep through the code of the two versions of  
> > > > > > > > > > > > > > > > > > > Elasticsearch shows that the new use of "unsafe" memory access functions is  
> > > > > > > > > > > > > > > > > > > in the BytesReference, MurmurHash3 and HyperLogLogPlusPlus classes:
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > bash-3.2$ git checkout v1.0.1  
> > > > > > > > > > > > > > > > > > > Checking out files: 100% (2904/2904), done.
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > bash-3.2$ find . -name '\*.java' | xargs grep UnsafeUtils  
> > > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/  
> > > > > > > > > > > > > > > > > > > UnsafeUtils.java:public enum UnsafeUtils {  
> > > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > > > > bucket/BytesRefHash.java: if (id == -1L ||  
> > > > > > > > > > > > > > > > > > > UnsafeUtils.equals(key, get(id, spare))) {  
> > > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > > > > bucket/BytesRefHash.java: } else if  
> > > > > > > > > > > > > > > > > > > (UnsafeUtils.equals(key, get(curId, spare))) {  
> > > > > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java:import  
> > > > > > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java:  
> > > > > > > > > > > > > > > > > > > return UnsafeUtils.equals(b1, b2);
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > bash-3.2$ git checkout v1.2.2  
> > > > > > > > > > > > > > > > > > > Checking out files: 100% (2220/2220), done.
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > bash-3.2$ find . -name '\*.java' | xargs grep UnsafeUtils  
> > > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/bytes/  
> > > > > > > > > > > > > > > > > > > BytesReference.java:import  
> > > > > > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/bytes/  
> > > > > > > > > > > > > > > > > > > BytesReference.java: return  
> > > > > > > > > > > > > > > > > > > UnsafeUtils.equals(a.array(), a.arrayOffset(), b.array(), b.arrayOffset(),  
> > > > > > > > > > > > > > > > > > > a.length());  
> > > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/  
> > > > > > > > > > > > > > > > > > > MurmurHash3.java:import org.elasticsearch.common.util.  
> > > > > > > > > > > > > > > > > > > UnsafeUtils;  
> > > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/  
> > > > > > > > > > > > > > > > > > > MurmurHash3.java: return  
> > > > > > > > > > > > > > > > > > > UnsafeUtils.readLongLE(key, blockOffset);  
> > > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/  
> > > > > > > > > > > > > > > > > > > MurmurHash3.java: long k1 =  
> > > > > > > > > > > > > > > > > > > UnsafeUtils.readLongLE(key, i);  
> > > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/hash/  
> > > > > > > > > > > > > > > > > > > MurmurHash3.java: long k2 =  
> > > > > > > > > > > > > > > > > > > UnsafeUtils.readLongLE(key, i + 8);  
> > > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/  
> > > > > > > > > > > > > > > > > > > BytesRefHash.java: if (id == -1L ||  
> > > > > > > > > > > > > > > > > > > UnsafeUtils.equals(key, get(id, spare))) {  
> > > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/  
> > > > > > > > > > > > > > > > > > > BytesRefHash.java: } else if  
> > > > > > > > > > > > > > > > > > > (UnsafeUtils.equals(key, get(curId, spare))) {  
> > > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/common/util/  
> > > > > > > > > > > > > > > > > > > UnsafeUtils.java:public enum UnsafeUtils {  
> > > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > > > > metrics/cardinality/HyperLogLogPlusPlus.java:import  
> > > > > > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > > > > ./src/main/java/org/elasticsearch/search/aggregations/  
> > > > > > > > > > > > > > > > > > > metrics/cardinality/HyperLogLogPlusPlus.java:  
> > > > > > > > > > > > > > > > > > > return UnsafeUtils.readIntLE(readSpare.bytes,  
> > > > > > > > > > > > > > > > > > > readSpare.offset);  
> > > > > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java:import  
> > > > > > > > > > > > > > > > > > > org.elasticsearch.common.util.UnsafeUtils;  
> > > > > > > > > > > > > > > > > > > ./src/test/java/org/elasticsearch/benchmark/common/util/  
> > > > > > > > > > > > > > > > > > > BytesRefComparisonsBenchmark.java:  
> > > > > > > > > > > > > > > > > > > return UnsafeUtils.equals(b1, b2);
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > Presumably one of these three new uses is what is  
> > > > > > > > > > > > > > > > > > > causing the JVM SIGBUS error I'm seeing.
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > A quick look at the MurmurHash3 class shows that the  
> > > > > > > > > > > > > > > > > > > hash128 method accepts an arbitrary offset and passes it to an unsafe  
> > > > > > > > > > > > > > > > > > > function with no check that it's a multiple of 8:
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > > > > public static Hash128 hash128(byte[] key, int 
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > offset, int length, long seed, Hash128 hash) {  
> > > > > > > > > > > > > > > > > > > long h1 = seed;  
> > > > > > > > > > > > > > > > > > > long h2 = seed;
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > > > > if (length >= 16) {
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > final int len16 = length & 0xFFFFFFF0; // 
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > ```
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > higher multiple of 16 that is lower than or equal to length  
> > > > > > > > > > > > > > > > > > > final int end = offset + len16;  
> > > > > > > > > > > > > > > > > > > for (int i = offset; i \< end; i += 16) {  
> > > > > > > > > > > > > > > > > > > long k1 = UnsafeUtils.readLongLE(key, i);  
> > > > > > > > > > > > > > > > > > > long k2 = UnsafeUtils.readLongLE(key, i
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > - 8);
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > This is a recipe for generating JVM core dumps on  
> > > > > > > > > > > > > > > > > > > architectures such as SPARC, Itanium and PowerPC that don't support  
> > > > > > > > > > > > > > > > > > > unaligned 64 bit memory access.
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > Does Elasticsearch have any policy for support of  
> > > > > > > > > > > > > > > > > > > hardware other than x86? If not, I don't think many people would care but  
> > > > > > > > > > > > > > > > > > > you really ought to clearly say so on your platform support page. If you  
> > > > > > > > > > > > > > > > > > > do intend to support non-x86 architectures then you need to be much more  
> > > > > > > > > > > > > > > > > > > careful about the use of unsafe memory accesses.
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > Regards,
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > David
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > --  
> > > > > > > > > > > > > > > > > > You received this message because you are subscribed to  
> > > > > > > > > > > > > > > > > > the Google Groups "elasticsearch" group.  
> > > > > > > > > > > > > > > > > > To unsubscribe from this group and stop receiving emails  
> > > > > > > > > > > > > > > > > > from it, send an email to elasticsearc...@googlegroups.c  
> > > > > > > > > > > > > > > > > > om.  
> > > > > > > > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-](https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-)  
> > > > > > > > > > > > > > > > > > b63e-4c2e-87c3-029fc58449fc%[40googlegroups.com](http://40googlegroups.com)  
> > > > > > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-b63e-4c2e-87c3-029fc58449fc%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/eb7f4c23-b63e-4c2e-87c3-029fc58449fc%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > > > > > > > .
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > For more options, visit [https://groups.google.com/d/op](https://groups.google.com/d/op)  
> > > > > > > > > > > > > > > > > > tout.
> > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > --  
> > > > > > > > > > > > > > > > > Adrien Grand
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > --  
> > > > > > > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > > > > > > To unsubscribe from this group and stop receiving emails  
> > > > > > > > > > > > > > > > from it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/12aa33de-](https://groups.google.com/d/msgid/elasticsearch/12aa33de-)  
> > > > > > > > > > > > > > > > ccc7-485a-8c52-562f3e91a535%[40googlegroups.com](http://40googlegroups.com)  
> > > > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc7-485a-8c52-562f3e91a535%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/12aa33de-ccc7-485a-8c52-562f3e91a535%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > > > > > .  
> > > > > > > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > --  
> > > > > > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > > > > > To unsubscribe from this group and stop receiving emails  
> > > > > > > > > > > > > > > from it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJ](https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJ)  
> > > > > > > > > > > > > > > q8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%[40mail.gmail.com](http://40mail.gmail.com)  
> > > > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJq8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CAMUKNZXOKeJq8Datx2KY7cSfJXDH1YGDNmQjNWDQ2jci%3DfN31Q%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > > > > .
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > > > > > > > 
> > > > > > > > > > > > > --  
> > > > > > > > > > > > > You received this message because you are subscribed to the  
> > > > > > > > > > > > > Google Groups "elasticsearch" group.  
> > > > > > > > > > > > > To unsubscribe from this group and stop receiving emails from  
> > > > > > > > > > > > > it, send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > > > > > > To view this discussion on the web visit  
> > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/c62191ea-543](https://groups.google.com/d/msgid/elasticsearch/c62191ea-543)  
> > > > > > > > > > > > > b-462d-95e9-aff125c0a6f0%[40googlegroups.com](http://40googlegroups.com)  
> > > > > > > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/c62191ea-543b-462d-95e9-aff125c0a6f0%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/c62191ea-543b-462d-95e9-aff125c0a6f0%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > > > > > > > > .
> > > > > > > > > > > 
> > > > > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > > 
> > > > > > > > --  
> > > > > > > > You received this message because you are subscribed to the Google  
> > > > > > > > Groups "elasticsearch" group.  
> > > > > > > > To unsubscribe from this group and stop receiving emails from it,  
> > > > > > > > send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > > To view this discussion on the web visit  
> > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOq](https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOq)  
> > > > > > > > hgOSiRhmweSR5wLs%2BJiO70\_CSRO%2BFS2zOU9VKzg%[40mail.gmail.com](http://40mail.gmail.com)  
> > > > > > > > [https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOqhgOSiRhmweSR5wLs%2BJiO70\_CSRO%2BFS2zOU9VKzg%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CAKdsXoHrOOqhgOSiRhmweSR5wLs%2BJiO70_CSRO%2BFS2zOU9VKzg%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > > > > > > .
> > > > > > > > 
> > > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > > 
> > > > > > > --  
> > > > > > > You received this message because you are subscribed to the Google  
> > > > > > > Groups "elasticsearch" group.  
> > > > > > > To unsubscribe from this group and stop receiving emails from it,  
> > > > > > > send an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > > To view this discussion on the web visit  
> > > > > > > [https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAvC](https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAvC)  
> > > > > > > oJwN8tSJXa8%3DZHMDYw\_mpHc0Q866fcso\_1LZCFiyw%[40mail.gmail.com](http://40mail.gmail.com)  
> > > > > > > [https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw\_mpHc0Q866fcso\_1LZCFiyw%40mail.gmail.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQAvCoJwN8tSJXa8%3DZHMDYw_mpHc0Q866fcso_1LZCFiyw%40mail.gmail.com?utm_medium=email&utm_source=footer)  
> > > > > > > .
> > > > > > > 
> > > > > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > > > > 
> > > > > > --  
> > > > > > You received this message because you are subscribed to the Google  
> > > > > > Groups "elasticsearch" group.  
> > > > > > To unsubscribe from this group and stop receiving emails from it, send  
> > > > > > an email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com).  
> > > > > > To view this discussion on the web visit [https://groups.google.com/d/](https://groups.google.com/d/)  
> > > > > > msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%  
> > > > > > [40googlegroups.com](http://40googlegroups.com)  
> > > > > > [https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/205b2250-f6ee-4141-a49a-ff22aade0fe9%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > > > > .
> > > > 
> > > > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).
> > > 
> > > --  
> > > You received this message because you are subscribed to the Google Groups  
> > > "elasticsearch" group.  
> > > To unsubscribe from this group and stop receiving emails from it, send an  
> > > email to [elasticsearc...@googlegroups.com](mailto:elasticsearc...@googlegroups.com) \<javascript:\>.  
> > > To view this discussion on the web visit  
> > > [https://groups.google.com/d/msgid/elasticsearch/45c53e81-2c8a-40cd-aadd-15891a09e30d%40googlegroups.com](https://groups.google.com/d/msgid/elasticsearch/45c53e81-2c8a-40cd-aadd-15891a09e30d%40googlegroups.com)  
> > > [https://groups.google.com/d/msgid/elasticsearch/45c53e81-2c8a-40cd-aadd-15891a09e30d%40googlegroups.com?utm\_medium=email&utm\_source=footer](https://groups.google.com/d/msgid/elasticsearch/45c53e81-2c8a-40cd-aadd-15891a09e30d%40googlegroups.com?utm_medium=email&utm_source=footer)  
> > > .
> > 
> > For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
To view this discussion on the web visit [https://groups.google.com/d/msgid/elasticsearch/cd24c022-1b65-4857-98da-a90415164663%40googlegroups.com](https://groups.google.com/d/msgid/elasticsearch/cd24c022-1b65-4857-98da-a90415164663%40googlegroups.com).  
For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

---

<div class="post-metadata">

### Author: ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)
#### Post date: [July 6, 2017, 1:05am UTC](https://discuss.elastic.co/t/jvm-crash-on-64-bit-sparc-with-elasticsearch-1-2-2-due-to-unaligned-memory-access/18786/27 "2017-07-06T01:05:24Z")

</div>



[Previous page](https://discuss.elastic.co/t/jvm-crash-on-64-bit-sparc-with-elasticsearch-1-2-2-due-to-unaligned-memory-access/18786.md?page=1)
