hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sean Busbey (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-15199) Move jruby jar so only on hbase-shell module classpath; currently globally available
Date Thu, 04 May 2017 23:41:04 GMT

    [ https://issues.apache.org/jira/browse/HBASE-15199?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997598#comment-15997598

Sean Busbey commented on HBASE-15199:

JRUBY_HOME needs to be jruby install, not just a location that includes a renamed jruby-complete
jar. jruby.jar that it looks for isn't meant to be the whole shebang (note how the shell sets
the jruby support files to look in JRUBY_HOME/lib, that's where it expects to find e.g. the
ruby support files that your invocation is complaining about).

Downloads busbey$ curl -O https://s3.amazonaws.com/jruby.org/downloads/1.6.8/jruby-bin-1.6.8.tar.gz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 14.9M  100 14.9M    0     0  3960k      0  0:00:03  0:00:03 --:--:-- 3960k
Downloads busbey$ tar xzf jruby-bin-1.6.8.tar.gz
Downloads busbey$ cd hbase-2.0.0-SNAPSHOT
hbase-2.0.0-SNAPSHOT busbey$ JRUBY_HOME=~/Downloads/jruby-1.6.8 ./bin/hbase shell
2017-05-04 18:37:26,740 WARN  [main] util.NativeCodeLoader: Unable to load native-hadoop library
for your platform... using builtin-java classes where applicable
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/Users/busbey/tmp_projects/hbase/hbase-assembly/target/hbase-2.0.0-SNAPSHOT/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/local/Cellar/hadoop/2.7.3/libexec/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
HBase Shell
Use "help" to get list of supported commands.
Use "exit" to quit this interactive shell.
Version 2.0.0-SNAPSHOT, r01af27061e97dd82de79f6900189c868f8919a2c, Thu May  4 18:22:39 CDT
Took 0.0440 seconds                                                                      
1.8.7-p357 :001 > exit

> Move jruby jar so only on hbase-shell module classpath; currently globally available
> ------------------------------------------------------------------------------------
>                 Key: HBASE-15199
>                 URL: https://issues.apache.org/jira/browse/HBASE-15199
>             Project: HBase
>          Issue Type: Task
>          Components: dependencies, jruby, shell
>            Reporter: stack
>            Assignee: Xiang Li
>            Priority: Critical
>             Fix For: 2.0.0
>         Attachments: 15199.txt, HBASE-15199.master.001.patch, HBASE-15199.master.002.patch,
> A suggestion that came up out of internal issue (filed by Mr Jan Van Besien) was to move
the scope of the jruby include down so it is only a dependency for the hbase-shell. jruby
jar brings in a bunch of dependencies (joda time for example) which can clash with the includes
of others. Our Sean suggests that could be good to shut down exploit possibilities if jruby
was not globally available. Only downside I can think is that it may no longer be available
to our bin/*rb scripts if we move the jar but perhaps these can be changed so they can find
the ruby jar in new location.

This message was sent by Atlassian JIRA

View raw message