キャッシュされた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」を参照してください。