Exres.dll waits up to time specified in the PendingTimeout value (default is 3 minutes, can be customized per resource basis) for completion of terminate operation, which can be a RPC to Information Store, System Attendant or Routing services, a metabase operation to start a VSI, or start any of the corresponding services that host the resource, or the MTA service.
If the service stopped responding, then the stop virtual server RPC will likely fail by timeout.
Investigate the service state and look for deadlocks or other problems that cause long delays on returning RPC calls. Look for event logs from MSExchangeCluster for the same resource about the same time. Look for event logs from the corresponding service. Look for errors in cluster.log coming from this resource for a detailed failure sequence.
For more information about MSExchangeCluster event 1021, see:
Target | Microsoft.Exchange.ServerRole.2003 | ||
Category | EventCollection | ||
Enabled | True | ||
Event_ID | 1021 | ||
Event Source | MSExchangeCluster | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
| ||
Event Log | Application |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
EventDS | DataSource | Microsoft.Windows.EventProvider | Default |
GenerateAlert | WriteAction | System.Health.GenerateAlert | Default |
<Rule ID="Failed_to_terminate_a_resource_because_of_timeout___Click_on_the_associated_events_for_more_information" Enabled="onEssentialMonitoring" Target="Exch2003Core!Microsoft.Exchange.ServerRole.2003" ConfirmDelivery="false" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="EventDS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>.</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>1021</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>MSExchangeCluster</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertOwner>$Data/PublisherName$</AlertOwner>
<AlertMessageId>$MPElement[Name="Failed_to_terminate_a_resource_because_of_timeout___Click_on_the_associated_events_for_more_information.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>