A46: Item was reopened under new stream.

gang.chen1
gang.chen1 LSEG
edited June 4 in WebSocket API

Hi Team,

One of my client faced this issue "A46: Item was reopened under new stream." recently.

As you mentioned in link

“A46: Item was reopened under new stream.” — LSEG Developer Community

, the client may have duplicate subscription in the batch request message(s) and closed the first stream. Why there is no data update for client's application after this error happen ? ADS how to handle the second stream?

what should client do if face A46 error ?

thanks

Answers

  • Jirapongse
    Jirapongse ✭✭✭✭✭

    @gang.chen1

    Thank you for reaching out to us.

    Each opened item will have a unique stream ID. For example, the following item request assigns the stream ID#5 to JPY=.

    {
    "ID": 5,
    "Key": {
    "Service": "ELEKTRON_DD",
    "Name": "JPY="
    }
    }

    The application will retrieve updates of JPY= with the stream ID#5.

    image.png

    While this stream (#5) is opened and the application sends a new JPY= request with a new stream ID#6.

    {
    "ID": 6,
    "Key": {
    "Service": "ELEKTRON_DD",
    "Name": "JPY="
    }
    }

    The server will send the closed stream message on the stream ID#5.

    [
    {
    "ID": 5,
    "Type": "Status",
    "Key": {
    "Service": "ELEKTRON_DD",
    "Name": "JPY="
    },
    "State": {
    "Stream": "Closed",
    "Data": "Suspect",
    "Code": "AlreadyOpen",
    "Text": "A46: Item was reopened under new stream."
    }
    }
    ]

    This means that this stream ID#5 has been closed and the application will not receive any messages on this stream. The update messages of JPY= will be received through the stream ID#6 instead.

    image.png