Merge branch 'erikj/perspective_limiter' into release-v0.11.1

This commit is contained in:
Erik Johnston 2015-11-20 17:24:23 +00:00
commit 1b64cb019e
2 changed files with 21 additions and 22 deletions

View File

@ -381,11 +381,6 @@ class Keyring(object):
def get_server_verify_key_v2_indirect(self, server_names_and_key_ids, def get_server_verify_key_v2_indirect(self, server_names_and_key_ids,
perspective_name, perspective_name,
perspective_keys): perspective_keys):
limiter = yield get_retry_limiter(
perspective_name, self.clock, self.store
)
with limiter:
# TODO(mark): Set the minimum_valid_until_ts to that needed by # TODO(mark): Set the minimum_valid_until_ts to that needed by
# the events being validated or the current time if validating # the events being validated or the current time if validating
# an incoming request. # an incoming request.
@ -402,6 +397,7 @@ class Keyring(object):
for server_name, key_ids in server_names_and_key_ids for server_name, key_ids in server_names_and_key_ids
} }
}, },
long_retries=True,
) )
keys = {} keys = {}

View File

@ -302,7 +302,7 @@ class MatrixFederationHttpClient(object):
defer.returnValue(json.loads(body)) defer.returnValue(json.loads(body))
@defer.inlineCallbacks @defer.inlineCallbacks
def post_json(self, destination, path, data={}): def post_json(self, destination, path, data={}, long_retries=True):
""" Sends the specifed json data using POST """ Sends the specifed json data using POST
Args: Args:
@ -311,6 +311,8 @@ class MatrixFederationHttpClient(object):
path (str): The HTTP path. path (str): The HTTP path.
data (dict): A dict containing the data that will be used as data (dict): A dict containing the data that will be used as
the request body. This will be encoded as JSON. the request body. This will be encoded as JSON.
long_retries (bool): A boolean that indicates whether we should
retry for a short or long time.
Returns: Returns:
Deferred: Succeeds when we get a 2xx HTTP response. The result Deferred: Succeeds when we get a 2xx HTTP response. The result
@ -330,6 +332,7 @@ class MatrixFederationHttpClient(object):
path.encode("ascii"), path.encode("ascii"),
body_callback=body_callback, body_callback=body_callback,
headers_dict={"Content-Type": ["application/json"]}, headers_dict={"Content-Type": ["application/json"]},
long_retries=True,
) )
if 200 <= response.code < 300: if 200 <= response.code < 300: