Hi!

I have 2 camel routes from quickfix consumers.
Camel version is 3.4.4 but behaviour is the same with greater versions too.
2 sessions are described in fix.properties file.
Second route is .autoStartup(false).

When camel starts a quickfix consumer for the active route, it starts
second quickfix session (for disabled route) too.

This happens in org.apache.camel.component.quickfixj.doStart()
-> quickfix.SocketInitiator

private void initialize() throws ConfigError {
        if (isStarted.equals(Boolean.FALSE)) {
            eventHandlingStrategy.setExecutor(longLivedExecutor);
            createSessionInitiators();
            for (Session session : getSessionMap().values()) {
                Session.registerSession(session);
            }
            *startInitiators();*
            eventHandlingStrategy.blockInThread();
            isStarted = Boolean.TRUE;
        } else {
            log.warn("Ignored attempt to start already running
SocketInitiator.");
        }
    }

One possible workaround - store sessions in different files.

QuickFixJ approach for independen sessions startup described here:
https://stackoverflow.com/questions/61611047/how-to-manage-and-reload-multiple-quickfix-j-sessions-independently
.

How can I implement independent sessions startup with Camel using single
config file?


<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
Без
вирусов. www.avast.ru
<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
<#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>

Reply via email to