Hi all,
I've been working with OpenMAMA 2.4.0 and the new Qpid Broker integration with the Java Qpid Broker implementation in Ubuntu 14.04. I've been
experiencing some issues when I try to publish market data using capturereplayc. I use the next command
capturereplayc -S TEST -m qpid -tport broker -dictionary data/dictionaries/data.dict -f data/playbacks/openmama_utpcasheuro_capture.5000.10.qpid.mplay -r -v -v -v -v
Issues arise when I run mamalistenc or MamaListen.java example. For instance, with the next arguments they can't get the dictionary:
mamalistenc -m qpid -tport broker -S TEST -s DE000CM95AU4.EUR.XPAR -v -v -v -v
I got this in mamalistenc console:
...
016-04-26 09:32:44: (15a53740) : deactivateAction(): (WOMBAT.DATA_DICT (DATA_DICT) (0x1152270)): mSubscBridge=(nil)
2016-04-26 09:32:44: (15a53740) : Subscription 0x1152270 is now at state MAMA_SUBSCRIPTION_DEACTIVATED.
2016-04-26 09:32:44: (15a53740) : imageRequest::timeoutCallback (): DATA_DICT: Timeout waiting for recap or initial value (subscription=0x1152270)
2016-04-26 09:32:44: (15a53740) : imageRequest::timeoutCallback (): source=WOMBAT; symbol=DATA_DICT
Timed out waiting for dictionary
Could not create dictionary.
And in the capturereplayc console, I got this:
...
2016-04-26 09:35:50: (f5dbf740) : Starting refresh message mini-cycle
2016-04-26 09:35:50: (f5dbf740) : No refreshes to send
2016-04-26 09:35:56: (f2552700) : qpidBridgeMamaTransportImpl_dispatchThread(): recv-ed
2016-04-26 09:35:56: (f5dbf740) : mamaSubscription_processMsg(): _MDDD.WOMBAT.DATA_DICT: msg = {{MdSubscSymbol,71,DATA_DICT},{MdSubscriptionType,60,4},{MdSubscMsgType,61,5},{MamaAppDataType,17,0},{MdSubscType,5,5},{MdSubscSourceHost,63,127.0.1.1}} subsc (0xacb940)
So I have to read the dictionary directly from file:
mamalistenc -m qpid -tport broker -S TEST -s DE000CM95AU4.EUR.XPAR -v -v -v -v -use_dict_file /home/nmarin/Apps/openmama-2.4.0/data/dictionaries/data.dict
Sometimes It just doesn't work and I got this message:
...
2016-04-26 09:46:53: (cd6a7740) : deactivateAction(): (TEST.DE000CM95AU4.EUR.XPAR (DE000CM95AU4.EUR.XPAR) (0x11113c0)): mSubscBridge=0x112b620
2016-04-26 09:46:53: (cd6a7740) : Subscription 0x11113c0 is now at state MAMA_SUBSCRIPTION_DEACTIVATED.
2016-04-26 09:46:53: (cd6a7740) : imageRequest::timeoutCallback (): DE000CM95AU4.EUR.XPAR: Timeout waiting for recap or initial value (subscription=0x11113c0)
2016-04-26 09:46:53: (cd6a7740) : imageRequest::timeoutCallback (): source=TEST; symbol=DE000CM95AU4.EUR.XPAR
An error occurred creating subscription for DE000CM95AU4.EUR.XPAR: STATUS_TIMEOUT
But sometimes if I restart capturereplayc and mamalistenc it works well. I'm actually a little confused with this behaviour, because sometimes it works, but sometimes doesn't work at all and I have to restart the broker, the capturereplayc or the mamalisten until this works. I've tested using regular transport (pub/sub) and it works perfect, so I think the issues show up only with the broker. I've also tested simple publish and subscribe with mamapublisherc, mamasubscriberc and it works fine.
Thanks for your help.
Nestor