Tx5.0 23年2月リリース版以降で「更新の競合(XSEIK)」エラーが発生し易くなる現象は2023年5月リリース版にて改善

Tx5.0の2023/02/20リリース版以降のVer5.0で、「更新の競合が発生したため、操作がキャンセルされました。 更新の競合になったテーブル = 生産計画テーブル(TxData50.dbo.XSEIK)」が頻繁に起こる場合があります。

  生産計画表のカレンダーデータにバケットタイプ表示用の区分“-9999”のレコードを、メモリカレンダー読込のタイミングでも更新しようとしてエラーになっていました

 

トランザクションインターフェースオプションの「トランザクション処理の実行間隔(秒)」が短いと、取込みのタイミングでメモリカレンダ読込が実行されるため頻繁に起こる可能性があります。

回避策としてプログラムが修正されるまでの間は「トランザクション処理の実行間隔(秒)」の設定を伸ばすか、自動取込みのクライアントだけ23/05/22のプレリリース版をお使いください。→プレリリースのダウンロード

次回リリースの2023/05/22リリース版で修正される予定です。

 

 

■再現例

①クライアントAで、自動取込みを10秒間隔で実行

②クライアントBが、TPiCSを起動して、実績入力フォームを開く(稼働カレンダ以外のフォームが対象)

①と②のタイミングが合うとエラーになっていました。

 

■エラーメッセージ

【 次の処理が実行できませんでした。 カレンダーをメモリ上に展開 】

<エラー内容>

   SQL文実行に失敗しました。

   更新の競合が発生したため、操作がキャンセルされました。

   更新の競合になったテーブル = 生産計画テーブル(TxData50.dbo.XSEIK)

 

   更新の競合により、スナップショット分離トランザクションが中断しまし た。スナップショット分離を使用してデータベース 'TxData50' のテーブル 'dbo.XSEIK' に直接または間接的にアクセスし、別のトランザクションによって 変更または削除された行を更新、削除、または挿入することはできません。トラ ンザクションを再試行するか、更新/削除ステートメントの分離レベルを変更し てください。