Skip to content

Add handling and tests for Abort frames on serveraccept and server connect reply #47

@cmebarrow

Description

@cmebarrow

Possible cases and expected behavior are as follows. "connection is released from pool" means an END frame is sent on the client connect stream (if RESET was not already processed on it), and the pool "connectionsInUse" field is decremented. See #45 for the test cases for when it's been nukleus is acting as a client.

2. Nukleus is being used as a server

Case Expected behavior
ABORT is received from the application (server connect reply stream, after Begin and before End) before any response headers have been written ABORT is written to the network (server accept reply), RESET is written to server accept throttle
ABORT is received from the application (on client connect reply stream after Begin and before End) after response headers have been written ABORT is written to the network (server accept reply), RESET is written to server accept throttle
ABORT is received from the network (server accept) while the connection is idle ABORT is written to the network (server accept reply)
ABORT is received from the network (server accept) while request headers are being decoded ABORT is written to the network (server accept reply)
ABORT is received from the network (server accept) after high-level Begin (with request headers) has been written to the application but before the full request has been decoded ABORT is written to the network (server accept reply)
ABORT is received from the network (server accept) after the full request has been decoded and before any of the encoded response has been written ABORT is written to the network (server accept reply)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions