このメッセージが出力される要因としては以下の2つになります。
詳細は以下の通りです。
コンソールログ(cconsole.log/messages.log)に、以下のようなメッセージがある場合、これはロールバック処理にて出力されています。
※バージョンによってメッセージは多少異なります。
Skipping SET due to compare and swap failed on ...
Skipping KILL due to compare and swap failed on ...
---
Skipping Set global ^xxx during transaction rollback (transaction may not have been properly locked) in journal ...
Skipping KILL as node ^xxx exists in ...
---
Skipped rolling back x update(s) in ...
Total 1 update(s) were skipped during rollback of transaction beginning at address ...
以下の例のように、ロールバック処理で、更新したグローバル変数の値を元の値に戻す際に、別のプロセスにより、そのグローバルが既に更新されてしまった場合に出力します。
*プロセスA
USER>W ^TEMP
1 -> 更新処理前の値
USER>TS
TL1:USER>s ^TEMP=2 -> ジャーナルファイルにnew value =2, old value =1と記録される
*プロセスB
USER>TS
TL1:USER>S ^TEMP=3 -> 別プロセスより更新
TL1:USER>TC
USER>
*プロセスA
TL1:USER>TRO -> ロールバック
ここで、ロールバックの実行にて、ジャーナルファイルの記録よりold value の1に戻そうとしたが、値が別プロセスにより変更されていた為、ロールバックにより値を戻すのをskipします。
その際、コンソールに以下のようなメッセージを出力します。
※バージョンによりメッセージは多少異なります。