[13917] Imported disk has too many partitions

PSAlert_13917_SCL_ALERT_BADDISK_Monitor (UnitMonitor)

Knowledge Base article:

Summary

As of Matrix Server 3.4, the maximum number of partitions on a disk or LUN is limited to 31. If you upgraded from a release earlier than 3.4, you may have imported disks or LUNs with more than 31 partitions, and may have created dynamic volumes using those higher-numbered partitions. The higher-numbered partitions will continue to work correctly; however, you should be aware of the following:

- A new volume cannot include subdevices having partition numbers above 31. Existing volumes cannot be extended to include the higher-numbered partitions.

- You will not be able to take a hardware snapshot of partitions with numbers above 31.

The Alert will remain until the disks containing more than 31 partitions are deported.

Element properties:

TargetPolyServe.MatrixServer.Cluster
Parent MonitorSystem.Health.AvailabilityState
CategoryCustom
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.2SingleEventLog2StateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Imported disk has too many partitions

IllegalDisks: One or more imported disks has more than {0} partitions. {1} only supports {2} partitions per disk. Some volume operations may fail on partitions higher than this limit. See the Matrix Server Administration Guide for further information.
RunAsDefault

Source Code:

<UnitMonitor ID="PSAlert_13917_SCL_ALERT_BADDISK_Monitor" Accessibility="Public" Enabled="true" Target="PolyServe.MatrixServer.Cluster" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.2SingleEventLog2StateMonitorType" ConfirmDelivery="false">
<Category>Custom</Category>
<AlertSettings AlertMessage="PSAlert_13917_SCL_ALERT_BADDISK_AlertMessageResourceID">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Params/Param[1]$</AlertParameter1>
<AlertParameter2>$Data/Context/Params/Param[2]$</AlertParameter2>
<AlertParameter3>$Data/Context/Params/Param[3]$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="PSAlert_13917_SCL_ALERT_BADDISK_Monitor_Alert" MonitorTypeStateID="FirstEventRaised" HealthState="Error"/>
<OperationalState ID="PSAlert_13917_SCL_ALERT_BADDISK_Monitor_Resolve" MonitorTypeStateID="SecondEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<FirstComputerName>.</FirstComputerName>
<FirstLogName>MatrixServer</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">13917</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="String">Params/Param[4]</XPathQuery>
</ValueExpression>
<Operator>MatchesRegularExpression</Operator>
<Pattern>$Target/Property[Type="PolyServe.MatrixServer.PSObject"]/ObjectKey$</Pattern>
</RegExExpression>
</Expression>
</And>
</FirstExpression>
<SecondComputerName>.</SecondComputerName>
<SecondLogName>MatrixServer</SecondLogName>
<SecondExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">13918</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="String">Params/Param[1]</XPathQuery>
</ValueExpression>
<Operator>MatchesRegularExpression</Operator>
<Pattern>$Target/Property[Type="PolyServe.MatrixServer.PSObject"]/ObjectKey$</Pattern>
</RegExExpression>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>