Skip to content

Commit

Permalink
Add a method to get transactions for each database
Browse files Browse the repository at this point in the history
  • Loading branch information
gboge committed May 29, 2019
1 parent 673f72c commit 314924d
Showing 1 changed file with 22 additions and 0 deletions.
22 changes: 22 additions & 0 deletions KDatabase.cs
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -90,6 +90,28 @@ ORDER BY dt DESC
return dt; return dt;
} }


/// <summary>
/// Get transactions opened for each replicated databases
/// Must be executed on distribution db
/// </summary>
/// <param name="d">Your smo database (distribution)</param>
/// <returns>a datatable</returns>
public static DataTable GetReplicationTransactionsByDatabase(this smo.Database d)
{
DataTable dt = new DataTable();
if (d.IsDistributor())
{
string sql = @"SELECT d.publisher_db AS [Database]
, COUNT(*) AS [Transactions Count]
FROM MSrepl_transactions t
INNER JOIN MSpublisher_databases d ON t.publisher_database_id = d.id
GROUP BY d.publisher_db
ORDER BY [Transactions Count] DESC";
dt = d.ExecuteWithResults(sql).Tables[0];
}
return dt;
}

/// <summary> /// <summary>
/// get error from distribution /// get error from distribution
/// </summary> /// </summary>
Expand Down

0 comments on commit 314924d

Please sign in to comment.