ETAJ: Receive F9: Service has gone down but not receive any message on up
I am using ETA Java to connect TREP
I've receive the SourceDirectoryUpdate from server with the following message
F9: Service has gone down, Will recall when service become available
I have the following questions:
1. After the service is up, what message will I be received?
2. Should I do reconnect when I receive this message? Or I could pend the connection and wait until it recover?
Thanks!
Best Answer
-
Thanks for reaching out to us.
When the service is down, the application will get a source directory message that indicates the service is down and a source directory group status message that indicates that all items in the group are in the Open/Suspect state.
<UPDATE domainType="SOURCE" streamId="2" containerType="MAP" flags="0xC0 (DO_NOT_CACHE|DO_NOT_CONFLATE)" updateType="0" dataSize="115">
<dataBody>
<map flags="0x00" countHint="0" keyPrimitiveType="UINT" containerType="FILTER_LIST" >
<mapEntry flags="0x00" action="UPDATE" key="5001" >
<filterList containerType="ELEMENT_LIST" countHint="0" flags="0x00">
<filterEntry id="3" action="SET" flags="0x00" containerType="ELEMENT_LIST">
<elementList flags="0x08 (HAS_STANDARD_DATA)">
<elementEntry name="Group" dataType="BUFFER" data="1"/>
<elementEntry name="Status" dataType="STATE" State: Open/Suspect/None - text: "F9: Service has gone down. Will recall when service becomes available."/>
</elementList>
</filterEntry>
</filterList>
</mapEntry>
</map>
</dataBody>
</UPDATE>If you use ETA VA with WatchList enabled, the API will fanout this message to all items in this group. Therefore, the application will retrieve the Open/Suspect status messages for all subscribed items in this group.
DefaultMsgCallback Status -- ItemName: TRI.N Domain: MARKET_PRICE, StreamId: 5
State: Open/Suspect/None - text: "F9: Service has gone down. Will recall when service becomes available."When the service is up, the application will get the source directory messages that indicate the service is up. Because the item state is still Open, the application doesn't need to re-subscribe to items. The server will recover items and send new refresh messages to the application.
In short, the application needs to check the stream state of the subscribed items. If the stream state is Open, the application doesn't need to re-subscribe to items.
This one applies to the service down, not disconnection.
I hope that this information is of help.
0
Answers
-
Hello @altman.wong
For the second question, please check my colleague @Jirapongse answer in this post. He shows the example status message and how the application should handle the message.
0 -
Hello @Jirapongse
Much appreciated for your help
From log I saw I receive "A23", which indicate a server switch
However, since it is a SourceDirectoryUpdate message, from the logic of ETAJ example, it has cleared the capabilities list and cause me fail to send MARKET PRICE request even the connection is fine.
To tackle the issue, should I try to send SourceDirectoryRequest once more to refresh the capabilities list? Or try not to handle the update message in this case?
0 -
Typically, the example will send item requests when it can detect that the subscribed service is up and ready.
The application should receive the source directly update message when the service is up. It is not necessary to send another source directory request if the source directory stream is still open.
0 -
@Jirapongse
What if I could not receive the source directory update? The stream looks fine but I did not see any new capability list at last, does it mean I need to resend the request myself?
Thanks a lot
0 -
Hello @altman.wong
The infrastructure should send the directory update to consumers once the service is UP again (and the source directory stream is still open).
If the API or application did not receive the directory update message when the service is UP, it might be something wrong. I highly recommend you open the RSSL log message to check if the API received the directory update message from the backend. If not, you need to check the RTDS level.0
Categories
- All Categories
- 6 AHS
- 37 Alpha
- 161 App Studio
- 4 Block Chain
- 4 Bot Platform
- 16 Connected Risk APIs
- 47 Data Fusion
- 30 Data Model Discovery
- 608 Datastream
- 1.3K DSS
- 577 Eikon COM
- 4.9K Eikon Data APIs
- 7 Electronic Trading
- Generic FIX
- 7 Local Bank Node API
- Trading API
- 2.7K Elektron
- 1.3K EMA
- 236 ETA
- 519 WebSocket API
- 33 FX Venues
- 10 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 20 Messenger Bot
- 2 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 59 Open Calais
- 264 Open PermID
- 39 Entity Search
- 2 Org ID
- PAM
- PAM - Logging
- 8.4K Private Comments
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 20 RDMS
- 1.4K Refinitiv Data Platform
- 367 Refinitiv Data Platform Libraries
- 3 Refinitiv Due Diligence
- LSEG Due Diligence Portal API
- 3 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.1K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 10 World-Check Customer Risk Screener
- 990 World-Check One
- 44 World-Check One Zero Footprint
- 45 Side by Side Integration API
- Test Space
- 3 Thomson One Smart
- 1.2K TR Internal
- Global Hackathon 2015
- 2 Specialists Who Code
- 10 TR Knowledge Graph
- 150 Transactions
- 142 REDI API
- 1.7K TREP APIs
- 4 CAT
- 21 DACS Station
- 117 Open DACS
- 1.1K RFA
- 103 UPA
- 172 TREP Infrastructure
- 224 TRKD
- 886 TRTH
- 5 Velocity Analytics
- 5 Wealth Management Web Services
- 59 Workspace SDK
- 9 Element Framework
- 5 Grid
- 13 World-Check Data File
- Yield Book Analytics
- 46 中文论坛