Dans un environnement de Cisco Unified Contact Center Express, un utilisateur ne peut pas changer des configurations dans la section Informations de déclencheur des déclencheurs de l'interface de programmation de téléphonie de Javas (JTAPI) sur l'admin du Cisco Customer Response Solution (CRS). Dans la tentative de changer l'application dans la section Informations de déclencheur des déclencheurs JTAPI, ce message d'erreur apparaît dans le log 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
Ce document décrit comment dépanner ces erreurs de verrouillage de mutex.
Cisco vous recommande de prendre connaissance des rubriques suivantes :
Cisco CRS
Cisco Unified Contact Center Express
Gestion de DC Directory
Active Directory
Ce document n'est pas limité à des versions de matériel et de logiciel spécifiques.
Les informations contenues dans ce document ont été créées à partir des périphériques d'un environnement de laboratoire spécifique. Tous les périphériques utilisés dans ce document ont démarré avec une configuration effacée (par défaut). Si votre réseau est opérationnel, assurez-vous que vous comprenez l'effet potentiel de toute commande.
Pour plus d'informations sur les conventions utilisées dans ce document, reportez-vous à Conventions relatives aux conseils techniques Cisco.
Quand un utilisateur tente de mettre à jour les déclencheurs JTAPI/les demandes ou scripts de téléchargement utilisant l'admin d'application de Cisco CRS, ce message d'erreur apparaît :
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
C'est un défaut connu quand une entrée de verrouillage manque dans le Protocole LDAP (Lightweight Directory Access Protocol). Cette question est documentée par l'ID de bogue Cisco CSCsd13553 (clients enregistrés seulement).
Si c'est un environnement de DC Directory, employez cette solution pour résoudre le problème.
Remarque: Vous devez se connecter dans le DC Directory le gestionnaire comme un gestionnaire de répertoire afin d'apporter les modifications nécessaires.
Dans le LDAP de DC Directory, choisissez les app > les batteries CCN > [profil] > verrouille > Locks.00000000 et confirme que ces entrées de verrouillage de mutex sont nommées pendant que cette liste affiche :
lockApplicant?empty lockOwner?empty lockUsage?empty, lockUserInfo?empty lockUserTimestamp?empty
Si l'un des les entrées dans l'étape 1 sont manquer ? suffixe vide dans leur nom, alors ils doivent être renommés pour apparier exactement la liste dans l'étape 1.
Remarque: Vous pouvez ignorer l'entrée de lockExpiration. Il n'a pas besoin de ? suffixe vide dans le nom.
Si lock__ l'un des ? les entrées vides manquent complètement, vous doivent les ajouter manuellement. Afin d'ajouter l'entrée, terminez-vous ces étapes :
Remarque: Le lockApplicant ? la valeur vide est utilisée à des fins d'illustration seulement.
Cliquez avec le bouton droit sur Locks.00000000 et sélectionnez nouveau > ciscoCCNocConfigInfoCES.
Écrivez le nom comme lockApplicant ? videz et appuyez sur entrent.
Dans la prochaine fenêtre, cliquez sur Add et écrivez x dans la case de valeur de chaîne d'entrer. Cliquez ensuite sur OK.
Cliquez sur OK de nouveau.
Une fois que vous avez confirmé que toutes ces entrées sont nommées correctement, confirmez que ces entrées ont la valeur configurée comme x (lettre minuscule x) :
lockApplicant?empty lockOwner?empty lockUsage?empty, lockUserInfo?empty lockUserTimestamp?empty
Remarque: Ignorez l'entrée de lockExpiration dans cette étape. Sa valeur ne devrait pas être X.
Si l'un de ces valeurs d'entrée de verrouillage n'est pas configurées comme x, alors configurez-les comme X.
Si vous avez une intégration de Répertoire actif (AD), vous devez utiliser ADSI éditez afin de changer les paramètres de verrouillage. Terminez-vous ces étapes afin de résoudre le problème dans un environnement d'AD :
Sur le serveur d'AD, vous pouvez parcourir votre schéma de répertoire quand vous ouvrez l'interface de services d'annuaire actifs (ADSI) éditez l'utilitaire. Effectuez un zoom avant alors au dc=xxxxx, dc=com, ou=Cisco, des ou=CCNApps, des ou=clusters, <profilename> d'ou=, des ou=Locks, ou=Locks.000000000.
Vérifiez que les entrées de verrouillage sont nommées pendant que cette liste affiche :
lockApplicant?empty lockOwner?empty lockUsage?empty, lockUserInfo?empty lockUserTimestamp?empty
Si l'un des les entrées dans l'étape 2 sont manquer ? suffixe vide dans leur nom, alors ils doivent être renommés pour apparier exactement la liste dans l'étape 2.
Si lock__ l'un des ? les entrées vides manquent complètement, puis vous le besoin de les ajouter manuellement. Terminez-vous ces étapes afin d'ajouter l'entrée :
Remarque: Le lockApplicant ? la valeur vide est utilisée à des fins d'illustration seulement.
Cliquez avec le bouton droit sur Locks.00000000 et nouveau choisi > objet > ciscoCCNocConfigInfoCES.
Écrivez le nom comme lockApplicant ? videz et appuyez sur ensuite.
Dans la prochaine fenêtre, cliquez sur plus d'attributs.
Du choisi une propriété pour visualiser le menu déroulant, ciscoCCNatConfigInfoCESValue choisi.
Dans l'attribut d'éditer : la case, écrivent x et cliquent sur Add.
Cliquez sur OK.
Cliquez sur Finish (Terminer).
Une fois que vous avez confirmé que toutes les entrées sont nommées correctement, confirmez que ces entrées ont la valeur configurée comme x (lettre minuscule x) :
lockApplicant?empty lockOwner?empty lockUsage?empty, lockUserInfo?empty lockUserTimestamp?empty
Remarque: Ignorez l'entrée de lockExpiration dans cette étape. Sa valeur ne devrait pas être X.
Si l'un de ces valeurs d'entrée de verrouillage ne sont pas configurées comme x, alors terminez-vous ces étapes afin de les configurer comme x :
Clic droit sur lockApplicant ? videz et choisissez Properties.
Remarque: Le lockApplicant ? la valeur vide est utilisée à des fins d'illustration seulement.
Des attributs : la case, ciscoCCNatConfigInfoCESValue choisi et cliquent sur Edit.
Mettez en valeur l'entrée existante en valeurs : la case et le clic retirent (saut si aucun n'est présent).
En valeur à ajouter : la case, le type X et cliquent sur Add. Cliquez ensuite sur OK.
Cliquez sur Apply et puis APPROUVEZ.
Quand l'utilisateur a installé l'appel concluez l'heure pour les agents dans l'application de gestion de solutions de réponse de client, ce message d'erreur apparaît :
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.]
Procédez comme suit pour résoudre ce problème :
Allez à C:\program files\wfavvid\ClusterData\Default\ le répertoire sur le serveur CRS.
Renommez le répertoire com.cisco.crs.cluster.config.LockConfig à com.cisco.crs.cluster.config.LockConfig.bak.
Gestionnaire de noeud de reprise.
Si vous ne souhaitez pas redémarrer le gestionnaire de noeud, voici une autre manière d'effacer MutexLocks :
CET de début et de type de clic.
Choisissez non sur le message instantané.
Trouvez et cliquez sur com.cisco.crs.cluster.config.LockConfig dans la liste située du côté gauche.
Double-cliquer l'un enregistrement situé du côté droit.
Sélectionnez l'onglet com.cisco.crs.cluster.config.LockConfig situé au dessus.
Effacez tous les champs qui ne sont pas vides.
Quand vous essayez de changer les qualifications d'une ressource, cette erreur est reçue :
Error: can not acquire ClusterMutex; nested exception is: com.cisco.config.ConfigException: Store config record – error: config request timed out.
Cette erreur peut se produire en raison d'une de ces questions :
L'opération de sauvegarde a fait pas clair le verrouillage du DB, mais les verrouillages et les archives sont propres sur les deux serveurs.
Le fichier de config de verrouillage peut avoir le problème. Spécifiquement, le serveur ne peut pas indiquer de lui ou le fichier XML à l'intérieur il est devenu corrompu.
Terminez-vous ces étapes afin de réparer cette question :
Vérifiez du CET qui les verrouillages et les archives sont propres sur les deux serveurs.
Vérifiez la commande NIC et ce cliconfg est placé correctement.
Allez à C:\program files\wfavvid\ClusterData\Default\ le répertoire sur le serveur CRS.
Renommez le répertoire com.cisco.crs.cluster.config.LockConfig à com.cisco.crs.cluster.config.LockConfig.bak.
Redémarrez la batterie.
Terminez-vous ces étapes afin de vérifier la configuration de verrouillage de Mutex sur le DB :
Allez au Start > Run, saisissez le CET, et l'appuyez sur entrent.
Cliquez sur l'aucun quand la fenêtre s'affiche.
Dans le volet gauche, double clic sur ce type d'objet de configuration : com.cisco.crs.cluster.config.ClusterSpecificConfig.
Dans le volet droit, le double clic sur la ligne est retourné pour votre noeud.
Dans la nouvelle fenêtre, cliquez sur l'onglet com.cisco.crs.cluster.config.ClusterSpecificConfig.
Cliquez sur l'onglet d'archives.
Si quelque chose existe dans des guillemets concernant l'ID d'archives, les informations de demande d'archives, les informations d'utilisateur d'archive, ou le client d'archives, supprimez le contenu, mais laissez les guillemets.
Cliquez sur Apply.
Cliquez sur OK pour que les modifications les prennent effet.
Sélectionnez l'onglet com.cisco.crs.cluster.config.LockConfig situé au dessus.
Si quelque chose existe dans des guillemets concernant le propriétaire de verrouillage, verrouillez l'utilisation, ou les informations utilisateur de verrouillage, suppriment le contenu, mais laissent les guillemets.
Cliquez sur Apply.
Cliquez sur OK pour que les modifications les prennent effet.
Exécutez la même procédure dans le deuxième noeud si vous avez deux serveurs UCCX.
En essayant de mettre à jour la configuration existante, cette erreur est reçue :
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
Si vous redémarrez et redémarrez le gestionnaire de noeud, le sous-système RMCM est bloqué dans l'état d'initialisation. En essayant de libérer le verrouillage, vous devez supprimer certains des attributs et créer des neufs. En conséquence, le LDAP jette parfois une erreur. Ceci causes qui attribuent pour ne pas être créées. À partir de là, n'importe quelle exécution d'Appadmin aura comme conséquence une erreur de ClusterMutex, et une reprise de l'engine causera RmCm d'être coincé dans l'état d'initialisation parce qu'elle ne peut pas obtenir le verrouillage de ClusterMutex.
Terminez-vous ces étapes afin d'ajouter l'entrée lockApplicant :
Cliquez avec le bouton droit le Locks.xxxxxxx, et choisissez nouveau > ciscoCCNocConfigInfoCES.
Écrivez le nom comme lockApplicant ? videz, et appuyez sur entrent.
Dans la prochaine fenêtre, cliquez sur Add, et dans la case de valeur de chaîne d'entrer, écrivent le X.
Cliquez sur OK.
Ceci est documenté dans l'ID de bogue Cisco CSCsd13553 (clients enregistrés seulement).