Single Thread Model with multiple RFA sessions

LtDoolittle6
LtDoolittle6 Contributor

My RFA application has created multiple OMM Consumer event
source. Each Consumer use different RFA session. Once I have tried to change
the “threadModel” configuration to “single”, the following error will occur. How could I use
threadModel = “single” with multiple RFA sessions?

RFA Internal failure

File: ..\..\..\Adapters\RSSL_Cons_Adapter\Impl\RSSL_Cons_AdapterImpl.cpp
Line: 210

Problem:
The RSSL_Cons_Adapter is configured as a Singleton and does NOT support
multiple sessions if any session's ThreadModel is set to Single.
RFA_VERIFY( false ) failed

RFA configuration:

\Sessions\Session1\threadModel = “single”

\Sessions\Session2\threadModel = “single”

Tagged:

Best Answer

  • With “threadModel”=”Single”,
    RFA will use Single thread model which RFA Session and Adapter instances are on
    same thread. However, by default, only one RFA Adapter instance is allowed to be
    created. This means that new RFA session cannot be created because there is no
    Adapter instance to be shared.

    If
    you want to configure multiple sessions to use the Single thread model, you
    need to enable the horizontal scaling feature which allows multiple RFA Adapter
    instances to be created.

    The horizontal scaling can be enabled by the
    following configuration.

    \Adapters\RSSL_Cons_Adapter\singleton
    = false