PossResends vs PossDuplicates

Imported from previous forum

[ original email was from Pritam Kamat - pritam.kamat@trialius.com ]
Hi

Can someone clarify the difference between these two flags. My understanding of the fix spec seems to make one of these redundant. what are the use cases where one is set to Y and the other set to N.

thanks in advance

Pritam

PossDupFlag represents the same message with same MsgSeqNum being resent (i.e. in response to a ResendRequest). Session-level MsgSeqNum-only dupe checking takes place.

PossResend represents the same business content being resent with a different MsgSeqNum (i.e. sending a New Order Single with the same ClOrdID after a situation in which it was not clear that the counterparty received the first attempt). Business-level dupe checking takes place.

> Hi
>
> Can someone clarify the difference between these two flags. My understanding of the fix spec seems to make one of these redundant. what are the use cases where one is set to Y and the other set to N.
>
> thanks in advance
>
> Pritam
>
>

> Hi
>
> Can someone clarify the difference between these two flags. My understanding of the fix spec seems to make one of these redundant. what are the use cases where one is set to Y and the other set to N.
>
> thanks in advance
>
> Pritam
>
>

PossResend is when you are resending a message. PossDup is when you are sending a new message with data you sent in a previous message.

For example, with PossResend, I may send out an order with MsgSeqNum of 8. Then I send another message with a number of 9. For some reason the counterparty did not receive message 8 and will request a resend. I will then resend this same message with a sequence number of 8 and the PossResend flag set to 8.

With PossDup, I may send out an order, again let’s say with a sequence number of 8. After 5 seconds, I have not gotten an acknowledgement. So I may decide I want to try again because maybe the counterparty didn’t hear me the first time. So I will send out a message with a different sequence number like 9, which will contain all of the same data message number 8 did. I will then mark it as a PossDup. So this is saying I have sent this order before, which you may or may not have processed.

While handling of PossResends are dictated by session logic, while PossDups are dictated by buisiness logic. This is because it is up to the business layer to determine if a particular business object has been processed (by checking the order id for instance).

Ack. I reversed the meanings. Flip them and then it makes sense!

> > Hi
> >
> > Can someone clarify the difference between these two flags. My understanding of the fix spec seems to make one of these redundant. what are the use cases where one is set to Y and the other set to N.
> >
> > thanks in advance
> >
> > Pritam
> >
> >
>
> PossResend is when you are resending a message. PossDup is when you are sending a new message with data you sent in a previous message.
>
> For example, with PossResend, I may send out an order with MsgSeqNum of 8. Then I send another message with a number of 9. For some reason the counterparty did not receive message 8 and will request a resend. I will then resend this same message with a sequence number of 8 and the PossResend flag set to 8.
>
> With PossDup, I may send out an order, again let’s say with a sequence number of 8. After 5 seconds, I have not gotten an acknowledgement. So I may decide I want to try again because maybe the counterparty didn’t hear me the first time. So I will send out a message with a different sequence number like 9, which will contain all of the same data message number 8 did. I will then mark it as a PossDup. So this is saying I have sent this order before, which you may or may not have processed.
>
> While handling of PossResends are dictated by session logic, while PossDups are dictated by buisiness logic. This is because it is up to the business layer to determine if a particular business object has been processed (by checking the order id for instance).
>