Skip to Main Content

ORA-08177: このトランザクションのアクセスをシリアル化できません

3009122Aug 12 2015 — edited Aug 18 2015

9i (9.2.0.8.0) から 12c (12.1.0.1.0) への移行でORA-08177が発生し困っています。

■旧環境

 OS:Windows Server 2003 R2 SE (32bit)

 OracleServer:9.2.0.8.0

 OracleClient:10.2.0.4.0

 Webアプリ:.NetFramework 2.0

■新環境

 OS:Windows Server 2012 R2 SE (64bit)

 OracleServer:12.1.0.1.0

 OracleClient:12.1.0.1.0

 Webアプリ:.NetFramework 2.0

■移行方法

exp USER/PASS file=(xxx.dmp)

imp USER/PASS file=(xxx.dmp) full=y

Webアプリ側ではOracleClientを利用し、データベースに接続しています。

環境移行の際、ソースの変更は一切行っておりませんが

旧環境と新環境で複数ユーザによる同じ操作を行ったところ、新環境側だけで「ORA-08177:

このトランザクションのアクセスをシリアル化できません」というエラーが発生しています。

■操作内容

[ユーザA]

  DELETE FROM tbl1 WHERE user='A';

 INSERT INTO tbl1(user,col1,col2) VALUES('A',1,1);

 以下類似INSERTが2-300件程度

[ユーザB]

  DELETE FROM tbl1 WHERE user='B';

 INSERT INTO tbl1(user,col1,col2) VALUES('B',1,1);

 以下類似INSERTが2-300件程度

1つのSQL毎にトランザクションを使用するという無駄な処理は行っていますが、

旧環境ではエラーが発生していないため、頭を悩ませている状況です。

複数回試行しTraceログを確認したところでは、DELETE文でも

INSERT文でもエラーが発生しています。

Server側の初期の設定等が不足しているのでしょうか?

エラー解消の良い案等ありましたら、ご教示ください。

This post has been answered by 3009122 on Aug 18 2015
Jump to Answer
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked due to inactivity on Sep 15 2015
Added on Aug 12 2015
4 comments
6,573 views