Skip to content

Request retransmission when an out of order message is received before proceeding #75

@wbjohnston

Description

@wbjohnston

Requirements

  1. When a service receives a matchbook-message with a higher sequence number than expected from the matchbook network, it should recognize that a gap exists. It should send re-transmit requests for each message in the gap.
    example
    1. The matching-engine service receives a message with id = port:1.client1.1 (publisher_id = port:1, topic_id=client1, topic_sequence_number=1). This is the next sequence number it was expecting for this topic.
    2. It should proccess this message immediately
    3. The matching engine service recieves a message with id = port:1.client1.4 and recognize that a gap exists. The gap contains port:1.client1.2 and port:1.client1.3.
    4. The matching engine should not process these messages. Instead it should emit requests to retransmit messages with id = port:1.client1.2 and port:1.client1.3`.
    5. When the matching engine receives message with id = port:1.client1.2 it should immediately process it.
    6. When the matching engine recieves message with id = port:1.client1.3 it should immediately process it.
    7. The matching engine has now received all message in the gap, it should now process port:1.client1.4

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-feature-requestCategory: a feature request.E-hardCall for participation: Experience needed to fix: Hard / a lotM-matching-engineModule: matching-engineM-portModule: port

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions