I am requesting market by price data for Tokyo Stock Exchange. At startup I get a refresh message with a lot of prices added.
But if we start up the service before market opens, then after the refresh is complete a lot of prices are added by update messages which were already added in the refresh message.
For example, in the refresh message we have this price added:
3738 3030 3030 3030 41 78000000A
dataType="FieldList"
FieldList
FieldEntry fid="3427" name="ORDER_PRC" dataType="Real" value="7800.0"
FieldEntry fid="3428" name="ORDER_SIDE" dataType="Enum" value="2"
FieldEntry fid="4356" name="ACC_SIZE" dataType="Real" value="193000"
FieldEntry fid="3430" name="NO_ORD" dataType="UInt" value="521"
FieldEntry fid="6527" name="LV_TIM_MS" dataType="UInt" value="20632459"
FieldEntry fid="6529" name="LV_DATE" dataType="Date" value="15 JAN 2018"
FieldEntry fid="3886" name="ORDER_TONE" dataType="Rmtes" value=" "
FieldEntry fid="14268" name="LV_TIM_NS" dataType="Time" value="05:43:52:459:589:000"
FieldListEnd
MapEntryEnd
MapEntry action="Add" key dataType="Buffer" value=
Then, in the first update message after refresh is complete, 78000000A is added again:
UpdateMsg
streamId="5"
domain="MarketByPrice Domain"
updateTypeNum="0"
seqNum="3"
name="7203.T"
nameType="1"
serviceId="289"
serviceName="DIRECT_FEED"
Payload dataType="Map"
Map
SummaryData dataType="FieldList"
FieldList
FieldEntry fid="17" name="ACTIV_DATE" dataType="Date" value="15 JAN 2018"
FieldEntry fid="4148" name="TIMACT_MS" dataType="UInt" value="82800056"
FieldEntry fid="6516" name="BOOK_STATE" dataType="Enum" value="1"
FieldEntry fid="6517" name="HALT_REASN" dataType="Rmtes" value=" "
FieldEntry fid="6614" name="TRD_STATUS" dataType="Enum" value="1"
FieldEntry fid="14269" name="TIMACT_NS" dataType="Time" value="23:00:00:056:187:000"
FieldListEnd
SummaryDataEnd
MapEntry action="Add" key dataType="Buffer" value=
3738 3030 3030 3030 41 78000000A
dataType="FieldList"
FieldList
FieldEntry fid="3427" name="ORDER_PRC" dataType="Real" value="7800.0"
FieldEntry fid="3428" name="ORDER_SIDE" dataType="Enum" value="2"
FieldEntry fid="4356" name="ACC_SIZE" dataType="Real" value="1900"
FieldEntry fid="3430" name="NO_ORD" dataType="UInt" value="1"
FieldEntry fid="6527" name="LV_TIM_MS" dataType="UInt" value="82800056"
FieldEntry fid="6529" name="LV_DATE" dataType="Date" value="15 JAN 2018"
FieldEntry fid="3886" name="ORDER_TONE" dataType="Rmtes" value=" C"
FieldEntry fid="14268" name="LV_TIM_NS" dataType="Time" value="23:00:00:056:187:000"
FieldListEnd
MapEntryEnd
MapEnd
PayloadEnd
UpdateMsgEnd
Is there some signal I failed to get, which signals that I have to clear the cache?