Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Factor out `event_from_pdu_json` | Richard van der Hoff | 2017-12-30 | 1 | -16/+9 |
| | | | | | turns out we have two copies of this, and neither needs to be an instance method | ||||
* | federation_server: clean up imports | Richard van der Hoff | 2017-12-30 | 1 | -14/+11 |
| | |||||
* | Do logcontexts outside ResponseCache | Erik Johnston | 2017-10-25 | 1 | -3/+5 |
| | |||||
* | Fix 500 error when we get an error handling a PDU | Richard van der Hoff | 2017-10-17 | 1 | -1/+0 |
| | | | | | | | | | | FederationServer doesn't have a send_failure (and nor does its subclass, ReplicationLayer), so this was failing. I'm not really sure what the idea behind send_failure is, given (a) we don't do anything at the other end with it except log it, and (b) we also send back the failure via the transaction response. I suspect there's a whole lot of dead code around it, but for now I'm just removing the broken bit. | ||||
* | Merge pull request #2529 from matrix-org/rav/fix_transaction_failure_handling | Richard van der Hoff | 2017-10-11 | 1 | -2/+3 |
|\ | | | | | log pdu_failures from incoming transactions | ||||
| * | log pdu_failures from incoming transactions | Richard van der Hoff | 2017-10-11 | 1 | -2/+3 |
| | | | | | | | | | | | | | | ... even if we have no EDUs. This appears to have been introduced in 476899295f5fd6cff64799bcbc84cd4bf9005e33. | ||||
* | | fed server: process PDUs for different rooms in parallel | Richard van der Hoff | 2017-10-09 | 1 | -19/+34 |
| | | | | | | | | | | With luck, this will give a real-time improvement when there are many rooms and the server ends up calling out to fetch missing events. | ||||
* | | Fed server: use a linearizer for ongoing transactions | Richard van der Hoff | 2017-10-09 | 1 | -1/+29 |
|/ | | | | | We don't want to process the same transaction multiple times concurrently, so use a linearizer. | ||||
* | fed server: refactor on_incoming_transaction | Richard van der Hoff | 2017-10-09 | 1 | -24/+29 |
| | | | | | Move as much as possible to after the have_responded check, and reduce the number of times we iterate over the pdu list. | ||||
* | Fed server: Move origin-check code to _handle_received_pdu | Richard van der Hoff | 2017-10-09 | 1 | -24/+24 |
| | | | | | | | The response-building code expects there to be an entry in the `results` list for each entry in the pdu_list, so the early `continue` was messing this up. That doesn't really matter, because all that the federation client does is log any errors, but it's pretty poor form. | ||||
* | Do some logging when one-time-keys get claimed | Richard van der Hoff | 2017-05-09 | 1 | -0/+10 |
| | | | | | might help us figure out if https://github.com/vector-im/riot-web/issues/3868 has happened. | ||||
* | Accept join events from all servers | Richard van der Hoff | 2017-04-03 | 1 | -2/+6 |
| | | | | | | | Make sure that we accept join events from any server, rather than just the origin server, to make the federation join dance work correctly. (Fixes #1893). | ||||
* | Move FederationServer._handle_new_pdu to FederationHandler | Richard van der Hoff | 2017-03-09 | 1 | -193/+1 |
| | | | | | | | | | | | Unfortunately this significantly increases the size of the already-rather-big FederationHandler, but the code fits more naturally here, and it paves the way for the tighter integration that I need between handling incoming PDUs and doing the join dance. Other than renaming the existing `FederationHandler.on_receive_pdu` to `_process_received_pdu` to make way for it, this just consists of the move, and replacing `self.handler` with `self` and `self` with `self.replication_layer`. | ||||
* | Move sig check out of _handle_new_pdu | Richard van der Hoff | 2017-03-09 | 1 | -12/+36 |
| | | | | | When we receive PDUs via `get_missing_events`, we have already checked their sigs, so there is no need to do it again. | ||||
* | Factor _get_missing_events_for_pdu out of _handle_new_pdu | Richard van der Hoff | 2017-03-09 | 1 | -62/+82 |
| | | | | | This should be functionally identical: it just seeks to improve readability by reducing indentation. | ||||
* | Implement device key caching over federation | Erik Johnston | 2017-01-26 | 1 | -0/+3 |
| | |||||
* | Name linearizer's for better logs | Erik Johnston | 2017-01-09 | 1 | -2/+2 |
| | |||||
* | do the discard check in the right place to avoid grabbing dependent events | Matthew | 2017-01-07 | 1 | -20/+20 |
| | |||||
* | Discard PDUs from invalid origins due to #1753 in 0.18.[56] v0.18.7-rc1 | Matthew | 2017-01-07 | 1 | -1/+23 |
| | |||||
* | fix comment | Matthew Hodgson | 2017-01-05 | 1 | -1/+17 |
| | |||||
* | limit total timeout for get_missing_events to 10s | Matthew Hodgson | 2017-01-05 | 1 | -0/+5 |
| | |||||
* | s/aquire/acquire/g | Mark Haines | 2016-12-30 | 1 | -2/+2 |
| | |||||
* | Add more useful logging when we block fetching events | Mark Haines | 2016-12-30 | 1 | -0/+9 |
| | |||||
* | Send device messages over federation | Mark Haines | 2016-09-06 | 1 | -1/+1 |
| | |||||
* | Only pull out IDs from DB for /state_ids/ request | Erik Johnston | 2016-09-02 | 1 | -6/+4 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/state_ids_api | Erik Johnston | 2016-08-04 | 1 | -19/+1 |
|\ | |||||
| * | Merge branch 'develop' into rav/refactor_device_query | Mark Haines | 2016-08-03 | 1 | -23/+47 |
| |\ | |||||
| * | | E2E keys: Make federation query share code with client query | Richard van der Hoff | 2016-08-02 | 1 | -19/+1 |
| | | | | | | | | | | | | | | | Refactor the e2e query handler to separate out the local query, and then make the federation handler use it. | ||||
* | | | Rename fields to _ids | Erik Johnston | 2016-08-03 | 1 | -2/+2 |
| | | | |||||
* | | | Fix copy + paste fails | Erik Johnston | 2016-08-03 | 1 | -1/+1 |
| | | | |||||
* | | | Add /state_ids federation API | Erik Johnston | 2016-08-03 | 1 | -0/+21 |
| |/ |/| | | | | | | | The new API only returns the event_ids for the state, as most requesters will already have the vast majority of the events already. | ||||
* | | Don't double wrap 200 | Erik Johnston | 2016-08-02 | 1 | -2/+2 |
| | | |||||
* | | Fix response cache | Erik Johnston | 2016-08-02 | 1 | -1/+1 |
| | | |||||
* | | Cache federation state responses | Erik Johnston | 2016-07-21 | 1 | -21/+45 |
|/ | |||||
* | Linearize some federation endpoints based on (origin, room_id) | Erik Johnston | 2016-06-17 | 1 | -66/+77 |
| | |||||
* | Only re-sign our own events | Erik Johnston | 2016-06-17 | 1 | -6/+9 |
| | |||||
* | Linearize fetching of gaps on incoming events | Erik Johnston | 2016-06-15 | 1 | -37/+51 |
| | | | | | This potentially stops the server from doing multiple requests for the same data. | ||||
* | Add some logging for when servers ask for missing events | Erik Johnston | 2016-06-08 | 1 | -0/+19 |
| | |||||
* | Add an openidish mechanism for proving to third parties that you own a given ↵ | Mark Haines | 2016-05-05 | 1 | -0/+5 |
| | | | | user_id | ||||
* | Remove unused backfilled parameter from persist_event | Mark Haines | 2016-03-21 | 1 | -1/+0 |
| | |||||
* | Catch exceptions from EDU handling | Erik Johnston | 2016-03-18 | 1 | -1/+6 |
| | |||||
* | Yield on EDU handling | Erik Johnston | 2016-03-18 | 1 | -3/+4 |
| | |||||
* | Allow third_party_signed to be specified on /join | Daniel Wagner-Hall | 2016-02-23 | 1 | -2/+13 |
| | |||||
* | Fix up logcontexts | Erik Johnston | 2016-02-08 | 1 | -3/+1 |
| | |||||
* | copyrights | Matthew Hodgson | 2016-01-07 | 1 | -1/+1 |
| | |||||
* | Exchange 3pid invites for m.room.member invites | Daniel Wagner-Hall | 2015-11-05 | 1 | -16/+15 |
| | |||||
* | Allow rejecting invites | Daniel Wagner-Hall | 2015-10-20 | 1 | -0/+14 |
| | | | | | This is done by using the same /leave flow as you would use if you had already accepted the invite and wanted to leave. | ||||
* | Remove unnecessary class-wrapping | Daniel Wagner-Hall | 2015-10-13 | 1 | -3/+3 |
| | |||||
* | Implement third party identifier invites | Daniel Wagner-Hall | 2015-10-01 | 1 | -3/+16 |
| | |||||
* | Add a few strategic new lines to break up the on_query_client_keys and ↵ | Mark Haines | 2015-08-13 | 1 | -0/+6 |
| | | | | on_claim_client_keys methods in federation_server.py | ||||
* | Add federation support for end-to-end key requests | Mark Haines | 2015-07-23 | 1 | -0/+37 |
| | |||||
* | Change the way we do logging contexts so that they survive divergences | Erik Johnston | 2015-05-08 | 1 | -24/+22 |
| | |||||
* | Split a storage function in two so that we don't have to do extra work. | Erik Johnston | 2015-05-01 | 1 | -2/+2 |
| | |||||
* | Replace the @metrics.counted annotations in federation with ↵ | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -12/+14 |
| | | | | specifically-written counters and distributions | ||||
* | Initial attempt at sprinkling some @metrics.counted decorations around the ↵ | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -0/+14 |
| | | | | federation code | ||||
* | Docs | Erik Johnston | 2015-03-05 | 1 | -0/+2 |
| | |||||
* | Handle if get_missing_pdu returns 400 or not all events. | Erik Johnston | 2015-03-05 | 1 | -2/+4 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into batched_get_pdu | Erik Johnston | 2015-03-02 | 1 | -28/+13 |
|\ | |||||
| * | If we're yielding don't add errback | Erik Johnston | 2015-03-02 | 1 | -7/+3 |
| | | |||||
| * | Process transactions serially. | Erik Johnston | 2015-03-02 | 1 | -14/+10 |
| | | | | | | | | | | | | Since the events received in a transaction are ordered, later events might depend on earlier events and so we shouldn't blindly process them in parellel. | ||||
* | | Implement and use new batched get missing pdu | Erik Johnston | 2015-02-23 | 1 | -99/+51 |
| | | |||||
* | | Initial stab at implementing a batched get_missing_pdus request | Erik Johnston | 2015-02-19 | 1 | -0/+72 |
|/ | |||||
* | Remove debug raise | Erik Johnston | 2015-02-17 | 1 | -7/+0 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into failures | Erik Johnston | 2015-02-17 | 1 | -5/+8 |
|\ | |||||
| * | Mark old events as outliers. | Erik Johnston | 2015-02-16 | 1 | -1/+7 |
| | | | | | | | | | | | | | | | | | | This is to fix the issue where if a remote server sends an event that references a really "old" event, then the local server will pull that in and send to all clients. We decide if an event is old if its depth is less than the minimum depth of the room. | ||||
| * | Don't return anything from _handle_new_pdu, since we ignore the return value ↵ | Erik Johnston | 2015-02-16 | 1 | -4/+1 |
| | | | | | | | | anyway | ||||
* | | Format the response of transaction request in a nicer way | Erik Johnston | 2015-02-17 | 1 | -4/+15 |
| | | |||||
* | | Actually respond with JSON to incoming transaction | Erik Johnston | 2015-02-17 | 1 | -0/+2 |
| | | |||||
* | | Handle recieving failures in transactions | Erik Johnston | 2015-02-17 | 1 | -1/+12 |
| | | |||||
* | | Use consumeErrors=True on all DeferredLists. | Erik Johnston | 2015-02-17 | 1 | -1/+1 |
|/ | | | | | | This is so that the DeferredLists actually consume the error instead of propogating down the non-existent errback chain. This should reduce the number of unhandled errors we are seeing. | ||||
* | Correctly handle all the places that can throw exceptions | Erik Johnston | 2015-02-12 | 1 | -3/+6 |
| | |||||
* | Sign auth_chains when returned by /state/ requests | Erik Johnston | 2015-02-10 | 1 | -0/+11 |
| | |||||
* | Remove unused imports | Erik Johnston | 2015-02-03 | 1 | -5/+0 |
| | |||||
* | Keep around the old (buggy) version of the prune_event function so that we ↵ | Erik Johnston | 2015-02-03 | 1 | -41/+11 |
| | | | | can use it to check signatures for events on old servers | ||||
* | Briefly doc structure of query_auth API. | Erik Johnston | 2015-01-30 | 1 | -0/+18 |
| | |||||
* | Fix bug where we superfluously asked for current state. Change API of ↵ | Erik Johnston | 2015-01-30 | 1 | -6/+6 |
| | | | | /query_auth/ so that we don't duplicate events in the response. | ||||
* | Fix regression where we no longer correctly handled the case of gaps in our ↵ | Erik Johnston | 2015-01-30 | 1 | -0/+3 |
| | | | | event graph | ||||
* | Initial implementation of auth conflict resolution | Erik Johnston | 2015-01-29 | 1 | -0/+33 |
| | |||||
* | Make it the responsibility of the replication layer to check signature and ↵ | Erik Johnston | 2015-01-26 | 1 | -13/+76 |
| | | | | hashes. | ||||
* | Split up replication_layer module into client, server and transaction queue | Erik Johnston | 2015-01-26 | 1 | -0/+345 |