High CPU consumption from AQ Enqueue and Dequeue Sessions after Application Startup
Last updated on NOVEMBER 05, 2012
Applies to:Oracle Server - Enterprise Edition - Version 10.2.0.1 to 10.2.0.4 [Release 10.2]
Oracle Server - Enterprise Edition - Version 18.104.22.168 to 22.214.171.124 [Release 11.1]
Information in this document applies to any platform.
An AQ application which has successfully run against a 9.2 production database for a number of years is exhibiting high cpu consumption on startup of the sessions associated with enqueue and dequeue which it creates on startup of the application.
The CPU consumption persists for about 10 minutes and then the load on the system drops to an
acceptable level. Overall Database performance is greatly affected by this behaviour.
In the AWR reports waits on library cache: mutex X appear as the top foreground wait event.
There are a large number of cursors associated with SYS.KOTTD$ table.
NLS_LENGTH_SEMANTICS=CHAR specified for the database.
Executing the following query checks for pseudo cursors with high version counts
connect / as sysdba
select count(*), sc.sql_id, s.kglnaobj, sc.auth_check_mismatch, sc.language_mismatch from v$sql_shared_cursor sc, x$kglob s where sc.sql_id=s.kglobt03 and s.kglnaobj like 'table_%' group by sc.sql_id, s.kglnaobj, sc.auth_check_mismatch, sc.language_mismatch
indicates that we have cursor mismatch on AUTH_CHECK_MISMATCH and LANGUAGE_MISMATCH for those cursors with high version counts.
Sign In with your My Oracle Support account
Don't have a My Oracle Support account? Click to get started
My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms