question

Upvotes
1 0 1 0

Faced Runtime NullPointer Exception when application was active, connected and was receiving rates.

Hi,

We faced a Runtime Exception recently which causes our application to stop working abruptly and we had to restart the application manually and everything started working smoothly after that. I am sharing the chain of event with logs we faced that time for your reference.

1. We got a “Login stream was closed” error status and we restarted the application.

2. The application became ACTIVE @2024-09-22 13:42:31,730

3. Immediately then when we were trying to establish the connection, we received the following Runtime Exception generated from ema library which left the application blocked at some point.

024-09-22 13:42:31,793 Subscription status = Open / Ok / None / '*All is well'

java.lang.NullPointerException

at com.refinitiv.eta.codec.RmtesDecoderImpl.RMTESToUTF8(RmtesDecoderImpl.java:1082)

at com.refinitiv.eta.json.converter.BasicPrimitiveConverter.writeRMTESString(BasicPrimitiveConverter.java:1181)

at com.refinitiv.eta.json.converter.EnumTableDefinition.addEnumDefinition(EnumTableDefinition.java:104)

at com.refinitiv.eta.json.converter.JsonEnumerationConverter.convertDisplayToEnum(JsonEnumerationConverter.java:95)

at com.refinitiv.eta.json.converter.JsonEnumerationConverter.encodeRWF(JsonEnumerationConverter.java:156)

at com.refinitiv.eta.json.converter.JsonConverterBaseImpl.decodeChunk(JsonConverterBaseImpl.java:829)

at com.refinitiv.eta.json.converter.JsonFieldListConverter.encodeRWF(JsonFieldListConverter.java:169)

at com.refinitiv.eta.json.converter.JsonConverterBaseImpl.decodeChunk(JsonConverterBaseImpl.java:829)

at com.refinitiv.eta.json.converter.AbstractRsslMessageTypeConverter.encodeMsgPayload(AbstractRsslMessageTypeConverter.java:140)

at com.refinitiv.eta.json.converter.AbstractRsslMessageTypeConverter.encodeRWF(AbstractRsslMessageTypeConverter.java:60)

at com.refinitiv.eta.json.converter.JsonConverterBaseImpl.decodeRsslMessage(JsonConverterBaseImpl.java:796)

at com.refinitiv.eta.json.converter.JsonConverterBaseImpl.decodeJsonMsg(JsonConverterBaseImpl.java:194)

at com.refinitiv.eta.valueadd.reactor.Reactor.performChannelRead(Reactor.java:4865)

at com.refinitiv.eta.valueadd.reactor.Reactor.dispatchAll(Reactor.java:7775)

at com.refinitiv.ema.access.OmmBaseImpl.rsslReactorDispatchLoop(OmmBaseImpl.java:1836)

at com.refinitiv.ema.access.OmmBaseImpl.run(OmmBaseImpl.java:1985)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)

at java.lang.Thread.run(Thread.java:750)

Can you please share some insights on which EMA library API call may throw this kind of exception so that we can plan some defensive action at our end as well to handle this scenario.

#technologytrepDACS
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.

@sarthak.banerjee

Does the application use the multiple instances of OmmConsumer at the same time?

0 Answers