Sys = System
SysTemp.name = System Temperature
SysTemp.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showsystemp command.
SysTemp.criterion = The upper threshold of the system temperature is 52 and the lower threshold is 5.
SysTemp.suggestion = Impact: If this check item is not passed, the system performance may deteriorate or a system power-off may occur under high temperature.\n1 Check the ambient temperature. If the ambient temperature is too high or too low, take measures to adjust the ambient temperature to an appropriate level as soon as possible.\n2 For details about how to resolve this issue, see troubleshooting cases.\n3 If you have any questions, please contact technical support engineers for further handling.
SysTemp.helphref = troubleshooting cases{/helpCase/en/topic/check_SystemTemperature.html}

Datacollect.name = Checking System Log Collection
Datacollect.method = Step 1 Log in to the device as user admin.\nStep 2 Run the datacollect command to collect system logs.\nStep 3 Export the system log compressed package to the local PC and decompress the package.
Datacollect.criterion = If the message indicating "All log export successfully" is displayed, the check item is passed. Otherwise, the check item is not passed.
Datacollect.suggestion = Impact: If the check item is not passed, the upgrade may fail. You are advised to eliminate the risk before the check.\n1 If the message indicating "The system is busy" or "Message execution timed out" is displayed, manually collect system logs.\n  (1) If the collection is successful, wait for five minutes and use the tool to perform check again.\n  (2) If the collection fails because the system is busy, retry later. If the collection fails because the network is abnormal, troubleshoot the network and retry.\n2 If the message indicating "Part of the system log export successfully" is displayed:\n  (1) Check the status of controllers. If the controller status is abnormal, follow instructions in troubleshooting cases to troubleshoot controllers.\n  (2) Follow instructions in troubleshooting cases to check whether there are power-on and power-off logs of coffer disks.\n  (3) Reduce the service load or retry later if the service load is heavy.\n3 Contact technical support engineers for help if there are other problems.
Datacollect.helphref = troubleshooting cases{/helpCase/en/topic/check_ControllerStatus.html,/helpCase/en/topic/log_collection.html}

ControllerStat.name = Controller Status
ControllerStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showcontroller command.
ControllerStat.criterion = Operation Status: Normal indicates that the controller runs properly.\nHealth Status: Normal indicates that the controller is in a normal state.
ControllerStat.suggestion = Impact: If this check item is not passed, the upgrade may fail.\n1 For details about how to resolve this issue, see troubleshooting cases. \n2 If you have any questions, please contact technical support engineers for further handling.
ControllerStat.helphref = troubleshooting cases{/helpCase/en/topic/check_ControllerStatus.html}

SysStat.name = System Status
SysStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showsys command.
SysStat.criterion = Current System Mode: Double Controllers Normal or Single Controller Normal indicates that the system runs properly. If the status is abnormal, the check is not passed.
SysStat.suggestion = Impact: If this check item is not passed, the upgrade may fail.\nIf you have any questions, please contact technical support engineers for further handling.

CpuUilization.name = CPU Utilization
CpuUilization.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showcontroller command.
CpuUilization.criterion = 1 In the command output, CPU Utility(%) indicates the CPU utilization of controller.\n2 Check the data every five seconds, collect statistics for four times, then calculate the average value of each controller. If the CPU utilization calculated is larger than or equal to 30%, the status is abnormal, the check will not pass.
CpuUilization.suggestion = Impact: If this check item is not passed, the upgrade may fail and services may be interrupted.\n1 For details about how to resolve this issue, see troubleshooting cases. \n2 If you have any questions, please contact technical support engineers for further handling.
CpuUilization.helphref = troubleshooting cases{/helpCase/en/topic/check_CPUStatus.html}

MemCapacity.name = Checking Memory Capacity
MemCapacity.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showcache command.
MemCapacity.criterion = Total Memory Capacity(MB) indicates the memory capacity of controller.\n(1) If the system is single controller, only support to perform offline upgrade.\n(2) If the memory capacities of the two controllers in an engine are different, do not perform an online or offline upgrade.\n(3) If the memory capacity of either of the two controllers is 2 GB, do not perform an online upgrade.
MemCapacity.suggestion = Impact: Inconsistent memory sizes will lead to an online upgrade failure. The controller with the smaller memory size cannot be powered on.\n1 For details about how to resolve this issue, see troubleshooting cases. \n2 If you have any questions, please contact technical support engineers for further handling.
MemCapacity.helphref = troubleshooting cases{/helpCase/en/topic/cache.html}

UpgradeProcess.name = Checking Upgrade Process
UpgradeProcess.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showupgradestatus command.
UpgradeProcess.criterion = Step Status indicates the status of upgrade process. If the value is Activing, the check will not pass.
UpgradeProcess.suggestion = Impact: If this check item is not passed, the upgrade process is running in the system.\n1 Check whether any part is replaced or upgraded within half an hour. If there is any replacement or upgrade, perform the check again after the upgrade is completed. \n2 If no, please see troubleshooting cases to resolve this issue.\n3 If you have any questions, please contact technical support engineers for further handling.
UpgradeProcess.helphref = troubleshooting cases{/helpCase/en/topic/upgrade.html}

FreeMemory.name = Checking Free Memory
FreeMemory.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showsys command to query the device model.\nStep 3 Run the datacollect command to collect system log.\nStep 4 Export the system log package to the local PC and decompress the package.\nStep 5 Under the directory of the decompressed package, resolve meminfo files under all controller paths.\n
FreeMemory.criterion = 1 The MemFree field in the meminfo file indicates the size of free memory. \n2 Check memory space based on device models:\n(1) If the device model is S2200T, S2600T, or S2900, the check failed when the free memory space is smaller than 80 MB.\n(2) If the device model is S5600T, S5800T, S5900-M100, S5900-M200, S6800T, S6900-M100 or S8000-I, the check failed when the free memory space is smaller than 220 MB.\n(3) For device model S3900-M200, S3900-M300, or S5500T, if the version is earlier than V100R002C00SPC005 and the free memory is smaller than 220 MB, the check failed; if the version is later than or equal to V100R002C00SPC005 and the free memory is smaller than 80 MB, the check failed.
FreeMemory.suggestion = Impact: If this check item is not passed, the upgrade may fail and services may be interrupted.\n1 If offline upgrade is specified, you are advised to see troubleshooting cases to resolve this issue after stopping services.\n2 If online upgrade is specified, please contact technical support engineers for further handling.
FreeMemory.helphref = troubleshooting cases{/helpCase/en/topic/free_memory.html}

