2

スルー テーブルを介して m2m リレーションシップを追加しようとしていますが、突然、次のエラーが発生します。

「現在のトランザクションは中止され、トランザクション ブロックが終了するまでコマンドは無視されます」

これには2つの奇妙な問題があります。1 つ目は、関連するすべてのアプリを正常に移行/同期したことです。2 つ目は、エラーがスローされた場合でも、関連するモデルと問題のモデル (AddedFeature) の両方がデータベースに正常に保存されることです。つまり、トランザクションが中止されても、AddedFeature インスタンスは DB に保存されます。

http://dpaste.com/1357120/

繰り返しますが、DB を更新して再移行/再同期しても問題は解決しませんでした。

4

1 に答える 1

1

このエラーの前に発生した問題を探します。あなたのコード、または使用しているコードは、データベース エラーを無視しています。したがって、次の操作は失敗します。

以前の問題を見つけるには、データベースやアプリケーション ログを調べる必要があります。次に、アプリのコードのどの部分がデータベースの例外を飲み込んでいるかを特定します。例外をログに記録したり、トランザクションを中止したりすることはありません。

これには設定log_statement = 'all'postgresql.conf役立ちます。

于 2013-08-27T02:36:20.980 に答える