Notes on auto resending after a failover (receiving side)
Auto resending conditions after failover (receiving side)
Auto resending (on the receiving side) is performed after a failover when all of the following conditions are met:
Status code 591 is output to the Receive Log
The host on the sending side is HULFT Ver.6 or higher, and the conditions in Table 5.4 are satisfied
Depending on the operating system and the revision of HULFT on the sending side, auto resending after a failover (on the receiving side) may not be supported even for HULFT Ver.6 or higher. For the target versions and revisions, refer to the following:
HULFT10 for Linux/AIX Administration Manual :
Auto Resend Retry Count (*1) on the sending side is set to a value greater than '0'
*1 |
: |
Auto Resend Retry Count (sockerr_autoretry) specifies the number of attempts to carry out auto resending in the event of an error. This count consists of the number of auto resending attempts in response to a network error and the number of auto resending attempts in response to the occurrence of a failover on the receiving side. |
Auto resending after a failover (on the receiving side) is carried out when all of the above conditions are satisfied. Otherwise, the processing is placed in the Resend Queue on HULFT on the sending side.
Time required for completion of failover
Auto resending is carried out after a failover (on the receiving side) when HULFT on the sending side is notified of an auto resending request (on the receiving side).
The following example uses Linux for the operating system of the host on the sending side.
When the host on the sending side receives an auto resending target error code after a failover (on the receiving side) from the host on the receiving side, the host on the sending side waits until the time that is set for Connect Retry Interval (retrytime) (wait time before auto resending) in the System Environment Settings expires and then initiates auto resending (on the receiving side).
If the connection fails, the host on the sending side waits a maximum of the time calculated by the formula Connect Retry Interval x Connect Retry Count (retrycnt).
The maximum time for which the host on the sending side waits before carrying out auto resending (on the receiving side) is as follows:
(Wait Time Before Auto Resending) + (Connect Retry Interval) x (Connect Retry Count)
When the maximum wait time expires, a socket error occurs on the sending side, and auto resending is not carried out.
Therefore, measure the time required for the completion of a failover in advance and set Connect Retry Interval and Connect Retry Count of the host on the sending side.
Setting example
When an average time of 2 minutes (120 seconds) is required to start receiving with HULFT on the receiving side (using the clustering function) in a clustering environment after a failover occurs:
Settings of HULFT on the sending side (Linux)
-
Connect Retry Interval: 30 (seconds) (= the wait time before auto resending)
-
Connect Retry Count: 5 (times)
The host on the sending side waits a maximum of the following time (seconds) before carrying out auto resending (receiving side)
= 30+30x5
= 180
Setting the maximum time for which the host on the sending side will wait before carrying out auto resending (on the receiving side) to a value that is greater than the average time required to start receiving after a failover occurs is recommended.
The field names for setting the wait time and the retry count in the System Environment Settings vary depending on the operating system. The field names are as follows:
OS for HULFT on Sending Side |
Field Name for Wait Time |
Field Name for Retry Count |
---|---|---|
UNIX/Linux |
Connect Retry Interval (retrytime) |
Connect Retry Count (retrycnt) |
Windows |
Connect Retry Interval (retrytime) |
Connect Retry Count (retrycnt) |
Mainframe |
Retry Interval During Auto Resend and Receive Multiplex Level Over (RETRYTIME) |
Retry Count During Connection Error (RETRY) |
IBM i |
Connect Retry Interval (retrytime) |
Connect Retry Count (retrycnt) |