New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Periodic NullPointerException on unregister and reissue when using payload view in EMA Java Api #239
Comments
Hi, a few questions: Is this a multithreaded application? Thanks, |
One other thing, in the reissue example, the code is clearing the request message immediately prior to the calling OmmConsumer.reissue(). What is the intent behind this? The clear would imply that the view does not apply anymore, is that what the application wishes to do? Mitchell |
Hi @MitchellKato
Yes, we run 8 concurrent OmmConsumer threads.
We request one item at a time (not using any batching) but altogether these applications (two separate ones) request between 7.6k-11k items.
OperationModel.API_DISPATCH
As mentioned in the original example code we are reusing same ReqMsg across all of the calls that we make (registration/reissue) to prevent memory pollution. I think I forgot to mention that the ReqMsg used by reissue call is a separate one from the one that we used when |
Thank you, we are looking into the issue. |
Thanks @MitchellKato, please keep me posted! |
Hi @MitchellKato |
Hi @ligasgr, we are still attempting to reproduce the problem you've identified. If you do have any additional code you can share that can recreate the issue more reliably, feel free to pass it along. Either way we want to make sure that we can reproduce it to find an appropriate solution. |
Hi @ligasgr, we have found a way to accurately reproduce the issue and are looking into appropriate solutions to the problem. |
That's great news, thanks a lot! Please let me know when you have something that we could test. |
RTSDK 2.2.0.L1 addresses this issue. Please let us know if you have further concerns. Closing. |
We've recently started using ViewPayload in RT-SDK EMA (version 3.7.0.0 and 3.6.1.2 on Linux) to limit the number of fields that we receive in two of our applications. This works ok for receiving the data but unfortunately for reissue and during unregistration we are seeing issues in the API the end up with exceptions. It looks like there may be a race condition or a bug in the logic of the library (unless we are using it wrong, but we followed the examples from: https://github.com/Refinitiv/Real-Time-SDK/blob/master/Java/Ema/Examples/src/main/java/com/refinitiv/ema/examples/training/consumer/series300/ex360_MP_View/Consumer.java)
Please note that we are NOT using batch request.
Sample code that is equivalent of what we do during registration is:
On the reissue side what we do is:
And unregister:
The issues do not occur every time and there is no specific pattern of them happening but when they happen they produce results like the ones below:
Reissue (using version 3.7.0.0):
Unregister (using older version 3.6.1.2):
Please let me know if you need any further details you may need for the investigation.
Thanks, Grzegorz
The text was updated successfully, but these errors were encountered: