在Cisco Unified Contact Center Express環境中,使用者無法在思科客戶響應解決方案(CRS)管理員上更改Java電話應用程式設計介面(JTAPI)觸發器的觸發資訊部分中的配置。在嘗試更改JTAPI觸發器的觸發資訊部分中的應用程式時,MADM日誌中出現以下錯誤消息:
java.lang.InterruptedException: User (CRSuser) attempt to acquire mutex lock for the purpose of (Cluster Mutex acquired by JTAPI Provider - Update.), but could not acquirelock within (3000) milisecond. Please try after few minutes
本文說明如何排解這些互斥鎖錯誤的問題。
思科建議您瞭解以下主題:
Cisco CRS
Cisco Unified Contact Center Express
DC目錄管理
Active Directory
本文件所述內容不限於特定軟體和硬體版本。
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路正在作用,請確保您已瞭解任何指令可能造成的影響。
如需文件慣例的詳細資訊,請參閱思科技術提示慣例。
當使用者嘗試使用Cisco CRS Application Admin更新JTAPI觸發器/上載提示或指令碼時,將顯示以下錯誤消息:
java.lang.InterruptedException: User (CRSuser) attempt to acquire mutex lock for the purpose of (Cluster Mutex acquired by JTAPI Provider - Update.), but could not acquirelock within (3000) milisecond. Please try after few minutes
當輕型目錄訪問協定(LDAP)中缺少鎖定條目時,這是一個已知的缺陷。 此問題已記錄在Cisco錯誤ID CSCsd13553(僅限註冊客戶)。
如果這是DC目錄環境,請使用此解決方案來解決問題。
注意:您需要以目錄管理器的身份登入到DC目錄管理器,以便進行必要的更改。
在DC目錄LDAP中,選擇CCN Apps > clusters > [profile] > Locks > Locks.000000000,並確認這些互斥鎖項的名稱如下清單所示:
lockApplicant?empty lockOwner?empty lockUsage?empty, lockUserInfo?empty lockUserTimestamp?empty
如果步驟1中的任何條目在其名稱中缺少?empty字尾,則需要重新命名它們以與步驟1中的清單完全匹配。
注意:您可以忽略lockExpiration條目。它不需要名稱中的?空字尾。
如果完全缺少____?空的任何條目,則必須手動新增它們。若要新增專案,請完成以下步驟:
註:lockApplicant?空值僅用於說明目的。
按一下右鍵Locks.00000000,然後選擇New > ciscoCCNocConfigInfoCES。
將名稱輸入為lockApplicant?空,然後按Enter。
在下一個視窗中,按一下Add,然後在「輸入字串值」框中輸入x。然後按一下OK。
再次按一下OK。
確認所有這些條目的命名正確後,確認這些條目的值配置為x(小寫x):
lockApplicant?empty lockOwner?empty lockUsage?empty, lockUserInfo?empty lockUserTimestamp?empty
注意:忽略此步驟中的lockExpiration條目。其值不應為x。
如果沒有將其中任何鎖專案值配置為x,則將其配置為x。
如果整合了Active Directory(AD),則需要使用 ADSI編輯 才能更改鎖定引數。完成以下步驟,以便在AD環境中解決問題:
在AD伺服器上,您可以在開啟Active Directory服務介面(ADSI)編輯實用程式時瀏覽目錄架構。然後向下鑽取到dc=xxxxx, dc=com, ou=Cisco, ou=CCNApps, ou=clusters, ou= <profilename>, ou=Locks, ou=Locks.00000000000locks。
檢查鎖定專案的名稱是否如以下清單所示:
lockApplicant?empty lockOwner?empty lockUsage?empty, lockUserInfo?empty lockUserTimestamp?empty
如果步驟2中的任何條目在其名稱中缺少?empty字尾,則需要重新命名它們,以便與步驟2中的清單完全匹配。
如果完全缺少____?空的任何條目,則需要手動新增它們。完成以下步驟以新增專案:
註:lockApplicant?空值僅用於說明目的。
按一下右鍵Locks.00000000,然後選擇New > Object > ciscoCCNocConfigInfoCES。
將名稱輸入為lockApplicant?空,然後按下一步。
在下一個視窗中,按一下More Attributes。
從「選擇要檢視的屬性」下拉選單中,選擇ciscoCCNatConfigInfoCESValue。
在「編輯」屬性中:框中,輸入x,然後按一下Add。
按一下「OK」(確定)。
按一下「Finish」(結束)。
確認所有條目的命名正確後,確認這些條目的值配置為x(小寫x):
lockApplicant?empty lockOwner?empty lockUsage?empty, lockUserInfo?empty lockUserTimestamp?empty
注意:忽略此步驟中的lockExpiration條目。其值不應為x。
如果沒有將其中任何鎖專案值設定為x,請完成以下步驟,以便將其設定為x:
按一下右鍵lockApplicant?empty並選擇Properties。
註:lockApplicant?空值僅用於說明目的。
在屬性中:框中,選擇ciscoCCNatConfigInfoCESValue,然後按一下Edit。
突出顯示值:框中,然後按一下Remove(如果沒有則跳過)。
在要新增的值中:框中鍵入x,然後按一下Add。然後按一下OK。
按一下「Apply」,然後「OK」。
當使用者為客戶響應解決方案管理應用程式中的座席設定呼叫結束時間時,將顯示以下錯誤消息:
Can not acquire ClusterMutex; nested exception is: com.cisco.config.ConfigException: UnmarshalException; nested exception is: javax.xml.bind.UnmarshalException: Content is not allowed in prolog. - with linked exception: [org.xml.sax.SAXParseException: Content is not allowed in prolog.]
完成以下步驟即可解決此問題:
轉到CRS伺服器上的C:\program files\wfavvid\ClusterData\Default\資料夾。
將com.cisco.crs.cluster.config.LockConfig資料夾重新命名為com.cisco.crs.cluster.config.LockConfig.bak。
重新啟動節點管理器。
如果不希望重新啟動節點管理器,以下是清除MutexLocks的另一種方法:
按一下Start並鍵入CET。
在彈出消息上選擇No。
在左側清單中查詢並按一下com.cisco.crs.cluster.config.LockConfig。
按兩下右側的記錄。
選擇位於頂部的com.cisco.crs.cluster.config.LockConfig頁籤。
清除所有非空欄位。
當您嘗試更改資源的技能時,會收到以下錯誤:
Error: can not acquire ClusterMutex; nested exception is: com.cisco.config.ConfigException: Store config record – error: config request timed out.
出現此錯誤的原因可能是以下問題之一:
備份過程沒有從資料庫中清除鎖定,但在兩個伺服器上鎖定和歸檔都是乾淨的。
鎖配置檔案可能有問題。具體來說,伺服器無法從中讀取,或伺服器中的XML檔案已損壞。
完成以下步驟即可解決此問題:
從CET驗證鎖定和存檔在兩個伺服器上是否乾淨。
驗證網絡卡順序以及是否已正確設定cliconfg。
轉到CRS伺服器上的C:\program files\wfavvid\ClusterData\Default\資料夾。
將com.cisco.crs.cluster.config.LockConfig資料夾重新命名為com.cisco.crs.cluster.config.LockConfig.bak。
重新啟動群集。
完成以下步驟以驗證資料庫上的互斥鎖設定:
轉至開始 > 運行,輸入cet,然後按Enter。
彈出視窗時,按一下No。
在左側窗格中,按兩下此配置對象型別:com.cisco.crs.cluster.config.ClusterSpecificConfig。
在右側窗格中,按兩下為節點返回的行。
在新視窗中,按一下com.cisco.crs.cluster.config.ClusterSpecificConfig頁籤。
按一下Archive頁籤。
如果有關存檔ID、存檔請求資訊、存檔使用者資訊或存檔客戶端的雙引號中存在任何內容,請刪除內容,但保留雙引號。
按一下「Apply」。
按一下「OK」以使變更生效。
選擇位於頂部的com.cisco.crs.cluster.config.LockConfig頁籤。
如果有關「鎖定所有者」、「鎖定使用情況」或「鎖定使用者資訊」的雙引號中存在任何內容,請刪除內容,但保留雙引號。
按一下「Apply」。
按一下「OK」以使變更生效。
如果您有兩個UCCX伺服器,請在第二個節點中執行相同的過程。
嘗試更新現有配置時,收到以下錯誤:
User (lawr) attempt to acquire mutex lock for the purpose of (Cluster Mutex acquired by ICD - CSD RG Update.), but could not acquire lock within (3000) milisecond. Please try after few minutes
如果重新啟動並重新啟動節點管理器,RMCM子系統將停滯在「正在初始化」狀態。嘗試釋放鎖時,必須刪除一些屬性並建立新屬性。因此,LDAP有時會引發錯誤。這會導致不建立該屬性。從此以後,任何Appadmin操作都將導致ClusterMutex錯誤,重新啟動引擎將導致RmCm停滯在「正在初始化」狀態,因為它無法獲得ClusterMutex鎖定。
完成以下步驟以新增lockApplicant條目:
按一下右鍵Locks.xxxxxxx,然後選擇New > ciscoCCNocConfigInfoCES。
輸入名稱lockApplicant?empty,然後按Enter。
在下一個視窗中,按一下Add,然後在Enter String value框中輸入x。
按一下「OK」(確定)。
這一點記錄在Cisco錯誤ID CSCsd13553(僅限註冊客戶)。
修訂 | 發佈日期 | 意見 |
---|---|---|
1.0 |
28-Sep-2011 |
初始版本 |