Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

java.lang.IllegalAccessException: no such method: rubyjit.<name>Serializer$$_fast_attributes #1801

Closed
mv288 opened this issue Jul 8, 2014 · 2 comments

Comments

@mv288
Copy link

mv288 commented Jul 8, 2014

Seeing this error quite frequently.
Jruby 1.7.13
Ubuntu 14.
Sun Java 8 _05

ps -ef command for the process:

java -Xmx786m -Xss2048k -Djffi.boot.library.path=/home/ubuntu/server/tools/jruby/lib/jni -Xmn128m -server -Xbootclasspath/a:/home/ubuntu/server/tools/jruby/lib/jruby.jar -classpath : -Djruby.home=/home/ubuntu/server/tools/jruby -Djruby.lib=/home/ubuntu/server/tools/jruby/lib -Djruby.script=jruby -Djruby.shell=/bin/sh org.jruby.Main bin/rails s -p4005 -e production

Any idea what is causing that error infrequently.

Java::JavaLang::RuntimeException (com.headius.invokebinder.InvalidTransformException: java.lang.IllegalAccessException: no such method: rubyjit.ContactSerializer$$fast_attributes_a0671ee9e02931c7660594220ffed4d4fc58cad5681842940.__file_(ContactSerializer$$fast_attributes_a0671ee9e02931c7660594220ffed4d4fc58cad5681842940,ThreadContext,IRubyObject,Block)IRubyObject/invokeStatic):
org.jruby.runtime.invokedynamic.InvocationLinker.createRubyHandle(InvocationLinker.java:1689)
org.jruby.runtime.invokedynamic.InvocationLinker.access$900(InvocationLinker.java:75)
org.jruby.runtime.invokedynamic.InvocationLinker$RubyCallGenerator.generate(InvocationLinker.java:715)
org.jruby.runtime.invokedynamic.InvocationLinker.tryDispatchDirect(InvocationLinker.java:765)
org.jruby.runtime.invokedynamic.InvocationLinker.getTarget(InvocationLinker.java:775)
org.jruby.runtime.invokedynamic.InvocationLinker.invocationFallback(InvocationLinker.java:137)
rubyjit.ActiveModel::Serializer$$attributes_dbeb427ba2b0518d676c0a687aeb474a438bbc8b681842940.chained_0_rescue_1$RUBY$SYNTHETIC__file_(active_model_serializers (0.8.1) lib/active_model/serializer.rb:454)
rubyjit.ActiveModel::Serializer$$attributes_dbeb427ba2b0518d676c0a687aeb474a438bbc8b681842940.file(active_model_serializers (0.8.1) lib/active_model/serializer.rb)
rubyjit.ActiveModel::Serializer$$serializable_hash_77c90db1574839863dc0d7ab15cb761d318d3fad681842940.__file_(active_model_serializers (0.8.1) lib/active_model/serializer.rb:478)
rubyjit.ActiveModel::Serializer$$serializable_hash_15164681ef3759650116133c60c86faa4d0da16f681842940.file(active_model_serializers (0.8.1) lib/active_model/serializer.rb:360)
rubyjit.ActiveModel::ArraySerializer$$serializable_array_3e75f1b3d701c37c0dd6c09012f195834f37a85e681842940.block_0$RUBY$__file_(active_model_serializers (0.8.1) lib/active_model/array_serializer.rb:89)
rubyjit$ActiveModel::ArraySerializer$$serializable_array_3e75f1b3d701c37c0dd6c09012f195834f37a85e681842940$block_0$RUBY$__file_.call(rubyjit$ActiveModel::ArraySerializer$$serializable_array_3e75f1b3d701c37c0dd6c09012f195834f37a85e681842940$block_0$RUBY$__file_)
org.jruby.runtime.CompiledBlock19.yield(CompiledBlock19.java:135)
org.jruby.runtime.Block.yield(Block.java:142)
org.jruby.RubyArray.collect(RubyArray.java:2399)
org.jruby.RubyArray.map19(RubyArray.java:2412)
org.jruby.RubyArray$INVOKER$i$0$0$map19.call(RubyArray$INVOKER$i$0$0$map19.gen)
org.jruby.internal.runtime.methods.JavaMethod$JavaMethodZeroBlock.call(JavaMethod.java:458)
@perlun
Copy link
Contributor

perlun commented Nov 25, 2014

This seems very similar to what I was seeing today, for this method:

rubyjit.BSON::BSON_RUBY$$to_utf8_binary_efb477ea37ea3d3001dd168f8531884e021f7f0f116211441.__file__(BSON::BSON_RUBY$$to_utf8_binary_efb477ea37ea3d3001dd168f8531884e021f7f0f116211441,ThreadContext,IRubyObject,IRubyObject,Block)IRubyObject/invokeStatic

Using JRE8u20 on Windows/x64. Since this hit us very badly in a customer production environment, in combination with an (unrelated, hopefully) EXCEPTION_ACCESS_VIOLATION, we are downgrading to JRE7 again.

The weird thing is this: this only happened on one of the servers, after a restart of the JRuby/Java process (there are three servers running in a load-balanced setup in this case). The others worked perfectly, even they were also restarted at the same time. (!)

Needless to say, the systems are set up identically, except for maybe some Windows (2012R2) patch. But I really hope that's not the cause here...

Unfortunately, this is quite all I've got at the moment. 😢

@enebo
Copy link
Member

enebo commented May 17, 2017

1.7.x is EOL and this will not get fixed. Marking WONTFIX

@enebo enebo closed this as completed May 17, 2017
@enebo enebo added this to the Won't Fix milestone May 17, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants