Document ID: 43781
Updated: Aug 15, 2005
Contents
Introduction
This document describes a problem with opening any Cisco Intelligent Contact Management (ICM) script on the Administration Workstation (AW) in an ICM environment. The solution explains the debugging process of finding and correcting the error by querying the database and examining related ICM process logs.
Before You Begin
Conventions
For more information on document conventions, see the Cisco Technical Tips Conventions.
Prerequisites
Readers of this document should be knowledgeable of the following:
-
Cisco ICM
-
Microsoft SQL Server
Components Used
The information in this document is based on the software and hardware versions below.
-
Cisco ICM version 4.6.2 and later
-
Microsoft SQL version 6.5 and 7.0
The information presented in this document was created from devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If you are working in a live network, ensure that you understand the potential impact of any command before using it.
Problem
When opening any Cisco ICM script using the Script Editor tool, the Script Editor fails with one of these error messages (Figure 1):
-
Exclusive access to the router denied because the router is busy
-
Could not acquire script lock. Distributor configuration database is out of date. Wait a moment and try again. If this messsage appears repeatedly check on the status of UpdateAW on the distributor.
During the examination of the corresponding router log on CallRouterB, this message appears:
13:29:08 ra-rtr Router preparing to verify the config sequence number from the logger. 13:29:08 ra-rtr Incorrect config sequence number received from the Logger; 293429625145 expected, 0 received.
Note: The previous value is displayed over two lines due to space limitations.
According to the bold text in the above log, CallRouterB receives an incorrect configuration sequence number (recovery key or configuration key) from the Logger. It expects 293429625145, but receives 0. To verify the recovery key in the Config_Message_Log database table, it is found that it contains only 1 row and does not contain the proper recovery key on both LoggerA and LoggerB.
Because the recovery key on both Loggers is listed as 0, which does not match the recovery key on the CallRouter, AWs fail to make configuration changes.
Solution
The recovery key on both Loggers must be repaired so it matches the recovery key on the CallRouter. The step-by-step procedure is as follows:
-
Check the existence of the Cisco ICM configuration on both Loggers by running the following SQL query commands:
-
Choose * from Peripheral
-
Choose * from Service
-
Choose * from Skill_Group
If the configuration exists, continue to the next step. Otherwise go to step 12.
-
-
Obtain the recovery key either by checking the CallRouter log or by running the following SQL query command on the AW.
Select ControllerConfigChangeKey from AWControl
The current recovery key is 293429625145.
-
Stop ICM services on LoggerB.
Note: You can start with LoggerA instead of LoggerB.
-
Run the following SQL query commands on LoggerB.
-
Truncate table Config_Message_Log
-
Insert into Config_Message_Log values(0.0, 'LogBegin', 'Config_Message_Log', getdate(), 0x0000)
Note: 0.0, LogBegin, Config_Message_Log, getdate() and 0x0000 represent RecoveryKey, LogOperation, TableName, DateTime and ConfigMessage respectively in the Config_Message_Log database table.
-
Insert into Config_Message_Log values(293429625145.0, 'LogTruncated', 'Config_Message_Log', getdate(), 0x0000)
Note: 293429625145.0, LogTruncated, Config_Message_Log, getdate() and 0x0000 represent RecoveryKey, LogOperation, TableName, DateTime and ConfigMessage respectively in the Config_Message_Log database table.
-
-
Verify the two new rows in the Config_Message_Log database table on LoggerB by running the following SQL query command:
Select * from Config_Message_Log
The output should appear as follows:
RecoveryKey LogOperation TableName DateTime ConfigMessage ------------ ------------ ------------------ --------------------- ------------- 0.0 LogBegin Config_Message_Log Feb 25 2003 12:00AM 0x0000 293429625145.0 LogTruncated Config_Message_Log Feb 25 2003 1:50PM 0x0000
If the Config_Message_Log table contains the correct data, LoggerB should be in sync with CallRouterB and allow updates from AWs.
-
Stop ICM services on LoggerA.
-
Start ICM services on LoggerB.
-
Verify the recovery key is synchronized with CallRouterB by examining the router log on CallRouterB.
13:55:33 rb-rtr At least one logger is available for the router to process config transactions. 13:55:33 rb-rtr Router preparing to verify the config sequence number from the logger. 13:55:34 rb-rtr Router has verified that the logger still has the correct config sequence number of 293429625145. 13:55:50 rb-rtr Router preparing to verify the config sequence number from the logger. 13:55:50 rb-rtr Router has verified that the logger still has the correct config sequence number of 297768125004.
-
Verify the configuration change is implemented by examining the detail in the Config_Message_Log database table. The content of the Config_Message_Log should have more rows comparing to step 5:
RecoveryKey LogOperation TableName DateTime ConfigMessage ------------ ------------ ------------------ --------------------- ------------- 0.0 LogBegin Config_Message_Log Feb 25 2003 12:00AM 0x0000 293429625145.0 LogTruncated Config_Message_Log Feb 25 2003 1:50PM 0x0000 297768125000.0 First (null) Feb 25 2003 1:55PM 297768125001.0 Add Skill_Target Feb 25 2003 1:55PM 297768125002.0 Add t_Agent Feb 25 2003 1:55PM 297768125003.0 Add t_Agent Feb 25 2003 1:55PM 297768125004.0 Last (null) Feb 25 2003 1:55PM
-
Run ICRDBA on LoggerA to synchronize the database on LoggerA with the database on LoggerB.
-
Start ICM services on LoggerA.
-
If the problem continues, registered users of Cisco Connection Online (CCO) may open a service request (registered customers only) with Cisco Technical Assistance Center (TAC). If you are not a registered user, please go to User Registration and then open a service request (registered customers only) with TAC.
-
Restart the Distributor services.
Related Information
Open a Support Case
(Requires a Cisco Service Contract.)
Related Cisco Support Community Discussions
The Cisco Support Community is a forum for you to ask and answer questions, share suggestions, and collaborate with your peers.
Refer to Cisco Technical Tips Conventions for information on conventions used in this document.