HotPatchCheck.name = Hot Patch Check Before Upgrade
HotPatchCheck.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showsys command to get device type.\nStep 3 Run the showupgradepkginfo -t 1 command to get system software version.\nStep 4 Run the showupgradepkginfo -t 3 command to get system hot patch version.\nStep 5 Check whether the device has been installed the required hot patch.
HotPatchCheck.criterion = 1 If the device type is S3900-M200, S3900-M300, S5900-M100, S5900-M200, or S6900-M100, continue the check. In other cases, the check is passed. \n2 The version mapping between system software and its patch is as follows:\n(1) V100R002C00SPC008: V100R002C00SPH801\n(2) V100R002C00SPC009: V100R002C00SPH901\n(3) V100R002C00SPC011: V100R002C00SPHb05\n(4) V100R002C00SPC012: V100R002C00SPHc05\n(5) V100R002C00SPC013: V100R002C00SPHd02\n(6) V100R002C00SPC015: V100R002C00SPHf03\n(7) V100R002C00SPCg00: V100R002C00SPHg03\n(8) V100R002C00SPCh00: V100R002C00SPHh03\n3 If the required hot patch has been installed on the current system, the check passed. Otherwise, the check failed.\n4 If the following hot patch has been installed on the current system, you must rollback the hot patch and then install the required one.\n(1) V100R002C00SPC011: V100R002C00SPHb04\n(2) V100R002C00SPC012: V100R002C00SPHc04\n(3) V100R002C00SPC013: V100R002C00SPHd01\n(4) V100R002C00SPC015: V100R002C00SPHf02\n(5) V100R002C00SPCg00: V100R002C00SPHg02\n(6) V100R002C00SPCh00: V100R002C00SPHh01
HotPatchCheck.suggestion = Impact: If this check item is not passed, the required patch has not been installed for this version and the upgrade may fail.\n1 Please install the required hot patch. For details about how to resolve this issue, see troubleshooting cases.\n2 If you have any questions, please contact technical support engineers for further handling.
HotPatchCheck.helphref = troubleshooting cases{/helpCase/en/topic/hotpatch.html}

InternalRes.name = Internal Resource Check
InternalRes.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showsys command to get system time and record it.\nStep 3 Run the datacollect command to collect system log.\nStep 4 Export the system log package to the local PC and decompress the package.\nStep 5 Under the decompressed directory, view the generation time of message files under all controller directories and resolve the message file whose generation time is the closest to the time recorded in step 2.
InternalRes.criterion = Check whether the following information is found in the message file. If yes, the check failed. \n(1) Information that is printed to indicates that the memory node of the OS module has insufficient space: [1500003e500a0] or [8001500003e500a0]\n(2) Information that is printed to indicates that the memory node of the MSG module has insufficient space: [1500003e80003] or [8001500003e80003]\n(3) Information that is printed to indicates that the memory node of the socket module has insufficient space: nf_conntrack: table full, dropping packet.\n
InternalRes.suggestion = Impact: If this check item is not passed, the upgrade may fail and services may be interrupted.\n1 If offline upgrade is specified, you are advised to see troubleshooting cases to resolve this issue after stopping services.\n2 If online upgrade is specified, please contact technical support engineers for further handling.
InternalRes.helphref = troubleshooting cases{/helpCase/en/topic/internal_resource.html}

Hardware = Hardware
ExpansionModuleStat.name = Expansion Module Status
ExpansionModuleStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showexpmodule command.
ExpansionModuleStat.criterion = Status: Normal indicates that the expansion module is in a normal state.
ExpansionModuleStat.suggestion = Impact: If this check item is not passed, the reliability is compromised and upgrade cannot be performed.\n1 Please see troubleshooting cases to resolve this issue.\n2 If you have any questions, please contact technical support engineers for further handling.
ExpansionModuleStat.helphref = troubleshooting cases{/helpCase/en/topic/check_ExpansionModule.html}

PowerSupplyStat.name = Power Supply Status
PowerSupplyStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showpower command.
PowerSupplyStat.criterion = Status: Normal indicates that the power supply is in a normal state.
PowerSupplyStat.suggestion = Impact: If this check item is not passed, the system performance may deteriorate or a system power-off may occur.\n1 Please see troubleshooting cases to resolve this issue.\n2 If you have any questions, please contact technical support engineers for further handling.
PowerSupplyStat.helphref = troubleshooting cases{/helpCase/en/topic/check_PowerSupply.html}

BBUStat.name = BBU Status
BBUStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showbbu command.
BBUStat.criterion = Status: Normal indicates that the BBU is in a normal state.
BBUStat.suggestion = Impact: If this check item is not passed, in the case of an abnormal power-off, the normal power-off process may not be completed and dirty data may be lost.\n1 Please see troubleshooting cases to resolve this issue.\n2 If you have any questions, please contact technical support engineers for further handling.
BBUStat.helphref = troubleshooting cases{/helpCase/en/topic/check_BBUStatus.html}

BBUPower.name = BBU Power
BBUPower.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showbbu command.
BBUPower.criterion = BBU Power: Sufficient indicates that the BBU power is sufficient, while Insufficient indicates that the BBU power is insufficient. If the BBU power is insufficient, the check is not passed.
BBUPower.suggestion = Impact: If this check item is not passed, in the case of an abnormal power-off, the normal power-off process may not be completed and dirty data may be lost.\n1 Please see troubleshooting cases to resolve this issue.\n2 If you have any questions, please contact technical support engineers for further handling.
BBUPower.helphref = troubleshooting cases{/helpCase/en/topic/check_BBUPower.html}

