Technical data
Poor autorefresh performance
4-22 Oracle TimesTen In-Memory Database Troubleshooting Procedures Guide
execute. A trigger executes to free up space for new change log records by deleting
existing change log records. This can result in a full automatic refresh on cache
groups that have the incremental automatic refresh mode configured. However, if
the Oracle table is not configured for incremental automatic refresh, then no
trigger executes.
To set the operation to allow the application to continue and cause an autorefresh,
set the Param parameter to TblSpaceFullRecovery and the Value parameter
to Reload with the ttCacheConfig procedure. The user will see stale data until
the full autorefresh is complete.
However, even if the user sets the cache configuration parameter
TblSpaceFullRecovery with the value of Reload, the tablespace may not be
able to be emptied enough to handle the case of a growing index. Deleting rows
from the change log table may not free up enough space for the index that is on
the change log table. If the index is growing so fast that it uses all the tablespace to
the point where purging the change log tables does not help, then the user's
application may receive the following error:
ORA-01654: unable to extend index <index> by 128 in tablespace <tblspace>
For full details of the ttCacheConfig built-in procedure, see the "ttCacheConfig"
section in the Oracle TimesTen In-Memory Database Reference.
Poor autorefresh performance
Poor autorefresh performance is usually the result of large autorefresh operations. Use
the ttCacheAutorefreshStatsGet procedure to check the autorefresh duration
and observe whether the status remains InProgress for a long time.
Factors that can cause large autorefresh operations include:
■ Incremental autorefresh becomes full autorefresh
■ Unresponsive or dead TimesTen database degrades autorefresh performance
■ Excessive deadlocks, buffer busy and row lock waits during autorefresh cache
group refresh
■ Abnormally large log and base tables degrade autorefresh performance
■ Performance degrades when autorefresh interval is small
■ Large autorefresh interval
■ Large number of cache groups with the same interval
■ High rate of changes to the Oracle tables
■ The number of generations of child tables in a cache group
■ The number of rows in the cached Oracle tables
■ The size of the rows in the cached Oracle tables
Enable an AUTOREFRESH trace to diagnose autorefresh performance problems. See
"AUTOREFRESH tracing" on page 1-16.