Results 1 to 2 of 2
  1. #1
    Join Date
    Sep 2003
    Posts
    4

    Unanswered: SQL Server 2000 Merge Replication problem

    Hello.

    I am trying to set up merge replication over the internet between two machines running Windows 2000 Server and SQL Server 2000 Service Pack 3a.

    I can register the machines with each other, no problem. I can set up my first machine as its own distributor and create a publication, no problem. The snapshot agent runs and finishes without error. I can push a subscription to my second machine, no problem. Everything looks to be set up correctly and ready to go.

    However, the merge agent behaves strangely. Sometimes, when I edit data in one of the replicated tables on one of the machines, the changes are quickly propagated to the other machine without error. Other times, however, an error occurs, and the merge agent remains in "Failed" status until manually restarted.

    Details on the error are as follows (from Enterprise Manager):

    Error: The process could not change generation history at the 'Subscriber'

    Last command: {call sp_MSupdategenhistory (?,?,?,?) }

    Error details:
    The process could not change generation history at the 'Subscriber'.
    (Source: Merge Replication Provider (Agent); Error number: -2147200995)
    ---------------------------------------------------------------------------------------------------------------
    Unknown token received from SQL Server
    (Source: NFWB_SERVER (Data source); Error number: 0)
    ---------------------------------------------------------------------------------------------------------------



    Notes:
    - Sometimes, I add rows to a replicated table and they propagate to the second machine without error. Other times, it errors out with the message above. But, even when the error occurs, the new data is still moved from machine 1 to machine 2.
    - Once it fails, it remains in Failed state and doesn't seem to pick up again. However, if I right-click the failed merge agent and click "Start Agent", it quickly reconnects, reports that "No data needed to be merged.", and returns to "Idle" status.
    - The default "On Failure" action of the merge agent's "Run agent" job step is to "Goto next step." If I change this to "Goto step: [1] Startup Merge Agent", it begins to retry after failure. Thus, after failing, it reconnects and then succeeds and returns to Idle state. Of course, this doesn't seem like a good way to solve the problem.

    Has anyone seen this sort of behavior before? Thoughts? Thanks in advance for your help.

    Cole Cranford

  2. #2
    Join Date
    Sep 2003
    Posts
    4

    Merge Agent output

    Here is a snippet of my Merge Agent's output:

    Microsoft SQL Server Merge Agent 8.00.760
    Copyright (c) 2000 Microsoft Corporation
    Microsoft SQL Server Replication Agent: NFWB-2000-TEST-TESTpublication-NFWB_SERVER-2

    [9/9/2003 1:49:53 PM]NFWB-2000.TEST: {call sp_MSreleasemakegenerationapplock}
    [9/9/2003 1:49:53 PM]NFWB-2000.TEST: {call sp_MSenumgenerations (21, ?, 1) }
    [9/9/2003 1:49:53 PM]NFWB_SERVER.TEST: {call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }
    [9/9/2003 1:49:53 PM]NFWB_SERVER.TEST:
    [9/9/2003 1:49:53 PM]NFWB-2000.TEST: {call sp_MSsetlastsentgen (?, ?, ?)}
    [9/9/2003 1:49:53 PM]NFWB_SERVER.TEST: {call sp_MSsetlastrecgen (?, ?, ?)}
    Percent Complete: 4
    No data needed to be merged.
    Repl Agent Status: 4
    [9/9/2003 1:50:53 PM]NFWB-2000.TEST: {call sp_MSchecksnapshotstatus (N'TESTpublication')}
    [9/9/2003 1:50:53 PM]NFWB-2000.TEST: {call sp_helpmergepublication (N'TESTpublication')}
    [9/9/2003 1:50:53 PM]NFWB-2000.TEST: {call sp_MSgetreplicainfo(?,?,?,?,?,?,?)}
    [9/9/2003 1:50:53 PM]NFWB-2000.TEST: {call sp_MSgetreplicainfo(?,?,?,?,?,?,?)}
    [9/9/2003 1:50:53 PM]NFWB-2000.TEST: {call sp_MSenumschemachange (?, ?, 8000500, ?) }
    [9/9/2003 1:50:53 PM]NFWB_SERVER.TEST: {call sp_MSgetreplicainfo(?,?,?,?,?,?,?)}
    [9/9/2003 1:50:53 PM]NFWB-2000.TEST: {call sp_MSsetreplicainfo (?,?,?,?,?,?,?,?,?,?)}
    [9/9/2003 1:50:53 PM]NFWB_SERVER.TEST: {call sp_MSgetlastsentrecgens (?)}
    [9/9/2003 1:50:53 PM]NFWB-2000.TEST: {call sp_MSgetlastsentrecgens (?)}
    Percent Complete: 4
    [9/9/2003 1:50:53 PM]NFWB_SERVER.TEST: {call sp_MSgetmakegenerationapplock(?)}
    Uploading data changes to the Publisher
    Repl Agent Status: 3
    [9/9/2003 1:50:54 PM]NFWB_SERVER.TEST: {call sp_MSmakegeneration (?)}
    [9/9/2003 1:50:54 PM]NFWB_SERVER.TEST: {call sp_MSreleasemakegenerationapplock}
    [9/9/2003 1:50:54 PM]NFWB_SERVER.TEST: {call sp_MSenumgenerations (22, ?, 1) }
    [9/9/2003 1:50:54 PM]NFWB-2000.TEST: {call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }
    [9/9/2003 1:50:54 PM]NFWB-2000.TEST: {call sp_MSinsertgenhistory (?,?,?,?,?,?) }
    [9/9/2003 1:50:54 PM]NFWB_SERVER.TEST: {call sp_MSenumdeletesmetadata(?,?,?,?,?,?,0,?,?)}
    [9/9/2003 1:50:54 PM]NFWB-2000.TEST: {call sp_MSenumcolumns (?,?)}
    [9/9/2003 1:50:54 PM]NFWB_SERVER.TEST: {call sp_MSenumchanges(?,?,?,?,?,?,?,?)}
    [9/9/2003 1:50:54 PM]NFWB_SERVER.TEST: {call sp_MSenumdeletesmetadata(?,?,?,?,?,?,0,?,?)}
    [9/9/2003 1:50:54 PM]NFWB-2000.TEST: {call sp_MSgetmetadatabatch(?,?,?)}
    [9/9/2003 1:50:54 PM]NFWB-2000.TEST: {?=call sp_MSdelrow(?,?,?,?,?,?,?)}{?=call sp_MSdelrow(?,?,?,?,?,?,?)}{?=call sp_MSdelrow(?,?,?,?,?,?,?)}{?=call sp_MSdelrow(?,?,?,?,?,?,?)}{?=call sp_MSdelrow(?,?,?,?,?,?,?)}{?=call sp_MSdelrow(?,?,?,?,?,?,?)}
    [9/9/2003 1:50:55 PM]NFWB_SERVER.TEST:
    [9/9/2003 1:50:55 PM]NFWB-2000.TEST: {call sp_MSupdategenhistory (?,?,?,?) }
    [9/9/2003 1:50:55 PM]NFWB_SERVER.TEST: {call sp_MSsetlastsentgen (?, ?, ?)}
    [9/9/2003 1:50:55 PM]NFWB-2000.TEST: {call sp_MSsetlastrecgen (?, ?, ?)}
    Percent Complete: 4
    [9/9/2003 1:50:55 PM]NFWB-2000.TEST: {call sp_MSgetmakegenerationapplock(?)}
    Uploaded 6 data changes (0 inserts, 0 updates, 6 deletes, 0 conflicts).
    [9/9/2003 1:50:55 PM]NFWB-2000.TEST: {call sp_MSmakegeneration (?)}
    Repl Agent Status: 3
    Percent Complete: 4
    Downloading data changes to the Subscriber
    Repl Agent Status: 3
    [9/9/2003 1:50:55 PM]NFWB-2000.TEST: {call sp_MSreleasemakegenerationapplock}
    [9/9/2003 1:50:55 PM]NFWB-2000.TEST: {call sp_MSenumgenerations (21, ?, 1) }
    [9/9/2003 1:50:55 PM]NFWB_SERVER.TEST: {call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }
    [9/9/2003 1:50:55 PM]NFWB_SERVER.TEST:
    [9/9/2003 1:50:55 PM]NFWB-2000.TEST: {call sp_MSsetlastsentgen (?, ?, ?)}
    [9/9/2003 1:50:55 PM]NFWB_SERVER.TEST: {call sp_MSsetlastrecgen (?, ?, ?)}
    Percent Complete: 4
    No data needed to be merged.
    Repl Agent Status: 4
    [9/9/2003 1:51:55 PM]NFWB-2000.TEST: {call sp_MSchecksnapshotstatus (N'TESTpublication')}
    [9/9/2003 1:51:55 PM]NFWB-2000.TEST: {call sp_helpmergepublication (N'TESTpublication')}
    [9/9/2003 1:51:55 PM]NFWB-2000.TEST: {call sp_MSgetreplicainfo(?,?,?,?,?,?,?)}
    [9/9/2003 1:51:55 PM]NFWB-2000.TEST: {call sp_MSgetreplicainfo(?,?,?,?,?,?,?)}
    [9/9/2003 1:51:56 PM]NFWB-2000.TEST: {call sp_MSenumschemachange (?, ?, 8000500, ?) }
    [9/9/2003 1:51:56 PM]NFWB_SERVER.TEST: {call sp_MSgetreplicainfo(?,?,?,?,?,?,?)}
    [9/9/2003 1:51:56 PM]NFWB-2000.TEST: {call sp_MSsetreplicainfo (?,?,?,?,?,?,?,?,?,?)}
    [9/9/2003 1:51:56 PM]NFWB_SERVER.TEST: {call sp_MSgetlastsentrecgens (?)}
    [9/9/2003 1:51:56 PM]NFWB-2000.TEST: {call sp_MSgetlastsentrecgens (?)}
    Percent Complete: 4
    [9/9/2003 1:51:56 PM]NFWB_SERVER.TEST: {call sp_MSgetmakegenerationapplock(?)}
    Uploading data changes to the Publisher
    Repl Agent Status: 3
    [9/9/2003 1:51:56 PM]NFWB_SERVER.TEST: {call sp_MSmakegeneration (?)}
    [9/9/2003 1:51:56 PM]NFWB_SERVER.TEST: {call sp_MSreleasemakegenerationapplock}
    [9/9/2003 1:51:56 PM]NFWB_SERVER.TEST: {call sp_MSenumgenerations (22, ?, 1) }
    [9/9/2003 1:51:56 PM]NFWB-2000.TEST: {call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }
    [9/9/2003 1:51:56 PM]NFWB-2000.TEST:
    [9/9/2003 1:51:57 PM]NFWB_SERVER.TEST: {call sp_MSsetlastsentgen (?, ?, ?)}
    [9/9/2003 1:51:57 PM]NFWB-2000.TEST: {call sp_MSsetlastrecgen (?, ?, ?)}
    Percent Complete: 4
    [9/9/2003 1:51:57 PM]NFWB-2000.TEST: {call sp_MSgetmakegenerationapplock(?)}
    No data needed to be merged.
    [9/9/2003 1:51:57 PM]NFWB-2000.TEST: {call sp_MSmakegeneration (?)}
    Repl Agent Status: 4
    Percent Complete: 4
    Downloading data changes to the Subscriber
    Repl Agent Status: 3
    [9/9/2003 1:51:57 PM]NFWB-2000.TEST: {call sp_MSreleasemakegenerationapplock}
    [9/9/2003 1:51:57 PM]NFWB-2000.TEST: {call sp_MSenumgenerations (21, ?, 1) }
    [9/9/2003 1:51:57 PM]NFWB_SERVER.TEST: {call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }{call sp_MScheckexistsgeneration (?, ?) }
    [9/9/2003 1:51:57 PM]NFWB_SERVER.TEST: {call sp_MSinsertgenhistory (?,?,?,?,?,?) }
    [9/9/2003 1:51:57 PM]NFWB-2000.TEST: {call sp_MSenumdeletesmetadata(?,?,?,?,?,0,0,?,?)}
    [9/9/2003 1:51:57 PM]NFWB-2000.TEST: {call sp_MSenumcolumns (?,?)}
    [9/9/2003 1:51:57 PM]NFWB-2000.TEST: {call sp_MSenumchanges(?,?,?,?,?,?,?,?)}
    [9/9/2003 1:51:57 PM]NFWB_SERVER.TEST: {call sp_MSgetmetadatabatch(?,?,?)}
    [9/9/2003 1:51:57 PM]NFWB-2000.TEST: {call sp_MSenumchanges(?,?,?,?,?,?,?,?)}
    [9/9/2003 1:51:58 PM]NFWB_SERVER.TEST: {?=call [sp_ins_9C9938126E2A439147FB9CC6E9774042] (?,?,?,?,?,?,?,?,?,?,?)}
    [9/9/2003 1:51:58 PM]NFWB_SERVER.TEST: {call sp_MSupdategenhistory (?,?,?,?) }
    The process could not change generation history at the 'Subscriber'.
    Percent Complete: 0
    The process could not change generation history at the 'Subscriber'.
    Repl Agent Status: 6
    Percent Complete: 0
    Category:NULL
    Source: Merge Replication Provider
    Number: -2147200995
    Message: The process could not change generation history at the 'Subscriber'.
    Repl Agent Status: 3
    Percent Complete: 0
    Category:COMMAND
    Source: Failed Command
    Number: 0
    Message: {call sp_MSupdategenhistory (?,?,?,?) }
    Repl Agent Status: 3
    Percent Complete: 0
    CategoryQLSERVER
    Source: NFWB_SERVER
    Number: 0
    Message: Unknown token received from SQL Server
    Repl Agent Status: 3
    Disconnecting from Publisher 'NFWB-2000'
    Disconnecting from Subscriber 'NFWB_SERVER'
    Disconnecting from Publisher 'NFWB-2000'
    Disconnecting from Publisher 'NFWB-2000'
    Disconnecting from Publisher 'NFWB-2000'
    Disconnecting from Publisher 'NFWB-2000'
    Disconnecting from Subscriber 'NFWB_SERVER'
    Disconnecting from Subscriber 'NFWB_SERVER'
    Disconnecting from Subscriber 'NFWB_SERVER'
    Disconnecting from Subscriber 'NFWB_SERVER'
    Disconnecting from Publisher 'NFWB-2000'
    Disconnecting from Distributor 'NFWB-2000'

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •