Skip to content

Extension - Add support for RouterChannel request refreshing #186

Description

@huntharo

Motivations

  • In unlikely scenarios, the extension could get stuck open until there is a request sent from the router on each open channel, allowing the subsequent re-request to get a 409
  • These scenarios, while infrequent, could be very costly

Acceptance Criteria

  • Add support to the Extension for a status code that indicates "call me again"
    • This could be 204 No Content which would trigger the next request loop
    • Do not send this status code from the router until supported by the extension
    • When there are other users, this sort of change would need to have the Extension identify that it supports a particular feature when it connects - This can be done by setting a features header on the router channel request
  • Consider support to the Router for a 103 Early Hint with a Lambda-Dispatch-Control header that can ask for closing
  • Consider extracting the /api/chunked/close request into a location where it can be independently invoked on errors
    • This should attempt to establish a new connection for the request
    • If the connection fails, the channels should exit after:
      • A lengthy (20-30 seconds) timeout if there are requests in flight, unless the count drops to zero
      • A short (5 seconds) timeout if there are no requests in flight and no requests arrive during that timeout

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-extensionExtension portion of the app

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions