Solandra icon indicating copy to clipboard operation
Solandra copied to clipboard

Runtime Exception: Could not initialize class org.xerial.snappy.Snappy

Open blinder opened this issue 14 years ago • 5 comments

Something very odd, when trying to write to solandra. We get this exception:

Could not initialize class org.xerial.snappy.Snappy java.lang.NoClassDefFoundError: Could not initialize class
org.xerial.snappy.Snappy at lucandra.CassandraUtils.compress(CassandraUtils.java:771) at lucandra.IndexWriter.toBytesUsingThrift(IndexWriter.java:620) at lucandra.IndexWriter.addDocument(IndexWriter.java:328) at solandra.SolandraIndexWriter.addDoc(SolandraIndexWriter.java:265) at org.apache.solr.update.processor.RunUpdateProcessor.processAdd(RunUpdateProcessorFactory.java:61) at org.apache.solr.handler.XMLLoader.processUpdate(XMLLoader.java:147) at org.apache.solr.handler.XMLLoader.load(XMLLoader.java:77) at org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:67) at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:129) at org.apache.solr.core.SolrCore.execute(SolrCore.java:1368) at org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:356) at solandra.SolandraDispatchFilter.execute(SolandraDispatchFilter.java:171) at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:252) at solandra.SolandraDispatchFilter.doFilter(SolandraDispatchFilter.java:137) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:326) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:536) at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:930) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:834) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:405) at org.mortbay.jetty

it doesn't appear to do this on reads (querying)

Also the snappy-java-1.0.3-rc2.jar is in cassandra's lib directory.

blinder avatar Oct 10 '11 22:10 blinder

further clarifications, using the 0.7 branch of solandra

blinder avatar Oct 10 '11 22:10 blinder

What platform?

On Oct 10, 2011, at 6:08 PM, [email protected] wrote:

Something very odd, when trying to write to solandra. We get this exception:

Could not initialize class org.xerial.snappy.Snappy java.lang.NoClassDefFoundError: Could not initialize class
org.xerial.snappy.Snappy at lucandra.CassandraUtils.compress(CassandraUtils.java:771) at lucandra.IndexWriter.toBytesUsingThrift(IndexWriter.java:620) at lucandra.IndexWriter.addDocument(IndexWriter.java:328) at solandra.SolandraIndexWriter.addDoc(SolandraIndexWriter.java:265) at org.apache.solr.update.processor.RunUpdateProcessor.processAdd(RunUpdateProcessorFactory.java:61) at org.apache.solr.handler.XMLLoader.processUpdate(XMLLoader.java:147) at org.apache.solr.handler.XMLLoader.load(XMLLoader.java:77) at org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:67) at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:129) at org.apache.solr.core.SolrCore.execute(SolrCore.java:1368) at org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:356) at solandra.SolandraDispatchFilter.execute(SolandraDispatchFilter.java:171) at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:252) at solandra.SolandraDispatchFilter.doFilter(SolandraDispatchFilter.java:137) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:326) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:536) at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:930) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:834) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:405) at org.mortbay.jetty

it doesn't appear to do this on reads (querying)

Also the snappy-java-1.0.3-rc2.jar is in cassandra's lib directory.

Reply to this email directly or view it on GitHub: https://github.com/tjake/Solandra/issues/137

tjake avatar Oct 10 '11 22:10 tjake

uname -a 2.6.18-194.17.1.el5xen #1 SMP Wed Sep 29 13:30:21 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux

blinder avatar Oct 10 '11 23:10 blinder

I had the same issue and discovered that I was using Java 1.7. 1.6 is required.

gt9000 avatar Nov 28 '11 22:11 gt9000

Ran into the same issue using Java 1.7 (build 1.7.0_04-ea-b18) on OS X 10.7. Tried to upgrade to snappy 1.0.4.1 and add "-Dorg.xerial.snappy.tempdir=/tmp" as JVM option, as described on the Cassandra troubleshooting page. But the only solution for me now seems to set "solandra.compression" to false in conf/solandra.properties.

cwesdorp avatar Apr 14 '12 17:04 cwesdorp