We have been trying to develop a Windows desktop application that works against the LSEG Desktop Workspace v 1.26.725.
The .Net API we are using is LSEG.Data 2.2.3 and LSEG.Data.Content 2.2.3.
Our application is in C# and follows the examples that LSEG supplied in ‘Workspace Example ZIPs’. An extract of our Subscribe code is below:
IOMMItemStream SymbolSubscribeStream = OMMStream.Definition().Service("IDN_RDF") .Name(SubscribeSymbolName) .GetStream(Service_ISession) .Streaming(streaming) .OnComplete((cb) => Symbol_OnComplete(cb)) .OnRefresh((item, msg, s) => Symbol_OnRefresh(item, msg, s)) .OnUpdate((item, msg, s) => Symbol_OnUpdate(item, msg, s)) .OnError((item, err, s) => Symbol_OnError(item, err, s)) .OnStatus((item, msg, s) => Symbol_OnStatus(item, msg, s));
The problem we are having is not with single Subscribe operations, but when we carry out a batch operation (E.g. all the member symbols of a chain). That is, when our software makes a rapid sequence of Subscribes.
For example, we could subscribe to 160 valid Symbols within a few milliseconds and get maybe 50% OnRefresh events quite quickly (within a second), maybe another 25% a few seconds later and the rest, never.
Although the above percentages are not reproducible, the behaviour of the API is. That is, not getting the OnRefresh event for each and every valid subscribe.
Our question is, has anyone else experienced this behavior? If you did, how was the issue fixed?
(Note, we have used the same code against an ADS (Deployed) Host and that works fine.)