sp_wait_for_database_copy_sync (Active geo-replication)
Applies to: Azure SQL Database Azure SQL Managed Instance
This procedure is scoped to an Active Geo-Replication relationship between a primary and secondary. Calling the sys.sp_wait_for_database_copy_sync
causes the application to wait until all committed transactions are replicated and acknowledged by the active secondary database. Run sys.sp_wait_for_database_copy_sync
on only the primary database.
Syntax
sp_wait_for_database_copy_sync [ @target_server = ] 'server_name'
, [ @target_database = ] 'database_name'
Arguments
[ @target_server = ] 'server_name'
The name of the Azure SQL Database server that hosts the active secondary database. server_name is sysname, with no default.
[ @target_database = ] 'database_name'
The name of the active secondary database. database_name is sysname, with no default.
Return code values
Returns 0 for success or an error number for failure.
The most likely error conditions are as follows:
The server name or database name is missing.
The link can't be found to the specified server name or database.
Interlink connectivity has been lost, and
sys.sp_wait_for_database_copy_sync
will return after the connection timeout.
Permissions
Any user in the primary database can call this system stored procedure. The login must be a user in both the primary and active secondary databases.
Remarks
All transactions committed before a sp_wait_for_database_copy_sync
call are sent to the active secondary database.
Examples
The following example invokes sp_wait_for_database_copy_sync
to ensure that all transactions are committed to the primary database, AdventureWorks
, get sent to its active secondary database on the target server serverSecondary
.
USE AdventureWorks;
GO
EXEC sys.sp_wait_for_database_copy_sync @target_server = N'serverSecondary', @target_database = N'AdventureWorks';
GO