Friday, March 23, 2012

Merge Replication SQL2000 Error 2812

Hi !

When trying to start a Merge Replication agent I get the following Error message:

The process could not enumerate the changes at the subscriber. 2812

The snapshot agent works fine as far as I can see.

The replication is set up between a Win2000 / SQL7 / SP 4 and a Win2003 / SQL2000 / SP 3a machine. Sqlserveragent on both machines is run as a system account.

Any tip is welcome!

Thanks
VincentJSProbably it was deadlock or merge agent cannot lock what does it need during enumerating. It is normal thing because of database activity. Try to repeat it and if problem still presents - check all processes by profiler and find where agent stops. Sometimes agent continue to work even if everything is red in EM.

Also you have to set up da omain account for sql server and an sql agent - I wonder how it is working at all (replication) under a local account.|||Hi snail!

I understand what you told me and believe me, it (replication) works fine as a local system account or with a local administrator account.

It wokrs like a charm between the distributor/publisher (WIN2000/SQL7) and another server (subscriber) outside the DMZ (NT4/SQL7)

With the new subscriber (WIN2003/SQL2000) I keep getting the following error when starting the merge agent:

Process could not enumerate changes at subscriber. Error 2812

Some additional information is that the merge agent stops with:

call sp_MSEnumerateChanges(?,?,?,?,?)

I very recently installed SP 3a on the new subscriber (after reading on microsoft/technet) but that didn't help.

Any more suggestions?

Thanks a lot anyway for your help!

Greetings,
VincentJS|||Are you trying to replicate a publisher to a subscriber with different schema on both side?

Originally posted by VincentJS
Hi snail!

I understand what you told me and believe me, it (replication) works fine as a local system account or with a local administrator account.

It wokrs like a charm between the distributor/publisher (WIN2000/SQL7) and another server (subscriber) outside the DMZ (NT4/SQL7)

With the new subscriber (WIN2003/SQL2000) I keep getting the following error when starting the merge agent:

Process could not enumerate changes at subscriber. Error 2812

Some additional information is that the merge agent stops with:

call sp_MSEnumerateChanges(?,?,?,?,?)

I very recently installed SP 3a on the new subscriber (after reading on microsoft/technet) but that didn't help.

Any more suggestions?

Thanks a lot anyway for your help!

Greetings,
VincentJS|||Hello!

That's a good question. I've run and rerun so many tests (but always cleaning up afterwards with sp_mergesubscription_cleanup) that honestly at this stage i couldn't give you a clear answer on that point.

I've reinitialized the subscription a lot of times though and that didn't do it either.

I DID try to publish another table with merging (to another database) and that produced the same error type, despite the fact that I used a brandnew subscription with a totally different file.

Did this answer your question?

Thanks for your help!
VincentJs|||You mentioned about the brand new file, does that mean you have a different schema on the subscriber and trying to get replicated with the publisher with another schema and setup the merge without reinitialize the whole db.

I recalled I have the same problem before with that error message, what I did is to try to recreate my subscriber database and then leave it empty as it is until I create the snapshot to pull over to the subscriber by initiializing snapshot. Then it work properly.You can give a try but, please backup your subscriber database in case you need to restore back the database.|||Hi!

I wrote file but i should have written Table (what's in a name right?). Anyway, no i won't try what you suggested until only the very last moment when all else fails. At this moment its too risky and although i do have backups of all databases, i want to avoid "contaminating" or reinstallations as much as possible.

In the meantime i ran the merge agent in verbose-mode and i got the following messages (simplified):

REPLAGENT STATUS: 3
DistribServer.Pubdb: call {sp_MSenumcolums (?,?)}
SubscrServer.Subdb: call {sp_MSenumchanges (?,?,?,?,?)}
Percent complete: 0
The process could not enumerate changes at the subscriber
REPLAGENT STATUS: 6
Percent complete: 0
Category: COMMAND
Source: failed command
Number:
Message: call sp_MSenumChanges(?,?,?,?,?)

There's more of course but I think this covers the essence. Basically ALL the commands preceding the error ran normally... only at the (presumably) last step mentionned hereabove the merge agent fails.

Have you got any clue what's going wrong?

Thanks! I'll see you tomorrow i hope... It's quite late now here and i'm going home... I've got to eat and sleep sometimes :)

VincentJSsql

No comments:

Post a Comment