Skip to content

Commit

Permalink
Change diagrams to svg format.
Browse files Browse the repository at this point in the history
  • Loading branch information
ncteisen committed Feb 22, 2017
1 parent 7bd985f commit 3b24372
Show file tree
Hide file tree
Showing 7 changed files with 9 additions and 3 deletions.
6 changes: 3 additions & 3 deletions A6.md
Original file line number Diff line number Diff line change
Expand Up @@ -192,15 +192,15 @@ There are five possible types of server responses. The list below enumerates the
1. Retry policy: Retry in *n* ms. If this attempt also fails, retry delay will reset to initial backoff for the following retry (if applicable)
2. Hedging policy: Send next hedged request in *n* ms. Subsequent hedged requests will resume at `n + hedgingDelayMs`

![State Diagram](A6_graphics/StateDiagram.png)
![State Diagram](A6_graphics/StateDiagram.svg)

### Retry Internals

#### Where Retries Occur

The retry policy will be implemented in-between the channel and the load balancing policy. That way every retry gets a chance to be sent out on a different subchannel than it originally failed on.

![Where Retries Occur](A6_graphics/WhereRetriesOccur.png)
![Where Retries Occur](A6_graphics/WhereRetriesOccur.svg)

#### When Retries are Valid

Expand Down Expand Up @@ -237,7 +237,7 @@ RPC failures can occur in three distinct ways:
2. The RPC reaches the server, but has never been seen by the server application logic.
3. The RPC is seen by the server application logic, and fails.

![Where RPCs Fail](A6_graphics/WhereRPCsFail.png)
![Where RPCs Fail](A6_graphics/WhereRPCsFail.svg)

The last case is handled by the configurable retry policy that is the main focus of this document. The first two cases are retried automatically by the gRPC client library, **regardless** of the retry configuration set by the service owner. We are able to do this because these request have not made it to the server application logic, and thus are always safe to retry.

Expand Down
Binary file removed A6_graphics/StateDiagram.png
Binary file not shown.
2 changes: 2 additions & 0 deletions A6_graphics/StateDiagram.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed A6_graphics/WhereRPCsFail.png
Binary file not shown.
2 changes: 2 additions & 0 deletions A6_graphics/WhereRPCsFail.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed A6_graphics/WhereRetriesOccur.png
Binary file not shown.
Loading

0 comments on commit 3b24372

Please sign in to comment.