キャッシュされたOracle Database表へのDDLが失敗する可能性がある

TimesTenにキャッシュされたOracle Database表へのDDL操作のため、キャッシュ・グループで障害が発生する可能性があります。たとえば、ユーザーがTimesTenにキャッシュされているOracle Database表上の列を削除する場合です。キャッシュ・グループが伝播またはフラッシュされると、TimesTenはOracle Database表にすでに存在していない列を更新することになります。キャッシュ・グループがロードまたはリフレッシュされると、TimesTenは削除された列からデータの取得を試行することになります。

次のキャッシュ・グループ操作は失敗する可能性があります。

  • 自動リフレッシュは発生しません。

  • AWTキャッシュ・グループ操作は、Oracle Databaseから伝播またはリフレッシュされることも、Oracle Databaseへ伝播またはリフレッシュされることもありません。

  • キャッシュ・グループのロードまたは伝播は失敗します。

Oracle Database実表に対してDDL操作が行われたため、キャッシュ・グループ操作が適切に実行されていない可能性がある場合は、DDL追跡を使用して問題を診断します。DDL追跡では、キャッシュされたすべてのOracle Database表の変更履歴が保存されます。SQL文およびその実行日時は、Oracle Databaseのキャッシュ管理ユーザー・スキーマ内のTimesTen表にそれぞれ書き込まれます。

DDL追跡オブジェクトの作成方法や、Oracle Database内の実表に対してDDL追跡を有効にする方法の詳細は、『Oracle TimesTen In-Memory Databaseキャッシュ・ガイド』「キャッシュされたOracle Database表に対して発行されたDDL文の追跡」を参照してください。DDL追跡の有効化または無効化に使用される組込みプロシージャの詳細は、『Oracle TimesTen In-Memory Databaseリファレンス』「ttCacheDDLTrackingConfig」を参照してください。