search cancel

Oracle Runtime Error when accessing asset list

book

Article ID: 239922

calendar_today

Updated On:

Products

CA Service Management - Asset Portfolio Management

Issue/Introduction

When a user clicks on any clickable link in ITAM, such as to view an asset list, the Runtime error appears.

Seeing this error in the ITAMClient.log on the Web Server as well as from the end user's browser:

20XX-XX-XX XX:XX:XX,XXX UTC [14908] FATAL CA.Common.Web - Unhandled Exception: Oracle.ManagedDataAccess.Client.OracleException (0x80004005): ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired
ORA-06512: at "MDBADMIN.AL_GET_FIELDS_TO_RENDER_SEARCH", line 198
ORA-06512: at line 1

Enabling the error messages via this link, the browser displays the following:

Server Error in '/ITAM' Application. when logging into APM/ITAM
https://knowledge.broadcom.com/external/article?articleId=143723

 

Cause

The error is due to Oracle being unable to run the given stored procedure "MDBADMIN.AL_GET_FIELDS_TO_RENDER_SEARCH".   Oracle error code ORA-00054  would indicate that the stored procedure needs an exclusive lock to run, which the stored procedure is unable to obtain.  

A simple method to test the issue is to stand up two separate and different web browsers, one Chrome and one MS Edge, have each browser access the same affected ITAM login page, enter different credentials on each browser (both users are ordinary front end users), then click login in rapid succession on each browser.

Issue is unique to Oracle

Environment

Release : 17.3

Component : ITAM - User Interface

Resolution

The above is a concern that will be addressed at the database level in a future RU patch (above RU14).  Please contact Support if further assistance is required to address.

Additional Information

ORA-00054 is an error that commonly appears when a DDL operation is being attempted and it cannot obtain an exclusive lock.  DDL stands for "Data Definition Language" and are used in DBMS implementations to define database components.  Example commands are CREATE or ALTER statements.  The error in this case is tripping up in the stored procedure "MDBADMIN.AL_GET_FIELDS_TO_RENDER_SEARCH" where an operation to run such a DDL command is being blocked because the command requires an exclusive lock and there is a competing session that is preventing the exclusive lock from taking place.

For more information, please see this link from the Oracle web site regarding DDL_LOCK_TIMEOUT

Attachments