When a row's physical location changes, the logical rowid remains valid even if it contains a guess,
although the guess could become stale and slow down access to the row. Guess information cannot be
updated dynamically. For secondary indexes on index-organized tables, however, you can rebuild the
index to obtain fresh guesses. Note that rebuilding a secondary index on an index-organized table
involves reading the base table, unlike rebuilding an index on an ordinary table.
Collect index statistics with the DBMS_STATS package or ANALYZE statement to keep track of the
staleness of guesses, so Oracle does not use them unnecessarily. This is particularly important for
applications that store rowids with guesses persistently in a UROWID column, then retrieve the
rowids later and use them to fetch rows.
When you collect index statistics with the DBMS_STATS package or ANALYZE statement, Oracle checks
whether the existing guesses are still valid and records the percentage of stale/valid guesses in
the data dictionary. After you rebuild a secondary index (recomputing the guesses), collect index
In general, logical rowids without guesses provide the fastest possible access for a highly volatile
table. If a table is static or if the time between getting a rowid and using it is sufficiently
short to make row movement unlikely, logical rowids with guesses provide the fastest access.
来自 “ ITPUB博客 ” ，链接：http://blog.itpub.net/10599713/viewspace-983303/，如需转载，请注明出处，否则将追究法律责任。