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

Nokogiri breaks jRuby 9000 java.nio.charset.UnsupportedCharsetException: ASCII-8BIT #2601

Closed
lephyrius opened this issue Feb 16, 2015 · 7 comments

Comments

@lephyrius
Copy link

I get this backtrace when I use loofah:
java.nio.charset.UnsupportedCharsetException: ASCII-8BIT

    java/nio/charset/Charset.java:531:in `forName'
    nokogiri/internals/SaveContextVisitor.java:773:in `encodeStringToHtmlEntity'
    nokogiri/internals/SaveContextVisitor.java:759:in `enter'
    nokogiri/XmlText.java:92:in `accept'
    nokogiri/XmlElement.java:79:in `accept'
    nokogiri/XmlNode.java:1207:in `native_write_to'
    nokogiri/XmlNode$INVOKER$i$1$0$native_write_to.gen:-1:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:283:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:69:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/nokogiri_minus_1_dot_6_dot_6_dot_2_minus_java/lib/nokogiri/xml//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/nokogiri-1.6.6.2-java/lib/nokogiri/xml/node.rb:-1:in `invokeOther24:native_write_to'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/nokogiri_minus_1_dot_6_dot_6_dot_2_minus_java/lib/nokogiri/xml//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/nokogiri-1.6.6.2-java/lib/nokogiri/xml/node.rb:686:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:106:in `call'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:150:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:180:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:343:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:205:in `callBlock'
    org/jruby/runtime/callsite/CachingCallSite.java:209:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/nokogiri_minus_1_dot_6_dot_6_dot_2_minus_java/lib/nokogiri/xml//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/nokogiri-1.6.6.2-java/lib/nokogiri/xml/node.rb:-1:in `invokeOther16:write_to'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/nokogiri_minus_1_dot_6_dot_6_dot_2_minus_java/lib/nokogiri/xml//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/nokogiri-1.6.6.2-java/lib/nokogiri/xml/node.rb:618:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:106:in `call'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:134:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:154:in `call'
    org/jruby/internal/runtime/methods/DynamicMethod.java:206:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:313:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:163:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/nokogiri_minus_1_dot_6_dot_6_dot_2_minus_java/lib/nokogiri/xml//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/nokogiri-1.6.6.2-java/lib/nokogiri/xml/node.rb:-1:in `invokeOther25:serialize'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/nokogiri_minus_1_dot_6_dot_6_dot_2_minus_java/lib/nokogiri/xml//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/nokogiri-1.6.6.2-java/lib/nokogiri/xml/node.rb:774:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:154:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:180:in `call'
    org/jruby/internal/runtime/methods/DynamicMethod.java:214:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:333:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:195:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/nokogiri_minus_1_dot_6_dot_6_dot_2_minus_java/lib/nokogiri/xml//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/nokogiri-1.6.6.2-java/lib/nokogiri/xml/node.rb:-1:in `invokeOther0:to_format'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/nokogiri_minus_1_dot_6_dot_6_dot_2_minus_java/lib/nokogiri/xml//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/nokogiri-1.6.6.2-java/lib/nokogiri/xml/node.rb:630:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:106:in `call'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:118:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:128:in `call'
    org/jruby/internal/runtime/methods/DynamicMethod.java:198:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:293:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:131:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/nokogiri_minus_1_dot_6_dot_6_dot_2_minus_java/lib/nokogiri/xml//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/nokogiri-1.6.6.2-java/lib/nokogiri/xml/node.rb:-1:in `invokeOther7:to_html'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/nokogiri_minus_1_dot_6_dot_6_dot_2_minus_java/lib/nokogiri/xml//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/nokogiri-1.6.6.2-java/lib/nokogiri/xml/node.rb:501:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:122:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:128:in `call'
    org/jruby/internal/runtime/methods/DynamicMethod.java:198:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:293:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:131:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/nokogiri_minus_1_dot_6_dot_6_dot_2_minus_java/lib/nokogiri/xml//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/nokogiri-1.6.6.2-java/lib/nokogiri/xml/node_set.rb:-1:in `invokeOther4:to_s'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/nokogiri_minus_1_dot_6_dot_6_dot_2_minus_java/lib/nokogiri/xml//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/nokogiri-1.6.6.2-java/lib/nokogiri/xml/node_set.rb:218:in `to_s_CLOSURE_1__to_s_1'
    org/jruby/runtime/CompiledIRBlockBody.java:66:in `commonYieldPath'
    org/jruby/runtime/IRBlockBody.java:145:in `doYield'
    org/jruby/runtime/BlockBody.java:82:in `yield'
    org/jruby/runtime/Block.java:147:in `yield'
    org/jruby/RubyEnumerable.java:776:in `call'
    org/jruby/runtime/CallBlock19.java:90:in `doYield'
    org/jruby/runtime/BlockBody.java:82:in `yield'
    org/jruby/runtime/Block.java:147:in `yield'
    org/jruby/ir/runtime/IRRuntimeHelpers.java:444:in `yield'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/nokogiri_minus_1_dot_6_dot_6_dot_2_minus_java/lib/nokogiri/xml//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/nokogiri-1.6.6.2-java/lib/nokogiri/xml/node_set.rb:187:in `each_CLOSURE_1__each_1'
    org/jruby/runtime/CompiledIRBlockBody.java:66:in `commonYieldPath'
    org/jruby/runtime/IRBlockBody.java:145:in `doYield'
    org/jruby/runtime/BlockBody.java:82:in `yield'
    org/jruby/runtime/Block.java:147:in `yield'
    org/jruby/RubyInteger.java:156:in `fixnumUpto'
    org/jruby/RubyInteger.java:131:in `upto'
    org/jruby/RubyInteger$INVOKER$i$1$0$upto.gen:-1:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:171:in `callBlock'
    org/jruby/runtime/callsite/CachingCallSite.java:177:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/nokogiri_minus_1_dot_6_dot_6_dot_2_minus_java/lib/nokogiri/xml//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/nokogiri-1.6.6.2-java/lib/nokogiri/xml/node_set.rb:-1:in `invokeOther11:upto'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/nokogiri_minus_1_dot_6_dot_6_dot_2_minus_java/lib/nokogiri/xml//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/nokogiri-1.6.6.2-java/lib/nokogiri/xml/node_set.rb:186:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:122:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:128:in `call'
    org/jruby/RubyClass.java:520:in `finvoke'
    org/jruby/runtime/Helpers.java:577:in `invoke'
    org/jruby/RubyEnumerable.java:102:in `callEach19'
    org/jruby/RubyEnumerable.java:763:in `collectCommon19'
    org/jruby/RubyEnumerable.java:755:in `map19'
    org/jruby/RubyEnumerable$INVOKER$s$0$0$map19.gen:-1:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:303:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:141:in `callBlock'
    org/jruby/runtime/callsite/CachingCallSite.java:145:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/nokogiri_minus_1_dot_6_dot_6_dot_2_minus_java/lib/nokogiri/xml//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/nokogiri-1.6.6.2-java/lib/nokogiri/xml/node_set.rb:-1:in `invokeOther6:map'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/nokogiri_minus_1_dot_6_dot_6_dot_2_minus_java/lib/nokogiri/xml//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/nokogiri-1.6.6.2-java/lib/nokogiri/xml/node_set.rb:218:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:122:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:128:in `call'
    org/jruby/internal/runtime/methods/DynamicMethod.java:198:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:293:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:131:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/loofah_minus_2_dot_0_dot_1/lib/loofah/html//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/loofah-2.0.1/lib/loofah/html/document_fragment.rb:-1:in `invokeOther5:to_s'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/loofah_minus_2_dot_0_dot_1/lib/loofah/html//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/loofah-2.0.1/lib/loofah/html/document_fragment.rb:31:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:122:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:128:in `call'
    org/jruby/internal/runtime/methods/DynamicMethod.java:198:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:293:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:131:in `call'
    org/jruby/ir/interpreter/InterpreterEngine.java:302:in `processCall'
    org/jruby/ir/interpreter/InterpreterEngine.java:149:in `interpret'
    org/jruby/ir/interpreter/Interpreter.java:138:in `INTERPRET_BLOCK'
    org/jruby/runtime/InterpretedIRBlockBody.java:74:in `commonYieldPath'
    org/jruby/runtime/IRBlockBody.java:154:in `doYield'
    org/jruby/runtime/BlockBody.java:88:in `yield'
    org/jruby/runtime/Block.java:151:in `yieldNonArray'
    org/jruby/RubyBasicObject.java:1691:in `yieldUnder'
    org/jruby/RubyBasicObject.java:1668:in `instance_exec19'
    org/jruby/RubyBasicObject$INVOKER$i$0$3$instance_exec19.gen:-1:in `call'
    org/jruby/internal/runtime/methods/DynamicMethod.java:210:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:323:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:173:in `callBlock'
    org/jruby/runtime/callsite/CachingCallSite.java:177:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activesupport_minus_4_dot_1_dot_9/lib/active_support//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activesupport-4.1.9/lib/active_support/callbacks.rb:-1:in `invokeOther40:instance_exec'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activesupport_minus_4_dot_1_dot_9/lib/active_support//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activesupport-4.1.9/lib/active_support/callbacks.rb:440:in `make_lambda_CLOSURE_5__make_lambda_11'
    org/jruby/runtime/CompiledIRBlockBody.java:66:in `commonYieldPath'
    org/jruby/runtime/IRBlockBody.java:75:in `call'
    org/jruby/runtime/Block.java:106:in `call'
    org/jruby/RubyProc.java:305:in `call'
    org/jruby/RubyProc.java:289:in `call19'
    org/jruby/RubyProc$INVOKER$i$0$0$call19.gen:-1:in `call'
    org/jruby/internal/runtime/methods/DynamicMethod.java:218:in `call'
    org/jruby/internal/runtime/methods/DynamicMethod.java:214:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:193:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activesupport_minus_4_dot_1_dot_9/lib/active_support//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activesupport-4.1.9/lib/active_support/callbacks.rb:-1:in `invokeOther3:call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activesupport_minus_4_dot_1_dot_9/lib/active_support//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activesupport-4.1.9/lib/active_support/callbacks.rb:160:in `halting_CLOSURE_1__halting_0'
    org/jruby/runtime/CompiledIRBlockBody.java:66:in `commonYieldPath'
    org/jruby/runtime/IRBlockBody.java:75:in `call'
    org/jruby/runtime/Block.java:106:in `call'
    org/jruby/RubyProc.java:305:in `call'
    org/jruby/RubyProc.java:289:in `call19'
    org/jruby/RubyProc$INVOKER$i$0$0$call19.gen:-1:in `call'
    org/jruby/internal/runtime/methods/DynamicMethod.java:210:in `call'
    org/jruby/internal/runtime/methods/DynamicMethod.java:206:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:161:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activesupport_minus_4_dot_1_dot_9/lib/active_support//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activesupport-4.1.9/lib/active_support/callbacks.rb:-1:in `invokeOther18:call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activesupport_minus_4_dot_1_dot_9/lib/active_support//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activesupport-4.1.9/lib/active_support/callbacks.rb:86:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:138:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:154:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:323:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:173:in `callBlock'
    org/jruby/runtime/callsite/CachingCallSite.java:177:in `call'
    org/jruby/ir/interpreter/InterpreterEngine.java:295:in `processCall'
    org/jruby/ir/interpreter/InterpreterEngine.java:149:in `interpret'
    org/jruby/ir/interpreter/InterpreterEngine.java:74:in `interpret'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:139:in `INTERPRET_METHOD'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:130:in `call'
    org/jruby/internal/runtime/methods/DynamicMethod.java:198:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:293:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:131:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activemodel_minus_4_dot_1_dot_9/lib/active_model//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activemodel-4.1.9/lib/active_model/validations.rb:-1:in `invokeOther4:run_validations!'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activemodel_minus_4_dot_1_dot_9/lib/active_model//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activemodel-4.1.9/lib/active_model/validations.rb:317:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:106:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:102:in `call'
    org/jruby/ir/runtime/IRRuntimeHelpers.java:872:in `unresolvedSuper'
    org/jruby/ir/runtime/IRRuntimeHelpers.java:854:in `unresolvedSuperSplatArgs'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activerecord_minus_4_dot_1_dot_9/lib/active_record//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activerecord-4.1.9/lib/active_record/validations.rb:-1:in `invokeSuper1:-unknown-super-target-'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activerecord_minus_4_dot_1_dot_9/lib/active_record//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activerecord-4.1.9/lib/active_record/validations.rb:70:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:106:in `call'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:134:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:154:in `call'
    org/jruby/internal/runtime/methods/DynamicMethod.java:206:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:313:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:163:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activerecord_minus_4_dot_1_dot_9/lib/active_record//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activerecord-4.1.9/lib/active_record/validations.rb:-1:in `invokeOther3:valid?'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activerecord_minus_4_dot_1_dot_9/lib/active_record//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activerecord-4.1.9/lib/active_record/validations.rb:77:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:106:in `call'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:134:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:154:in `call'
    org/jruby/internal/runtime/methods/DynamicMethod.java:206:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:313:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:163:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activerecord_minus_4_dot_1_dot_9/lib/active_record//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activerecord-4.1.9/lib/active_record/validations.rb:-1:in `invokeOther0:perform_validations'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activerecord_minus_4_dot_1_dot_9/lib/active_record//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activerecord-4.1.9/lib/active_record/validations.rb:57:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:106:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:102:in `call'
    org/jruby/ir/runtime/IRRuntimeHelpers.java:872:in `unresolvedSuper'
    org/jruby/ir/runtime/IRRuntimeHelpers.java:854:in `unresolvedSuperSplatArgs'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activerecord_minus_4_dot_1_dot_9/lib/active_record/attribute_methods//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activerecord-4.1.9/lib/active_record/attribute_methods/dirty.rb:-1:in `invokeSuper1:-unknown-super-target-'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activerecord_minus_4_dot_1_dot_9/lib/active_record/attribute_methods//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activerecord-4.1.9/lib/active_record/attribute_methods/dirty.rb:29:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:106:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:102:in `call'
    org/jruby/ir/runtime/IRRuntimeHelpers.java:872:in `unresolvedSuper'
    org/jruby/ir/instructions/ZSuperInstr.java:40:in `interpret'
    org/jruby/ir/interpreter/InterpreterEngine.java:318:in `processCall'
    org/jruby/ir/interpreter/InterpreterEngine.java:149:in `interpret'
    org/jruby/ir/interpreter/Interpreter.java:138:in `INTERPRET_BLOCK'
    org/jruby/runtime/InterpretedIRBlockBody.java:74:in `commonYieldPath'
    org/jruby/runtime/IRBlockBody.java:84:in `yieldSpecific'
    org/jruby/runtime/Block.java:116:in `yieldSpecific'
    org/jruby/ir/runtime/IRRuntimeHelpers.java:451:in `yieldSpecific'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activerecord_minus_4_dot_1_dot_9/lib/active_record//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activerecord-4.1.9/lib/active_record/transactions.rb:329:in `with_transaction_returning_status_CLOSURE_1__with_transaction_returning_status_0'
    org/jruby/runtime/CompiledIRBlockBody.java:66:in `commonYieldPath'
    org/jruby/runtime/IRBlockBody.java:84:in `yieldSpecific'
    org/jruby/runtime/Block.java:116:in `yieldSpecific'
    org/jruby/ir/runtime/IRRuntimeHelpers.java:451:in `yieldSpecific'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activerecord_minus_4_dot_1_dot_9/lib/active_record/connection_adapters/abstract//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activerecord-4.1.9/lib/active_record/connection_adapters/abstract/database_statements.rb:201:in `transaction_CLOSURE_1__transaction_0'
    org/jruby/runtime/CompiledIRBlockBody.java:66:in `commonYieldPath'
    org/jruby/runtime/IRBlockBody.java:84:in `yieldSpecific'
    org/jruby/runtime/Block.java:116:in `yieldSpecific'
    org/jruby/ir/runtime/IRRuntimeHelpers.java:451:in `yieldSpecific'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activerecord_minus_4_dot_1_dot_9/lib/active_record/connection_adapters/abstract//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activerecord-4.1.9/lib/active_record/connection_adapters/abstract/database_statements.rb:209:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:106:in `call'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:134:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:154:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:171:in `callBlock'
    org/jruby/runtime/callsite/CachingCallSite.java:177:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activerecord_minus_4_dot_1_dot_9/lib/active_record/connection_adapters/abstract//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activerecord-4.1.9/lib/active_record/connection_adapters/abstract/database_statements.rb:-1:in `invokeOther9:within_new_transaction'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activerecord_minus_4_dot_1_dot_9/lib/active_record/connection_adapters/abstract//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activerecord-4.1.9/lib/active_record/connection_adapters/abstract/database_statements.rb:201:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:106:in `call'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:134:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:154:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:171:in `callBlock'
    org/jruby/runtime/callsite/CachingCallSite.java:177:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activerecord_minus_4_dot_1_dot_9/lib/active_record//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activerecord-4.1.9/lib/active_record/transactions.rb:-1:in `invokeOther1:transaction'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activerecord_minus_4_dot_1_dot_9/lib/active_record//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activerecord-4.1.9/lib/active_record/transactions.rb:208:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:106:in `call'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:118:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:128:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:303:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:141:in `callBlock'
    org/jruby/runtime/callsite/CachingCallSite.java:145:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activerecord_minus_4_dot_1_dot_9/lib/active_record//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activerecord-4.1.9/lib/active_record/transactions.rb:-1:in `invokeOther8:transaction'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/activerecord_minus_4_dot_1_dot_9/lib/active_record//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/activerecord-4.1.9/lib/active_record/transactions.rb:326:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:106:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:102:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:273:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:79:in `callBlock'
    org/jruby/runtime/callsite/CachingCallSite.java:83:in `call'
    org/jruby/ir/instructions/CallBase.java:386:in `interpret'
    org/jruby/ir/interpreter/InterpreterEngine.java:318:in `processCall'
    org/jruby/ir/interpreter/InterpreterEngine.java:149:in `interpret'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:113:in `INTERPRET_METHOD'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:104:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:273:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:79:in `callBlock'
    org/jruby/runtime/callsite/CachingCallSite.java:83:in `call'
    org/jruby/ir/instructions/CallBase.java:386:in `interpret'
    org/jruby/ir/interpreter/InterpreterEngine.java:314:in `processCall'
    org/jruby/ir/interpreter/InterpreterEngine.java:149:in `interpret'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:113:in `INTERPRET_METHOD'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:104:in `call'
    org/jruby/RubyClass.java:541:in `finvoke'
    org/jruby/RubyBasicObject.java:1624:in `send19'
    org/jruby/RubyKernel.java:2025:in `send19'
    org/jruby/RubyKernel$INVOKER$s$send19.gen:-1:in `call'
    org/jruby/internal/runtime/methods/AliasMethod.java:101:in `call'
    org/jruby/ir/runtime/IRRuntimeHelpers.java:872:in `unresolvedSuper'
    org/jruby/ir/runtime/IRRuntimeHelpers.java:854:in `unresolvedSuperSplatArgs'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/actionpack_minus_4_dot_1_dot_9/lib/action_controller/metal//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/actionpack-4.1.9/lib/action_controller/metal/implicit_render.rb:-1:in `invokeSuper0:-unknown-super-target-'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/actionpack_minus_4_dot_1_dot_9/lib/action_controller/metal//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/actionpack-4.1.9/lib/action_controller/metal/implicit_render.rb:4:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:106:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:102:in `call'
    org/jruby/internal/runtime/methods/DynamicMethod.java:180:in `call'
    org/jruby/runtime/callsite/CachingCallSite.java:283:in `cacheAndCall'
    org/jruby/runtime/callsite/CachingCallSite.java:69:in `call'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/actionpack_minus_4_dot_1_dot_9/lib/abstract_controller//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/actionpack-4.1.9/lib/abstract_controller/base.rb:-1:in `invokeOther0:send_action'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/actionpack_minus_4_dot_1_dot_9/lib/abstract_controller//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/actionpack-4.1.9/lib/abstract_controller/base.rb:189:in `__script__'
    org/jruby/internal/runtime/methods/CompiledIRMethod.java:106:in `call'
    org/jruby/internal/runtime/methods/InterpretedIRMethod.java:102:in `call'
    org/jruby/ir/runtime/IRRuntimeHelpers.java:872:in `unresolvedSuper'
    org/jruby/ir/runtime/IRRuntimeHelpers.java:854:in `unresolvedSuperSplatArgs'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/actionpack_minus_4_dot_1_dot_9/lib/action_controller/metal//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/actionpack-4.1.9/lib/action_controller/metal/rendering.rb:-1:in `invokeSuper5:-unknown-super-target-'
    /$_dot_rbenv/versions/jruby_minus_9_dot_0_dot_0_dot_0_minus_dev/lib/ruby/gems/shared/gems/actionpack_minus_4_dot_1_dot_9/lib/action_controller/metal//.rbenv/versions/jruby-9.0.0.0-dev/lib/ruby/gems/shared/gems/actionpack-4.1.9/lib/action_controller/metal/rendering.rb:10:in `__script__'

