Skip to content

RPC Retry & Timeout Support #216

Description

@adhdtech

Add retry and timeout options to DRP_Endpoint.SendCmd. Now that DRP_CmdError is used as a standard error class, return codes can be evaluated to determine whether or not a retry should be attempted.

A retry can be initiated by any of these conditions:

  • Timeout expiring (execution of ServiceCmd starts timer)
  • Error Codes: 408, 500, 503, 504, 507

Error codes other than those listed should result in a normal response to the client. If the retry threshold is reached, the last error code will be returned to the caller.

Regarding errors kicked back locally:

  • An RPC call timeout should result in a 408.
  • An error sending the command to the endpoint (missing, etc) should result in a 500.

Decisions to make:

  • Should the timeout parameter be passed on to downstream calls?
  • Should the timeout parameter be added as a new attribute or as part of DRP_Cmd.params?

Activity

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

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions