※この現象は6.0.44.0で修正されました。
対象バージョン
6.0.4.0から6.0.43.0までのすべてのバージョン
現象
Foguncyでは、以下の2つの操作のいずれかをMySQLに対して行った場合、timestamp型のフィールド(列)「FGC_Rowversion」が自動的に作成されます。
- [外部データベース上にテーブルを作成]/[外部データベースに新しいテーブルを作成]メニューで新しいテーブルを作成する
- 既存のMySQL上のテーブルをリンクテーブルとして作成し、[データベースや構造変更をForguncyに許可する]をチェックし、アプリケーションを実行してそのテーブルに何らかの更新操作を行う(すでにtimestamp型のフィールドがある場合を除く)
上記の操作により作成された「FGC_Rowversion」はデータ型がtimestampとなっており、秒精度が0となります。これにより「FGC_Rowversion」には秒単位の値しか記録されず、ミリ秒やマイクロ秒といた精度の値は保持されません。
Forguncyはテーブルに存在するtimestamp型のフィールドを同時実行制御に使用するため、このような制度のtimestamp型のフィールドが存在する場合、秒単位でしか同時実行制御が行われません。
回避策、および対応方法
データベース管理ツールなどを使用して、「FGC_Rowversion」のデータ型をtimestampからtimestamp(6)に変更します。
文書種別
不具合
※ 次期修正版にて修正を予定しています。