14. Understanding Multiversion Concurrency Control : MVCC Restrictions
 
Share this page                  
MVCC Restrictions
When using MVCC, the database and table must adhere to the same requirements as for Ingres row locking; therefore, MVCC is not supported for:
Non-fast commit
iidbdb
Clusters (DMCM)
2K tables
Temporary tables (no locking used)
R-tree tables
Core system catalogs (which use short-term physical page locks)
Gateway tables
Rows that span pages
NOLOGGING is only compatible with MVCC read-only queries.
Note:  Catalog tables are exempt from these checks and require special handling.
If the requested lock level is MVCC and these requirements are not met, an error or warning is issued when the table is opened.
If the system lock level is not MVCC and the user has explicitly requested MVCC with SET LOCKMODE, then the following errors occur.
E_DM0012_MVCC_INCOMPATIBLE
is written to the log.
E_US120C Invalid lock level for table or database
is returned to the user.
If the system lock level is MVCC and the user has not requested a different lock level for the session or table and the table is incompatible with MVCC (in particular, 2K page size), then the following warning is written to iidbms_log:
WARNING: Table name in Database name is incompatible with MVCC; using PAGE locking.