Hi, we are developing an OMM posting consumer to contribute into an ATS.
In particular, we would like to be able to publish data for a Ric even if it does not already exist, by creating it automatically. In our code this feature can be enabled via configuration. When enabled, every time we have to publish data for a Ric we try to create it anyway, and then we publish data.
However a strange behavior occurs:
1) on one occasion we tried to publish data for multiple instruments (all already existent), but only some of them were correctly published, even though the rfa logs showed "Contribution accepted" for all of them. Consequence was that some instruments had old data.
2) on another occasion when we tried to publish data for multiple instruments, for some of them we got "Contribution accepted"
TRACE GenericOMMParser - MESSAGEMsg Type: MsgType.ACK_RESP
Msg Model Type: MARKET_PRICE
Indication Flags:
Hint Flags: HAS_ATTRIB_INFO | HAS_SEQ_NUM | HAS_ID | HAS_STATE
State: UNSPECIFIED, NO_CHANGE, NONE, "[1]: Contribution Accepted"
SeqNum: 2166
Id: 2166
AttribInfo
ServiceName: ATS_TEST
ServiceId: 259
Name: CEN-03SPA-230-MTR02
NameType: 1 (RIC)
Payload: None
while for others we got "Unknown item"
TRACE GenericOMMParser - MESSAGEMsg Type: MsgType.ACK_RESP
Msg Model Type: MARKET_PRICE
Indication Flags:
Hint Flags: HAS_ATTRIB_INFO | HAS_SEQ_NUM | HAS_ID | HAS_STATE
State: UNSPECIFIED, NO_CHANGE, NACK_INVALID_CONTENT, "[500]: Unknown Item"
SeqNum: 2175
Id: 2175
AttribInfo
ServiceName: ATS_TEST
ServiceId: 259
Name: CEN-03SPA-230-MTR05
NameType: 1 (RIC)
Payload: None
When the feature is disabled and we publish data for instruments already existent, data are always updated for all instruments.
What could be the issue?