Details
-
Type:
Bug
-
Status:
Resolved
-
Priority:
Major
-
Resolution: Won't Fix
-
Affects Version/s: None
-
Fix Version/s: JRuby 1.6RC3
-
Component/s: Application Error, Intro
-
Labels:None
Description
Subject basically says it all. I wanted to clean house, and removed IntHashMap. But JRUBY-3270 shows a case that broke, because something (presumably AR-JDBC) was referencing IntHashMap. IntHashMap is not used by JRuby internally and has been deprecated for quite a while. We would like to delete it, so AR-JDBC should ideally stop using it now. Perhaps we'll be able to remove it NEXT year. Le sigh.
Patch is attached that reinstated IntHashMap. Reverse apply to remove it again.
The problem is not with AR_JDBC.
Hpricot uses IntHashMap in it's JRuby implementation of fast_xs:
http://github.com/why/hpricot/tree/master/ext/fast_xs/FastXsService.java
FastXsService.java is compiled into fast_xs.jar and distributed with Hpricot.
Rails activesupport extends String with a XML escaped character version of #to_s called #to_xs and will use fast_xs if it is available:
http://github.com/rails/rails/tree/master/activesupport/lib/active_support/core_ext/string/xchar.rb
When hpricot is installed in a JRuby instance fast_xs is available.
Several of the AR tests exercise this method
FYI: nicksieger did the coding on FastXsService.java
http://caldersphere.net/hpricot-0.6.157-jruby-trunk.patch