High System time with lock contention due to Oracle Database calling setitimer which calls uniqtime which locks tod_lock
(Doc ID 1616790.1)
Last updated on JULY 13, 2023
Applies to:
Solaris Operating System - Version 10 3/05 and laterInformation in this document applies to any platform.
Symptoms
High sytem time and possibly large run queue with lockstat showing something similar to:
Adaptive mutex spin: 222112 events in 2.558 seconds (86834 events/sec)
-------------------------------------------------------------------------------
Count indv cuml rcnt nsec Lock Hottest Caller
217378 99% 99% 0.00 508095 tod_lock[8] uniqtime+0x8
nsec ------ Time Distribution ------ count Stack
512 | 10 xsetitimer+0x1e4
1024 | 137 setitimer+0x60
2048 | 339 syscall_trap+0xac
4096 | 1583
8192 |@@@@@@@@@@@@@@@@@@@@@@ 163416
16384 |@ 7717
32768 |@ 12084
65536 | 3710
131072 | 1998
262144 | 1767
524288 | 1796
1048576 | 2459
2097152 | 3985
4194304 | 5608
8388608 |@ 8565
16777216 | 1873
33554432 | 244
67108864 | 76
134217728 | 8
268435456 | 3
-------------------------------------------------------------------------------
...
...
And thread stacks showing something simiar to:
...
...
00000306a7460ae0 3067704b978 3066bf7d800 1 21 0
PC: turnstile_block+0x5fc CMD: oraclefinindp1 (LOCAL=NO)
stack pointer for thread 306a7460ae0: 2a109034ed1
[ 000002a109034ed1 turnstile_block+0x5fc() ]
mutex_vector_enter+0x428()
uniqtime+8()
xsetitimer+0x1e4()
setitimer+0x60()
syscall_trap+0xac()
...
...
Changes
N/A
Cause
To view full details, sign in with your My Oracle Support account. |
|
Don't have a My Oracle Support account? Click to get started! |
In this Document
Symptoms |
Changes |
Cause |
Solution |