ttRepSyncGet

このプロシージャは、コール元でのレプリケーション・ベースのRETURNサービスの使用状況に関連付けられた静的属性を返します。 このプロシージャは、RETURN RECEIPTサービスまたはRETURN TWOSAFEサービスのいずれかとともに動作します。

必要な権限

このプロシージャには、権限は必要ありません。

TimesTen ScaleoutおよびTimesTen Classicでの使用

このプロシージャはTimesTen Classicでサポートされていますが、TimesTen Scaleoutではサポートされません。

関連ビュー

このプロシージャには関連ビューはありません。

構文

ttRepSyncGet()

パラメータ

ttRepSyncGetにパラメータはありません。

結果セット

ttRepSyncGetは次の結果セットを返します。

説明

requestReturn

BINARY(1)

0(デフォルト) - RETURN RECEIPT BY REQUESTまたはRETURN TWOSAFE BY REQUESTオプションによって設定されるリターン通知を待機しません。

1 - リターン通知を待機します。コミットすると、この属性はデフォルト値の0 (オフ)にリセットされます。

returnWait

TT_INTEGER

RETURNサービスの応答を待機する秒数を指定します。デフォルト値は10秒です。0は待機時間がないことを意味します。この属性はトランザクションをまたいで動作し、BY REQUESTオプションとは独立して、すべてのRETURNサービスに適用されます。

localAction

TT_INTEGER

RETURNサービスの現在のLOCAL ACTION構成です。

1 (デフォルト) - NO ACTIONCOMMITがタイムアウトすると、ブロックされていないアプリケーションが返され、トランザクションはCOMMIT開始時と同じ状態のままになります。アプリケーションはCOMMITのみを再発行する場合があります。

2 - COMMITCOMMITがタイムアウトすると、トランザクションはローカルでコミットされます。このトランザクションではこれ以上操作はできず、レプリケートされたデータベースは分散しています。この属性は、トランザクション全体と、接続の存続期間にわたって保持されます。

コール元のrequestReturn値を取得するには、次のように使用します。

SQLCHAR requestReturn[1];
SQLINTEGER    len;
rc = SQLExecDirect   ( hstmt
                , (SQLCHAR *) "{CALL ttRepSyncGet( NULL )}"
                , SQL_NTS )
rc = SQLBindCol     ( hstmt
                , /* ColumnNumber */      1
                , /* Tarype */      SQL_C_BINARY )
                , /* TargetValuePtr */     requestReturn
                ,./* BufferLength */      sizeof requestReturn
                , /* StrLen_ */         &len );
rc = SQLFetch( hstmt );
if ( requestReturn[0] ) {
...
}

ノート

  • スタンドアロンのトランザクション内でコールすると、ttRepSyncGetは常に、requestReturnのデフォルト値を返します。

  • アプリケーションはトランザクション内のどの時点でもttRepSyncGetをコールすることができ、そのトランザクションに対するBY REQUESTを指定したRETURNサービスをリクエストするために使用できます。

  • RETURN RECEIPT BY REQUESTまたはRETURN TWOSAFE BY REQUESTレプリケーション要素の更新を行わないトランザクションでttRepSyncGetをコールしても、外部的な影響はありません。