aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Eric Anderson <ejona@google.com>2016-04-29 13:55:18 -0700
committerGravatar Eric Anderson <ejona@google.com>2016-04-29 13:55:18 -0700
commit90b4a87d3ba78326d7ff523b3412684aa905670e (patch)
treee600796b03d116dabe01bca217be617ad7f86785
parentf921f2bee1e5a24f0259868ce0a622abfa24d331 (diff)
parent2a932daaafbec9874d9fb594419f68f9cb8f9187 (diff)
Merge pull request #6372 from ctiller/fail_fast
Spell out fail fast semantics
-rw-r--r--doc/fail_fast.md15
1 files changed, 15 insertions, 0 deletions
diff --git a/doc/fail_fast.md b/doc/fail_fast.md
new file mode 100644
index 0000000000..3ed4297194
--- /dev/null
+++ b/doc/fail_fast.md
@@ -0,0 +1,15 @@
+gRPC Fail Fast Semantics
+========================
+
+Fail fast requests allow terminating requests (with status UNAVAILABLE) prior
+to the deadline of the request being met.
+
+gRPC implementations of fail fast can terminate requests whenever a channel is
+in the TRANSIENT_FAILURE or SHUTDOWN states. If the channel is in any other
+state (CONNECTING, READY, or IDLE) the request should not be terminated.
+
+Fail fast SHOULD be the default for gRPC implementations, with an option to
+switch to non fail fast.
+
+The opposite of fail fast is 'ignore connectivity'.
+