私は現在、Doctrine_Adapter_Oracle
を使用してOracle DB上でDoctrineを使用しています。Doctrine + Oracle =最大オープンカーソル(ORA-01000)
私のアプリケーションでは、多くのオブジェクト(〜700 +)のクエリと挿入/水和を含むバッチ処理が扱われています。
ことをやったとき、私は、Oracleからエラーを取得:
ORA-01000: maximum open cursors exceeded
ORA-04088: error during execution of trigger 'SYSTEM.DOCUMENT_AI_PK' : INSERT INTO (...)
オラクルによって許可された私の最大のカーソルはIMO、たくさんである、300です。私は何かを逃しているのですか、あるいは教義に何か間違っていますか?
Googleで検索したところ、これはEntry on the Doctrine bug tracker: "Oracle don't close cursor"です。私は提案されたパッチを試しました、そして、それはうまくいくようです。しかし、ジョナサン賃金(Doctrine's Lead)によって落胆しているように見えるので、私は本当にそれを使うのが嫌です。
私はこの1つにこだわっているので、どんな助けでも大歓迎です。
基本的には、カーソルの許容数を増やすか、Doctrineを修正するように指示しています。彼らはDoctrineによって完全に管理されているので、私はただ「カーソルをできるだけ早く閉じる」ことができません。 –
私はDoctrieを修正する方法のいくつかの指針を探しています。 (申し訳ありませんが、許可された編集時間は有効期限が切れました) –
あなたは、パッチで、いいえ、できますか?あなたが投稿したリンクが言っていたものではありませんか?自分自身でカーソルの問題を解決したとあなた自身が言っています。何かが壊れています。私が見ているあなたの選択は私がリストしたものです。私はそれがdownvoteを保証するかどうか推測する、そうする。 – DCookie