Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 8 additions & 17 deletions Lite/Services/RemoteCollectorService.QueryStore.cs
Original file line number Diff line number Diff line change
Expand Up @@ -44,27 +44,18 @@ DECLARE db_check CURSOR LOCAL FAST_FORWARD FOR
SELECT /* PerformanceMonitorLite */
d.name
FROM sys.databases AS d
LEFT JOIN sys.dm_hadr_database_replica_states AS drs
ON d.database_id = drs.database_id
AND drs.is_local = 1
WHERE d.database_id > 4
AND d.database_id < 32761
AND d.state_desc = N'ONLINE'
AND d.name <> N'PerformanceMonitor'
AND d.database_id NOT IN
(
SELECT
d2.database_id
FROM sys.databases AS d2
JOIN sys.availability_replicas AS r
ON d2.replica_id = r.replica_id
WHERE NOT EXISTS
(
SELECT
1/0
FROM sys.dm_hadr_availability_group_states AS s
WHERE s.primary_replica = r.replica_server_name
)
AND r.secondary_role_allow_connections_desc = N'READ_ONLY'
AND r.replica_server_name = @@SERVERNAME
)
AND
(
drs.database_id IS NULL /*not in any AG*/
OR drs.is_primary_replica = 1 /*primary replica*/
)
OPTION(RECOMPILE);

OPEN db_check;
Expand Down
25 changes: 8 additions & 17 deletions Lite/Services/RemoteCollectorService.ServerConfig.cs
Original file line number Diff line number Diff line change
Expand Up @@ -332,27 +332,18 @@ private async Task<int> CollectDatabaseScopedConfigAsync(ServerConnection server
SELECT
d.name
FROM sys.databases AS d
LEFT JOIN sys.dm_hadr_database_replica_states AS drs
ON d.database_id = drs.database_id
AND drs.is_local = 1
WHERE (d.database_id > 4 OR d.database_id = 2)
AND d.database_id < 32761
AND d.name <> N'PerformanceMonitor'
AND d.state_desc = N'ONLINE'
AND d.database_id NOT IN
(
SELECT
d2.database_id
FROM sys.databases AS d2
JOIN sys.availability_replicas AS r
ON d2.replica_id = r.replica_id
WHERE NOT EXISTS
(
SELECT
1/0
FROM sys.dm_hadr_availability_group_states AS s
WHERE s.primary_replica = r.replica_server_name
)
AND r.secondary_role_allow_connections_desc = N'READ_ONLY'
AND r.replica_server_name = @@SERVERNAME
)
AND
(
drs.database_id IS NULL /*not in any AG*/
OR drs.is_primary_replica = 1 /*primary replica*/
)
ORDER BY d.name
OPTION(RECOMPILE);";

Expand Down
25 changes: 8 additions & 17 deletions install/09_collect_query_store.sql
Original file line number Diff line number Diff line change
Expand Up @@ -299,28 +299,19 @@ BEGIN
SELECT
d.name
FROM sys.databases AS d
LEFT JOIN sys.dm_hadr_database_replica_states AS drs
ON d.database_id = drs.database_id
AND drs.is_local = 1
WHERE d.state_desc = N'ONLINE'
AND d.database_id > 4
AND d.is_read_only = 0
AND d.name <> N'PerformanceMonitor'
AND d.database_id < 32761 /*exclude contained AG system databases*/
AND d.database_id NOT IN
(
SELECT
d2.database_id
FROM sys.databases AS d2
JOIN sys.availability_replicas AS r
ON d2.replica_id = r.replica_id
WHERE NOT EXISTS
(
SELECT
1/0
FROM sys.dm_hadr_availability_group_states AS s
WHERE s.primary_replica = r.replica_server_name
)
AND r.secondary_role_allow_connections_desc = N'READ_ONLY'
AND r.replica_server_name = @@SERVERNAME
)
AND
(
drs.database_id IS NULL /*not in any AG*/
OR drs.is_primary_replica = 1 /*primary replica*/
)
OPTION(RECOMPILE);

OPEN @db_check_cursor;
Expand Down
25 changes: 8 additions & 17 deletions install/39_collect_database_configuration.sql
Original file line number Diff line number Diff line change
Expand Up @@ -161,27 +161,18 @@ BEGIN
database_id = d.database_id,
database_name = d.name
FROM sys.databases AS d
LEFT JOIN sys.dm_hadr_database_replica_states AS drs
ON d.database_id = drs.database_id
AND drs.is_local = 1
WHERE d.database_id > 4
AND d.name != DB_NAME()
AND d.state_desc = N'ONLINE'
AND d.database_id < 32761 /*exclude contained AG system databases*/
AND d.database_id NOT IN
(
SELECT
d2.database_id
FROM sys.databases AS d2
JOIN sys.availability_replicas AS r
ON d2.replica_id = r.replica_id
WHERE NOT EXISTS
(
SELECT
1/0
FROM sys.dm_hadr_availability_group_states AS s
WHERE s.primary_replica = r.replica_server_name
)
AND r.secondary_role_allow_connections_desc = N'READ_ONLY'
AND r.replica_server_name = @@SERVERNAME
)
AND
(
drs.database_id IS NULL /*not in any AG*/
OR drs.is_primary_replica = 1 /*primary replica*/
)
ORDER BY
d.name
OPTION (RECOMPILE);
Expand Down
Loading