SQLServer MPWorkflow List
SQLServer MPWorkflow List
The Operations Manager team encourages you to provide any feedback on the management
pack by sending it to sqlmpsfeedback@microsoft.com
Copyright
This document is provided "as is". Information and views expressed in this document, including URL and
other Internet website references, may change without notice. You bear the risk of using it.
Some examples depicted herein are provided for illustration only and are fictitious. No real association or
connection is intended or should be inferred.
This document does not provide you with any legal rights to any intellectual property in any Microsoft
product. You may copy and use this document for your internal, reference purposes. You may modify this
document for your internal, reference purposes.
© 2024 Microsoft Corporation. All rights reserved.
Microsoft, Active Directory, Windows, and Windows Server are trademarks of the Microsoft group of
companies.
All other trademarks are the property of their respective owners
MSSQL on Linux: Agent
The SQL Server Agent component that runs as part of a Microsoft SQL Server Database Engine on Linux.
Database Status
This monitor checks the status of the database as reported by Microsoft SQL Server.
Default
Name Description
value
Enabled Enables or disables the workflow. No
Defines whether the workflow generates
Generate Alerts True
an Alert.
By default, the monitor checks that the
certificate contains the target DB Engine's
Principal name. This override allows
Additional host names to check checking with a comma-separated list of
additional host names like Always On
listener DNS name, DNS alias of the
hosting machine, FCI virtual name, etc.
Certificate expiration critical threshold in
Expiration critical Threshold (days) 15
days.
Certificate expiration Warning threshold in
Expiration Warning Threshold (days) 30
days.
If true, the monitor will ignore that the
certificate is not placed in the Trusted Root
Ignore 'Untrusted Root' check Certification Authorities. If placed, these false
certificates are trusted by the operating
system and can be used by applications as
Default
Name Description
value
a reference for which public key
infrastructure (PKI) hierarchies and digital
certificates are trustworthy.
The recurring interval of time in seconds in
Interval (seconds) 3600
which to run the workflow.
Ignore that the chain cannot be verified
Set flag 'AllowUnknownCertificateAuthority' due to an unknown certificate authority false
(CA) or partial chains.
Ignore that the certificate authority
Set flag
revocation is unknown when determining false
'IgnoreCertificateAuthorityRevocationUnknown'
certificate verification.
Ignore that the certificate trust list (CTL) is
not valid, for reasons such as the CTL has
Set flag 'IgnoreCtlNotTimeValid' false
expired, when determining certificate
verification.
Ignore that the certificate trust list (CTL)
Set flag 'IgnoreCtlSignerRevocationUnknown' signer revocation is unknown when false
determining certificate verification.
Ignore that the end certificate (the user
Set flag 'IgnoreEndRevocationUnknown' certificate) revocation is unknown when false
determining certificate verification.
Ignore that the basic constraints are not
Set flag 'IgnoreInvalidBasicConstraints' valid when determining certificate false
verification.
Ignore that the certificate has invalid policy
Set flag 'IgnoreInvalidPolicy' false
when determining certificate verification.
Ignore that the CA (certificate authority)
certificate and the issued certificate have
validity periods that are not nested when
verifying the certificate. For example, the
Set flag 'IgnoreNotTimeNested' CA cert can be valid from January 1 to false
December 1 and the issued certificate
from January 2 to December 2, which
would mean the validity periods are not
nested.
Ignore certificates in the chain that are not
valid either because they have expired or
Set flag 'IgnoreNotTimeValid' false
they are not yet in effect when
determining certificate validity.
Ignore that the root revocation is unknown
Set flag 'IgnoreRootRevocationUnknown' false
when determining certificate verification.
Default
Name Description
value
Ignore that the certificate was not issued
Set flag 'IgnoreWrongUsage' for the current use when determining false
certificate verification.
If true, the monitor will skip checking that
Skip 'Host Name' check the certificate contains particular host false
names.
If true, the monitor will skip the server's
authentication certificate requirement of
the presence of the key's usage extension
'Server Authentication'. Some connection
Skip 'Key Usage Server Authentication' check false
driver implementations may not check the
existence of this extension and they may
consider the certificate valid even without
the extension.
If true, the monitor will ignore all issues
Skip 'Revocation' check false
related to revocation.
The synchronization time specified by
Synchronization Time
using a 24-hour format. May be omitted.
Specifies the time the workflow is allowed
Timeout (seconds) to run before being closed and marked as 300
failed.
The workflow will fail and register an
event, if it cannot connect to the SQL
Timeout for TCP connection (seconds) 15
Server instance during the specified
period.
Thread Count
Monitors free thread count for Microsoft SQL Server instance on Linux.
SQL Re-Compilation
This monitor checks the SQL Re-Compilation for DB Engine on Linux.
MSSQL on Linux: An error occurred while processing SQL Server Service Broker mirroring routes
The rule triggers an alert when an error occurs while processing SQL Server Service Broker mirroring routes
MSSQL on Linux: Could not create a statement object using OLE DB provider
The rule triggers an alert when SQL Server fails to create a statement object with the OLE DB provider
connected to a linked server.
MSSQL on Linux: Table error: The text, ntext, or image node has wrong type
The text node is on the wrong text page type. If the parent (owner) of the node can be found, there will be
an accompanying 8929 message providing details about the owner.
MSSQL on Linux: CHECKTABLE processing of object encountered page twice. Possible internal error or
allocation fault
Page P_ID was encountered twice during the course of the scan.
MSSQL on Linux: Table error: Slot, row extends into free space
The end of the slot S_ID is past the persisted free space offset, ADDRESS. TEST is 'max <= m_freeData',
where the persisted free space offset if 'm_freeData' and the end of slot S_ID is 'max'.
MSSQL on Linux: Internal Query Processor Error: The query processor encountered an unexpected error
during execution
This is an internal query processor error.
MSSQL on Linux: SQL Server could not allocate enough memory to start Service Broker task manager
SQL Server Service Broker cannot start Service Broker task manager.
MSSQL on Linux: Table error: IAM page is linked in the IAM chain for object
All IAM pages for an index must have the same index ID on them. In this case, one of the IAM pages linked
into the IAM chain for index I_ID2 has index ID I_ID1 on it. There are three possible states of this error; they
all mean the same thing, but differ in where the discovery is made.
MSSQL on Linux: Could not resolve the referenced column name in table
This error occurs when you try to modify data in a table with a foreign key that references a column that no
longer exists in the referenced table. Merely renaming a column will not cause this error. Under normal
circumstances, a column referenced by a foreign key cannot be dropped, so this error may indicate that
unsupported direct system table updates have occurred.
MSSQL on Linux: The query processor could not start the necessary thread resources for parallel query
execution
Thread resources are scarce in the server.
MSSQL on Linux: Table error: Index node page refers to child page and previous child, but they were not
encountered
An index page (P_ID1) in a B-tree has child references to two neighboring lower-level pages (P_ID2 and
P_ID3), but neither was seen.
MSSQL on Linux: Could not connect to server because it is not defined as a remote login at the server
Setting up security for executing remote procedure calls (RPC) against a remote server involves setting up
login mappings in the remote server and possibly in the local server running an instance of Microsoft SQL
Server. The mapping is specific to a given server\instance name, usually the NetBIOS name for a default
instance and the NetBIOS name plus the instance name for a named instance. If the login mapping does not
exist or if the name of the server specified in the connection string does not match the exact name in the
sysremotelogins table, and the guest account does not have a mapping in sysremotelogins , you will receive
this error. You will also see this error if the remote user is found to have a null or empty login name.
MSSQL on Linux: Descriptor for object in database not found in the hash table during attempt to unhash it
A temporary table could not be found. The specific object ID will be available in the Linux application log as
event ID 617.
MSSQL on Linux: An error occurred in the SQL Server Service Broker message dispatcher
An error occurred in the SQL Server Service Broker message dispatcher. The Linux application log or SQL
Server error log may identify the specific error.
MSSQL on Linux: Table error: The next pointer of refers to page. Neither its parent were encountered.
Possible bad chain linkage
A page (P_ID1) references its next page in the page chain (P_ID2), but page P_ID2 was not seen and was not
referenced by any parent page in the B-tree.
MSSQL on Linux: An error occurred in a SQL Server Service Broker/Database Mirroring transport
connection endpoint
SQL Server uses Service Broker and Database Mirroring endpoints for communication outside of the SQL
Server instance.
MSSQL on Linux: Table error: The low key value on page is not the key value in the parent
A B-tree tree level page contains a record for each child page, along with a key value for that child page. If
the child page is a leaf-level page (that is, level 0), all records on the page must have key values greater than
or equal to the key value in the parent page. If the child page is a tree-level page (that is, level > 0), all
records must have key values greater than the key value in the parent, except the first record, which must
have a key value that exactly matches that in the parent.
MSSQL on Linux: An error occurred while reading the log for database
This error indicates a failure while processing the transaction log during rollback, recovery, or replication.
MSSQL on Linux: Table error: The high key value on page is not less than the low key value in the parent,
slot of the next page
A B-tree tree-level page contains a record for each child page, along with a key value for that child page. If
the child page is a leaf-level page, all records on the page must have key values greater than or equal to the
key value in the parent page. If the child page is a tree-level page, all records must have key values greater
than the key value in the parent, except the first record, which must have a key value that exactly matches
that in the parent.
MSSQL on Linux: Attempt to fetch logical page that belongs to different object
This error occurs when SQL Server detects that the allocation unit as stored on a database page does match
the allocation unit associated with a specific operation, such as running a SELECT statement against a table.
MSSQL on Linux: CREATE DATABASE failed. Could not allocate enough disk space for a new database on
the named disks
This error occurs when there is not enough space on the device to create the model database.
MSSQL on Linux: The Service Broker or Database Mirroring Transport has started
This rule checks when the SQL Server Service Broker or Database Mirroring transport has started. The Linux
application log specifies whether the error was recorded by Service Broker or Database Mirroring the
application name. This message is logged in the Linux application log as MSSQLSERVER event ID 9690.
MSSQL on Linux: Table error: Table missing or invalid key in index for the row:
Every data row in a table (heap or clustered index) must have exactly one matching index row in every non-
clustered index over that table. This error means that a non-clustered index is missing an index row.
MSSQL on Linux: Full Text Search: Full-text catalog lacks sufficient disk space to complete this operation
There is not enough disk space to hold the full-text catalog.
MSSQL on Linux: Transaction was deadlocked on resources with another process and has been chosen as
the deadlock victim. Rerun the transaction
This error occurs when Microsoft SQL Server encounters a deadlock. A deadlock occurs when two (or more)
processes attempt to access a resource that the other process holds a lock on. Because each process has a
request for another resource, neither process can be completed. When a deadlock is detected, SQL Server
rolls back the command that has the least processing time and returns error message 1205 to the client
application. This error is not fatal and may not cause the batch to be terminated.
MSSQL on Linux: Could not allocate space for object in database because the Filegroup is full
The specified Filegroup has run out of free space.
MSSQL on Linux: Table error: Test failed. Slot overlaps with the prior row
Slot S_ID's offset in the slot offset array is not greater than or equal to the end of the previous slot, so they
overlap. TEST is 'sorted [i].offset >= max', where the lhs of the expression is the ADDRESS, and 'max' is the
end of the previous slot.
MSSQL on Linux: The Service Broker/Database Mirroring transport cannot listen on port because it is in
use
When you create a Service Broker or Database Mirroring endpoint, SQL Server should be able to accept
TCP/IP connections on the port that is specified in the endpoint configuration. The transport security
requires authorization for connections to the port. If the server has a firewall enabled, the firewall
configuration must allow both incoming and outgoing connections for the port that is used by the endpoint.
MSSQL on Linux: The user is not allowed to truncate the system table
The TRUNCATE TABLE statement cannot be issued for a system table, even if the allow updates
configuration option is enabled.
MSSQL on Linux: SQL Server Service Broker or Database Mirroring transport is disabled or not configured
This rule triggers an alert when the SQL Server Service Broker or Database Mirroring transport is disabled or
not configured.
MSSQL on Linux: Could not write a CHECKPOINT record in database because the log is out of space
The transaction log for the specified database has reached its capacity. The limit could be due to a
configuration setting or to the amount of physical space available for one or more of the files configured for
this database.
MSSQL on Linux: Could not find CHECK constraint, although the table is flagged as having one
This error can occur when the creation of a constraint failed but for some reason the creation was not
completely rolled back. It can also be caused by data consistency issue with the system tables in the
database where the table listed in the message resides.
MSSQL on Linux: Failed to finish full-text operation. The Filegroup is empty, read-only, or not online
The full-text operation did not finish because the Filegroup is empty, read-only, or not online.
MSSQL on Linux: Failed to restore master database. Shutting down SQL Server
The backup of the master database that you are restoring is not usable. The file itself may have been
corrupted, or the original master database from which the backup was taken may have data integrity
problems.
MSSQL on Linux: Table error: Page is missing references from parent (unknown) and previous nodes.
Possible bad root entry in sysindexes
Page P_ID1 was seen, but is not linked into the B-tree it thinks it belongs to.
MSSQL on Linux: Database cannot be opened due to inaccessible files or insufficient memory or disk
space
Error 945 is returned when the database is marked IsShutdown . This occurs when a database cannot be
recovered due to missing files, or some other resource error that usually can be corrected easily.
MSSQL on Linux: Failed to initialize the Common Language Runtime (CLR) due to memory pressure
Linux could not allocate memory for the Microsoft Common Language Runtime (CLR) to initialize.
MSSQL on Linux: Could not allocate new page for database because of insufficient disk space in Filegroup
Space can be created by dropping objects, adding additional files, or allowing file growth.
MSSQL on Linux: SQL Server Service Broker or Database Mirror cryptographic call failed
SQL Server Service Broker or Database Mirror attempted to call an operating system cryptographic function.
The cryptographic function returned an error.
MSSQL on Linux: Table error: Object, index, page Test failed. Slot - Offset is invalid
The slot specified has an invalid offset (ADDRESS) in the page, according to the slot array.
MSSQL on Linux: Table error: Allocation page has invalid page header values.
The page specified has an invalid page header.
MSSQL on Linux: A SNI call failed during a Service Broker/Database Mirroring transport operation
This rule triggers an alert when a SNI call fails during a Service Broker/Database Mirroring transport
operation.
MSSQL on Linux: Service Broker was not able to allocate memory for cryptographic operations
The rule triggers an alert when SQL Server Service Broker is not able to allocate memory for cryptographic
operations.
MSSQL on Linux: SQL Server Service Broker conversation has been closed due to an error
The rule triggers an alert when the SQL Server Service Broker cryptographic operation fails.
MSSQL on Linux: Full Text Search: Search on full-text catalog failed with unknown result
The full-text query failed for an unspecified reason.
MSSQL on Linux: Table error: B-tree page has two parent nodes
The B-tree structure is corrupt because page P_ID1 is referenced as a child page by slots in two pages higher
in the B-tree, P_ID2 and P_ID3. A page can only be referenced by a single parent.
MSSQL on Linux: CHECKTABLE terminated. A failure was detected while collecting facts.
Possibly tempdb out of space or a system table is inconsistent. Check previous errors.
MSSQL on Linux: Table error: Page was not seen in the scan although its parent and previous refer to it.
Check any previous errors
A page (P_ID1) in a B-tree was not seen, even though an index page (P_ID2) points to it as a child page and
its previous page (P_ID3) in the page chain points to it as the next page in the chain. This can happen at any
level of the B-tree. Both error states mean the same thing; they differ only in where the error was
discovered.
MSSQL on Linux: Internal Query Processor Error: The query processor ran out of stack space during query
optimization
The Query Processor is using a large but limited memory stack when optimizing queries. In some extreme
situations the stack size may become a limit for a given very large query--for example, a query containing an
inlist with 100,000 constants.
MSSQL on Linux: SQL Server Service Broker could not query the FIPS compliance mode flag from the
registry
The rule triggers an alert when SQL Server Service Broker could not query the FIPS compliance mode flag
from the registry.
MSSQL on Linux: Table error: Page in its header is allocated by another object
A page has the object/index ID specified but is not allocated by any of that index's IAM pages. The page has
an incorrect object/index ID in its header, so there will be a matching 2533 (page not seen although
allocated) error for the page. The 2533 error corresponds to the index the page is really allocated to.
MSSQL on Linux: SQL Server Service Broker attempted to use an unsupported encryption algorithm
The rule triggers an alert when SQL Server Service Broker tries to use an unsupported encryption algorithm.
MSSQL on Linux: The query has been canceled because the estimated cost of this query exceeds the
configured threshold. Contact the system administrator
The configuration setting for the query governor cost limit option is lower than the cost the SQL Server
optimizer estimated for the specified query. By default, the query governor cost limit option is set to 0,
which allows all queries to run. However, on this instance of SQL Server an upper limit was specified by
setting the option to a number greater than 0. Query plans with an anticipated cost larger than this value
are not started.
MSSQL on Linux: An error occurred in the Service Broker queue rollback handler
SQL Server Service Broker raises MSSQLSERVER event ID 8405 when an error prevents Service Broker from
disabling a queue during a rollback.
MSSQL on Linux: Full Text Search: Full-Text Search is not enabled for the current database. Use
sp_fulltext_database to enable Full-Text Search
You have attempted to perform a full-text indexing in a database that is not enabled for full-text indexing.
The database may have never been enabled for full-text, or it may have been restored or attached, which
will automatically disable full-text indexing.
MSSQL on Linux: Broker/DBM Transport: Pending Message Fragments for Receive I/O
Collects the "Broker/DBM Transport: Pending Message Fragments for Receive I/O" performance counter for
each instance of SQL DB Engine.
MSSQL on Linux: Broker Statistics: Enqueued Transport Message Fragments per Second
Collects the "Broker Statistics: Enqueued Transport Message Fragments per Second" performance counter
for each instance of SQL DB Engine.
MSSQL on Linux: HTTP Storage: HTTP Storage I/O Retry per Second
Collects the "HTTP Storage: HTTP Storage I/O Retry per Second" performance counter for SQL DB Engine
that monitor Microsoft Azure Storage account.
MSSQL on Linux: Broker/DBM Transport: Current Message Fragments for Send I/O
Collects the "Broker/DBM Transport: Current Message Fragments for Send I/O" performance counter for
each instance of SQL DB Engine.
MSSQL on Linux: HTTP Storage: HTTP Storage I/O Failed per Second
Collects the "HTTP Storage: HTTP Storage I/O Failed per Second" performance counter for SQL DB Engine
that monitor Microsoft Azure Storage account.
MSSQL on Linux: Broker/DBM Transport: Pending Message Fragments for Send I/O
Collects the "Broker/DBM Transport: Pending Message Fragments for Send I/O" performance counter for
each instance of SQL DB Engine.
MSSQL on Linux: Broker/DBM Transport: Message Fragment P10 Sends per Second
Collects the "Broker/DBM Transport: Message Fragment P10 Sends per Second" performance counter for
each instance of SQL DB Engine.
MSSQL on Linux: Broker/DBM Transport: Receive I/O Buffer Copies bytes per Second
Collects the "Broker/DBM Transport: Receive I/O Buffer Copies bytes per Second" performance counter for
each instance of SQL DB Engine.
XTP Configuration
This monitor checks the status of the SQL Database XTP configuration. Note that this monitor does not
check if an XTP container and the log file are stored on different physical disks due to Linux specifics.
Default
Name Description
value
Enabled Enables or disables the workflow. No
Must be 'true' or 'false'. When this property is set to true then
Ignore the pools
discovery will discover only pools with bound databases. A
without Memory- true
database can be bound to a pool by using function
Optimized Data
sys.sp_xtp_bind_db_resource_pool.
The recurring interval of time in seconds in which to run the
Interval (seconds) 14400
workflow.
The synchronization time specified by using a 24-hour format. May
Synchronization Time
be omitted.
Default
Name Description
value
Specifies the time the workflow is allowed to run before being
Timeout (seconds) 300
closed and marked as failed.
Timeout for database The workflow will fail and register an event, if it cannot access the
15
connection (seconds) database during the specified period.
Timeout for query The workflow will fail and register an event, if the query execution
60
execution (seconds) takes longer than the specified period.
MSSQL on Linux: Discover Database Engine Resource Pool managing Memory-Optimized Data resources
This rule discovers a resource pool that manages Memory-Optimized Data resources of the target SQL
Server database and a relation between Resource Pool and the database.
Default
Name Description
value
Enabled Enables or disables the workflow. No
Must be 'true' or 'false'. When this property is set to true then
Ignore the pools
discovery will discover only pools with bound databases. A
without Memory- true
database can be bound to a pool by using function
Optimized Data
sys.sp_xtp_bind_db_resource_pool.
The recurring interval of time in seconds in which to run the
Interval (seconds) 14400
workflow.
The synchronization time specified by using a 24-hour format. May
Synchronization Time
be omitted.
Specifies the time the workflow is allowed to run before being
Timeout (seconds) 300
closed and marked as failed.
Timeout for database The workflow will fail and register an event, if it cannot access the
15
connection (seconds) database during the specified period.
Timeout for query The workflow will fail and register an event, if the query execution
60
execution (seconds) takes longer than the specified period.
MSSQL on Linux: Number of queries waiting for memory grants in the resource pool.
Collects the Linux "Pending memory grants count" performance counter for each resource pool of SQL DB
Engine.
MSSQL on Linux: Total amount of granted memory in the resource pool (KB)
Collects the Linux "Active memory grants count" performance counter for each resource pool of SQL DB
Engine.
MSSQL on Linux: Number of query memory grant timeouts per second occurring in the resource pool
Collects the Linux "Memory grant timeouts/sec" performance counter for each resource pool of SQL DB
Engine.
MSSQL on Linux: Maximum amount of memory the resource pool can have based on the settings and
server state (KB)
Collects the Linux "Max memory (KB)" performance counter for each resource pool of SQL DB Engine.
MSSQL on Linux: Target amount of memory the resource pool is trying to attain based on the settings and
server state (KB)
Collects the Linux "Target memory (KB)" performance counter for each resource pool of SQL DB Engine.
MSSQL on Linux: Current memory target for query execution memory grant (KB)
Collects the Linux "Query exec memory target (KB)" performance counter for each resource pool of SQL DB
Engine.
Default
Name Description
value
Enabled Enables or disables the workflow. No
Must be 'true' or 'false'. When this property is set to true then
Ignore the pools
discovery will discover only pools with bound databases. A
without Memory- true
database can be bound to a pool by using function
Optimized Data
sys.sp_xtp_bind_db_resource_pool.
The recurring interval of time in seconds in which to run the
Interval (seconds) 14400
workflow.
The synchronization time specified by using a 24-hour format. May
Synchronization Time
be omitted.
Specifies the time the workflow is allowed to run before being
Timeout (seconds) 300
closed and marked as failed.
Timeout for database The workflow will fail and register an event, if it cannot access the
15
connection (seconds) database during the specified period.
Timeout for query The workflow will fail and register an event, if the query execution
60
execution (seconds) takes longer than the specified period.
MSSQL on Linux: Discover Database Engine Resource Pool managing Memory-Optimized Data resources
This rule discovers a resource pool that manages Memory-Optimized Data resources of the target SQL
Server database and a relation between Resource Pool and the database.
MSSQL Integration Services on Windows: The package restarted from checkpoint file. Package was
configured to restart from checkpoint and it did
A package configured to use checkpoints failed and then restarted from the point of failure using the
checkpoint file.
MSSQL Integration Services on Windows: Package execution failed because the checkpoint file cannot be
loaded
A package that is configured to use checkpoints and to always use the checkpoint file failed to restart.
MSSQL on Windows: Alert engine has stopped due to unrecoverable local eventlog errors
SQL Server Agent was unable to open the local event log.
Job Duration
This monitor checks the Agent Job Duration. Note that SQL Server Agent Windows Service is not supported
by any edition of SQL Server Express.
Database Status
This monitor checks the status of the database as reported by Microsoft SQL Server.
Trustworthy Configuration
This monitor checks the Trustworthy setting for the database on Windows.
DB Chaining Configuration
This monitor checks the Cross-database Ownership Chaining Enabled setting for the database on Windows.
SQL Re-Compilation
This monitor checks the SQL Re-Compilation for DB Engine on Windows.
Blocking Sessions
This monitor checks the blocked sessions for DB Engine on Windows.
Thread Count
Monitors free thread count for Microsoft SQL Server instance on Windows.
MSSQL on Windows: Error recovering database. Could not connect to MSDTC to check the completion
status of transaction
When you are using MS DTC to manage a distributed transaction across multiple servers and a loss of
connectivity occurs, the distributed transaction is left in an unknown or "in doubt" state. Common sources
of interruptions are
MSSQL on Windows: An error occurred in the Service Broker queue rollback handler
SQL Server Service Broker raises MSSQLSERVER event ID 8405 when an error prevents Service Broker from
disabling a queue during a rollback.
MSSQL on Windows: The user is not allowed to truncate the system table
The TRUNCATE TABLE statement cannot be issued for a system table, even if the allow updates
configuration option is enabled.
MSSQL on Windows: Cannot start service broker manager due to operating system error
The rule triggers an alert when SQL Server cannot start the service broker manager due to the operating
system error.
MSSQL on Windows: Could not resolve the referenced column name in table
This error occurs when you try to modify data in a table with a foreign key that references a column that no
longer exists in the referenced table. Merely renaming a column will not cause this error. Under normal
circumstances, a column referenced by a foreign key cannot be dropped, so this error may indicate that
unsupported direct system table updates have occurred.
MSSQL on Windows: The server is too busy to perform the backup or restore operation
Failed to start a sub-process (a parallel query or parallel I/O) because no threads are available or too many
sub-processes executing.
MSSQL on Windows: Could not recover database due to unresolved transaction outcomes
The recovery process found pending transactions for the specified database. These transactions were either
distributed transactions that used Microsoft Distributed Transaction Coordinator (MS DTC), or the
transactions were single instance cross-database transactions. There is not enough information available for
the recovery process to either commit or roll back one or more of those transactions.
MSSQL on Windows: Table error: Allocation page has invalid page header values.
The page specified has an invalid page header.
MSSQL on Windows: Table error: The previous link on page does not match the previous page that the
parent, slot expects for this page
A B-tree is structured so that pages at a single level point to each other, in a doubly linked list. In addition,
the pages' parent in the B-tree has a record for each of its children with their keys and page IDs.
MSSQL on Windows: A security (SSPI) error occurred when connecting to another Service Broker or
Database Mirroring host
When Service Broker transport security uses SSPI, the service account for the remote database must have
the CONNECT permission in the master database. The remote SQL Server instance should allow Windows
Authentication for the account being used by the remote host. There are no requirements for the login to
have other permissions or to own objects in any database.
MSSQL on Windows: Table error: B-tree page has two parent nodes
The B-tree structure is corrupt because page P_ID1 is referenced as a child page by slots in two pages higher
in the B-tree, P_ID2 and P_ID3. A page can only be referenced by a single parent.
MSSQL on Windows: Internal Query Processor Error: The query processor encountered an internal limit
overflow
This is an internal query processor error.
MSSQL on Windows: Table error: The text, ntext, or image node at page is not referenced
The text node was not referenced in any complex column in any heap or clustered index. It is effectively
orphaned.
MSSQL on Windows: Could not mark database as suspect. Getnext NC scan on sysdatabases.dbid failed
The SQL Server recovery process tried to turn on the suspect flag for the specified database, but it could not
find the appropriate row in sysdatabases or could not update the database information in memory. The
reason the database needs to be marked suspect should be indicated by other messages in the SQL Server
error log or the Event Viewer.
MSSQL on Windows: Login failed. The workstation licensing limit for SQL Server access has already been
reached
SQL Server will not provide connections to workstations after the licensing limit has been reached.
MSSQL on Windows: XML: Failed to instantiate class. Make sure Msxml2.dll exists in the SQL Server
installation
The Msxml2.dll file is missing from the computer where SQL Server is installed, or it could not be loaded
from the system directory while processing an XML feature such as sp_xml_preparedocument. If the file
exists, it may not be registered properly, or one of its dependencies may not exist.
MSSQL on Windows: Full Text Search: Search on full-text catalog failed with unknown result
The full-text query failed for an unspecified reason.
MSSQL on Windows: XML: FOR XML EXPLICIT stack overflow occurred. Circular parent tag relationships
are not allowed
The XML is not well-formed because the element tag nesting level has exceeded the number of columns in
the table, one or more tags is self-referencing, or both. For more information about FOR XML EXPLICIT, see
"Using EXPLICIT Mode" in Docs Online.
MSSQL on Windows: SQL Server Service Broker could not query the FIPS compliance mode flag from the
registry
The rule triggers an alert when SQL Server Service Broker could not query the FIPS compliance mode flag
from the registry.
MSSQL on Windows: Full Text Search: Full-Text Search is not enabled for the current database. Use
sp_fulltext_database to enable Full-Text Search
You have attempted to perform a full-text indexing in a database that is not enabled for full-text indexing.
The database may have never been enabled for full-text, or it may have been restored or attached, which
will automatically disable full-text indexing.
MSSQL on Windows: An error occurred while processing SQL Server Service Broker mirroring routes
The rule triggers an alert when an error occurs while processing SQL Server Service Broker mirroring routes
MSSQL on Windows: Table error: Extent object is beyond the range of this database
P_ID is a PageID of the form (filenum:pageinfile). The pageinfile of this extent is greater than the physical
size of the file filenum of the database. The extent is marked allocated in an IAM page for the object/index
ID indicated.
MSSQL on Windows: Table error: Page allocated to object was not seen. Page may be invalid or have
incorrect object ID information in its header
A page is allocated as specified, but was not seen with that object/index ID in its header. The page has a
different index ID in its header, so there will be a matching 2534 (page allocated by another object) error for
the page. The 2534 error corresponds to the object/index ID that is in the page's header.
MSSQL on Windows: One or more indexes are damaged and must be repaired or dropped
This error provides more details about the problem described in error 8952. See that error for an
explanation.
MSSQL on Windows: An error occurred in a SQL Server Service Broker/Database Mirroring transport
connection endpoint
SQL Server uses Service Broker and Database Mirroring endpoints for communications outside the SQL
Server instance.
MSSQL on Windows: Failed to restore master database. Shutting down SQL Server
The backup of the master database that you are restoring is not usable. The file itself may have been
corrupted, or the original master database from which the backup was taken may have data integrity
problems.
MSSQL on Windows: The Service Broker or Database Mirroring Transport has started
This rule checks when the SQL Server Service Broker or Database Mirroring transport has started. The
Windows application log specifies whether the error was recorded by Service Broker or Database Mirroring
the application name. This message is logged in the Windows application log as MSSQLSERVER event ID
9690.
MSSQL on Windows: Table error: The text, ntext, or image node at page is referenced by page not seen in
the scan
The text node was not referenced in any complex column in any heap or clustered index. It is effectively
orphaned.
MSSQL on Windows: SQL Server Service Broker transmitter shut down due to an exception or a lack of
memory
This rule triggers an alert when SQL Server Service Broker transmitter stopped due to an error or a lack of
memory.
MSSQL on Windows: Could not write a CHECKPOINT record in database because the log is out of space
The transaction log for the specified database has reached its capacity. The limit could be due to a
configuration setting or to the amount of physical space available for one or more of the files configured for
this database.
MSSQL on Windows: SQL Server Service Broker attempted to use an unsupported encryption algorithm
The rule triggers an alert when SQL Server Service Broker tries to use an unsupported encryption algorithm.
MSSQL on Windows: Table error: Index node page refers to child page and previous child, but they were
not encountered
An index page (P_ID1) in a B-tree has child references to two neighboring lower-level pages (P_ID2 and
P_ID3), but neither was seen.
MSSQL on Windows: Table error: Page is missing a reference from previous page. Possible chain linkage
problem
A page (P_ID2) in a B-tree was not seen, even though its neighbor (P_ID1) in the page chain points to it in its
previous page link. This can happen in any level of the B-tree. Both error states mean the same thing; they
differ only in where the error is discovered.
MSSQL on Windows: Database cannot be opened due to inaccessible files or insufficient memory or disk
space
Error 945 is returned when the database is marked IsShutdown . This occurs when a database cannot be
recovered due to missing files, or some other resource error that usually can be corrected easily.
MSSQL on Windows: Could not allocate space for object in database because the Filegroup is full
The specified Filegroup has run out of free space.
MSSQL on Windows: An error occurred while reading the log for database
This error indicates a failure while processing the transaction log during rollback, recovery, or replication.
MSSQL on Windows: Table error: Object, index, page Test failed. Slot - Offset is invalid
The slot specified has an invalid offset (ADDRESS) in the page, according to the slot array.
MSSQL on Windows: CREATE DATABASE failed. Could not allocate enough disk space for a new database
on the named disks
This error occurs when there is not enough space on the device to create the model database.
MSSQL on Windows: Could not connect to server because it is not defined as a remote login at the server
Setting up security for executing remote procedure calls (RPC) against a remote server involves setting up
login mappings in the remote server and possibly in the local server running an instance of Microsoft SQL
Server. The mapping is specific to a given server\instance name, usually the NetBIOS name for a default
instance and the NetBIOS name plus the instance name for a named instance. If the login mapping does not
exist or if the name of the server specified in the connection string does not match the exact name in the
sysremotelogins table, and the guest account does not have a mapping in sysremotelogins , you will receive
this error. You will also see this error if the remote user is found to have a null or empty login name.
MSSQL on Windows: Internal Query Processor Error: The query processor could not obtain access to a
required interface
This is an internal query processor error.
MSSQL on Windows: Full Text Search: Could not find full-text index for database
The specified full-text index is unavailable.
MSSQL on Windows: The Service Broker/Database Mirroring transport cannot listen on port because it is
in use
When you create a Service Broker or Database Mirroring endpoint, SQL Server should be able to accept
TCP/IP connections on the port that is specified in the endpoint configuration. The transport security
requires authorization for connections to the port. If the server has a firewall enabled, the firewall
configuration must allow both incoming and outgoing connections for the port that is used by the endpoint.
MSSQL on Windows: Internal Query Processor Error: The query processor encountered an unexpected
error during the processing of a remote query phase
This is an internal query processor error.
MSSQL on Windows: CHECKTABLE terminated. A failure was detected while collecting facts.
Possibly tempdb out of space or a system table is inconsistent. Check previous errors.
MSSQL on Windows: SQL Server Service Broker conversation has been closed due to an error
The rule triggers an alert when the SQL Server Service Broker conversation has been closed due to an error.
MSSQL on Windows: Table error: Page is missing references from parent (unknown) and previous nodes.
Possible bad root entry in sysindexes
Page P_ID1 was seen, but is not linked into the B-tree it thinks it belongs to.
MSSQL on Windows: An error occurred in the SQL Server Service Broker message transmitter
SQL Server Service Broker message transmitter detected an error.
MSSQL on Windows: SQL Server Service Broker or Database Mirror cryptographic call failed
SQL Server Service Broker or Database Mirror attempted to call an operating system cryptographic function.
The cryptographic function returned an error.
MSSQL on Windows: An error occurred in the SQL Server Service Broker or Database Mirroring transport
manager
An error occurred in the SQL Server Service Broker or Database Mirroring transport manager. The Windows
application log or SQL Server error log may identify the specific error.
MSSQL on Windows: Cannot determine the service account for SQL Server instance
This error occurs when a Transact-SQL statement contains mismatched single or double quotes. The SET
QUOTED_IDENTIFIER setting will determine which combinations of single and double quotations marks are
valid. For more information about SET QUOTED_IDENTIFIER, see "SET QUOTED_IDENTIFIER" in Docs Online.
MSSQL on Windows: Failed to initialize the Common Language Runtime (CLR) due to memory pressure
Windows could not allocate memory for the Microsoft Common Language Runtime (CLR) to initialize.
MSSQL on Windows: Table error: Parent node for page was not encountered
Page P_ID was seen in a B-tree, and is linked into the B-tree level it is at. However, no index page was seen
that had a reference to the page as a child page. This can happen at any level of the B-tree.
MSSQL on Windows: Database log file is full. Back up the transaction log for the database to free up some
log space
The specified transaction log file has run out of free space.
MSSQL on Windows: SQL Server Service Broker cannot use RC4 encryption algorithm when running in
FIPS compliance mode
SQL Server Service Broker has a conversation where at least one endpoint has been configured to use RC4
encryption and the server is set for Federal Information Processing Standard (FIPS) compliance mode. RC4
encryption is not supported when running in FIPS compliance mode.
MSSQL on Windows: Table error: Table missing or invalid key in index for the row:
Every data row in a table (heap or clustered index) must have exactly one matching index row in every non-
clustered index over that table. This error means that a non-clustered index is missing an index row.
MSSQL on Windows: Transaction was deadlocked on resources with another process and has been
chosen as the deadlock victim. Rerun the transaction
This error occurs when Microsoft SQL Server encounters a deadlock. A deadlock occurs when two (or more)
processes attempt to access a resource that the other process holds a lock on. Because each process has a
request for another resource, neither process can be completed. When a deadlock is detected, SQL Server
rolls back the command that has the least processing time and returns error message 1205 to the client
application. This error is not fatal and may not cause the batch to be terminated.
MSSQL on Windows: An error occurred in the SQL Server Service Broker message dispatcher
An error occurred in the SQL Server Service Broker message dispatcher. The Windows application log or SQL
Server error log may identify the specific error.
MSSQL on Windows: Login failed: Password fails password filter DLL requirements
A user tried to access SQL Server with a password that did not meet the requirements of the password filter
DLL. Windows security log will identify the user name under MSSQLSERVER event ID 18467.
MSSQL on Windows: Failed to initialize the Common Language Runtime (CLR) with HRESULT (6511)
The rule triggers an alert when an assembly or application fails to start and logs an HRESULT error.
MSSQL on Windows: .NET Framework runtime was shut down by user code
The rule triggers an alert when a user defined type, user defined-function, or user-defined property in an
assembly contains faulty code.
MSSQL on Windows: Failed to finish full-text operation. The Filegroup is empty, read-only, or not online
The full-text operation did not finish because the Filegroup is empty, read-only, or not online.
MSSQL on Windows: Table error: The next pointer of refers to page. Neither its parent were
encountered. Possible bad chain linkage
A page (P_ID1) references its next page in the page chain (P_ID2), but page P_ID2 was not seen and was not
referenced by any parent page in the B-tree.
MSSQL on Windows: Failed to initialize the Common Language Runtime (CLR) with HRESULT (6512)
The rule triggers an alert when an assembly or an application fails to start and logs an HRESULT error. The
Windows application log may contain an information about specific HRESULT.
MSSQL on Windows: SQL Server Service Broker or Database Mirroring is running in FIPS compliance mode
This rule triggers an alert when SQL Server Service Broker or Database Mirroring is running in FIPS
compliance mode.
MSSQL on Windows: XML: XML document could not be created because server memory is low. Use
sp_xml_removedocument to release XML documents
When you execute sp_xml_preparedocument , a parsed XML document is stored in the internal cache of
SQL Server 2000. The MSXML parser uses up to one-eighth the total memory available for SQL Server. There
is not enough memory in the portion of cache allocated to MSXML to open the document specified in the
sp_xml_preparedocument statement. This may be because the specified document is very large or because
documents already in that memory space do not leave enough space for the new document.
MSSQL on Windows: Table error: IAM page is linked in the IAM chain for object
All IAM pages for an index must have the same index ID on them. In this case, one of the IAM pages linked
into the IAM chain for index I_ID2 has index ID I_ID1 on it. There are three possible states of this error; they
all mean the same thing, but differ in where the discovery is made.
MSSQL on Windows: The query processor could not start the necessary thread resources for parallel
query execution
Thread resources are scarce in the server.
MSSQL on Windows: Broker Statistics: Enqueued Transport Message Fragments per Second
Collects the "Broker Statistics: Enqueued Transport Message Fragments per Second" performance counter
for each instance of SQL DB Engine.
MSSQL on Windows: HTTP Storage: HTTP Storage I/O Failed per Second
Collects the "HTTP Storage: HTTP Storage I/O Failed per Second" performance counter for SQL DB Engine
that monitor Microsoft Azure Storage account.
MSSQL on Windows: Broker/DBM Transport: Current Message Fragments for Send I/O
Collects the "Broker/DBM Transport: Current Message Fragments for Send I/O" performance counter for
each instance of SQL DB Engine.
MSSQL on Windows: Broker/DBM Transport: Receive I/O Buffer Copies bytes per Second
Collects the "Broker/DBM Transport:Receive I/O Buffer Copies bytes per Second" performance counter for
each instance of SQL DB Engine.
MSSQL on Windows: Broker/DBM Transport: Message Fragment P10 Sends per Second
Collects the "Broker/DBM Transport: Message Fragment P10 Sends per Second" performance counter for
each instance of SQL DB Engine.
MSSQL on Windows: Broker/DBM Transport: Pending Message Fragments for Send I/O
Collects the "Broker/DBM Transport: Pending Message Fragments for Send I/O" performance counter for
each instance of SQL DB Engine.
MSSQL on Windows: Broker/DBM Transport: Pending Message Fragments for Receive I/O
Collects the "Broker/DBM Transport: Pending Message Fragments for Receive I/O" performance counter for
each instance of SQL DB Engine.
MSSQL on Windows: In-Memory OLTP Data Filegroup container free space (%)
Collects the amount of free space available in the In-Memory OLTP data filegroup container, expressed as
percentage of the sum of disk free space and the size of data stored in the In-Memory OLTP data filegroup
container.
XTP Configuration
This monitor checks the status of the SQL Database XTP configuration.
MSSQL on Windows: In-Memory OLTP Data Filegroup Free Space Total (MB)
Collects the amount of free space available across all containers in the In-Memory OLTP data filegroup (in
Megabytes).
MSSQL on Windows: In-Memory OLTP Data Filegroup Free Space Total (%)
Collects the amount of free space available across all containers in the In-Memory OLTP data filegroup,
expressed as percentage of the sum of disk free space and the size of data stored in the In-Memory OLTP
data filegroup.
Default
Name Description
value
Enabled Enables or disables the workflow. No
Must be 'true' or 'false'. When this property is set to true then
Ignore the pools
discovery will discover only pools with bound databases. A
without Memory- true
database can be bound to a pool by using function
Optimized Data
sys.sp_xtp_bind_db_resource_pool.
The recurring interval of time in seconds in which to run the
Interval (seconds) 14400
workflow.
The synchronization time specified by using a 24-hour format. May
Synchronization Time
be omitted.
Specifies the time the workflow is allowed to run before being
Timeout (seconds) 300
closed and marked as failed.
Timeout for database The workflow will fail and register an event, if it cannot access the
15
connection (seconds) database during the specified period.
Timeout for query The workflow will fail and register an event, if the query execution
60
execution (seconds) takes longer than the specified period.
MSSQL on Windows: Group for disabling discovery of previous SQL Servers - Rules
(non-alerting)
MSSQL on Windows: Automatic setup of DB Engine Discovery filter
This rule automatically disables monitoring of non-version agnostic management packs for SQL Server 2012,
2014, and 2016.
Default
Name Description
value
Enabled Enables or disables the workflow. No
Must be 'true' or 'false'. When this property is set to true then
Ignore the pools
discovery will discover only pools with bound databases. A
without Memory- true
database can be bound to a pool by using function
Optimized Data
sys.sp_xtp_bind_db_resource_pool.
The recurring interval of time in seconds in which to run the
Interval (seconds) 14400
workflow.
The synchronization time specified by using a 24-hour format. May
Synchronization Time
be omitted.
Specifies the time the workflow is allowed to run before being
Timeout (seconds) 300
closed and marked as failed.
Timeout for database The workflow will fail and register an event, if it cannot access the
15
connection (seconds) database during the specified period.
Timeout for query The workflow will fail and register an event, if the query execution
60
execution (seconds) takes longer than the specified period.
Default
Name Description
value
Enabled Enables or disables the workflow. No
Defines whether the workflow generates
Generate Alerts True
an Alert.
By default, the monitor checks that the
certificate contains the target DB Engine's
Principal name. This override allows
Additional host names to check checking with a comma-separated list of
additional host names like Always On
listener DNS name, DNS alias of the
hosting machine, FCI virtual name, etc.
If true, the monitor changes its state to a
Certificate must be configured Critical when a DB Engine has no explicitly true
configured certificate.
Certificate expiration critical threshold in
Expiration Critical Threshold (days) 15
days.
Certificate expiration warning threshold in
Expiration Warning Threshold (days) 30
days.
If true, the monitor will ignore that the
certificate is not placed in the Trusted Root
Certification Authorities. If placed, these
certificates are trusted by the operating
Ignore 'Untrusted Root' check false
system and can be used by applications as
a reference for which public key
infrastructure (PKI) hierarchies and digital
certificates are trustworthy.
The recurring interval of time in seconds in
Interval (seconds) 3600
which to run the workflow.
Ignore that the chain cannot be verified
Set flag 'AllowUnknownCertificateAuthority' due to an unknown certificate authority false
(CA) or partial chains.
Default
Name Description
value
Ignore that the certificate authority
Set flag
revocation is unknown when determining false
'IgnoreCertificateAuthorityRevocationUnknown'
certificate verification.
Ignore that the certificate trust list (CTL) is
not valid, for reasons such as the CTL has
Set flag 'IgnoreCtlNotTimeValid' false
expired, when determining certificate
verification.
Ignore that the certificate trust list (CTL)
Set flag 'IgnoreCtlSignerRevocationUnknown' signer revocation is unknown when false
determining certificate verification.
Ignore that the end certificate (the user
Set flag 'IgnoreEndRevocationUnknown' certificate) revocation is unknown when false
determining certificate verification.
Ignore that the basic constraints are not
Set flag 'IgnoreInvalidBasicConstraints' valid when determining certificate false
verification.
Ignore that the certificate has invalid policy
Set flag 'IgnoreInvalidPolicy' false
when determining certificate verification.
Ignore that the CA (certificate authority)
certificate and the issued certificate have
validity periods that are not nested when
verifying the certificate. For example, the
Set flag 'IgnoreNotTimeNested' CA cert can be valid from January 1 to false
December 1 and the issued certificate
from January 2 to December 2, which
would mean the validity periods are not
nested.
Ignore certificates in the chain that are not
valid either because they have expired or
Set flag 'IgnoreNotTimeValid' false
they are not yet in effect when
determining certificate validity.
Ignore that the root revocation is unknown
Set flag 'IgnoreRootRevocationUnknown' false
when determining certificate verification.
Ignore that the certificate was not issued
Set flag 'IgnoreWrongUsage' for the current use when determining false
certificate verification.
If true, the monitor will skip checking that
Skip 'Host Name' check the certificate contains particular host false
names.
If true, the monitor will skip the server's
authentication certificate requirement of
Skip 'Key Usage Server Authentication' check false
the presence of the key's usage extension
'Server Authentication'. Some connection
Default
Name Description
value
driver implementations may not check the
existence of this extension and they may
consider the certificate valid even without
the extension.
If true, the monitor will ignore all issues
Skip 'Revocation' check false
related to revocation.
The synchronization time specified by
Synchronization Time
using a 24-hour format. May be omitted.
Specifies the time the workflow is allowed
Timeout (seconds) to run before being closed and marked as 300
failed.
MSSQL on Windows: Total amount of granted memory in the resource pool (KB)
Collects the Windows "Active memory grants count" performance counter for each resource pool of SQL DB
Engine.
MSSQL on Windows: Current memory target for query execution memory grant (KB)
Collects the Windows "Query exec memory target (KB)" performance counter for each resource pool of SQL
DB Engine.
MSSQL on Windows: Target amount of memory the resource pool is trying to attain based on the settings
and server state (KB)
Collects the Windows "Target memory (KB)" performance counter for each resource pool of SQL DB Engine.
MSSQL on Windows: Number of query memory grant timeouts per second occurring in the resource pool
Collects the Windows "Memory grant timeouts/sec" performance counter for each resource pool of SQL DB
Engine.
MSSQL on Windows: Number of query memory grants per second occurring in the resource pool
Collects the Windows "Memory grants/sec" performance counter for each resource pool of SQL DB Engine.
Default
Name Description
value
Enabled Enables or disables the workflow. No
Must be 'true' or 'false'. When this property is set to true then
Ignore the pools
discovery will discover only pools with bound databases. A
without Memory- true
database can be bound to a pool by using function
Optimized Data
sys.sp_xtp_bind_db_resource_pool.
The recurring interval of time in seconds in which to run the
Interval (seconds) 14400
workflow.
The synchronization time specified by using a 24-hour format. May
Synchronization Time
be omitted.
Specifies the time the workflow is allowed to run before being
Timeout (seconds) 300
closed and marked as failed.
Timeout for database The workflow will fail and register an event, if it cannot access the
15
connection (seconds) database during the specified period.
Timeout for query The workflow will fail and register an event, if the query execution
60
execution (seconds) takes longer than the specified period.