2.4.3 リモートプロシジャコールの形態と同期点の関係
(1) 同期応答型RPCと同期点の関係
同期応答型RPCのトランザクション処理の場合,CUPに処理結果が戻って,同期点取得処理を終えた時点で,トランザクションの終了となります。
同期応答型RPCと同期点の関係を次の図に示します。
(2) 非応答型RPCと同期点の関係
非応答型RPCのトランザクション処理の場合は,CUPの同期点取得でSPPの処理終了を待ち,そのあとで同期点取得処理をします。
非応答型RPCと同期点の関係を次の図に示します。
(3) 連鎖RPCと同期点の関係
連鎖RPCを使った場合は,一つのSPPのプロセスで実行します。したがって,トランザクションブランチも連鎖RPCを使った回数に関係なく,一つになります。
連鎖RPCのトランザクション処理の場合,同期点処理を終了した時点でトランザクションが終了して,処理していたSPPのプロセスは解放されます。
トランザクション実行中に非トランザクションの連鎖RPCを使った場合,通常は同期点処理を終了した時点で,処理していたSPPのプロセスを解放します。同期点処理の終了で処理していたSPPのプロセスを解放しないで,同期応答型RPCで解放する場合は,ユーザサービス定義のrpc_extend_functionオペランドに00000002を指定してください。
連鎖RPCと同期点の関係を,次の図に示します。