私は最近、MySqlマスター/スレーブレプリケーションを使用するために、レール2.3.10アプリにmulti_db gemをインストールしました。 Rails multi_db with transaction
宝石をインストールしているので、私は私のコードでトランザクションを使用するたびに、例えば:MyModel.connection.transaction do ...some code... end
私は例外を取得:取引にmulti_db使用する方法についてNoMethodError undefined method 'assert_valid_keys' for true:TrueClass
任意のアイデア?
EDIT: iv'eは私がmulti_db
MyModel.connection.transaction do
test = 1+2
end
リターン(ほとんどの場合)以下の例外インストールして以来、何か面白いが見つかりました:NoMethodError undefined method 'assert_valid_keys' for true:TrueClass
しかし、私は実行する場合:
MyModel.connection.transaction({}) do
test = 1+2
end
すべてがスムーズに実行されます。
私のガットフィリングは、マルチ(マゾキズムの宝石に基づいています)が他の宝石のうちの1つ(多分:deadlock_retryまたはar-extensions)を使って「うまくやっていません。
assert_valid_keysがHashで定義されているので、コード内で何か間違っていると思います。それはここ – phoet
iv'eは私がインストールして以来、何か面白いものを見つけましたmulti_db MyModel.connection.transactionをスニペットを投稿助ける= 1 + 2 終了 は(ほとんどの場合)以下の例外を返す テストを行う可能性があります。真のための 'NoMethodError未定義の方法 'assert_valid_keys':TrueClass' 私が実行する場合: MyModel.connection.transaction({})は テスト= 1 + 2 端すべてがスムーズに実行されません。 私の腸管充填は、(マゾヒズム宝石に基づく)multi_dbが、他の宝石のうちの1つ(多分:deadlock_retryまたはar-extensions)を使用して「うまくやっていません」と伝えます。 アイデア? – Ran
重複した質問からのスタックトレースは、次のとおりです。http://pastie.org/3063822 – rkb