[pgsql-jp: 38224] Npgsqlにて ERROR: 57014: canceling statement due to user request が多発
daemon
daemon_kun2000 @ yahoo.co.jp
2007年 3月 26日 (月) 20:23:37 JST
はじめまして。
どうにも解決出来ない事があってメーリングリストに入会させて頂きました。
Npgsqlを使用してWindowsアプリケーションの開発を行おうとしています。
開発環境:WindowsXP
言語:VisualStudioExpress C#(VS2005)
PostgreSQLのバージョン:8.2.2(Windows版)
Npgsqlのバージョン:1.0.0
困っているのはテーブル間でのデータの受け渡しです。
テーブルAの内容をテーブルBへ一括INSERTしようとすると
ERROR: 57014: canceling statement due to user request
とエラーメッセージが出て中断されてしまいます。
ユーザーによってリクエストが取り消された、といった内容だと思うのですが、特にトランザクションをロールバックするといったようなことはしていません。
テーブルAのデータの件数は10万〜20万でかなり多いので
接続文字列TimeOutとCommandTimeOutの時間を300秒に変更してみたのですがうまくいきませんでした。
Npgsql.NpgsqlConnection con = new Npgsql.NpgsqlConnection();
con.ConnectionString = "Server=localhost; Database=hogedb:user=hoge_kun;
password=hoge_san; TimeOut=300; CommandTimeOut=300";
Npgsql.NpgsqlCommand cmd = new Npgsql.NpgsqlCommand("テーブルA->テーブルB
INSERTコマンド文",con);
con.Open();
Npgsql.NpgsqlTransaction tran = con.BeginTransaction();
cmd.Transaction = tran;
cmd.ExcecuteNonQuery();
tran.Commit();
con.Close();
とこのような感じになります。これを実行すると
Npgsql.NpgsqlException ERROR: 57014: canceling statement due to user
request
と例外が発生します。
ネットで検索して見たのですが、参考になる物が見つからなくて困っています。
どうかよろしくお願いいたします。
pgsql-jp メーリングリストの案内