I am investigating a slow IAM sync and stumbled upon the problem below. We sync our IAM by first syncing to disk and then use the twdeployer to sync the target IAM.
- I sync a branch to disk with the task in the SF.
- I open the file MODEL_SYNC.sql and copy the varbinary of sync_col for example
- I convert the varbinary with convert(xml, decompress( sync_data)) to take a look at the xml
- If i look at the xml there no nodes for model_id and branch_id in the XML (which could be logical as the sync file has been generated for a specific model and branch)
- However the procedure sync_col on the IAM databse expects model_id and branch_id in the XML. In the temp table model_id and branch_id are now NULL because they are not in the XML.
- And then in the merge
- So as no match can be made because model_id and branch_id are NULL all rows are inserted from the temp table and all the old rows are deleted.
Is the above correct? Or am i missing a setting that causes the model_id and branch_id not be included in the XML.