Is msgmetadata preserved over a tcp/ip thread pair?

Clovertech Forums Read Only Archives Cloverleaf Cloverleaf Is msgmetadata preserved over a tcp/ip thread pair?

  • Creator
    Topic
  • #54832
    Peter Heggie
    Participant

      Is msgmetadata preserved over a tcp/ip thread pair?

      I have an inbound thread A with a route detail to outbound thread B. I set a value in the USERDATA in a message coming from thread A. I can see the USERDATA in thread B. so far, so good.

      Then outbound thread B uses tcp/ip to connect to inbound thread C.

      I don’t see anything in USERDATA from the message that shows up in thread C. Is this normal behavior?

      Peter

      Peter Heggie
      PeterHeggie@crouse.org

    Viewing 5 reply threads
    • Author
      Replies
      • #83147
        James Cobane
        Participant

          Peter,

          From an engine perspective, once the data leaves your outbound thread, the metadata would be gone, as thread C would be like any other inbound connection to an external system; the metadata on the message would simply be comprised of thread C’s information.

        • #83148
          Peter Heggie
          Participant

            Thank you – understood. And yes we need the thread C to be an inbound thread with routing. I will embed the data in the message somehow.

            Peter

            Peter Heggie
            PeterHeggie@crouse.org

          • #83149
            David Barr
            Participant

              Another way to handle this (using the A, B, C thread example above) is to have the outbound TPS of thread B change the SOURCECONN metadata field to the name of thread B and return the message with a disposition of OVER, then you can create a route from thread B to thread C and you don’t have to go through a loopback TCP/IP connection. This will preserve the message metadata.

            • #83150
              Peter Heggie
              Participant

                Right.. I have not had much success with OVER, but I’m sure i’ll try again. This particular scenario has A and B in one site and C and D in another site.

                Peter Heggie
                PeterHeggie@crouse.org

              • #83151
                David Barr
                Participant

                  We’ve got some interfaces like that. In that case you can use inter-site routing. Make B a destination thread. Make C a public thread. We’re still on version 5.8, so the messages are put on the outbound queue, and we use the OVER disposition/SOURCECONN metatdata change to put the message onto the inbound queue and route the message somewhere else in the second site. I think version 6 lets you have public threads that put their incoming messages on the inbound queue, but I might be wrong.

                • #83152
                  James Cobane
                  Participant

                    David,

                    Your post got me looking (we are on 6.1.1), and low and behold there is an option on the thread configuration Properties tab:

                    Messages routed to this connection treated as inbound

                    From the documentation:  Select this to make the destination behave as inbound, not outbound, so that you can route messages delivered to the destination site.

                    Cool!

                    Jim Cobane

                    Henry Ford Health

                Viewing 5 reply threads
                • The forum ‘Cloverleaf’ is closed to new topics and replies.