差分更新の実験
SQL Server等のデータリポジトリ、項目特性で使用出来る 値更新/差分更新の差分更新を使った事が無いので、実験をしました。
デッドロックが発生しました。データソース:xxx実験データ とメッセージがステータス行に表示されました。
※初めて見たメッセージなので、報告(つぶやき)のみです。
↑このメッセージはその後表示されなくなりましたので大丈夫です。
以下、並行で同時に2本バッチPGを走らせる実験をしました。
同じデータの
同じレコードの
同じ項目に対して
片方は 1加算を10回実行。
もう片方は 100加算を10回実行。
どちらも書出リンク。
(両処理始める前は。値は0。
1回処理する都度DELAY(10)をかましている。)
両者が終了した時は、値は 1010 になる事を期待しました。
しかし今の所、実験後の値は1001 です。
データはキャッシュ=No
データリポジトリ → データ特性 → 更新レコードの識別
U=位置と更新項目
実験で実現したい事は、
・レコードロック、デッドロックが生じず
・両者の加算が正しく反映される
という事です。
今の所、差分更新を使いこなせておりません。
物理トランザクション、タスク前開始、即時ロックの古いやり方?をせざるを得ません。
xpa4.7.1
-
ISHIJIMAさん お世話になっております。
ロックをかけずに同時更新をしても正しい結果を得られるようになりたいです。
以下V10遅延トランザクションのPDFより。(ネットから入手出来ました。)
-
ISHIJIMAさん お世話になっております。
遅延トランザクションとか項目特性の差分更新とか理解、実用を自分の場合出来ていないので、使いこなせるよう励みます。
-
「差分更新」は基本、ロックなしの設定でいくと単純明快ですよ。物理ロックだけはDBが勝手にやってくれますので。
サインインしてコメントを残してください。
コメント
3件のコメント