Using RFA 7.6 C++ on Linux, I get PubErrorEvent with State: None and StatusText "Failedto publish the market data event to SAPI".
This is happening on a live system and I do not see this in test.
@iain.cadman
The SAPI is the underlying layer in RFA thathandles network connection (SSLED_MP connection) between the RFAMarketDataManagedPublisher and its clients. The PubErrEvent could be generated once SAPI could not write the message to thenetwork with a specific reason.
Below are some possible scenarios.
- Image is published with status other than “Ok” or“Stale”
SAPI allows only two types of statusfor image: Ok or Stale status. Other statuses, for example, “NoChanged” statusmeans the state is the same as before which makes sense in term of an updatebut not an image.
- There is not enough buffer for SAPI to send message tonetwork
RFA provide configuration parameter “outputBuffers” to tune thisoutput buffer. For more detail, see RFA Configuration Guide provided in RFApackage.
You may try following parameter to isolate the issue.
\Connections\Connection_SSLED_MP\outputBuffers = 100000000
If the scenarios listed above do not occur in your applicaiton, please provide further information such as reproduction steps, published messages.
Hi @iain.cadman
If it is happening consistently on live system and you cannot recreate in test environment, then my immediate thought would be that there is some difference in the TREP config between your test and live environment. Or a difference in versions of TREP components between test and live?
Can you provide a few more details on what you are trying to do, publisher type, connection type? Can you recreate using one of our example apps?
Thanks for the response. I am seeing this on a customer site, so there will likely be a difference in components and configuration.
These messages only occur when the contributor program is being loaded tested. The publicationID on the error event is a long way behind that reported for a publish done around the same time.
I will increase the buffers as suggested and see if this has an effect. I suspect, though, that increasing the buffers will only delay the problem.
Yes, increasing the buffers will only delay the problem. If the parameter has an effect, the issue needs to be investigated further as there might be bottlenect on transport layer.