App Connect

App Connect

Join this online user group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
  • 1.  Reply Identifier Error

    Posted Wed October 18, 2023 03:30 AM

    Dear Team,

    In REST API we are having HTTPInput -> HTTPRequest -> HTTP Reply. 

    We are getting exception but when we saw the service trace we are able  to check the response coming from HTTP Request node and after that we are facing exception

    "Reply Identifier" 

    ( ['MQROOT' : 0x7fefe43031d0]
      (0x01000000:Name):RecoverableException = (
        (0x03000000:NameValue):File                 = '/build/jenkins_swg/slot0/product-build/WMB/src/WebServices/WSLibrary/ImbWSReplyNode.cpp' (CHARACTER)
        (0x03000000:NameValue):Line                 = 730 (INTEGER)
        (0x03000000:NameValue):Function             = 'ImbWSReplyNode::evaluate' (CHARACTER)
        (0x03000000:NameValue):Type                 = 'ComIbmWSReplyNode' (CHARACTER)
        (0x03000000:NameValue):Name                 = 'gen.Scienaptic#FCMComposite_1_3' (CHARACTER)
        (0x03000000:NameValue):Label                = 'gen.Scienaptic.HTTP Reply' (CHARACTER)
        (0x03000000:NameValue):Catalog              = 'BIPmsgs' (CHARACTER)
        (0x03000000:NameValue):Severity             = 3 (INTEGER)
        (0x03000000:NameValue):Number               = 2230 (INTEGER)
        (0x03000000:NameValue):Text                 = 'Caught exception and rethrowing' (CHARACTER)
        (0x01000000:Name     ):Insert               = (
          (0x03000000:NameValue):Type = 14 (INTEGER)
          (0x03000000:NameValue):Text = 'gen.Scienaptic.HTTP Reply' (CHARACTER)
        )
        (0x01000000:Name     ):RecoverableException = (
          (0x03000000:NameValue):File     = '/build/jenkins_swg/slot0/product-build/WMB/src/DataFlowEngine/MessageServices/ImbHandleManager.cpp' (CHARACTER)
          (0x03000000:NameValue):Line     = 1611 (INTEGER)
          (0x03000000:NameValue):Function = 'ImbInFlightMessageHandle::throwHandleException' (CHARACTER)
          (0x03000000:NameValue):Type     = '' (CHARACTER)
          (0x03000000:NameValue):Name     = '' (CHARACTER)
          (0x03000000:NameValue):Label    = '' (CHARACTER)
          (0x03000000:NameValue):Catalog  = 'BIPmsgs' (CHARACTER)
          (0x03000000:NameValue):Severity = 3 (INTEGER)
          (0x03000000:NameValue):Number   = 3742 (INTEGER)
          (0x03000000:NameValue):Text     = 'ERROR, Handle Reused after reply sent.' (CHARACTER)
          (0x01000000:Name     ):Insert   = (
            (0x03000000:NameValue):Type = 5 (INTEGER)
            (0x03000000:NameValue):Text = '45564854040000000b0000008980942214a1070000000000' (CHARACTER)
          )
          (0x01000000:Name     ):Insert   = (
            (0x03000000:NameValue):Type = 5 (INTEGER)
            (0x03000000:NameValue):Text = 'EVHT' (CHARACTER)
          )
          (0x01000000:Name     ):Insert   = (
            (0x03000000:NameValue):Type = 5 (INTEGER)
            (0x03000000:NameValue):Text = 'ReplyIdentifier' (CHARACTER)
          )
        )
      )
    )

    2023-10-18 11:43:18.350596   604740  UserTrace   BIP3120E: Exception condition detected on input node 'gen.Scienaptic.HTTP Input'.
    The input node 'gen.Scienaptic.HTTP Input' detected an error whilst processing a message.  The message flow has been rolled-back and a fault message returned to the requesting client.  Following messages will indicate the cause of this exception.
    Check the error messages which follow to determine why the exception was generated, and take action as described by those messages.
    2023-10-18 11:43:18.350626   604740  UserTrace   BIP2230E: Error detected whilst processing a message in node 'gen.Scienaptic.HTTP Reply'.
    The integration node detected an error whilst processing a message in node 'gen.Scienaptic.HTTP Reply'. An exception has been thrown to cut short the processing of the message.
    See the following messages for details of the error.
    2023-10-18 11:43:18.350646   604740  UserTrace   BIP3742E: An attempt was made to use a EVHT message ReplyIdentifier after it had already been used.
    A EVHT message ReplyIdentifier may only be used once to send a single reply (or a single async response). The EVHT message ReplyIdentifier was 45564854030000000000000086df67419422090000000000.
    Determine the cause of the error and correct it. Subsequent error messages may contain more information.  

    The above error is from trace file. Please give further assistance to move forward or what needs to be changed from our end.



    ------------------------------
    Abhiram Emmadishetty
    ------------------------------


  • 2.  RE: Reply Identifier Error

    Posted Thu October 19, 2023 02:13 AM

    Hi Abhiram. 

    Are the only nodes in the flow HTTPInput -> HTTPRequest -> HTTP Reply ? Or are there other nodes? How are they connected?

    I've seen that message before when we had an ESQL that did an extra propagate to the HTTP Reply terminal. 



    ------------------------------
    Lars Dehli
    ------------------------------



  • 3.  RE: Reply Identifier Error

    Posted Thu October 19, 2023 02:22 AM

    Hi Lars,

    The below are the flows.

    Subflow:

    image.png

    Main flow:

    image.png



    ------------------------------
    Abhiram Emmadishetty
    ------------------------------



  • 4.  RE: Reply Identifier Error

    Posted Thu October 19, 2023 03:00 AM

    Hi!

    Unfortunately, I cannot see the pictures. 

    Can you check if  you have ESQL code with PROPAGATE TO 'out' and a later RETURN TRUE statement? I guess the flow reach the http reply twice.



    ------------------------------
    Lars Dehli
    ------------------------------



  • 5.  RE: Reply Identifier Error

    Posted Thu October 19, 2023 06:39 AM

    Hi Lars,

    Here is the code of ESQL 

    Compute

    DECLARE URL EXTERNAL CHARACTER 'I';
    DECLARE HTTPTimeOut EXTERNAL INTEGER '5';

    CREATE COMPUTE MODULE postScienaptic_Compute
    CREATE FUNCTION Main() RETURNS BOOLEAN
    BEGIN
    DECLARE Env REFERENCE to Environment;

    SET OutputRoot = InputRoot;

    SET OutputLocalEnvironment.Destination.HTTP.RequestURL = Environment.URL;
    SET OutputLocalEnvironment.Destination.HTTP.Timeout = HTTPTimeOut;

    RETURN TRUE;
    END;
    END MODULE;

    Compute1: after HTTP Request

    CREATE COMPUTE MODULE postScienaptic_Compute1
    CREATE FUNCTION Main() RETURNS BOOLEAN
    BEGIN
    SET OutputRoot = InputRoot;
    RETURN TRUE;
    END;
    END MODULE;



    ------------------------------
    Abhiram Emmadishetty
    ------------------------------



  • 6.  RE: Reply Identifier Error

    Posted Thu October 19, 2023 06:59 AM

    Hi.

    OK - so it doesn't seem to be the code then.

    Could it be that it is timing out? What do the caller of your service get in reply? Is the flow taking a long time to process a message?



    ------------------------------
    Lars Dehli
    ------------------------------



  • 7.  RE: Reply Identifier Error

    Posted Fri October 20, 2023 04:25 AM

    Hi Lars,

    My problem has been fixed. I'm utilising a REST API application type. Instead of zero, I've listed additional instances as '30' during the BAR file conversion.

    It functions now. That reply identification error is not happening to me.

    Thanks for your support.



    ------------------------------
    Abhiram Emmadishetty
    ------------------------------