JRuby on Rails2.0 jdbc_adapter

JRuby上で動かしていたRailsアプリを2.0に移行してみたら、

ArgumentError (wrong # of arguments(2 for 1)):
C:/dev/jruby/jruby-1.0.2/lib/ruby/gems/1.8/gems/activerecord-2.0.1/lib/active_record/transactions.rb:129:in `rollback_active_record_state!'
C:/dev/jruby/jruby-1.0.2/lib/ruby/gems/1.8/gems/activerecord-2.0.1/lib/active_record/transactions.rb:108:in `save_with_transactions'

という例外がActiveRecord::Base#updateを実行すると出る。wrong # of arguments(2 for 1)がどこから出てるのかさっぱり見当がつかなかったけど、地道にログを出してトレースしていったら、原因が判明。

    def attributes_with_quotes(include_primary_key = true) #:nodoc:
      aq = attributes_with_quotes_pre_oracle(include_primary_key)
      if connection.class == ConnectionAdapters::JdbcAdapter && (connection.is_a?(JdbcSpec::Oracle) || connection.is_a?(JdbcSpec::Mimer))
        aq[self.class.primary_key] = "?" if include_primary_key && aq[self.class.primary_key].nil?
      end
      aq
    end

attributes_with_quotes must have 2 arguments in Rails2.0!

ってわけで、本来あるべき引数を足してみました。

def attributes_with_quotes(include_primary_key = true, include_readonly_attributes = true)

一応動いています。そのうち直してもらえると思うので、当分これでしのぎます。
trunkでは直ってるらしいです。http://jira.codehaus.org/browse/JRUBY-1570