intra-mart Accel Platform IM-Workflow 仕様書 第40版 2025-10-01

5.1.2.38. トランザクションファイルの履歴削除の設定

2020 Winter(Azalea) より追加された「トランザクションデータ」 の履歴削除に関する設定です。
トランザクションファイル最新保護フラグは 2025 Autumn(Lilac) で追加されました。
設定一覧
論理名 物理名 設定内容
トランザクションファイル履歴削除フラグ transaction-delete-flag
設定値未設定の場合は false の挙動と同じです。
true:削除する(初期値)
false:削除しない
トランザクションファイルの履歴を保持する世代数 transaction-delete-level
トランザクションファイルの履歴を削除する場合に保持しておく履歴の世代数を1以上の整数で指定してください。
設定値未設定の場合は初期値(3)が使用されます。
トランザクションファイル最新保護フラグ transaction-file-recent-protection
トランザクションファイルの削除処理において、最新のトランザクションファイルから見て直近のデータを削除せず保護するかどうかを制御します。
設定値未設定の場合はfalseの挙動と同じです。
true:最新のトランザクションファイルから見て直近のデータは削除しない(初期値)
false:transaction-delete-levelに則って削除する

注意

トランザクションファイルの保存先
トランザクションファイルの履歴削除を使用する場合、 「データ保存の設定」 のトランザクションファイルおよび添付ファイルの保存先をデータベースとしてください。
(transaction-file-save-location : [2],[3],[4] の何れか。)
保存先をストレージとした場合(transaction-file-save-location : [1])、画面やAPIなどで処理(承認など)した際にエラーが発生するとトランザクションデータの不整合が発生します。
データベースで管理するトランザクションデータはロールバックされますが、ストレージの削除したトランザクションファイルはもとに戻りません。

コラム

トランザクションファイルの履歴削除機能は、「トランザクションファイル履歴削除フラグ」を「削除する」とした後の案件処理から有効な設定として扱われます。
そのため、設定を「削除する」に変更しただけでは既存のトランザクションファイルは削除されません。

注意

トランザクションファイル保護機能
分散環境において、アプリケーションサーバ間の時刻ずれ(非同期)が原因で発生するファイル不整合からシステムを保護するために、この機能を利用します。
時刻が非同期の状態でトランザクションファイルを削除すると、最新のファイルが誤って削除され、後続の処理が中断される可能性があります。
この機能は、以下の基準で最新のトランザクションファイルを保護します。
  • 保護の範囲: 処理中の最新のファイルから1分以内に作成されたファイルを削除対象から除外します。
  • 例外: 直近のファイル数が transaction-delete-level の設定値を超える場合、transaction-delete-level で指定された数以上のファイルが残るように保護されます。

重要な注意事項
この機能は、時刻の非同期によって生じる問題を部分的に回避するためのものです。
本来、分散システムを正しく運用するためには、 各アプリケーションサーバの時刻を同期させること が必須です。この点は、制限事項として別途ドキュメントに記載されていますので、ご確認ください。