Description | "When you have a table that has no primary key and no uniqueness constraints on both target and source, you can end up having multiple identical rows in the table (no way to distinguish between the rows). Inserts in this scenario work fine, but when you update records on the source and have two or more identical rows in the tabe, one of two things happens on the destination: If you have two identical rows in the source, and dataloader.enable.fallback.insert = true, symmetric sends two update statements to the destination with all columns as the primary key. The first update statement runs on the destination and updates both rows (because the rows are identical). The second update runs on the destination, can't find a row to update (it was updated by the first update statement), so it falls back to an insert statement and inserts a third row on the destination. If you have two identical rows in the source, and dataloader.enable.fallback.insert = false, symmetric sends two update statements, but the first update fails with the following error: ""too many rows updated....""" |
---|