Issue Description
Among the paths which connecting the engine and array, the Primary path is not in the ACTIVE status, but the Secondary path is in the ACTIVE status, such as the following displayed:
dethree_01:~ # vxdmpadm getsubpaths
NAME STATE[A] PATH-TYPE[M] DMPNODENAME ENCLR-NAME CTLR ATTRS
===============================================================
sdc ENABLED(A) SECONDARY huasy-s5500t0_1 huasy-s5500t0 c6 -
sdk ENABLED PRIMARY huasy-s5500t0_1 huasy-s5500t0 c7 -
sda ENABLED(A) - sda other_disks c2 --
Handling Process
In the “support” user’s environment, make the corresponding SECONDARY path “disable” and “enable”, switch the multiple paths into the normal status.
dethree_01:~ # vxdmpadm getsubpaths
NAME STATE[A] PATH-TYPE[M] DMPNODENAME ENCLR-NAME CTLR ATTRS
================================================================================
sdc ENABLED(A) SECONDARY huasy-s5500t0_1 huasy-s5500t0 c6 -
sdk ENABLED PRIMARY huasy-s5500t0_1 huasy-s5500t0 c7 -
sda ENABLED(A) - sda other_disks c2 -
dethree_01:~ # vxdmpadm disable path=sdc
dethree_01:~ # vxdmpadm getsubpaths
NAME STATE[A] PATH-TYPE[M] DMPNODENAME ENCLR-NAME CTLR ATTRS
================================================================================
sdc DISABLED(M) SECONDARY huasy-s5500t0_1 huasy-s5500t0 c6 -
sdk ENABLED(A) PRIMARY huasy-s5500t0_1 huasy-s5500t0 c7 -
sda ENABLED(A) - sda other_disks c2 -
dethree_01:~ # vxdmpadm enable path=sdc
dethree_01:~ # vxdmpadm getsubpaths
NAME STATE[A] PATH-TYPE[M] DMPNODENAME ENCLR-NAME CTLR ATTRS
================================================================================
sdc ENABLED SECONDARY huasy-s5500t0_1 huasy-s5500t0 c6 -
sdk ENABLED(A) PRIMARY huasy-s5500t0_1 huasy-s5500t0 c7 -
sda ENABLED(A) - sda other_disks c2
Root Cause
There are two possible causes: a controller of the array powered off or restarted; switched the LUN’s owning controller from one to another.
Suggestions
This problem appears with a certain possibility, in order to recover it, sometimes it needs to restart the whole cluster, and sometimes it needs to restart the array, and sometimes you can’t settle it by restarting, in this condition, you can take the above method.