Bug 956928

Summary: Set up snappy-java build in brew
Product: [JBoss] JBoss Operations Network Reporter: John Sanda <jsanda>
Component: Build SystemAssignee: Stefan Negrea <snegrea>
Status: CLOSED WONTFIX QA Contact: Mike Foley <mfoley>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: JON 3.2CC: hrupp, snegrea
Target Milestone: ---   
Target Release: JON 3.2.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-08-09 14:17:57 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 951619    

Description John Sanda 2013-04-26 02:51:07 UTC
Description of problem:
Cassandra has a dependency on the snappy-java library. We are using a patched version to work around some class loading issues. Setting up the build may be rather involved as will be similar to what has done for Sigar. The snappy-java library packages a native library that it accesses through JNI. We may have to build that library for all JON-supported platforms. 

We might be able to get by without building the native snappy code. I say this because is fully functional even running on a platform where the native code cannot be loaded for whatever reason. But we will have to build the Java code as it is a required runtime dependency for Cassandra. Cassandra will fail to start without snappy-java on the classpath.

Instructions for building snappy-java can be found at https://github.com/xerial/snappy-java.

The patched version we are using is https://github.com/jsanda/snappy-java/tree/1.0.5-M3.


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 John Sanda 2013-04-28 20:46:53 UTC
Some additional info...

Cassandra uses compression in several places. The SSTable files on disk are compressed by default. Compression can be used with gossip. And the CQL binary protocol supports compression as well. 

By default sstable compression uses snappy. Cassandra also provides out of the box support for Java zip and LZ4 compression using https://github.com/jpountz/lz4-java. Compression can also be disabled for SSTables, gossip, and the CQL transport layer.

Comment 2 Heiko W. Rupp 2013-08-09 14:17:57 UTC
Not used in RHQ 4.9 / JON 3.2