Introduction
Ce document décrit comment résoudre un problème lié au message d'erreur "Violation de la contrainte PRIMARY KEY 'XPKRegion'. Impossible d'insérer une clé dupliquée dans l'objet 'dbo.Region'. La valeur de clé dupliquée est (32xxx)" lorsque vous essayez d'exécuter EDMT pour mettre à niveau Cisco Unified Contact Center Enterprise (UCCE) vers la version 11.0(1).
Contribution de Michael Whittier, ingénieur du centre d'assistance technique Cisco.
Conditions préalables
Exigences
Cisco vous recommande de prendre connaissance des rubriques suivantes :
- Cisco Unified Contact Center Enterprise (UCCE)
- SQL Server Management Studio
Composants utilisés
Ce document n'est pas limité à des versions de matériel et de logiciel spécifiques.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
Problème : EDMT 11.0 échoue avec une erreur de clé unique
Pendant le processus de mise à niveau de la base de données, EDMT échoue avec ce message d'erreur lorsqu'il y a des régions personnalisées ajoutées à la version précédente d'UCCE.
"Violation de la contrainte PRIMARY KEY 'XPKRegion'. Impossible d'insérer une clé dupliquée dans l'objet 'dbo.Region'. La valeur de clé dupliquée est (32xxx)"
Pour terminer l'EDMT, vous pouvez supprimer les entrées personnalisées des tables Region et Region_Member. Cependant, cela seul provoque un problème référentiel avec l'outil Explorateur de régions et se bloque avec ce message d'erreur.
Log Name: Application
Source: Application Error
Date: 10/17/2016 10:08:49 AM
Event ID: 1000
Task Category: (100)
Level: Error
Keywords: Classic
User: N/A
Computer: SPRAWLER-A.mwhittie.lab
Description:
Faulting application name: conicrex.exe, version: 11.0.3297.2, time stamp: 0x55e7577b
Faulting module name: conicrex.exe, version: 11.0.3297.2, time stamp: 0x55e7577b
Exception code: 0xc0000005
Fault offset: 0x0006789a
Faulting process id: 0x3a88
Faulting application start time: 0x01d228885cc0473c
Faulting application path: C:\icm\bin\conicrex.exe
Faulting module path: C:\icm\bin\conicrex.exe
Report Id: 9acfe8d9-947b-11e6-80f0-000c29be7328
Faulting package full name
Faulting package-relative application ID:
Solution
Pour résoudre complètement le problème, toutes les entrées au-dessus de 32000 doivent être supprimées manuellement de ces tables.
- Région
- Membre_Région
- Vue_Région
- Membre_Vue_Région
Il s'agit des étapes nécessaires à l'accomplissement de la tâche
Étape 1. Capturez ces requêtes pour obtenir une copie des entrées personnalisées
sélectionnez * dans Region where RegionID >= 32000
sélectionnez * dans Region_Member où ParentRegionID >= 32000
sélectionnez * dans Region_View où RegionViewID >= 32000
sélectionnez * dans Region_View_Member où RegionViewID >= 32000
Étape 2. Après la copie, supprimez les mêmes entrées en exécutant ces commandes SQL
supprimer de Region où IDrégion >= 32000
supprimer de Region_Member où ParentRegionID >= 32000
supprimer de Region_View où RegionViewID >= 32000
supprimer de Region_View_Member où RegionViewID >= 32000
Étape 3. Procédez à la mise à niveau EDMT.
Étape 4. Après la mise à niveau, rajoutez les régions personnalisées via l’outil Explorateur de régions.
Remarque : dans un scénario où seulement 2 des tables ont été supprimées pendant la mise à niveau, nous devrons nettoyer les 2 autres tables sur les deux bases de données de l'enregistreur, puis utiliser l'initialisation de la base de données locale pour mettre à jour le serveur d'administration (AW), Après les régions personnalisées peuvent être rajoutées via l'outil d'exploration de région.