I use this version of ruby:
jruby 9.0.0.0-SNAPSHOT (2.2.0p0) 2015-02-16 05aad64 Java HotSpot(TM) 64-Bit Server VM 25.0-b70 on 1.8.0-b132 +jit [darwin-x86_64]

@headius
Copy link
Member

headius commented Mar 12, 2015

Interesting. This is likely a bug in Nokogiri, but perhaps exposed by fixes in 9k. The logic in encodeStringToHtmlEntity is blindly trying to load an encoding for "ASCII-8BIT", but there is no such encoding on the JVM. The proper encoding to use for full 8-bit ASCII would be ISO-8859-1 (or equivalent, but that's the typical one).

The problem is probably exposed by us providing a string to Nokogiri that is ASCII-8BIT encoding in Ruby. That could be a bug or it could be a corrected issue.

@tenderlove @flavorjones @yokolet I'm not sure who to ping about this. If absolutely necessary, I can look into fixing it myself, but we really need to get Nokogiri updated for JRuby 9k.

@headius headius added this to the 9.0.0.0.pre2 milestone Mar 12, 2015
@flavorjones
Copy link
Contributor

@headius - we recently had another issue filed concerning ASCII-8BIT encoding on JRuby:

sparklemotion/nokogiri#1264

Honestly, it's a bit of a mystery where this encoding is coming from at the moment, but I'll try to look into it this week.

@headius
Copy link
Member

headius commented Jul 2, 2015

@flavorjones Were you ever able to look into this? I don't think there's a JRuby bug here, so I'm going to close this, but we can help fix it in Nokogiri with your assistance.

@headius
Copy link
Member

headius commented Jul 2, 2015

@lephyrius You should probably re-file this at Nokogiri, so it doesn't get lost if we or @flavorjones don't get to a fix right away.

@lephyrius
Copy link
Author

The funny thing is that I haven't seen this since rc1 .

@enebo
Copy link
Member

enebo commented Jul 3, 2015

Hmmm. My only thought on @lephyrius last comment is we have renamed some plain (e.g. not foo19 -> foo) to redirect to 19+ versions. Possibly nokogiri is still calling what was the 1.8 method (or plain named version) but it is now routing through an encoding path? Although if this was the case then 1.7.x in --1.9 mode would be broken and 9k would be passing.

@flavorjones
Copy link
Contributor

@headius I looked, but was unable to reproduce.

If someone can provide a reproducible script, that would help diagnose the issue.

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

5 participants