Why lock-timeout happen while querying system tables? (DBMR2870)
If you executed SQL statements in some simultaneous connections, for example: delete all records of one table, or drop/create table with "OUTPUT" in DCI, and the SYSTEM X LOCK will be added, and other connections cannot access this table. It's normal behavior.
But, even when you query some system table or check something in JDBA tool, “lock-timeout” also happens, which because system tables don’t allow dirty read.
If you want to query system table or check something in JDBA tool when SYSTEM X-LOCK exists, you can use “for browse” option as following:
>select * from SYSTABLE for browse;
Or set DB_DBIND=1 in dmconfig.ini (needs restarting DB)
DB_DBIND=1 //dirty system table binding
Or runtime set with
>call SETSYSTEMOPTION('DBIND', '1');
Version: All
Product: Normal/Bundle
Platform: Windows/Linux