Unable to perform a Telephone System Synchronization on multiple...

Expand / Collapse
 

Unable to perform a Telephone System Synchronization on multiple PBXs after updating to MCD 6.0


Article ID: 52026 - Last Review: August 28, 2013

PROBLEM

When performing a Telephone System Synchronization on multiple PBXs, the process fails.

If you perform a Telephone System Synchronization on each PBX one at a time they all succeed.



SYMPTOMS

After upgrading one or more PBXs to MCD 6.0 sync fails. In the logs you will see this error:

Error     8/9/2013 12:51:26 PM     prairieFyre.DataSynchronizationEngine.SynchronizationService Synchronization failed - System.Data.ConstraintException: Column 'PKey' is constrained to be unique.  Value '233b42b0-d79a-4c27-aa09-c20377447693' is already present.
   at System.Data.UniqueConstraint.CheckConstraint(DataRow row, DataRowAction action)
   at System.Data.DataTable.RaiseRowChanging(DataRowChangeEventArgs args, DataRow eRow, DataRowAction eAction, Boolean fireEvent)
   at System.Data.DataTable.SetNewRecordWorker(DataRow row, Int32 proposedRecord, DataRowAction action, Boolean isInMerge, Boolean suppressEnsurePropertyChanged, Int32 position, Boolean fireEvent, Exception& deferredException)
   at System.Data.DataTable.InsertRow(DataRow row, Int64 proposedID, Int32 pos, Boolean fireEvent)
   at prairieFyre.DataSynchronizationEngine.SyncReportBuilder.AddSystemLevelRule(Guid pkey, String viewName, String fieldName, String recommendedValue)
   at prairieFyre.DataSynchronizationEngine.Mixml.MixmlValidationEngine.LoadSystemRuleCategory(DSValidationRules ruleset, IDictionary`2 enumerationDefinitionMap, IDictionary`2 formNameMap)
   at prairieFyre.DataSynchronizationEngine.Mixml.MixmlValidationEngine.LoadRuleset(Icp3300Media media)
   at prairieFyre.DataSynchronizationEngine.Mixml.MixmlValidationEngine.ValidateMedia(Icp3300Media media)
   at prairieFyre.DataSynchronizationEngine.Mixml.MixmlSynchronizationEngine.PopulateConfig(PbxConfig aPbxConfig, ISyncReportBuilder aReportBuilder)
   at prairieFyre.DataSynchronizationEngine.PbxSyncEngineBase.PopulatePbxConfig(PbxConfig aPbxConfig, ISyncReportBuilder aReportBuilder)
   at prairieFyre.DataSynchronizationEngine.SynchronizationService.ReadMediaServerData(MisyncMessage aMessage, PbxConfig aPbxConfig, DSYourSite aCcmConfig)
   at prairieFyre.DataSynchronizationEngine.SynchronizationService.ProcessJob(MisyncMessage aMisyncMessage) 



CAUSE

There is an error with the GUID in the MCD6.0 validation file. 



RESOLUTION

1. Go to [InstallDir]\CCM\Services\DataSynchronizationService\Mixml\ValidationRules\ .
2. Edit the Rules_12.0.0.36.xml file with a program like Notepad
3. Go to line 81.  The RuleID should match the GUID in the error stack. (You can search for the GUID to find this line)
4. Change the second 3 to a 4. (this would be the third character in the GUID)

  • The original (incorrect) value will be 233b42b0-d79a-4c27-aa09-c20377447693
  • You should change this to 234b42b0-d79a-4c27-aa09-c20377447693
5. Save the file.
6. Stop the prairieFyre DataSynchronization service.
7. Run a full Telephone System Synchronization

APPLIES TO

CCM 6.0.2.X with MCD 6.0 

Keywords: MCD 6.0 sync telephone system synchronization fail fails PKey



Rate this Article:
     

Add Your Comments


Name: *
Email Address:
Web Address:
Verification Code:
*
 

Details
Last Modified:Wednesday, August 28, 2013
Last Modified By: andrew_montpetit
Type: FIX
Article not rated yet.
Article has been viewed 10,163 times.
Options