Skip to content
Category: SQL Server
2012-02-08

The merge process was unable to create a new generation at the ‘Publisher’

Yesterday we did an massive update of 1 million of registers in a table of the replication DB, after the update , we started the replication of one computer, and we saw a failure in the first publication after 2000 seconds, showing the next error: “The merge process was unable to create a new generation at the ‘Publisher’. Troubleshoot by restarting the synchronization with verbose history logging and specify an output file to which to write.” Checking the replication log, it shows error about Time Out that occurs when the time exceed 300 seconds, but after 6 or 7 attempts when the time exceed 1800 seconds the publications fail showing the error. This error was because the -QueryTimeOut value of Merge Agent profile was 300 seconds and in the Distribution Agents profile was 1800 seconds, then we decide to increase temporally both values to 3600 seconds and the error disappeared, the steps that we realized to modify the value were the next: 1. Right Click over “Replication” and select “Distributor Properties”

2. Click on the “Profile Defaults” button

3. In Distribution Agents , click on “New” to create a new profile, because the system profiles cannot be modified, and select the Default Agent like model

4. Write a name for the profile and change the -QueryTimeOut value, in our case 3600

5. Select the created profile and click “Change Existing Agents”, with this we apply the changes on all the Distributions Agents already created.

6. Now select Merge Agents and repeat all the steps, the first, create a new profile

7. Write a name for the profile and change the -QueryTimeOut value, in our case 3600

8. Select the created profile and click “Change Existing Agents” to apply the changes in all the Merge Agents already created.

9. Click OK in the next two windows and the -QueryTimeOut value will be changed.

10. If this is a temporal value, don’t forget to change it back when finish