Failover for multiple NI Providers
I have an application setup to stream the same data to two ADH servers using an NI Provider. I am getting some weird failover behaviour and I'm not sure what might be going wrong.
- Start provider application that sends messages to both ADH servers
- Subscribe to Item using a separate application
- Ticks are successfully received.
- Turn off ADH1 which is acting as primary node. Subscriber get's notified and successfully starts receiving the data from the ADH2.
- Restart ADH1. Provider application reconnects and starts sending data there again.
- Stop ADH2 (acting as primary). Subscriber get's notified and pulls an IMAGE from ADH1
- Subscriber receives no further updates. But the publisher is still running.
- Restart ADH2. Provider connects and starts sending data.
- Stop ADH1 again. Subscriber now starts getting updates.
After I have gone through this initial failure cycle. You can successfully flip between both hosts repeatedly. I don't quite know why the first failback to ADH1 fails but after that everything is working.
Also to note, I can create the same behaviour in reverse. So if I start with ADH2 as the primary node then the first failback to ADH2 fails, subsequently you can flip servers without any issues.
Best Answer
-
Hi Wasin,
I have made a bit of progress with this issue after posting on the GitHub issues too. It turns out that the ServiceID set in the Directory message is defaulted by EMA to '0' on connection recovery. The subscription streams don't pick up the continuation of the publisher unless the Service ID is the same. Here's the issue:
https://github.com/thomsonreuters/Elektron-SDK/issues/33
My workaround is to always use '0' as the ServiceID. I haven't found any good documentation on the significance of the ServiceID. I seem to be able to publish to the same Item with two different NI Publishers using the same Service name and ServiceID. Do you have any links to documentation on the ServiceID?
0
Answers
-
Hello @tbaker
To let us check this issue in detail, could you please give us the following information?
- The ADH and Elektron SDK Java version that encounter the problem
- The RSSL trace file from the consumer side when the problem occurs. If you are using the EMA Java API, you can enable it by setting <XmlTraceToStdout value="1"/>
- You ADH and ADS configuration files
0 -
Hi @tbaker
There is the EMA Java RDM Usage Guide document that describes about the ServiceID in chapter 5 - Source Directory Domain. You can get the document from this link.
However, if you need more detail or clarification regarding the ServiceID behavior from development, I suggest you follow up in the GitHub issue.
0
Categories
- All Categories
- 6 AHS
- 39 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
- 60 Workspace SDK
- 9 Element Framework
- 5 Grid
- 13 World-Check Data File
- Yield Book Analytics
- 46 中文论坛