question

Upvotes
Accepted
25 2 2 8

Seeing metadata error when subscribing to streaming summaries for specific instruments

In the HistoricalPricing - TSInterday project we're subscribing to streaming summaries with a Daily interval and are receiving the following error: "Error: Failed to load meta data. Failed to load Instrument Metadata for item: AUA04000524=WPAC". The same error is returned for US1DCP=. Here is the code that can duplicate the problem...

    // Create the platform session.
    using ISession session = Sessions.GetSession();

    // Open the session
    session.Open();

    var stream = Summaries.Definition("AUA04000524=WPAC")
        .Interval(Summaries.Interval.P1D)
        .GetStream();

    // Specify the TSI lambda expressions to capture 'Insert' and 'Update' events
    stream.OnInsert((data, stream) => Common.DisplayTable($"INSERT: {DateTime.Now}", data.Table))
          .OnUpdate((data, stream) => Common.DisplayTable($"UPDATE: {DateTime.Now}", data.Table))
          .OnStatus((status, stream) => Console.WriteLine($"Status: {status}"))
          .OnError((error, stream) => Console.WriteLine($"Error: {error}"))
          .Open();

    Console.ReadLine();
}
catch (Exception e)
{
    Console.WriteLine($"\n**************\nFailed to execute: {e.Message}\n{e.InnerException}\n***************");
}


#technology#producthistoricalc#refinitiv-data-platform-librariesstreaming-data
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Hello @cory.schmidt.1


The error seems to be caused by a parsing issue of the incoming response for the instruments used in the example. Could you please provide any generated logs ?

Thanks,

Cristian

@cory.schmidt.1

@cristian.baciuwahl

I can replicate this error.

The debug log looks like this:

Application: Debug - Preparing Endpoint GET request http://localhost:9001/api/rdp/data/historical-pricing/v1/metadata/global-metadata
Application: Info - Successfully loaded the Global Metadata database.
Application: Info - Completed global metadata parsing
Application: Debug - Preparing Endpoint GET request http://localhost:9001/api/rdp/data/historical-pricing/v1/metadata/instrument-metadata?version=v2&types=MarketRulesData,Qualifiers,RuleReferenceData,TimeZone,TradingSessions&ric=AUA04000524%3DWPAC
Application: Warn - Failed to extract 'TimeZone' element.  Defaulting to: GMT
Application: Error - Failed to extract 'MarketRulesData.dataFilterClauses' stanza
{}
Application: Error - Failed to load Instrument Metadata for item: AUA04000524=WPAC. Failed to parse metadata
Application: Error - Failed to retrieve Instrument Metadata
Error: Failed to load meta data. Failed to load Instrument Metadata for item: AUA04000524=WPAC

@Jirapongse

Thank you for the help !

@cory.schmidt.1

By looking at the logs it seems that the incoming object is empty.

I will start my investigation into this issue.

@cory.schmidt.1

My initial observation that the incoming response is empty was correct.

It seems that the endpoint is responding with a 200 (OK) http status code, but there is no content for us to parse.

1706270186703.png

Continuing investigation...

1706270186703.png (14.9 KiB)

@cory.schmidt.1

It seems that retrieving summary data (not streaming) works, using a simple endpoint definition, like this:

var universe = "AUA04000524=WPAC";
var url = "https://api.refinitiv.com/data/historical-pricing/v1/views/interday-summaries";
var endpoint = $"{url}/{universe}";

var response = EndpointRequest
    .Definition(endpoint)
    .QueryParameter("interval", "P1D")
    .GetData();

I will continue investigating to see why there is no data for streaming...

@cory.schmidt.1

What I found so far is that instrument metadata is the object not retrieved for AUA04000524=WPAC , but I haven't found the reason why yet. I am using the exact same example code and replacing the faulty instrument with EUR= and I have no issues...

Instrument metadata is something we cannot ignore as being null or empty because it is used in streaming for normalization of incoming records based on data filter clauses and rules in order to obtain correct data.

There are also no errors, warnings or other information coming back with the response.

I will probably need to discuss with @nick.zincone about this issue next week to gain more knowledge...

Show more comments
Upvotes
Accepted
17.4k 82 39 63

Hi @cory.schmidt.1

Based on my initial investigation, there doesn't appear to be any metadata associated with the instruments you highlighted. The library is simply reacting and reporting it is unable proceed because metadata rules are at the heart of the processing.

We'll need to follow-up with the server team to report this issue. You did note 2 instruments, if you have any others, please share and we'll provide the team these details.

thanks.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
142 2 1 3

Hi @cory.schmidt.1

Should you require a content enhancement, you just need to raise a support ticket via my.refinitiv site the same way you raise support tickets for any other product/content concerns and once support receives it they'll go through the process from there.


Br,

Cristian

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Thanks, I'll get that raised today.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.