问题描述
因此我的客户正在请求GapFill,因为我们的序列已关闭.除了要重播消息外,我还想发送SequenceReset.我的问题很简单:我要发送给他的SequenceReset的消息序列应该是什么?我不希望我的客户端丢弃它,因为它无法识别我的SequenceReset中的消息序列,或者检测到间隙并要求另一个GapFill,这会使我陷入无限循环.
So my client is requesting a GapFill because our sequences are off. Instead of replaying the messages I want to send a SequenceReset instead. My question is simple: What should be the message sequence of this SequenceReset I am about to send to him? I don't want my client to drop it because it does not recognize the message sequence in my SequenceReset, or detect a gap and ask for another GapFill which would put me on an infinite loop.
我应该将我的SequenceReset与客户端要求重播的第一条消息的顺序一起发送吗?
Should I send my SequenceReset with the sequence of the first message the client asked for a replay?
在GapFill期间是否重新发送会话消息?
Are session messages resent during a GapFill?
如果客户端的会话序列关闭,它们是否丢弃会话消息? (我会这样认为.)
Does a client drop session messages if their sequence is off? (I would think so).
总而言之,我的问题是:
So to summarize, my question is:
从客户端进行GapFill之后,我应该在SequenceReset上使用什么序列,以便我的客户端实际上能够处理我的SequenceReset并继续运行?
What sequence should I use on a SequenceReset after a GapFill from the client so that my client actually is able to process my SequenceReset and keep going?
推荐答案
SequenceReset有两种类型:
There are two types of SequenceReset:
1. With GapFillFlag = 'Y'
2. With GapFillFlag = 'N'
对于1.接收方应忽略消息中的MsgSeq并对其进行处理.
For 1. the receiving party should IGNORE the MsgSeq in the message and just process it.
对于2.发送方,必须使MsgSeq等于BeginSeq,以便接收方不会再次要求您进行GapFill.
For 2. the sending party must make MsgSeq equal to BeginSeq so the receiving party will not ask for a GapFill again as you described.
根据修订规范:
这篇关于FIX:客户端要求GapFill,但我想发送一个SequenceReset代替.应该有什么顺序?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!