Welcome to the Alteryx Knowledge Base
Created/Edited -
Receive the following error when trying to synchronize DCM
An error occurred while deserializing the Secrets property of class Alteryx.Server.Models.BaseModels.DCMEv2.DCMECredential: An error occurred while deserializing the Parameters property of class Alteryx.Server.Models.BaseModels.DCMEv2.DCMESecret: Type 'Newtonsoft.Json.Linq.JToken' does not have a suitable constructor or Add method.
- Alteryx Designer
Defect TLF-3141
There are corrupted documents in DCM Credentials. Something is wrong with Secrets.password.Parameters. The corrupted documents that are causing this issue look like this:
The documents should look like this:
Diagnosis
No DCM Credentials are shown in the Gallery UI even if there are some in the system.
Workaround
1. Using Robo 3T MongoDB client, identify the corrupted documents in DCM Credentials:
- Install Robo 3T. Install Link
- Take a backup of the database: MongoDB Backups | Alteryx Help
- Connect to AlteryxGallery using Robo 3T (See article to connect to Robo 3T)
- Once you connect to Robo 3T, expand AlteryxGallery, expand Collection.
- Click on Collection dCMECredential
- The corrupted records could be found using the following query:
db.getCollection('dCMECredentials').find({"Secrets.password.Parameters": { $ne: null }})
You can paste these into the grey box and press the green Play button to execute it.
2. Using Robo 3T, fix the corrupted documents in DCM Credentials:
a. If no results are returned, documents in DCM Credentials are not corrupted. Please contact our Customer Support team.
b. If results are returned, set Secrets.Password.Parameters to NULL for those records using Robo 3T MongoDB client.
PLEASE NOTE: Making direct edits to the database is only for advanced usage. You must have a database backup in place prior to making any changes.