クラッシュまたは予期しない終了の後にTimesTenデータ・ストアがディスクからロードされ、リカバリが行われると、準備され、コミットされていないすべてのグローバル・トランザクションが保留中(インダウト)の状態のままになります。通常の処理は、すべてのインダウト・トランザクションの処理が解決されるまで有効になりません。次に、この解決手順を示します。
接続およびリカバリが完了すると、TimesTenは、インダウト・トランザクションを確認します。インダウト・トランザクションがない場合は、処理を通常どおり続行します。インダウト・トランザクションがある場合は、他の接続が作成されることもありますが、インダウト・トランザクションが解決されるまで、これらの接続でのすべての処理が事実上禁止されます。他のすべてのODBCまたはJDBCのコールはエラーになります。
Error 11035 - "In-doubt transactions awaiting resolution in recovery must be resolved first"インダウト・トランザクションのリストは、xa_recover()のXAまたはJTAの実装によって取得した後、必要に応じて、XAまたはJTAのxa_commit()、xa_rollback()またはxa_forget()によって処理できます。
この方法は、トランザクション・マネージャで厳密に制御された状態で動作するシステムに適しています。トランザクション・マネージャは、接続後にまずxa_recover()をコールするためです。
トランザクション・マネージャを使用できない場合またはインダウト・トランザクションを解決できない場合は、ttXactAdminユーティリティを使用して、個々のトランザクション・ブランチを個別にコミットまたは強制終了できます。詳細は、TimesTenのリファレンス・ガイドのttXactAdminに関する項を参照してください。