My Oracle Support Banner

Blocking Sessions For EAI User Due To Vanilla SQL Executions On Database Causing Performance Delays (Doc ID 3081197.1)

Last updated on APRIL 14, 2025

Applies to:

Siebel CRM - Version 24.10 and later
Information in this document applies to any platform.

Symptoms

The "EAIUSER" sessions are experiencing significant performance issues due to blocking on the database tables 'S_PARTY' and 'S_USER' in a Siebel CRM system.

This blocking occurs during the execution of certain vanilla SQL statements, causing delays in processing inbound web service requests.

Under high load, these delays appear as the Siebel error "SBL-DAT-00523" ("Database operation failed"), indicating a failure or timeout in database operations.

The EAI Object Manager component log file contains the specific SQL statements that are causing these bottlenecks, which are related to updates on the 'S_PARTY' and 'S_USER' tables.

 SQL Statements Causing Blocking and Delays:

SQL:
▔▔▔
UPDATE SIEBEL.S_PARTY 
SET DB_LAST_UPD_SRC = :B4, 
    DB_LAST_UPD = CURRENT_DATE, 
    LAST_UPD = :B3, 
    LAST_UPD_BY = :B2, 
    MODIFICATION_NUM = :B1 
WHERE ROW_ID = :B6 
  AND MODIFICATION_NUM = :B5

Another SQL taking 20 seconds to execute:

SQL :
▔▔▔

BEGIN 
    UPDATE SIEBEL.S_PARTY 
    SET DB_LAST_UPD_SRC = :1, 
        DB_LAST_UPD = current_date, 
        LAST_UPD = :2, 
        LAST_UPD_BY = :3, 
        MODIFICATION_NUM = :4 
    WHERE ROW_ID = :5 
      AND MODIFICATION_NUM = :6; 
    IF SQL%ROWCOUNT != 1 THEN 
        raise_application_error(-20001, 'No Rows Processed'); 
    END IF;
    UPDATE SIEBEL.S_CONTACT_X 
    SET ATTRIB_21 = :7, 
        X_VIOLATION_COUNT = :8,  
        MODIFICATION_NUM = :9, 
        LAST_UPD_BY = :10, 
        LAST_UPD = :11, 
        DB_LAST_UPD = current_date, 
        DB_LAST_UPD_SRC = :12 
    WHERE ROW_ID = :13 
      AND MODIFICATION_NUM = :14;
    IF SQL%ROWCOUNT != 1 THEN 
        raise_application_error(-20001, 'No Rows Processed'); 
    END IF;
END;

 

STEPS to Reproduce:
▔▔▔▔▔▔▔▔▔▔▔▔
The issue can be reproduced at will with the following steps:

  ➽ Set the following parameter in the 'EAI.cfg' file on all Siebel application servers:

    DisableLastLoginTS = TRUE
    [This setting ensures that Siebel disables concurrent login/logoff updates for the same EAI user during inbound requests to the 'EAIObjMgr_enu' component.]

  ➽ Restart (bounce) all Siebel services to ensure any cached configurations are cleared and the system starts processing requests with the new 'DisableLastLoginTS' setting.

  ➽ Initiate a high volume of inbound web service calls from the source system.

Changes

 

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


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.