Skip to content

Server should send a RECEIPT frame on a SEND that asks for one. #4

@jonathanstowe

Description

@jonathanstowe

I found this when testing the noddy server example against a JMS client library.

The client wasn't completing the sending because the RECEIPT from wasn't being received from the server (which then led me to believe there was a bug in the JMS code.)

RECEIPT is specified this:

RECEIPT
A RECEIPT frame is sent from the server to the client once a server has successfully processed a client frame that requests a receipt. A RECEIPT frame MUST include the header receipt-id, where the value is the value of the receipt header in the frame which this is a receipt for.

RECEIPT
receipt-id:message-12345

^@
A RECEIPT frame is an acknowledgment that the corresponding client frame has been processed by the server. Since STOMP is stream based, the receipt is also a cumulative acknowledgment that all the previous frames have been received by the server. However, these previous frames may not yet be fully processed. If the client disconnects, previously received frames SHOULD continue to get processed by the server.

For our purposes we can take "client frame has been processed by the server" to mean it has has successfully been parsed and placed on the messages supply.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions