ヘッダーをスキップ
Oracle TimesTen In-Memory Database APIリファレンス・ガイド
リリース7.0
E05170-03
  目次へ
目次
索引へ
索引

前へ
前へ
次へ
次へ
 

ttRepSyncGet

説明

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

構文

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構成です。
NO ACTION: COMMITがタイムアウトすると、ブロックされていないアプリケーションが返され、トランザクションはCOMMIT開始時と同じ状態のままになります。ただし、レプリケートされた表をアプリケーションで更新することはできません。アプリケーションはCOMMITのみを再発行する場合があります。これはデフォルトです。
COMMIT: COMMITがタイムアウトすると、トランザクションはローカルでコミットされます。このトランザクションでこれ以上処理することはできず、レプリケートされたデータ・ストアは分岐します。
この属性は、接続されているかぎり、トランザクションをまたいで動作します。

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

SQLCHAR   requestReturn[1];

SQLINTEGER   len; 
rc = SQLExecDirect ( hstmt 
    , (SQLCHAR *) "{CALL ttRepSyncGet( NULL )}" 
    , SQL_NTS ) 
rc = SQLBindCol  ( hstmt 
    , /* ColumnNumber */   1 
    , /* TargetType */     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をコールしても、外部的な影響はありません。

関連項目

ttRepDeactivate
ttRepTransmitSet
『Oracle TimesTen In-Memory Database C開発者およびリファレンス・ガイド』のttRepDuplicateEx
ttReplicationStatus
ttRepPolicySet
ttRepStart
ttRepStop
ttRepSubscriberStateSet
ttRepSubscriberWait
ttRepSyncSet