InConcert server "runs" but throws various errors.The key error condition to look for is a row of all zeros in ID_COUNTERS table.

InConcert server "runs" but throws various errors.The key error condition to look for is a row of all zeros in ID_COUNTERS table.

book

Article ID: KB0091751

calendar_today

Updated On:

Products Versions
TIBCO InConcert -
Not Applicable -

Description

Resolution:
Debug log can show:

18:25:04 (disp) 18657 t001: debug: svdbinit after initDatabaseSession
18:25:04 (disp) 18657 t001: debug: svdbinit Id initialize failed -- &ltError, IC, 100>: Row Not Found
18:25:04 (disp) 18657 t001: debug: end next sequence:counter 0:0
18:25:04 (disp) 18657 t001: debug: Oracle Message: -1 - ORA-00001: unique constraint (TCOLA_O.ID_COUNTERS_KEY) violated

18:25:04 (disp) 18657 t001: debug: Oracle Message: sql - insert into ID_COUNTERS (SERVER1,SERVER2,SEQUENCE_NUM,COUNTER) values (:b0,:b1,:b2,:b3) .

Any time you see an entry of debug: end next sequence:counter 0:0 in the debug log you will have the error condition.  Note even though the debug log shows this error you might not see the row in ID_COUNTERS until the server is shut down.

Solution 0: First verify that TWO_TASK is set correctly in the environment and in icconfig.xml.  If incorrect fix any configuration files but also remove any rows in  ID_COUNTERS left in the database that the InConcert server should not have been connecting to.

Solution I:
First check to see if the server name that is recorded in the debug log, for instance, "18:25:04 (disp) 18657 t001: debug: IC_SERVER_NAME = networx_uat_secondary" matches what is in SERVER_NAMES.SERVER_NAME.  Get a full dump SERVER_NAMES.  If the name does not match then you probably have an additional server which was installed on an upgraded server and the upgrade of SERVER_NAMES dropping the primary key which requires a unique server_number and adding a new primary key which requires a unique server_name.  

If you have an additional (secondary) server running that does not have its name in SERVER_NAMES then in sqlplus do step 3 from server/&ltname_of_server/database/&lttype_of_database&gtconvert_from_22.template.  The steps are to drop the primary key and then create a new index but instead of dropping the Primary key drop the index by that name.

Next you will add the missing row to SERVER_NAMES.  It will be something like insert into server_names values(1123,'networx_uat_secondary', 23,
22,1,'is-qatest10.gwl.com20080403091130','is-qatest9.gwl.com').  1123 is the server_number, ,'networx_uat_secondary is the name of the additional server, 23 is the DB version,  22 is the initial DB version and should be whatever is already in the table, is-qatest10.gwl.com20080403091130 is the Global ID and should be same for all rows of SERVER_NAMES, and is-qatest9.gwl.com' is the host name the additional server is running on.

Solution II:

The debug log server name matches the name in SERVER_NAMES.  In this case I do not know the cause of the problem.  However, there is at least a temporary solution, have the customer stop the server and remove any rows in ID_COUNTERS which start with zero.

The permanent solution is believed to be an upgrade from Oracle 10.2.0.2 to 10.2.0.4.

The debug log may also show such errors as:

____________________________________
10:06:39 (disp) 15121 t001: debug: svdbinit after initDatabaseSession
10:06:39 (disp) 15121 t001: debug: Oracle Message: -1410 - ORA-01410: invalid ROWID

10:06:39 (disp) 15121 t001: debug: Oracle Message: sql - delete  from ID_COUNTERS  where rowid = :x
10:06:39 (disp) 15121 t001: debug: svdbinit Id initialize failed -- &ltError, DBMS, -1410>: Undefined status code -1410 for DBMS facility
10:06:39 (disp) 15121 t001: debug: end next sequence:counter 0:0
____________________________________

or

____________________________________
10:26:19 (wrkr) 15122 t001: debug: Oracle Message: -1 - ORA-00001: unique constraint (TIBCOPT10.CLASS_MEMBERS_KEY) violated

10:26:19 (wrkr) 15122 t001: debug: Oracle Message: sql - insert into CLASS_MEMBERS (OBJECT_ID,CLASS_ID)select :b0 ,CLASS_ID  from CLASS_MEMBERS where OBJECT_ID=:b1
10:26:19 (wrkr) 15122 t001: debug: RPC done: 001032 Severity: 3 Time: 0.084 Queued: 0 Uniqueness Violation.
____________________________________

Issue/Introduction

InConcert server "runs" but throws various errors.The key error condition to look for is a row of all zeros in ID_COUNTERS table.