question

Upvotes
Accepted
791 9 7 14

Exceptions on creating OMMProvider

Hi, our application calls OMMProvider::destroy() and then recreate it using the same name. Upon calling registerClient(), we got this assertion.

RFA Internal failure
File: ..\..\..\Adapters\RSSL_Prov_Adapter\Impl\RSSL_Prov_ConnectionImpl.cpp
Line: 107
Problem:
Illegal attempt to re-acquire the same connection instance.
Connection Name: Connection_OMMProv
RFA_VERIFY( 0 ) failed

Do you know what causes it?

treprfarfa-apiexception
icon clock
10 |1500

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

1 Answer

Upvotes
Accepted
4.4k 10 6 9

Did you recreate OMMProvider immediately after destroying it?

If yes, then it is a known issue.

Event source such as OMMProvider does not design to be created and destroyed in rapid session. This assertion happens because RFA internal thread is still cleaning up connection instance from destroy() call.

You will have to delay the OMMProvider::create() call, or if your goal is to disconnect all clients, then you should disconnect client sessions by submit() OMMClientSessionCmd rather than destroy the OMMProvider.

icon clock
10 |1500

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

Click below to post an Idea Post Idea