RMO API deprecated in SQL Server 2012 - by Brandon Williams

Status : 

  Won't Fix<br /><br />
		Due to several factors the product team decided to focus its efforts on other items.<br /><br />
		A more detailed explanation for the resolution of this particular item may have been provided in the comments section.

Sign in
to vote
ID 774485 Comments
Status Closed Workarounds
Type Suggestion Repros 0
Opened 12/16/2012 1:05:51 PM
Access Restriction Public


According to Deprecated Features in SQL Server Replication - New Items Deprecated in SQL Server 2012:



The RMO API is deprecated. Build new applications using Transact-SQL instead

As you can see at the bottom of the document in Community Additions, there have been several people who have objected to the RMO API deprecation. <br>

Many people use the RMO API for programming the various replication agents.  It would be devastating to deprecate this feature.

Using T-SQL commands and objects are not as elegant as using RMO, which can utilize the AgentCore.StatusEventHandler Delegate to get agent status immediately.  Sure, invoking an agent executable can be done programmatically, however, to get feedback on an agent status, one would have to wait for the agent file to finish being written first before it could then be read to get the agent status.  It is a subtle but important difference.

The ability to get agent status messages from the replication agents immediately using the RMO API is far superior to any other programmatic methods.

Please consider my request to reconsider the deprecation of the RMO API and/or open source the RMO API.
Sign in to post a comment.
Posted by Cody Konior on 1/25/2016 at 1:44 AM
I also want to see RMO continued. It's all very nice to say, "Just use T-SQL", the problem is that T-SQL isn't enough. We need to use PowerShell and then t's much easier to have the .NET objects available then have to write our own ADO.NET wrappers and send everything through the stored procedures along with the plethora of options.
Posted by Tadeusz on 12/15/2013 at 7:34 AM
Are there any news from Microsoft on that? RMO really speeds up the development of applications that use replication (as opposed to using T-SQL) and I think RMO gives SQL Server the edge over the competition in this area. It would be really a shame to discontinue that.
Posted by Herrylar on 12/9/2013 at 8:21 PM
Yes, please keep RMO as it is much convenient than SQL script.
Posted by brianWakhutu on 3/19/2013 at 1:21 AM
I have user RMO for the last three projects that i have done using SQL server's replication in 2005 and 2008 versions, i have to say that for remote data collection applications like the sample replication application that comes on the tutorials page, i prefer using RMO for users to sync data other than the Transact SQL kindly reconsider the Deprecation of this feature as it has been really a good feature when developing field applications that use SQL server Replication
Posted by Microsoft on 1/4/2013 at 4:33 PM
Hi Brandon Williams ,
thanks for taking the time to share your feedback, this is really important to us.
We will investigate the issue and get back to you.

Best regards
Jean-Yves Devant 
Program Manager Servicing and Lifecycle Experience of High Availability Technologies in SQL Server
Posted by Bob Beauchemin on 12/16/2012 at 1:49 PM
In addition, because replication is asymmetric (different roles on different machines) and multi-machine, RMO/PowerShell is a nice way to configure it as opposed to GUI or multi-machine T-SQL.