Informix - Problem description
Problem IT20166 | Status: Closed |
SHARED LOCK HELD ON "BLD REF ###" WHEN DDL INSERT ON TABLE WITH REFERENTIAL CONSTRAINT WAITS ON LOCK HELD BY PARENT TABLE | |
product: | |
INFORMIX SERVER / 5725A3900 / C10 - IDS 12.10 | |
Problem description: | |
When the problem occurs, you will see a "bld ref" mutex being held with an owner 0 and a waiter with an ever increasing waittime comparable to: :$ onstat -g lmx IBM Informix Dynamic Server Version 12.10.FC8W1 -- On-Line -- Up 00:15:43 -- 1263824 Kbytes Locked mutexes: mid addr name holder lkcnt waiter waittime 3585 47bb6f40 bld ref 10 0 1 86 710 The waiter will likely have a stack something like this, but there are other variations showing a thread waiting on a "bld ref" mutex: Stack for thread: 86 sqlexec base: 0x0000000049447000 len: 266240 pc: 0x00000000013f51d6 tos: 0x0000000049486270 state: mutex wait vp: 8 (oninit) yield_processor_mvp (oninit) mt_lock_wait (oninit) mt_lock_helper (oninit) getrefmutex (oninit) blddicref (oninit) bldrefsx (oninit) maybe_bldrefs (oninit) bldstructs (oninit) sqcmd (oninit) sq_cmnd (oninit) sq_prepare (oninit) sqmain (oninit) spawn_thread (oninit) th_init_initgls (oninit) startup An onstat -g ath will look something like this for the thread with the lock held on parent table (84), the thread holding the share lock on the "bld ref" mutex while waiting on the lock release (85) and any other thread that is waiting on the "bld ref" mutex: Threads: tid tcb rstcb prty status vp-class name 84 493f4958 47075d40 1 cond wait netnorm 8cpu sqlexec 85 49367d10 47076618 1 yield lockwait 8cpu sqlexec 86 492d6568 47074b90 1 mutex wait bld ref 10 8cpu sqlexec | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * Users of IDS prior to 12.10.xC9 and 11.70.xC10 * **************************************************************** * PROBLEM DESCRIPTION: * * When the problem occurs, you will see a "bld ref" mutex * * being * * held with an owner 0 and a waiter * * with an ever increasing waittime comparable to: * * * * :$ onstat -g lmx * * * * IBM Informix Dynamic Server Version 12.10.FC8W1 -- * * On-Line * * -- Up 00:15:43 -- 1263824 Kbytes * * * * Locked mutexes: * * mid addr name holder * * lkcnt * * waiter waittime * * 3585 47bb6f40 bld ref 10 0 1 * * 86 710 * * * * The waiter will likely have a stack something like this, but * * there are other variations showing a * * thread waiting on a "bld ref" mutex: * * * * Stack for thread: 86 sqlexec * * base: 0x0000000049447000 * * len: 266240 * * pc: 0x00000000013f51d6 * * tos: 0x0000000049486270 * * state: mutex wait * * vp: 8 * * * * (oninit) yield_processor_mvp * * (oninit) mt_lock_wait * * (oninit) mt_lock_helper * * (oninit) getrefmutex * * (oninit) blddicref * * (oninit) bldrefsx * * (oninit) maybe_bldrefs * * (oninit) bldstructs * * (oninit) sqcmd * * (oninit) sq_cmnd * * (oninit) sq_prepare * * (oninit) sqmain * * (oninit) spawn_thread * * (oninit) th_init_initgls * * (oninit) startup * * * * An onstat -g ath will look something like this for the * * thread * * with the lock held on parent table (84), the thread holding * * the * * share lock * * on the "bld ref" mutex while waiting on the lock release * * (85) * * and any other thread that is waiting on the "bld ref" mutex: * * * * Threads: * * tid tcb rstcb prty status * * vp-class name * * * * 84 493f4958 47075d40 1 cond * * wait * * netnorm 8cpu sqlexec * * 85 49367d10 47076618 1 yield * * lockwait 8cpu sqlexec * * 86 492d6568 47074b90 1 mutex * * wait * * bld ref 10 8cpu sqlexec * **************************************************************** * RECOMMENDATION: * * Fixed in IDS 12.10.xC9+ and 11.70.xC10 if and when it * * becomes available. If this fix is required, contact * * Informix Technical Support. * **************************************************************** | |
Local Fix: | |
Solution | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 11.04.2017 04.11.2019 31.08.2020 |
Problem solved at the following versions (IBM BugInfos) | |
11.70.0, 11.70.xC10, 12.10.xC9 | |
Problem solved according to the fixlist(s) of the following version(s) |