Does gapfill should cover all missing msgs

Imported from previous forum

I have a scenario where broker/exchange asks for a resend.
FIX42
scenario

  • Lets say broker is missing 4-10 messages and asks for resend.

  • client goes through the list and finds that messages 4-7 need not be send(whatever be the reason) instead send a gapfill message for them.

    Client has two options.

    option 1- it sends single gapfill message for 4-7 stating next sequence is 8. then sends messages 8-10 with dup flag.
    option 2- It sends messages 8-10 with dup flag. then sends a single gapfill message with seq 10 and nextseq to 11.

    if option-2 is viable then I would like to implement option-2.
    Please advise.
    ~Vimal

No, option 2 is not valid. A message with PosDupFlag does not ‘advance’ the counterparty’s next expected sequence number–that’s what the Sequence Reset - Gap Fill does.

I have a scenario where broker/exchange asks for a resend. FIX42
scenario

  • Lets say broker is missing 4-10 messages and asks for resend.

  • client goes through the list and finds that messages 4-7 need not be
    send(whatever be the reason) instead send a gapfill message for them.

    Client has two options.

    option 1- it sends single gapfill message for 4-7 stating next
    sequence is 8. then sends messages 8-10 with dup flag. option 2- It
    sends messages 8-10 with dup flag. then sends a single gapfill
    message with seq 10 and nextseq to 11.

    if option-2 is viable then I would like to implement option-2. Please
    advise. ~Vimal

No, option 2 is not valid. A message with PosDupFlag does not ‘advance’
the counterparty’s next expected sequence number–that’s what the
Sequence Reset - Gap Fill does.

I have a scenario where broker/exchange asks for a resend. FIX42
scenario

  • Lets say broker is missing 4-10 messages and asks for resend.

  • client goes through the list and finds that messages 4-7 need not
    be send(whatever be the reason) instead send a gapfill message
    for them.

    Client has two options.

    option 1- it sends single gapfill message for 4-7 stating next
    sequence is 8. then sends messages 8-10 with dup flag. option 2- It
    sends messages 8-10 with dup flag. then sends a single gapfill
    message with seq 10 and nextseq to 11.

    if option-2 is viable then I would like to implement option-2.
    Please advise. ~Vimal
    Actually, when the opposit party send you a resend request, they will adjust the expected incoming sequence number to the one (4). So, your resend message has to be starting with (4). If that is a application message, you need send it. Otherwise, you need to send a gapfill(4, 8). Next is message(8).

Good luck,
peng

Free Download FixExpress at A Person to Person Business Site

[ original email was from SENTHIL SUBRAMANIAM - sensubra@lehman.com ]
Option 2 is not valid, counter party never gets the expected seq num message with that. Gap fill message should be used in such cases.

I have a scenario where broker/exchange asks for a resend. FIX42
scenario

  • Lets say broker is missing 4-10 messages and asks for resend.

  • client goes through the list and finds that messages 4-7 need not be
    send(whatever be the reason) instead send a gapfill message for them.

    Client has two options.

    option 1- it sends single gapfill message for 4-7 stating next
    sequence is 8. then sends messages 8-10 with dup flag. option 2- It
    sends messages 8-10 with dup flag. then sends a single gapfill
    message with seq 10 and nextseq to 11.

    if option-2 is viable then I would like to implement option-2. Please
    advise. ~Vimal