zerovm/zerocloud — pull request #103 by pkit (2014-07-23 14:12:21+00:00)
Title: rewrite timeout handling

the handling of timeouts was overly complex and had rather strange defaults
this patch simplifes the configuration for timeouts
now proxy middleware handles timeouts exclusively and `zerovm_timeout` value in object middleware is used only for validation purposes
now proxy middleware config supports `zerovm_timeout` as one of the config values
now `node_timeout` and `zerovm_timeout` are essentially the same, with `zerovm_timeout` being preferred if exists
there is a new hardcoded value `TIMEOUT_GRACE` which tries to gracefully shutdown the whole timeout chain to correctly get the results from lower levels
pseudocode:

with proxy.Timeout(timeout + TIMEOUT_GRACE * 2):
with object.Timeout(timeout + TIMEOUT_GRACE):
with zerovm.Timeout(timeout):
# run zerovm session

docs updated