You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Mike Drob (JIRA)" <ji...@apache.org> on 2018/06/07 22:57:00 UTC
[jira] [Commented] (HBASE-13583) AOT compile our JRuby
[ https://issues.apache.org/jira/browse/HBASE-13583?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16505430#comment-16505430 ]
Mike Drob commented on HBASE-13583:
-----------------------------------
Running {{java -jar ~/.m2/repository/org/jruby/jruby-complete/9.1.13.0/jruby-complete-9.1.13.0.jar -S jrubyc hbase-shell/src/main/ruby -t /tmp/}} worked great, so I have some hope here.
Patch in current state fails due to arcane error:
{noformat}
[INFO] NameError: uninitialized constant Java::OrgObjectwebAsm::Opcodes::V1_7
[INFO] Did you mean? Java::OrgObjectwebAsm::Opcodes::V1_4
[INFO] Java::OrgObjectwebAsm::Opcodes::V1_5
[INFO] Java::OrgObjectwebAsm::Opcodes::V1_6
[INFO] Java::OrgObjectwebAsm::Opcodes::V1_1
[INFO] Java::OrgObjectwebAsm::Opcodes::V1_2
[INFO] Java::OrgObjectwebAsm::Opcodes::V1_3
[INFO] const_missing at org/jruby/RubyModule.java:3343
[INFO] block in compile_files_with_options at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/jruby/compiler.rb:171
[INFO] block in compile_files_with_options at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/jruby/compiler.rb:291
[INFO] each at org/jruby/RubyArray.java:1734
[INFO] block in compile_files_with_options at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/jruby/compiler.rb:290
[INFO] each at org/jruby/RubyArray.java:1734
[INFO] compile_files_with_options at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/jruby/compiler.rb:281
[INFO] compile_argv at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/jruby/compiler.rb:94
[INFO] <main> at -e:3
{noformat}
Not sure what it expects from us, but in accordance with Yonik's Law of Patches, here it is.
> AOT compile our JRuby
> ---------------------
>
> Key: HBASE-13583
> URL: https://issues.apache.org/jira/browse/HBASE-13583
> Project: HBase
> Issue Type: Improvement
> Components: build, scripts, shell
> Reporter: Nick Dimiduk
> Assignee: Mike Drob
> Priority: Major
> Attachments: HBASE-13583.patch
>
>
> Our Jruby code seems to not keep up well with Java changes. We should investigate adding a compilation step for our shell and the rb scripts in bin to ensure they're calling methods that exist on classes that exist. This looks like as good a starting point as any: https://github.com/jruby/jruby/wiki/GeneratingJavaClasses
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)