FanStat.name = Fan Status
FanStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showenclosure command to query the information about all enclosures.\nStep 3 Run the showfan -e enclosureID -f fanID command on queried enclosureID in step 2(In this step, the fanID ranges in 0,1,2,3.).
FanStat.criterion = In the  showfan -e enclosureID -f fanID command output,  Status: Normal indicates that the fan is in a normal state.
FanStat.suggestion = Impact: If this check item is not passed, the heat dissipation is abnormal and may cause a power failure in the controller enclosure or disk enclosure.\n1 Please see troubleshooting cases to resolve this issue.\n2 If you have any questions, please contact technical support engineers for further handling.
FanStat.helphref = troubleshooting cases{/helpCase/en/topic/check_FanStatus.html}

OptTransceiverStat.name = Optical Transceiver Status
OptTransceiverStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showfibremodule command.
OptTransceiverStat.criterion = Status: Normal indicates that the optical transceiver is in a normal state, while other situations indicate that it is in an abnormal state. If the status is abnormal, the check is not passed.
OptTransceiverStat.suggestion = Impact: If this check item is not passed, the services of the port to which the optical module is connected may be interrupted.\n1 Please see troubleshooting cases to resolve this issue.\n2 If you have any questions, please contact technical support engineers for further handling.
OptTransceiverStat.helphref = troubleshooting cases{/helpCase/en/topic/check_FibreModule.html}

EnclosureStat.name = Enclosure Status
EnclosureStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showenclosure command.
EnclosureStat.criterion = Status: Online indicates that the enclosure is normal.
EnclosureStat.suggestion = Impact: If this check item is not passed, all disks in the offline disk enclosure cannot be accessed.\n1 If the status of enclosure is Offline, please see troubleshooting cases to resolve this issue.\n2 If you have any questions, please contact technical support engineers for further handling.
EnclosureStat.helphref = troubleshooting cases{/helpCase/en/topic/check_EnclosureStatus.html}

ButtonCellStat.name = Button Cell Status
ButtonCellStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showsys command to obtain device type.\nStep 3 Run the showupgradepkginfo -t 1 command to obtain device current version.\nStep 4 If the version is earlier than V100R005C02SPC300, perform steps 5 to 7.\nStep 5 Run the datacollect command to collect system log.\nStep 6 Export the system log package to the local PC and decompress the package.\nStep 7 Under the directory of the decompressed package, resolve pangea_mmlinfo files under all controller paths.
ButtonCellStat.criterion = 1 The current version of the device is V100R005C02SPC300 or later, the check passed.\n2 The current version is earlier than V100R005C02SPC300, obtain pangea_mmlinfo files of all controllers. Search for field board voltage alarm and check whether the button cell is 1. If yes, the check failed.
ButtonCellStat.suggestion = 1 Please see troubleshooting cases to resolve this issue.\n2 If you have any questions, please contact technical support engineers for further handling.
ButtonCellStat.helphref = troubleshooting cases{/helpCase/en/topic/coin_battery.html}

FwVerConsistence.name = Version consistency of firmware (Controller/BMC/BBU/SES/SAS)
FwVerConsistence.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showupgradepkginfo -t 1 command to view the controller version (Package Version).\nStep 3 Run the showbmcver command to view the BMC version (Version).\nStep 4 Enter the developer mode.\nStep 4 Run the showbbuver command to view the BBU version (Firmware Version).\nStep 5 Run the showsesver command to view the SES version (Version).\nStep 6 Run the showsasfirmwarever command to view the SAS version (Firmware Version).
FwVerConsistence.criterion = The BMC check is performed only on all V100R005 versions of S5600T, S5900-M100, S5900-M200, S5800T, S6800T, S6900-M100, S8000-I, and S6900. Other check is performed on all product models and versions.\nIf controller versions are inconsistent, the check will not pass.\nIf BMC versions are inconsistent, the check will not pass.\nIf BBU versions are inconsistent, the check will not pass.\nIf SES versions are inconsistent, the check will not pass.\nIf SAS versions are inconsistent, the check will not pass.\nIf the versions of all firmware are consistent, the check will pass.
FwVerConsistence.suggestion = Impact: If the versions of firmware such as controllers, BMC, BBU, SES, and SAS are inconsistent, upgrade cannot be performed.\n1 If controller versions are inconsistent, check whether the controller status is normal. If the controller status is abnormal, follow the instructions of technical support engineers to restart the standby controllers or remove and reinsert the standby controllers. In this way, the system software version of the secondary controller is synchronized with that of the primary controller after the controllers are restarted.\n2 If BMC versions are inconsistent, view information about related versions and follow the instructions of technical support engineers to restart or remove and reinsert management modules that have BMCs of inconsistent versions.\n3 If BBU versions are inconsistent, check whether there is a BBU intermixing alarm (alarm ID: 0x000E01F40007ULL) on the ISM. If yes, contact technical support engineers. If no, view information about related versions and remove and reinsert BBUs of inconsistent versions. You can only remove and reinsert BBUs that pass status check. Wait 10 minutes and check BBU versions again.\n4 If SES versions are inconsistent, view information about related versions and follow the instructions of technical support engineers to restart or remove and reinsert controllers that have SES firmware of inconsistent versions.\n5 If SAS versions are inconsistent, view Board TYPE of SAS firmware in the original information. If the value of Board TYPE is Interface Module, follow instructions in troubleshooting cases to troubleshoot SAS version inconsistency. If the value of Board TYPE is Controller, view information about related versions and follow the instructions of technical support engineers to restart or remove and reinsert controllers that have SAS firmware of inconsistent versions.
FwVerConsistence.helphref = troubleshooting cases{/helpCase/en/topic/version.html}

HardDisk = Hard disk
DiskPhysicalStat.name = Disk Physical Status
DiskPhysicalStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showdisk -physic command.
DiskPhysicalStat.criterion = Status: Normal indicates that the disk is in a normal physical state.
DiskPhysicalStat.suggestion = Impact: If this check item is not passed, the system has faulty disks. Data reliability is compromised and services may be interrupted.\n1 Please see troubleshooting cases to resolve this issue.\n2 If you have any questions, please contact technical support engineers for further handling.
DiskPhysicalStat.helphref = troubleshooting cases{/helpCase/en/topic/check_DiskPhysical.html}

