Event 29120

asked 2020-09-01T08:05:08.65+00:00
Fursel 331 Reputation points


Something happened with our SCOM 2016 and all the templates from Authoring pane in console doesn't create objects in Monitoring pane. Same goes with Subscriptions, so modification of the subscription or subscription channel doesn't make any difference.

Event from all Management Servers:

OpsMgr Management Configuration Service failed to process configuration request (Xml configuration file or management pack request) due to the following exception

Microsoft.EnterpriseManagement.ManagementConfiguration.DataAccessLayer.DataAccessException: Data access operation failed
at Microsoft.EnterpriseManagement.ManagementConfiguration.DataAccessLayer.DataAccessOperation.ExecuteSynchronously(Int32 timeoutSeconds, WaitHandle stopWaitHandle)
at Microsoft.EnterpriseManagement.ManagementConfiguration.SqlConfigurationStore.ConfigurationStore.ExecuteOperationSynchronously(IDataAccessConnectedOperation operation, String operationName)
at Microsoft.EnterpriseManagement.ManagementConfiguration.SqlConfigurationStore.ConfigurationStore.GetConfiguration(IDictionary2 agentList, ConfigurationSignature configurationSignature) at Microsoft.EnterpriseManagement.ManagementConfiguration.Engine.AgentRequestProcessor.ProcessConfigurationRequest(ICollection1 requestList, Int32& processedRequestsCount)
at Microsoft.EnterpriseManagement.ManagementConfiguration.Engine.AgentRequestProcessor.Execute()

at Microsoft.EnterpriseManagement.ManagementConfiguration.Engine.ThreadManager.ResponseThreadStart(Object state)

System.Data.SqlClient.SqlException (0x80131904): Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding. ---> System.ComponentModel.Win32Exception (0x80004005): The wait operation timed out
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at System.Data.SqlClient.SqlDataReader.TryReadInternal(Boolean setTimeout, Boolean& more)
at System.Data.SqlClient.SqlDataReader.Read()
at Microsoft.EnterpriseManagement.ManagementConfiguration.SqlConfigurationStore.AgentConfigGetOperation.ReadChildrenAgentInfo(IDataReader reader, AgentConfigurationBuilder builder)
at Microsoft.EnterpriseManagement.ManagementConfiguration.SqlConfigurationStore.AgentConfigGetOperation.ReadData(SqlDataReader reader)
at Microsoft.EnterpriseManagement.ManagementConfiguration.DataAccessLayer.ReaderSqlCommandOperation.SqlCommandCompleted(IAsyncResult asyncResult)
Error Number:-2,State:0,Class:11

Operations Manager
Operations Manager
A family of System Center products that provide infrastructure monitoring, help ensure the predictable performance and availability of vital applications, and offer comprehensive monitoring for datacenters and cloud, both private and public.
1,200 questions
No comments
{count} votes

Accepted answer
  1. answered 2020-09-02T08:02:27.77+00:00
    Fursel 331 Reputation points

    Seems that this part is important
    Microsoft.EnterpriseManagement.ManagementConfiguration.SqlConfigurationStore.AgentConfigGetOperation.ReadChildrenAgentInfo(IDataReader reader, AgentConfigurationBuilder builder)

    It seemed that there was issue with relation between parent and child agents. One Management Server somehow was also as SCOM Agent, after removing the Agent on this server it started to work correctly.

    Query to find it in OperationManager DB:

    SELECT c1.ParentAgentRowId, a1.NetworkName 'Parent',
    c1.ChildAgentRowId, a1.NetworkName 'Child'
    FROM CS.CommunicationRelationship c1
    JOIN CS.Agent a1
    ON c1.ParentAgentRowId = a1.AgentRowId
    WHERE c1.ParentAgentRowId = c1.ChildAgentRowId
    And c1.DeletedInd = 0
    SELECT c2.ParentAgentRowId, a2p.NetworkName 'Parent',
    c2.ChildAgentRowId, a2c.NetworkName 'Child'
    FROM CS.CommunicationRelationship c2
    JOIN CS.Agent a2p
    ON c2.ParentAgentRowId = a2p.AgentRowId
    JOIN CS.Agent a2c
    ON c2.ChildAgentRowId = a2c.AgentRowId
    JOIN CS.CommunicationRelationship c2r
    ON c2.ParentAgentRowId = c2r.ChildAgentRowId
    AND c2.ChildAgentRowId = c2r.ParentAgentRowId
    WHERE c2.DeletedInd = 0
    AND c2r.DeletedInd = 0

    No comments

2 additional answers

Sort by: Most helpful
  1. answered 2020-09-01T08:51:59.593+00:00
    Leon Laude 85,026 Reputation points

    Hi @Fursel ,

    The interesting part is the following:

    System.Data.SqlClient.SqlException (0x80131904): Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding. ---> System.ComponentModel.Win32Exception (0x80004005): The wait operation timed out

    There seem to be connectivity or performance issues with your SCOM databases or the server hosting the databases.
    I would suggest you to first check the health of your SCOM databases, and also check the performance of your SCOM databases or the server hosting the SCOM databases.


    (If the reply was helpful please don't forget to upvote or accept as answer, thank you)

    Best regards,

    No comments

  2. answered 2020-09-02T03:40:14.147+00:00
    Crystal-MSFT 19,341 Reputation points Microsoft Employee

    From the error message, it seems the connection to SQL Database with time expired.

    Here we suggest to check the connection to SQL database, we can create UDL to connect to SQL to test connection. The following link for the reference:
    Note: Non-Microsoft link, just for the reference.

    Meanwhile, check if there's any performance issue on the SQL server as well.

    Hope it can help.

    If the response is helpful, please click "Accept Answer" and upvote it.

    No comments