IRLM 実装

IRLM は IMS 固有のロッキング・テーブルをデータベース制御で使用します。このロッキング・テーブルは、データベース名とルート・セグメントの相対バイトアドレス (RBA) を使用して、セッションごとにロッキングを追跡します。このロッキングでは、3 つのロッキングステータスのいずれかを定義できます。

READ
使用中のデータベース・レコード。他のセッションからの READ アクセスが可能ですが、UPDATE-INTENT および UPDATE ロッキング要求をブロッキングします。READ ロッキングを発行したアプリケーション・プログラム PCB が、どのセグメントも更新せずに別のデータベース・レコードに範囲を渡す場合、この READ ロッキングが解放されます。
UPDATE-INTENT
データベース・レコードは、REPL または DLET 呼び出しが後に続く HOLD 呼び出し (GHU、 GHN、 GHNP) を使用してアクセスされるとき、排他的にロッキングされます。ロッキングを発行したアプリケーション・プログラム PCB が、どのセグメントも更新せずに別のデータベース・レコードに範囲を渡す場合、この UPDATE-INTENT ロッキングが解放されます。
UPDATE
データベース・レコードは ISRT、REPL、または DLET 呼び出しによって更新されており、アプリケーション・プログラムがコミット・ポイントに達するまでロッキングされたままになります。これらのロッキングは、範囲が渡されるときに解放されません。