Document Type | Technical Information
Category | Administration
Applicable Product Versions | 5SP1FS01, 5SP1FS02, 5SP1FS03, 5SP1FS04, 5SP1FS06, 6FS01, 6FS02, 6FS03, 6FS04, 6FS05, 6FS06, 6FS07, 6FS07PS, 7FS01, 7FS02, 7FS02PS
Document Number | TADTI028
Overview
This explains cases where a session does not terminate if the FORCE is not performed for some reason.
Before killing with FORCE, check whether it is holding a SPINLOCK and then proceed.
Method
By mapping the process and the thread ID of the session, if SPINLOCK_ACQ_CNT=0 and SPIN_OWNER= -1, you can forcibly terminate the session with session kill force.
CautionIf a SPINLOCK is held, there is a high possibility that the DB will go down, so prior verification is necessary.
select inst_id, sid, serial#, pid, OS_THR_ID from gv$session where sid in (763) and inst_id = 1; INST_ID SID SERIAL# PID OS_THR_ID 1 763 127,820 23,655 24,048 select PID,PTHREAD_ID,SPINLOCK_ACQ_CNT, SPIN_OWNER from VT_THRINFO2 where pid = 23655 and pthread_id = 24048; PID PTHREAD_ID SPINLOCK_ACQ_CNT SPIN_OWNER 23,655 24,048 0 -1 select PID,PTHREAD_ID,SPINLOCK_ACQ_CNT, SPIN_OWNER from VT_THRINFO2 where pid = 23655 and pthread_id = 24048; PID PTHREAD_ID SPINLOCK_ACQ_CNT SPIN_OWNER 23,655 24,048 0 -1 alter system kill session (763,127820) force;