This error is raised in sp_MSdrop_mergesystables. sp_MSdrop_mergesystables is called when you try to remove merge replication from a database or from an entire instance of SQL Server. The error indicates that one or more of the merge system tables could not be dropped for any number of reasons.
Check for and then troubleshoot any previous errors raised before this error.
Run SQL Profiler against the relevant SQL Server instance to capture "Errors and Warnings" events. Sometimes this will capture errors that are otherwise not seen.
Use DBCC CHECKDB to verify the integrity of the database with the merge replication system tables.
Try the removal process again when no users are in the database.
Manually remove replication piece by piece.
For more information about "How to manually remove a replication in SQL Server 2000 or in SQL Server 2005", see Microsoft Knowledge Base article 324401.
Target | Microsoft.SQLServer.2000.DBEngine | ||
Category | EventCollection | ||
Enabled | True | ||
Event Source | $Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$ | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
| ||
Event Log | Application | ||
Comment | Mom2005ID='{A9E92F4E-A90C-495A-B630-8801786979E1}' |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
EventDS | DataSource | Microsoft.Windows.EventProvider | Default |
GenerateAlert | WriteAction | System.Health.GenerateAlert | Default |
<Rule ID="Microsoft.SQLServer.2000.The_system_tables_for_merge_replication_could_not_be_dropped_successfully" Target="SQL2000Core!Microsoft.SQLServer.2000.DBEngine" Enabled="true" Comment="Mom2005ID='{A9E92F4E-A90C-495A-B630-8801786979E1}'" Remotable="true">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="EventDS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesMOM2005RegularExpression</Operator>
<Pattern>^(17052|17055)$</Pattern>
</RegExExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDescription</XPathQuery>
</ValueExpression>
<Operator>MatchesMOM2005BooleanRegularExpression</Operator>
<Pattern>(^.*20007 and (not ^.*\n.*20007)) or (^.*20007.*\n.*20007)</Pattern>
</RegExExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertOwner>$Data/PublisherName$</AlertOwner>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2000.The_system_tables_for_merge_replication_could_not_be_dropped_successfully.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>