DiskLogicalStat.name = Disk Logical Status
DiskLogicalStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showdisk -logic command.
DiskLogicalStat.criterion = 1 Logical Status: Normal, Free spare, or Used spare indicates the disk is in a normal logical state.\n2 Otherwise, the disk is in an abnormal logical state.
DiskLogicalStat.suggestion = Impact: If this check item is not passed, the upgrade cannot be performed.\n1 If the logical status of any disk is Reconstruction is in progress, Copyback is in process or Precopying, please wait until the process finishes and then check again.\n2 If the logical status of any disk is Fault or Reconstructed, and the status of RAID is not Fault, for details about how to replace the disk, see the OceanStor T V1&Sx900 Disk Replacement Guide.\n3 If you have any questions, please contact technical support engineers for further handling.
DiskLogicalStat.helphref = OceanStor T V1&Sx900 Disk Replacement Guide{http://support.huawei.com/enterprise/docinforeader.action?contentId=DOC1000077438}

MediumScan.name = Scanning Medium
MediumScan.method = Note: Medium scanning is a background program that is run by controllers and provides the function of detecting disk errors. The medium scanning program detects errors and then reports them to the event log module.\nStep 1 Log in to the device as user admin.\nStep 2 Enter the developer mode, run the showmediascan command.
MediumScan.criterion = If the Status is  Executing, the check will not pass.
MediumScan.suggestion = Impact: If this check item is not passed, the upgrade may fail.\n1 Please see troubleshooting cases to resolve this issue.\n2 If you have any questions, please contact technical support engineers for further handling.
MediumScan.helphref = troubleshooting cases{/helpCase/en/topic/media_scan.html}

DiskQuantity.name = Disk Quantity Check
DiskQuantity.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showdisk -physic command.
DiskQuantity.criterion = Check the quantity of disks in the system. If the quantity is larger than 216, the check will not pass.
DiskQuantity.suggestion = Impact: If this check item is not passed, services may be interrupted during the online upgrade.\n1 If the check result is Warning, an online upgrade cannot be performed, please choose the method of offline upgrade.\n2 If you have any questions, please contact technical support engineers for further handling.

BasedOperation = Based operation
RAIDGrpStat.name = RAID Group Status
RAIDGrpStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showrg command.
RAIDGrpStat.criterion = Status: Normal indicates that the RAID group is in a normal state.
RAIDGrpStat.suggestion = Impact: If this check item is not passed, the data reliability is compromised, the upgrade may fail, and services may be interrupted.\n1 If a RAID group is in the faulty state, recover the RAID group. The operation involves the data integrity issue. Therefore, please contact technical support engineers for further handling. The recovery operation must be performed under the guidance of professional personnel.\n2 If a RAID group is in the degraded state, use the following method to handle:\n(1) If the logical status of any disk is Reconstruction is in progress, or Copyback is in process, please wait until the process finishes and then check again.\n(2) If the logical status of any disk is Reconstructed, for details about how to replace the faulty disk, see the OceanStor T V1&Sx900 Disk Replacement Guide.\n(3) If the faulty disk is not under reconstruction due to the lack of a free hot spare disk, please see the section "Setting a Hot Spare Disk" of OceanStor T V1&Sx900 Disk Replacement Guide to configure a hot spare disk.\n3 If you have any questions, please contact technical support engineers for further handling.\n
RAIDGrpStat.helphref = OceanStor T V1&Sx900 Disk Replacement Guide{http://support.huawei.com/enterprise/docinforeader.action?contentId=DOC1000077438,http://support.huawei.com/enterprise/docinforeader.action?contentId=DOC1000077438}

LUNStatOff.name = LUN Status
LUNStatOff.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showlun command to obtain LUN information.\nStep 3 Run the showpool command to view the thin pool information.\nStep 4 If any thin pool exists, use the following method to check the format status of resource LUNs in the thin pool:\n(1) Run the datacollect command to collect system log.\n(2) Export the system log package to the local PC and decompress the package.\n(3) Under the directory of the decompressed package, resolve raid_mmlinfo files under any controller path.
LUNStatOff.criterion = Note: If the showpool command does not exist, that indicates the device does not support this function.\nStep 1 In the command output of showlun, if Status is Normal, the LUN status is normal. Otherwise, the LUN status is abnormal, and the check fails to pass.\nStep 2 The following three cases allow the check to pass. In other cases, you need to continue the query.\n(1) The device does not support thin pools.\n(2) No valid license exists.\n(3) The device supports thin pools and has a valid license; however, no thin pool is created.\nStep 3 Use the following method to check the format status of resource LUNs in a thin pool: \nResolve the raid_mmlinfo file and check keyword LUN status to view the status of all LUNs. If the status of any LUN is 4 (formatting) and the LUN ID is not in the output of the showlun command, the resource LUNs are being formatted in the thin pool and the check failed.
LUNStatOff.suggestion = Impact: If this check item is not passed, the upgrade cannot be performed.\n1 Upgrade is prohibited during LUN formatting or thin pool formatting. Perform a check again after the formatting is completed. \n2 If any LUN is in formatting state, run the showlun -lun lunId command to check the format progress. In the command output, check the value of Format Progress(%).\n3 If the status of any LUN is fault, contact technical support engineers to troubleshoot the fault and perform the check again.

LUNStatOn.name = LUN Status
LUNStatOn.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showlun command to obtain LUN information.
LUNStatOn.criterion = In the command output of showlun, if Status is Normal, the LUN status is normal. Otherwise, the LUN status is abnormal, and the check fails to pass.
LUNStatOn.suggestion = Impact: If this check item is not passed, during the upgrade, the performance may deteriorate and services may be interrupted.\n1 If the check result is Failed, perform the following operations:\n(1) Upgrade is prohibited during LUN formatting. Perform a check again after the formatting is completed.\n(2) If LUNs are in any abnormal state, contract professional personnel to resolve the problem.\n2 If any LUN is in formatting state, run the showlun -lun lunId command to check the format progress. In the command output, check the value of Format Progress(%).\n3 If you have any questions, please contact technical support engineers for further handling.

RAIDGrpSpindownStat.name = RAID Group Spindown Status
RAIDGrpSpindownStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showrgprdspindown command.\nStep 3 Run the showrgiospindown command.
RAIDGrpSpindownStat.criterion = If a RAID group is set to spindown, the check will not pass.
RAIDGrpSpindownStat.suggestion = Impact: If the system has any disk in sleep state, the disk will automatically wake up during the upgrade and the upgrade will fail due to timeout.\n1 Please see troubleshooting cases to resolve this issue.\n2 If you have any questions, please contact technical support engineers for further handling.
RAIDGrpSpindownStat.helphref = troubleshooting cases{/helpCase/en/topic/raidgroup_dormat.html}

LUNLoadBalanceStat.name = LUN Load Balance Status
LUNLoadBalanceStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showlun command to view all the LUN IDs.\nStep 3 Run the showlun -lun lunId command on queried lunID in step 2.
LUNLoadBalanceStat.criterion = Step 1 Check whether the LUN is private LUN, do not need to check private LUN.\nStep 2 If the LUN is not private LUN, and values of Owning Controller and Working Controller are consistent, the condition is normal.
LUNLoadBalanceStat.suggestion = Impact: If this check item is not passed, the online upgrade is performed and production services may be interrupted.\n1 Check whether the front-end links are abnormal. If yes, rectify the abnormality according to troubleshooting cases.\n2 If you have any questions, please contact technical support engineers for further handling.
LUNLoadBalanceStat.helphref = troubleshooting cases{/helpCase/en/topic/check_LUNLoadBalance.html}

LUNWritebackWithoutMirror.name = LUN Writeback Without Mirroring
LUNWritebackWithoutMirror.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showlun command to view all the LUN IDs.\nStep 3 Run the showlun -lun lunId command on queried lunID in step 2.
LUNWritebackWithoutMirror.criterion = Step 1 Check whether the LUN is private LUN, do not need to check private LUN.\nStep 2 If the LUN is not private LUN, and Running Cache Write Strategy is Write back and No mirroring, the condition is abnormal.
LUNWritebackWithoutMirror.suggestion = Impact: If this check item is not passed, data may be lost during the online upgrade.\n1 Please see troubleshooting cases to resolve this issue.\n2 If you have any questions, please contact technical support engineers for further handling.
LUNWritebackWithoutMirror.helphref = troubleshooting cases{/helpCase/en/topic/check_LUNWritebackNoMirror.html}

CacheWriteStrategy.name = Cache Write Strategy
CacheWriteStrategy.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showlun command to view all the LUN IDs.\nStep 3 Run the showlun -lun lunId command on queried lunID in step 2 to get the details of LUN. \nStep 4 If the LUN is not private LUN, check it.\n
CacheWriteStrategy.criterion = Step 1 Check whether the LUN is private LUN, do not need to check private LUN.\nStep 2 Check the LUN as the following criterion: \n(1) If values of Cache Write Strategy and Running Cache Write Strategy are consistent, the condition is normal.\n(2) Other conditions, the LUN check not pass.
CacheWriteStrategy.suggestion = Impact: If this check item is not passed, the upgrade may fail.\n1 If LUN Cache write strategy is not normal, please check whether the system contains the RAID group or Thin pool in sleep. Please disable the disk spin-down. After the upgrade, please recover the settings.  \n2 If LUN Cache write strategy is Write back mandatory, perform the online upgrade may cause backup data loss. Please record the configuration of Cache write strategy then reconfigure it. After the upgrade, please recover the configuration recorded.\n3 If the LUN write policy is write-through that is inconsistent with the configured write policy, check whether a fault occurs in the following item: controllers, mirror links, coffers, BBUs, fans, power supplies, or LUNs. If yes, resolve this issue and perform the check again. \n4 If you have any questions, please contact technical support engineers for further handling.

ServicePressureB.name = Service Pressure
ServicePressureB.method = Note: Skip this step if you cannot obtain correct information about commands from the following steps. \nStep 1 Log in to controller A and controller B as user admin, check the service pressure of each controller according to the following steps.\nStep 2 Check the IO Usage: Log in to the mml model, send the command: ioperf ioutilization 5.\nStep 3 Check the disk usage: Log in to the debug model, send the command: iostat -x 5 4.
ServicePressureB.criterion = Note: Skip this step if you cannot obtain correct information about commands from the following steps.\nStep 1 If the IO Usage exceeds 60%, the system is overloaded. The check is not passed.\nStep 2 Disk usage: Because the first statistical data is historical data, so you can only check the last three times of sampling. If the disk usage is larger than 20%, check not pass.
ServicePressureB.suggestion = Impact: If this check item is not passed, the upgrade may fail.\n1 If the check result is Failed, the service load on the current system is heavy, an online upgrade cannot be performed. It is recommended to perform the online upgrade when service load is low.\n2 If you have any questions, please contact technical support engineers for further handling.\nNote: If Location is None, it may be a system disk or faulty disk.

DirtyData.name = Dirty Data Check
DirtyData.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showcache command to check whether dirty data exists.
DirtyData.criterion = If Whether dirty data exists is Yes, the status is abnormal.
DirtyData.suggestion = Impact: If this check item is not passed, some host services are not stopped and will be interrupted in the offline upgrade.\nRecommended actions:\n(1) Please wait 5 to 10 minutes after Service Stopped Check item is passed, and perform the check again. \n(2) If dirty data still exists, record the cache write policy configurations of all LUNs first. Run the chglun -lun lunid -wrtype 2 command on the CLI or set the cache write policy of LUNs to write through on the ISM. If the write-through policy is set successfully, dirty data has been flushed to disks. \n(3) After the cache write policies of all LUNs are set to write through, restore the cache write policies of all LUNs to the original configurations. \n(4) If you have any questions, please contact technical support engineers for further handling.

ServicePressureA.name = Service Pressure
ServicePressureA.method = Step 1 Log in to the device as user admin.\nStep 2 Run the datacollect command to collect system log.\nStep 3 Export the system log package to the local PC and decompress the package.\nStep 4 Under the directory of the decompressed package, resolve iostat_1_10 files under all controller paths.
ServicePressureA.criterion = In the iostat_1_10 file, because the first statistical data is historical data, so you can only check the last nine times of sampling. If the average value of disk usage is larger than 20%, check not pass.
ServicePressureA.suggestion = Impact: If this check item is not passed, the upgrade may fail.\n1 Because service load on the current system is heavy, an online upgrade cannot be performed. It is recommended to perform the online upgrade when service load is low.\n2 If all the RAID group member disks are coffer disks, contact technical support engineers for help.\nNote: If Location is None, it may be a system disk or faulty disk.

ServiceStoppedB.name = Service Stopped Check
ServiceStoppedB.method = Step 1 Log in to all controllers as user admin, check whether all services of each controller are stopped according to the following steps.\nStep 2 Log in to the mml model, and run the dd io command to query the I/Os data.
ServiceStoppedB.criterion = (1) Get the I/Os data of each controller(Two commands are issued at an interval of 1 minute). Get the number of read I/Os received by TGT module(The value of TGT: Start in Read IOs data) and the number of read I/Os not returned to TGT module(The value of TGT: not back in Read IOs data); Get the number of write I/Os received by TGT module(The value of TGT: Start in Write IOs data) and the number of write I/Os not returned to TGT module(The value of TGT: not back in Write IOs data). Compare the result data of two times, if the number of read I/Os received by TGT module and the number of write I/Os received by TGT module have no increased, in addition, the number of read I/Os not returned to TGT module and the number of write I/Os not returned to TGT module are zero all the time, it means all services are stopped.\n(2) If the services of all controllers are all stopped, the check will pass. Otherwise, the check not pass.
ServiceStoppedB.suggestion = Impact: If the check fails, some services are still running in the system and will be interrupted in the offline upgrade.\n1 Please see troubleshooting cases to resolve this issue.\n2 If you have any questions, please contact technical support engineers for further handling.
ServiceStoppedB.helphref = troubleshooting cases{/helpCase/en/topic/service_pause.html}

ServiceStoppedA.name = Service Stopped Check
ServiceStoppedA.method = Step 1 Log in to the device as user admin.\nStep 2 Log in to the developer mode.\nStep 3 Run the showsys command to query current system mode:\n(1) If current system is double-controllers mode, run the showio -c a and showio -c b commands.\n(2) If current system is single-controller mode, run the showctrlip command to query the controller ID, then run showio -c ctrlId command(If the controller ID is A, the ctrlId is set to a. Otherwise, the ctrlId is set to b).
ServiceStoppedA.criterion = (1) Get the I/Os data of each controller(Two commands are issued at an interval of 1 minute). Get the number of read I/Os received by TGT module(The value of TGT: Start in Read IOs data) and the number of read I/Os not returned to TGT module(The value of TGT: not back in Read IOs data); Get the number of write I/Os received by TGT module(The value of TGT: Start in Write IOs data) and the number of write I/Os not returned to TGT module(The value of TGT: not back in Write IOs data). Compare the result data of two times, if the number of read I/Os received by TGT module and the number of write I/Os received by TGT module have no increased, in addition, the number of read I/Os not returned to TGT module and the number of write I/Os not returned to TGT module are zero all the time, it means all services are stopped.\n(2) If the services of all controllers are all stopped, the check will pass. Otherwise, the check not pass.
ServiceStoppedA.suggestion = Impact: If the check fails, some services are still running in the system and will be interrupted in the offline upgrade.\n1 Please see troubleshooting cases to resolve this issue.\n2 If you have any questions, please contact technical support engineers for further handling.
ServiceStoppedA.helphref = troubleshooting cases{/helpCase/en/topic/service_pause.html}

LUNConsistencyVerify.name = Verifying LUN Consistency
LUNConsistencyVerify.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showlunverifying command.
LUNConsistencyVerify.criterion = If Verifying LUN Consistency is in process, the check will not pass.
LUNConsistencyVerify.suggestion = Impact: Stripe verification generates background I/Os. Service performance is affected during the upgrade.\n1 Please see troubleshooting cases to cancel the process or wait until the process finishes, then check again. \n2 If you have any questions, please contact technical support engineers for further handling.
LUNConsistencyVerify.helphref = troubleshooting cases{/helpCase/en/topic/lun_consistence.html}

RAIDGrpDynamicExpansion.name = Dynamic RAID Group Expansion
RAIDGrpDynamicExpansion.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showrg command to view all the RAID Group IDs.\nStep 3 Run the showrg -rg ID command on queried ID in step 2.
RAIDGrpDynamicExpansion.criterion = If Dynamic Operation is Expand Disk, the check will not pass.
RAIDGrpDynamicExpansion.suggestion = Impact: Dynamic disk adding generates background I/Os. Service performance is affected during the upgrade.\nIf a RAID Group is expanded dynamically, please wait until the process finishes, then check again.

WriteCacheUtility.name = Write Cache Utility Check
WriteCacheUtility.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showcache command.
WriteCacheUtility.criterion = Check the Write Cache Utility (%) value of each controller. If the value is larger than the average value of High Water Level (%) and Low Water Level (%), do not perform an upgrade.
WriteCacheUtility.suggestion = Impact: If this check item is not passed, the upgrade may fail due to a long disk flushing time.\nReduce the service load. Check the Write Cache Utility (%) value of each controller by showcache command,  if the value is less than or equal to the average value of High Water Level (%) and Low Water Level (%), then check again.

LUNReservationStatB.name = LUN Reservation Status Check
LUNReservationStatB.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showlun command. If the LUNs exist, perform steps 3 to 5.\nStep 3 Enter the MML mode. \nStep 4 Run the scsi getallreserve command. If the ReserveState field does not exist, run the scsi getall command.\nStep 5 Check the value of ReserveState field.
LUNReservationStatB.criterion = 1 If LUNs do not exist, the check will pass.\n2 If LUNs exist. the value of ReserveState field is not 0 in step 5, reservation is enabled, the check will not pass. Otherwise, the check will pass.
LUNReservationStatB.suggestion = Impact: If this check item is not passed, the online upgrade may fail and services may be interrupted.\n1 You can chose the method of offline upgrade.\n2 If you have any questions, please contact technical support engineers for further handling.

LUNReservationStatA.name = LUN Reservation Status Check
LUNReservationStatA.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showlun command. If the LUNs exist, perform steps 3 to 5.\nStep 3 Enter the developer mode. \nStep 4 Run the showscsireserve -lun lunId command on queried lunId in step 2. \nStep 5 Check the value of field Reserve State.
LUNReservationStatA.criterion = 1 If LUNs do not exist, the check will pass.\n2 If LUNs exist.\n(1) If Reserve State exists and its value is not 0, reservation is enabled, the check will not pass.\n(2) Otherwise, the check will pass.
LUNReservationStatA.suggestion = Impact: If this check item is not passed, the online upgrade may fail and services may be interrupted.\n1 You can chose the method of offline upgrade.\n2 If you have any questions, please contact technical support engineers for further handling.

AppreciateOper = Appreciate operation
VirtualSnapshotsInfo.name = Information About Snapshots
VirtualSnapshotsInfo.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showsnapshot command.
VirtualSnapshotsInfo.criterion = Note: If the command does not exist, that indicates the device does not support this function, the check will pass.\nSnapshot Running Status is Rollback or Health Status is Fault  indicates that the snapshot is in a abnormal state.
VirtualSnapshotsInfo.suggestion = Impact: If this check item is not passed, snapshots may become invalid during the upgrade.\n1 If the running status is Rollback, perform the check again after the rollback is complete. \n2 If the health status is Fault, the license file is abnormal, the source LUN is faulty, or the available storage pool space is insufficient. Please see troubleshooting cases to resolve this issue.\n3 If you have any questions, please contact technical support engineers for further handling.
VirtualSnapshotsInfo.helphref = troubleshooting cases{http://support.huawei.com/ehedex/hdx.do?docid=DOC1000007343&id=fault_tree_0004}

LUNCopyStat.name = LUN Copy Status
LUNCopyStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showluncopy command.
LUNCopyStat.criterion = Note: If the command does not exist, that indicates the device does not support this function, the check will pass.\nLUN Copy Status is Normal and Lun Copy State is not Copying or Waiting indicates that the LUN copy is in a normal state.
LUNCopyStat.suggestion = Impact: If this check item is not passed, data errors may occur during the upgrade.\n1 If Lun Copy State is Copying or Waiting, please wait until the process finishes, then check again.\n2 Please see troubleshooting cases to resolve this issue.\n3 If you have any questions, please contact technical support engineers for further handling.
LUNCopyStat.helphref = troubleshooting cases{/helpCase/en/topic/check_LUNCopy.html}

RemoteReplications.name = Remote Replications
RemoteReplications.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showrmtrep command.\nStep 3 Run showrmtrepmember -rep repId command on queried ID in step 2.\nStep 4 Run showrmtrepmember -rep repId -sn Array SN -lun LUN ID command on queried secondary LUN ID and Array SN in step 3.
RemoteReplications.criterion = Note: If the command does not exist, that indicates the device does not support this function, the check will pass.\nStep 1 Run the showrmtrep command. If Status is normal, go to step 2. Otherwise, the check is not passed.\nStep 2 Run the showrmtrepmember -rep repId command.  If Status is normal, go to step 3. Otherwise, the check is not passed.\nStep 3 Run showrmtrepmember -rep repId -sn secondary Array SN -lun secondary LUN ID command.  If Pair Status is Splited, the check is passed. Otherwise the check is not passed.
RemoteReplications.suggestion = Impact: If this check item is not passed, data errors may occur during the upgrade.\n1 If Status or Health Status is not Normal, please contact technical support engineers for further handling.\n2 If Pair Status is not Splited, please see troubleshooting cases to perform the splitting.
RemoteReplications.helphref = troubleshooting cases{/helpCase/en/topic/remote_replication.html}

SplitMirrorStat.name = Split mirror Status
SplitMirrorStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showmirror command and get the mirror ID.\nStep 3 Run the showsecluninmirror -mirror ID command and check whether the Pair Status is  Split or not.
SplitMirrorStat.criterion = Note: If the command does not exist, that indicates the device does not support this function, the check will pass.\nStatus: If the Pair Status is not Split. The check is not passed. \n
SplitMirrorStat.suggestion = Impact: If this check item is not passed, data errors may occur during the upgrade.\n1 If Pair Status is Fault, please contact technical support engineers for further handling\n2 If Pair Status is not Fault or Split, please see troubleshooting cases to perform the splitting.\n3 If you have any questions, please contact technical support engineers for further handling.
SplitMirrorStat.helphref = troubleshooting cases{/helpCase/en/topic/split_mirror.html}

LinkStat.name = Link Status
LinkStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showrmtlink command.
LinkStat.criterion = Note: If the command does not exist, that indicates the device does not support this function, the check will pass.\nConnection Status: Connected indicates that the link is in a normal state.
LinkStat.suggestion = Impact: If this check item is not passed, inter-array value-added services may become abnormal.\n1 Please see troubleshooting cases to resolve this issue.\n2 If you have any questions, please contact technical support engineers for further handling.
LinkStat.helphref = troubleshooting cases{/helpCase/en/topic/check_LinkStatus.html}

CloudbackupTask.name = Cloudbackup Task
CloudbackupTask.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showcloudbackup command.\nStep 3 Run the showcloudbackup -cloudbackup id command.
CloudbackupTask.criterion = Note: If the command does not exist, that indicates the device does not support this function, the check will pass.\nStep 1 Run the showcloudbackup command.\nStep 2 If Health Status is  Normal, the state is normal. Otherwise, check not pass.\nStep 3 If Running Status is Copy Stopped or Recovery Stopped, the state is normal.\nStep 4 If Running Status is Copy Completed or Recovery Completed, run the  showcloudbackup -cloudbackup id command to get the details information. If Synchronous Type is Periodic, it means this task is set to be periodic, check not pass.\nStep 5 If Running Status is Copying or Recovering, the state is not normal.
CloudbackupTask.suggestion = Impact: If this check item is not passed, data errors may occur during the upgrade.\n1 Please see troubleshooting cases to resolve this issue.\n2 Please contact technical support engineers for further handling.
CloudbackupTask.helphref = troubleshooting cases{/helpCase/en/topic/check_Cloudbackup.html}

ThinBusiness.name = Thin Check
ThinBusiness.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showpool command to check whether thin services are configured.
ThinBusiness.criterion = Note: If the command does not exist, that indicates the device does not support this function, the check will pass.\nIf the Thin pool is configured, online upgrade has the risk to fail.
ThinBusiness.suggestion = Impact: If this check item is not passed, online upgrade may fail after thin services are configured.\n1 You can chose the method of offline upgrade.\n2 Delete all the Thin pools before the online upgrade.

ThinPoolStat.name = Thin Pool Status Check
ThinPoolStat.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showpool command.
ThinPoolStat.criterion = If the Status is not Normal, the system is abnormal. Check will not pass.
ThinPoolStat.suggestion = Impact: If this check item is not passed, thin LUNs may fail during the upgrade.\n1 If the status of Thin Pool is Initializing, Deleting or Expanding, please wait until the process finishes, then check again.\n2 If the status of Thin Pool is Fault or Degrade, please see troubleshooting cases to resolve this issue.\n3 If you have any questions, please contact technical support engineers for further handling.
ThinPoolStat.helphref = troubleshooting cases{/helpCase/en/topic/check_ThinPool.html}

ThinPoolSpindown.name = Thin Pool Spindown Status
ThinPoolSpindown.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showpooliospindown command.\nStep 3 Run the showpoolprdspindown command.
ThinPoolSpindown.criterion = Note: If the command does not exist, that indicates the device does not support this function, the check will pass.\nStep 1 In the showpooliospindown results, if the Spindown Status is Not Spindown, and the Idle Time is --, the check will pass; Otherwise, the check will not pass.\nStep 2 If the result of showpoolprdspindown command contains the information about periodic spin-down thin provisioning resource pool, the check will not pass; Otherwise, the check will pass.
ThinPoolSpindown.suggestion = Impact: If the system has any disk in sleep state, the disk will automatically wake up during the upgrade and the upgrade will time out.\n1 Please see troubleshooting cases to resolve this issue.\n2 If you have any questions, please contact technical support engineers for further handling.
ThinPoolSpindown.helphref = troubleshooting cases{/helpCase/en/topic/thinpool_dormat.html}

ResourcePool.name = Resource Pool
ResourcePool.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showrespool command.
ResourcePool.criterion = Note: If the command does not exist, that indicates the device does not support this function, the check will pass.\nBased on the data of Usage(MB) and Size(MB), calculate the use ratio of each resource pool. If the use ratio of the resource pool is smaller than the data of Alarm Threshold(%) , the resource pool status is normal. Otherwise, the resource pool status is abnormal.
ResourcePool.suggestion = Impact: If this check item is not passed, insufficient resource pool capacity during the upgrade may increase the possibility of value-added service failure.\n1 Please see troubleshooting cases to resolve this issue.\n2 Please contact technical support engineers for further handling.
ResourcePool.helphref = troubleshooting cases{/helpCase/en/topic/check_ResourcePool.html}

Alarm = Alarm
UnrecoveredAlarmsB.name = Checking Unrecovered Alarms
UnrecoveredAlarmsB.method = Step 1 Log in to the device as user admin.\nStep 2 Log in to the MML model,  run the alarm exportevent command.\nStep 3 Download the exported alarms to the local device.\nStep 4 Search unrecovered alarms.
UnrecoveredAlarmsB.criterion = If any unrecovered alarm exists, the device is working abnormally, the check will not pass; Otherwise, the check will pass.
UnrecoveredAlarmsB.suggestion = Impact: If this check item is not passed, the system has potential risks. \n1 Check whether any alarm exists on the ISM. If no, ignore the evaluation. If yes, recover the alarm based on the alarm description. For details about how to view an alarm on ISM, see troubleshooting cases.\n2 If you have any questions, please contact technical support engineers.
UnrecoveredAlarmsB.helphref = troubleshooting cases{/helpCase/en/topic/check_UnrecoveredAlarms.html}

UnrecoveredAlarmsA.name = Checking Unrecovered Alarms
UnrecoveredAlarmsA.method = Step 1 Log in to the device as user admin.\nStep 2 Run the exportsysevent -t alarm command.\nStep 3 Download the exported alarms to the local device.\nStep 4 Search unrecovered alarms.
UnrecoveredAlarmsA.criterion = If any unrecovered alarm exists, the device is working abnormally, the check will not pass; Otherwise, the check will pass.
UnrecoveredAlarmsA.suggestion = Impact: If this check item is not passed, the system has potential risks. \n1 Check whether any alarm exists on the ISM. If no, ignore the evaluation. If yes, recover the alarm based on the alarm description. For details about how to view an alarm on ISM, see troubleshooting cases.\n2 If you have any questions, please contact technical support engineers.
UnrecoveredAlarmsA.helphref = troubleshooting cases{/helpCase/en/topic/check_UnrecoveredAlarms.html}

VerUpgLimit = Versions Upgrade limit check
HotPatch.name = Hot patch check for replacing coin batteries
HotPatch.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showupgradepkginfo -t 3 command.
HotPatch.criterion = 1 The current system software version is V100R002C00SPC011, if V100R002C00SPHb02 or a later version of hot patch has not been installed, the check will not pass. Otherwise, the check will pass.\n2 The current system software version is V100R002C00SPC012, if V100R002C00SPHc02 or a later version of hot patch has not been installed, the check will not pass. Otherwise, the check will pass.\n3 For other software versions, the check will pass.
HotPatch.suggestion = Impact: If a correct version of hot patch has not been installed before coin battery replacement, the risk of RAID group failure exists. \n1 Please see troubleshooting cases to install the required hot patch.\n2 If you have any questions, please contact technical support engineers for further handling.
HotPatch.helphref = troubleshooting cases{/helpCase/en/topic/coin_battery_replace_hotpatch.html}

ThinLunCapacity.name = Thin LUN capacity check
ThinLunCapacity.method = Step 1 Log in to the device as user admin.\nStep 2 Run the showlun command to query information about all LUNs.
ThinLunCapacity.criterion = Check the visible capacities of thin LUNs. If the capacity is 0.5 MB or the remainder is not 0.5 MB rounded up by 1024 MB (such as 2048 MB), the check will pass; otherwise, the check will not pass.
ThinLunCapacity.suggestion = Impact: If the capacity of any thin LUN rounded up by 1024 MB is 0.5 MB (excluding the scenario where the capacity of a thin LUN is 0.5 MB), the upgrade may fail.\n1 Please see troubleshooting cases to modify the thin LUN size.\n2 If you have any questions, please contact technical support engineers for further handling.
ThinLunCapacity.helphref = troubleshooting cases{/helpCase/en/topic/thinlun_voltage.html}

