Technical data

Poor autorefresh performance
4-24 Oracle TimesTen In-Memory Database Troubleshooting Procedures Guide
DeadDbRecovery parameter to Normal, Manual or None to describe how TimesTen
is to recover the database and all autorefresh cache groups. The DeadDbRecovery
setting applies to all TimesTen databases that use the same cache administration user.
While TimesTen is recovering the database and its autorefresh cache groups, there is
an autorefresh status for the TimesTen database and the autorefresh cache groups that
describes the recovery status for each of these entities. The TimesTen database can
have an automatic refresh status of Alive, Dead or Recovering. The autorefresh cache
groups can have an automatic refresh status of OK, Dead or Recovering. The
TimesTen database status changes are linked to changes in the status for the
autorefresh cache groups, as follows:
If the recovery method is set to Normal, then when TimesTen starts a full
automatic refresh on an autorefresh cache group, the cache group’s status is set to
Recovering and the database’s status is also set to Recovering.
The TimesTen database’s status is only set to Alive when all of the autorefresh
cache groups have either been recovered to OK or have been dropped.
When the database status is set to Dead, then all of its autorefresh cache groups
are also set to Dead.
When communication between the cache agent and the Oracle server is re-established,
TimesTen determines how to recover the autorefresh cache groups. TimesTen follows
the recovery method you configured in the DeadDbRecovery parameter in the
ttCacheConfig built-in procedure. This parameter can be set to one of the following:
Normal: This is the default. The autorefresh cache groups will each be recovered
with a full automatic refresh. After the first full refresh, the cache group is
recovered and will incrementally perform autorefresh.
The autorefresh cache groups within the same automatic refresh interval will be
transactionally consistent. Because it is a full refresh, it is not as performant as an
incremental refresh.
The autorefresh sets the status to Recovering. When the full autorefresh is
completed successfully, the autorefresh cache group status is set to OK.
Manual: You must manually refresh an autorefresh cache group to recover it, or
unload it if the cache group is dynamic.
None: The autorefresh cache group will never be recovered by a TimesTen
autorefresh. Drop and recreate the cache group to recover it.
The database status changes as the first autorefresh cache group status changes. If
there is at least one cache group that is in the process of recovery, then the database
status is set to Recovering. Once all cache groups have been recovered, the status of
the TimesTen database is marked as Alive.
The following example sets the DeadDbRecovery parameter to Normal for all
autorefresh cache groups. The dead TimesTen database will be recovered when all of
its autorefresh cache groups have each been recovered with a full automatic refresh.
ttIsql> call ttCacheConfig('DeadDbRecovery',,,'Normal');
Note: You can determine the autorefresh status of the TimesTen
database and autorefresh cache groups with the
ttCacheDbCgStatus built-in procedure, which is described in the
"ttCacheDbCgStatus" section in the Oracle TimesTen In-Memory
Database Reference.