I do this frequently but all clients have this fault:

I added a new column to a table using a SQL statement, which causes the column to be created and added to every publication that uses this table.

Now I create values by using an update statement.

The column and the values are properly replicated from server to server, but all clients based on Express only get the field but no value.

The log shows successfully updates of the right number of table rows, but it needs little time as if nothing is transferred.

Changes that were made on the client are successfully replicated up to the server.

Also I deleted some unnecessary columns and then recreated the new column, same here.

I use SQL Server 2008 R2 with merge replication, no filters. The column limit is 246 columns, but I use 112 at the moment. Reproducing the error fails on a copy of the database, recreating the abonnements (subscriptions) is not an option for me.

Edit: Checked the last created columns and found this additional info. I added 4 columns earlier that are not in use yet. 2 of them have the same issue.

  • but all clients based on Express only get the field but no value. Are there any conflicts that merge agent is showing ? – Kin Shah Mar 18 '15 at 13:48
  • Nope, it also happens to new abonnements. – Daniel Mar 18 '15 at 13:48
  • @Daniel Based on what your saying I think it requires to generate a snapshot and to reinitialize subscriptions.. – Heisenberg Mar 21 '15 at 6:01
  • @Pathum Reinitializing with new snapshot results in clients having the missing data from snapshot, but are not synchronizing changes as described. – Daniel Mar 23 '15 at 8:10
  • Hi, can you please post the code you used to add the column(s) and update the values? – Brandon Williams Mar 24 '15 at 16:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.