Fix bug where we superfluously asked for current state. Change API of /query_auth/ so that we don't duplicate events in the response.

This commit is contained in:
Erik Johnston 2015-01-30 13:34:01 +00:00
parent 0adf3e5445
commit a70a801184
5 changed files with 43 additions and 49 deletions

View file

@ -252,11 +252,8 @@ class FederationServer(object):
e.get_pdu_json(time_now)
for e in ret["auth_chain"]
],
"rejects": content.get("rejects", []),
"missing": [
e.get_pdu_json(time_now)
for e in ret.get("missing", [])
],
"rejects": ret.get("rejects", []),
"missing": ret.get("missing", []),
}
defer.returnValue(
@ -372,7 +369,10 @@ class FederationServer(object):
logger.exception("Failed to get PDU")
fetch_state = True
else:
fetch_state = True
prevs = {e_id for e_id, _ in pdu.prev_events}
seen = set(have_seen.keys())
if prevs - seen:
fetch_state = True
else:
fetch_state = True