RSearch query callback not called
Hello,
I'm using the RSearch library in order to extract RICs based on criteria.
The library is usually working perfectly.
However, since few days we are facing an issue. When we try to extract data from Eikon with RSearch the server seems to not send any answer to the request. In other words the callback method is never called.
We did not perform any update of our application.
Please find below the detail of my implementation :
if (RSearchCookie != 0)
{
RSearchQuery = RSearchMgr.CreateRSearchQuery(RSearchCookie);
}
if (RSearchQuery != null)
{
RSearchParameters = rSearchParameter;
RSearchCritera = rSearchCriteria;
RSearchQuery.OnUpdate += OnUpdate; // here I define the callback for RSearch updates.
RSearchQuery.AssetClass = RSearchAssetClass;
RSearchQuery.SearchParameters = RSearchParameters;
RSearchQuery.SearchCriteria = RSearchCritera;
}
Here is the callback definition. This method is not called anymore.
public void OnUpdate(IRSearchResponse pIRSearchResponse)
{
if (GlobalExtractionManager.IsEndOfExtractionRequested)
{
// Notif for GUI
EIkonAPIMediator.SendEndOfRICExtractionConfirmation();
}
else
{
EIkonAPIMediator.SendRSearchMessage(pIRSearchResponse);
}
}
Would you have any idea why the server is not answering ? Maybe it could be a linked to my network configuration ?
Thanks a lot for your help
Best Answer
-
Hello,
Thanks you a lot for your answer.
As suggested I installed the sample application provided in the .Net COM documentation. I was facing the same issue.
But after completely reinstalling the Eikon app the problem seems to be solved ! (for the moment)
0
Answers
-
The best way to investigate this is to capture the HTTP request to the Web service behind RSearch library. When you submit a search request through RSearch COM library, the library generates an HTTP request to the Web service on Eikon platform backend. E.g.
This HTTP request can be captured using an HTTP analyzer like Fiddler, which can provide valuable info about what happened to the request.
0 -
Hello Alex,
Thank you for the answer.
So I just performed a network capture with Fiddler. I can also provide the session file if required.
At first glance it seems that the Eikon API is acting as expected. HTTP 200 are returned and the content is list of RIC in JSON format.
The RSearch parameters are the following : NBROWS:2000 SORT:MaturityDate:A.
This I believe explains why we get 4 HTTP 200 with 500 RICs each. (I guess the .NET lib is in charge to consolidate all the json records in a single IRSearchResponse containing 2000 results.)
So the problem seems to be that the Callback method is never called when http 200 are returned... In debug mode we could observe that breakpoints are never fired in the callback.
We did not update the app recently, the problem suddenly appeared last week.. One of my colleague was not able to perform any data extraction but it was still working on my computer. Then I faced the same issue few days later.
We are using the build 4.0.49.176 of package Interop.RSearch.dll
Would you have any idea ?
0 -
I was also thinking, do you think the problem could come from the activity of an anti-virus ? Do you know if the Interop.RSearch.dll attempts to create any temporary files on the disk, that would be blocked by the anti-virus then leading the process to not complete his task (without throwing an Exception) ?
0 -
Interop.RSearch.dll is just a COM interop dll. It merely provides the mapping between COM classes and .NET assemblies, so that RSearch.dll COM library could be used in a .NET project. The version of Interop.RSearch.dll can't be of any significance, since class definitions in RSearch.dll haven't changed in many, many years.
I'm afraid I do not reproduce the issue you're experiencing on my end. I just tried using the example in the RSearch tutorial on this portal, and I had no problem retrieving the data. I'm using Eikon v4.0.53072, which comes with RSearch.dll v4.0.53.30.
I think it's unlikely that the issue is related to antivirus.
Could you try and see if you can display search results using the example in the tutorial I just mentioned? Let's also check if the date when you started experiencing the problem coincides with a date of Eikon update on your and your colleague's machines. To see that, check %ProgramData%\Thomson Reuters\Eikon Data\UpdatesHistory.xml file, which contains the history of Eikon version updates on the machine.0
Categories
- All Categories
- 3 Polls
- 6 AHS
- 36 Alpha
- 166 App Studio
- 6 Block Chain
- 4 Bot Platform
- 18 Connected Risk APIs
- 47 Data Fusion
- 34 Data Model Discovery
- 690 Datastream
- 1.4K DSS
- 629 Eikon COM
- 5.2K Eikon Data APIs
- 11 Electronic Trading
- 1 Generic FIX
- 7 Local Bank Node API
- 3 Trading API
- 2.9K Elektron
- 1.4K EMA
- 255 ETA
- 559 WebSocket API
- 39 FX Venues
- 15 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 24 Messenger Bot
- 3 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 60 Open Calais
- 279 Open PermID
- 45 Entity Search
- 2 Org ID
- 1 PAM
- PAM - Logging
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 23 RDMS
- 2K Refinitiv Data Platform
- 713 Refinitiv Data Platform Libraries
- 4 LSEG Due Diligence
- LSEG Due Diligence Portal API
- 4 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.2K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 12 World-Check Customer Risk Screener
- 1K World-Check One
- 46 World-Check One Zero Footprint
- 45 Side by Side Integration API
- 2 Test Space
- 3 Thomson One Smart
- 10 TR Knowledge Graph
- 151 Transactions
- 143 REDI API
- 1.8K TREP APIs
- 4 CAT
- 27 DACS Station
- 121 Open DACS
- 1.1K RFA
- 106 UPA
- 194 TREP Infrastructure
- 229 TRKD
- 918 TRTH
- 5 Velocity Analytics
- 9 Wealth Management Web Services
- 95 Workspace SDK
- 11 Element Framework
- 5 Grid
- 19 World-Check Data File
- 1 Yield Book Analytics
- 48 中文论坛