Dynamic Multi-Pathing tunable parameters for error handling
The error handling behavior of Dynamic Multi-Pathing (DMP) can be controlled using the following tunable parameters:
This tunable parameter controls whether DMP tries to obtain error information directly from the HBA interface, bypassing the SCSI layer. For AIX, Linux, and Solaris, the default is on and is the recommended value.
This tunable parameter specifies the limit on the number of retries on the same path for cases where the I/O fails but error analysis indicates that the path is not faulty. The default value of this parameter is 5. While this parameter controls the retry limit for a path, the retry limit for an I/O can be configured using the vxdmpadm setattr command to use either the time-bound error retry method or the fixed-retry method.
This is the time interval for which DMP waits before retrying an I/O in the case where an array fails over to a standby path. Some arrays are not capable of accepting I/O requests immediately after failover. The default value for this parameter is 15 seconds. This parameter should be changed only with proper knowledge of the characteristics of all the arrays attached to a system.
This parameter specifies the time in seconds for which a path must stay healthy; a path whose state changes from enabled to disabled within this time is marked intermittently failing. DMP does not enable I/Os on such paths until dmp_path_age seconds elapse. A value of 0 prevents DMP from detecting intermittently failing paths.
This parameter works with dmp_health_time as described above. A value of 0 prevents DMP from detecting intermittently failing paths.
This parameter determines DMP behavior in the event that all paths to a LUN have failed. This can sometimes be a transient error and can happen with some disk arrays during controller firmware upgrade, for example. This tunable parameter provides a way to handle such situations without failing the I/O outright. dmp_lun_retry_timeout specifies the time for which an I/O should be retried before failing it. The default is 0 which means I/Os are not retried in this situation. Instead of changing the default value of this parameter, it is recommended that enclosure-specific settings be changed for arrays that need this kind of handling.
This parameter specifies the timeout value for any SCSI command issued by DMP. The default value of this parameter is 30 seconds for Solaris and AIX, and 20 seconds for Linux. This parameter should generally be left at the default value unless some other parameter like the Fibre Channel timeout has been changed.
See Tuning Dynamic Multi-Pathing error handling