IBM Support

IT37606: "Connection refused" and "connection is closed by foreign host" exceptions handled incorrectly by protocol bridge agents

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • An MQ 9.2 Managed File Transfer protocol bridge agent (PBA) has
    been configured to communicate with a remote file server using
    the SFTP protocol, and acts as the destination agent for managed
    transfers. As part of a test, the file server is configured in
    such a way to prevent the PBA from connecting to it. After this
    change has been made, whenever the PBA tries to connect to the
    file server, it encounters an error and the following messages
    to its event log (output0.log),:
    
    BFGTR0029E: A recoverable I/O error has occurred during a write
    operation. The agent will attempt to recover the file transfer.
    The transfer ID is: <transfer identifier>. The error message is:
    BFGBR0104E: Bridge agent failed to connect to host <file server
    host> with credentials of <credentials> because connection is
    closed by foreign host
    
    BFGTR0062I: Transfer ID: <transfer identifier>, from source
    agent <source agent>, is entering recovery, after a short pause,
    due to recoverable error: BFGTR0058I: The transfer frame had a
    recoverable I/O error while attempting to write to a destination
    file. The reason is: BFGBR0104E: Bridge agent failed to connect
    to host <file server host> with credentials of <credentials>
    because connection is closed by foreign host
    
    and put the managed transfer into recovery. However, when the
    managed transfer resumes, the destination agent fails to connect
    to the file server again, writes the two messages shown above
    into its event log, and puts the managed transfer into recovery
    for a second time.
    
    This sequence of events continues to occur until the managed
    transfer is cancelled.
    

Local fix

  • n/a
    

Problem summary

  • ****************************************************************
    USERS AFFECTED:
    This issue affects users of IBM MQ 9.2 Managed File Transfer who
    have protocol bridge agents (PBAs) that connect to a file server
    using the SFTP protocol.
    
    
    Platforms affected:
    MultiPlatform
    
    ****************************************************************
    PROBLEM DESCRIPTION:
    IBM MQ Managed File Transfer protocol bridge agents (PBAs) use a
    fork of the third-party JSch library to communicate with file
    servers using the SFTP protocol. If a protocol bridge agent
    fails to connect to a file server using this protocol while
    processing a managed transfer, an internal exception is
    generated within the fork of the JSch library. The protocol
    bridge agent will then look at the exception to determine if it
    represents:
    
    - Either a transient, recoverable error.
    - Or a more permanent, non-recoverable error.
    
    If the exception represents a transient, recoverable error, then
    the protocol bridge agent will put the managed transfer into
    recovery. However, if the failure to connect to the file server
    is due to a more permanent reason (such as invalid credentials),
    then the managed transfer will be marked as "Failed".
    
    
    Now, the logic within the protocol bridge agent which performed
    this determination always treated java.net.ConnectExceptions and
    exceptions containing the message:
    
      "connection is closed by foreign host"
    
    as recoverable errors. However, this was incorrect.
    java.net.ConnectExceptions or exceptions containing the text:
    
      "connection is closed by foreign host"
    
     represented non-recoverable errors, and so if they were
    encountered during the processing of a managed transfer, then
    that managed transfer should have been marked as "Failed".
    

Problem conclusion

  • To resolve this issue, IBM MQ Managed File Transfer protocol
    bridge agents have been updated so that to treat
    java.net.ConnectExceptions and exceptions containing the
    message:
    
      "connection is closed by foreign host"
    
    as non-recoverable errors when connecting to a file server using
    the SFTP protocol. This means that:
    
    - If a protocol bridge agent is acting as the source agent for a
    managed transfer and encounters either a
    java.net.ConnectException or an exception containing the text
    "connection is closed by foreign host" while trying to connect
    to the file server, it will mark the managed transfer as
    "Failed" with the one of the following messages:
    
    BFGRP0038I: The file transfer request failed due to :
    BFGBR0221E: An attempt to connect to the file server on host
    <hostname> using the SFTP protocol failed as the connection was
    closed by the foreign host.
    
    BFGRP0038I: The file transfer request failed due to :
    BFGBR0222E: An attempt to connect to the file server on host
    <hostname> using the SFTP protocol failed with exception
    <exception details>.
    
    
    - If the protocol bridge agent is acting as the destination
    agent for a managed transfer, and fails to connect to the file
    server due to either a java.net.ConnectException or an exception
    containing the text   "connection is closed by foreign host",
    then the current transfer item will be marked as "Failed" with
    one of the following supplementary messages:
    
    BFGTR0072E: The transfer failed to complete due to the exception
    : BFGBR0221E: An attempt to connect to the file server on host
    <hostname> using the SFTP protocol failed as the connection was
    closed by the foreign host.
    
    BFGTR0072E: The transfer failed to complete due to the exception
    : BFGBR0222E: An attempt to connect to the file server on host
    <hostname> using the SFTP protocol failed with exception
    <exception details>.
    
    ---------------------------------------------------------------
    The fix is targeted for delivery in the following PTFs:
    
    Version    Maintenance Level
    v9.2 LTS   9.2.0.5
    v9.x CD    9.2.5
    
    The latest available maintenance can be obtained from
    'WebSphere MQ Recommended Fixes'
    http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006037
    
    If the maintenance level is not yet available information on
    its planned availability can be found in 'WebSphere MQ
    Planned Maintenance Release Dates'
    http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006309
    ---------------------------------------------------------------
    

Temporary fix

Comments

APAR Information

  • APAR number

    IT37606

  • Reported component name

    MQ BASE V9.2

  • Reported component ID

    5724H7281

  • Reported release

    920

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2021-07-13

  • Closed date

    2021-11-11

  • Last modified date

    2021-11-11

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    MQ BASE V9.2

  • Fixed component ID

    5724H7281

Applicable component levels

[{"Line of Business":{"code":"LOB45","label":"Automation"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSYHRD","label":"IBM MQ"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"920"}]

Document Information

Modified date:
12 November 2021