hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Enoch Hsu (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HBASE-11259) Compression.java different compressions load system classpath differently causing errors
Date Tue, 27 May 2014 22:28:01 GMT
Enoch Hsu created HBASE-11259:
---------------------------------

             Summary: Compression.java different compressions load system classpath differently
causing errors
                 Key: HBASE-11259
                 URL: https://issues.apache.org/jira/browse/HBASE-11259
             Project: HBase
          Issue Type: Improvement
    Affects Versions: 0.99.0
            Reporter: Enoch Hsu
            Assignee: Enoch Hsu
            Priority: Minor
             Fix For: 0.99.0


I stumbled upon this issue when testing Snappy compression on hbase tables with a webserver.
On the webserver the system classpath of the server JVM did not include the path to hadoop-common.jar
and since it is hardcoded to only retrieve the system classpath it ran into a NoClassDefFoundException
using hte following call ClassLoader.getSystemClassLoader()
However LZ4 compression works using this private method getClassLoaderForCodec() which attempts
to load the threads classpath first and the system classpath last.

I propose to change all the  ClassLoader.getSystemClassLoader() calls to getClassLoaderForCodec()
to allow for consistent behavior in loading compression classes and to also make it easier
for users to make sure they do not run into RuntimeExceptions.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message