Skip to content

RPC Retry & Timeout Support #216

@adhdtech

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?

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions