Siebel Tools >  Siebel Remote: Synch Failing when Applying Database Changes with errors SBL-MRG-00158 and ORA-30036

Siebel Remote: Synch Failing when Applying Database Changes with errors SBL-MRG-00158 and ORA-30036

Siebel Remote - Version 16.0 [IP2016] and later


On a SIT Environment, Remote Synchronization session fails at the time of Applying database changes.


ERROR
-----------------------

DBCLog DBCLogError 1 0000000459e72ea4:0 2017-10-18 10:30:28 [tp][ODBC Oracle driver][Oracle]ORA-30036: unable to extend segment by 8 in undo tablespace 'UNDOTBS2'
GenericLog GenericError 1 0000000459e72ea4:0 2017-10-18 10:30:28 Message: Error: An ODBC error occurred,
Additional Message: pfNativeError: 30036; szSQLState: S1000; szErrorMsg: [tp][ODBC Oracle driver][Oracle]ORA-30036: unable to extend segment by 8 in undo tablespace 'UNDOTBS2'

GenericLog GenericError 1 0000000459e72ea4:0 2017-10-18 10:30:28 Pessimistic Insert: unable to insert a row. Table S_EVT_ACT, RowId 1-STATSJ.
The row had the following <attribute, value> pairs:
<ROW_ID, 1-STATSJ>
...

GenericLog GenericError 1 0000000459e72ea4:0 2017-10-18 10:30:28 (mrgsins.cpp (660) err=1638558 sys=2) SBL-MRG-00158: Pessimistic Insert: unable to insert a row.
...

GenericLog GenericError 1 0000000459e72ea4:0 2017-10-18 10:30:28 Message: GEN-03,
Additional Message: File: C:\sba81\Client\LOCAL_XE\inbox\00007521.dx. Number of txns successfully read and committed: 0.

GenericLog GenericError 1 0000000459e72ea4:0 2017-10-18 10:35:15 (da_txnmerge.cpp (745) err=1114280 sys=0) SBL-DCK-00168: Unable to apply database transactions. Please refer to the detailed log messages elsewhere in this file.
GenericLog GenericDebug 5 0000000459e72ea4:0 2017-10-18 10:37:37 Process Name: Client Docking Session Manager, Status: Completed with Errors, Message Unable to Apply database changes

 

STEPS
-----------------------
The issue can be reproduced in customer's environment with the following steps:
1. Setup Siebel Remote user and extract/initialize the LOCAL_XE database;
2. Make some further changes on the data on Server database as well as on the Local Client;
3. Start a Synchronization session;
4. See that ending with error in above mentioned step

 

CAUSE
The issue was caused by the fact that UNDO tablespace became full and could not be extended automatically.

When there are not enough free undo segments to be allocated / reused for current transactions happening on the Oracle XE database, that error message can appear.
(ORA-30036: unable to extend segment by 8 in undo tablespace '%1')

The issue is also documented in:
- "Troubleshooting ORA-30036 - Unable To Extend Undo Tablespace (Doc ID 460481.1)"
- and other generic Oracle Database documentation such as - Oracle Database Online Documentation 11g Release 2 (11.2) / Database Administration > "Database Error Messages"

In current case, that standard UNDO tablespace / datafile of 2GB for Remote XE databases was changed to a smaller value, thus leading to this issue.

SOLUTION
As suggested in Oracle documentation and Related KB notes, in order to avoid that error, one should ensure the sizing of the Undo tablespace / datafile allows transactions to complete / commit.

Normally it would be expected that default settings to be fine for most of the usage scenarios and customers.
But if specific implementations or use conditions would require resizing that Undo tablespace, that could be either increased (i.e. 3GB) or set to autoextend.

For that purpose, one should use a statement similar to those suggested in -
Oracle Database Online Documentation 11g Release 2 (11.2) / Database Administration > Database Administrator's Guide > "Managing Undo"

-------
ALTER TABLESPACE undotbs_01
ADD DATAFILE '(...)/undo0102.dbf' AUTOEXTEND ON NEXT 1M
MAXSIZE UNLIMITED;
-------

(- or if available disk space would be a constraint, that MAXSIZE could be limited to a specific value to prevent that file grow too large