Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Fixed line length | Nathan Pennie | 2018-12-19 | 1 | -1/+5 |
| | |||||
* | Fix the variable names used for account_data | Nathan Pennie | 2018-12-19 | 1 | -3/+3 |
| | |||||
* | Refactor state group lookup to reduce DB hits (#4011) | Erik Johnston | 2018-10-25 | 1 | -54/+43 |
| | | | | | | | | Currently when fetching state groups from the data store we make two hits two the database: once for members and once for non-members (unless request is filtered to one or the other). This adds needless load to the datbase, so this PR refactors the lookup to make only a single database hit. | ||||
* | Add description to counter metric | Erik Johnston | 2018-10-10 | 1 | -1/+5 |
| | |||||
* | Track number of non-empty sync responses instead | Erik Johnston | 2018-10-10 | 1 | -9/+15 |
| | |||||
* | Append _total to metric and fix up spelling | Erik Johnston | 2018-10-10 | 1 | -2/+2 |
| | |||||
* | Add metric to count lazy member sync requests | Erik Johnston | 2018-10-09 | 1 | -6/+20 |
| | |||||
* | Fix lazy loaded sync with rejected state events | Erik Johnston | 2018-10-01 | 1 | -2/+2 |
| | | | | | | | | In particular, we assume that the name and canonical alias events in the state have not been rejected. In practice this may not be the case (though we should probably think about fixing that) so lets ensure that we gracefully handle that case, rather than 404'ing the sync request like we do now. | ||||
* | Only lazy load self-members on initial sync | Matthew Hodgson | 2018-09-25 | 1 | -5/+8 |
| | | | Given we have disabled lazy loading for incr syncs in #3840, we can make self-LL more efficient by only doing it on initial sync. Also adds a bounds check for if/when we change our mind, so that we don't try to include LL members on sync responses with no timeline. | ||||
* | Always LL ourselves if we're in a room to simplify clients (#3916) | Matthew Hodgson | 2018-09-20 | 1 | -0/+4 |
| | | | | Should fix https://github.com/vector-im/riot-web/issues/7209 | ||||
* | show heroes if a room has a 'deleted' name/canonical_alias (#3851) | Matthew Hodgson | 2018-09-12 | 1 | -2/+15 |
| | |||||
* | argh pep8 | Matthew Hodgson | 2018-09-12 | 1 | -1/+1 |
| | |||||
* | correctly log gappy sync metrics | Matthew Hodgson | 2018-09-12 | 1 | -1/+1 |
| | |||||
* | fix logline | Matthew Hodgson | 2018-09-12 | 1 | -1/+1 |
| | |||||
* | Speed up lazy loading (#3827) | Matthew Hodgson | 2018-09-12 | 1 | -30/+88 |
| | | | | | * speed up room summaries by pulling their data from room_memberships rather than room state * disable LL for incr syncs, and log incr sync stats (#3840) | ||||
* | Don't send empty tags list down sync | Erik Johnston | 2018-09-06 | 1 | -0/+5 |
| | |||||
* | Send existing room tags down sync on join | Erik Johnston | 2018-09-06 | 1 | -0/+8 |
| | | | | | | | | When a user joined a room any existing tags were not sent down the sync stream. Ordinarily this isn't a problem because the user needs to be in the room to have set tags in it, however synapse will sometimes add tags for a user to a room, e.g. for server notices, which need to come down sync. | ||||
* | Merge pull request #3795 from matrix-org/erikj/faster_sync_state | Amber Brown | 2018-09-07 | 1 | -8/+8 |
|\ | | | | | User iter* during sync state calculations | ||||
| * | User iter* during sync state calculations | Erik Johnston | 2018-09-05 | 1 | -8/+8 |
| | | |||||
* | | Port handlers/ to Python 3 (#3803) | Amber Brown | 2018-09-07 | 1 | -3/+3 |
|/ | |||||
* | don't return non-LL-member state in incremental sync state blocks (#3760) | Matthew Hodgson | 2018-08-28 | 1 | -1/+8 |
| | | | don't return non-LL-member state in incremental sync state blocks | ||||
* | Integrate presence from hotfixes (#3694) | Amber Brown | 2018-08-18 | 1 | -1/+2 |
| | |||||
* | initial cut at a room summary API (#3574) | Matthew Hodgson | 2018-08-16 | 1 | -10/+149 |
| | |||||
* | Merge pull request #3670 from matrix-org/neilj/mau_sync_block | Neil Johnson | 2018-08-14 | 1 | -2/+11 |
|\ | | | | | Block ability to read via sync if mau limit exceeded | ||||
| * | only block on sync where user is not part of the mau cohort | Neil Johnson | 2018-08-09 | 1 | -1/+6 |
| | | |||||
| * | block sync if auth checks fail | Neil Johnson | 2018-08-09 | 1 | -7/+5 |
| | | |||||
| * | sync auth blocking | Neil Johnson | 2018-08-08 | 1 | -5/+11 |
| | | |||||
* | | Rename async to async_helpers because `async` is a keyword on Python 3.7 (#3678) | Amber Brown | 2018-08-10 | 1 | -1/+1 |
|/ | |||||
* | Deduplicate redundant lazy-loaded members (#3331) | Matthew Hodgson | 2018-07-26 | 1 | -25/+62 |
| | | | | | | | | | | | | | | | | | | | | * attempt at deduplicating lazy-loaded members as per the proposal; we can deduplicate redundant lazy-loaded members which are sent in the same sync sequence. we do this heuristically rather than requiring the client to somehow tell us which members it has chosen to cache, by instead caching the last N members sent to a client, and not sending them again. For now we hardcode N to 100. Each cache for a given (user,device) tuple is in turn cached for up to X minutes (to avoid the caches building up). For now we hardcode X to 30. * add include_redundant_members filter option & make it work * remove stale todo * add tests for _get_some_state_from_cache * incorporate review | ||||
* | clarify comment on p_ids | Matthew Hodgson | 2018-07-24 | 1 | -1/+2 |
| | |||||
* | rather than adding ll_ids, remove them from p_ids | Matthew Hodgson | 2018-07-24 | 1 | -5/+6 |
| | |||||
* | incorporate more review | Matthew Hodgson | 2018-07-24 | 1 | -3/+9 |
| | |||||
* | incorporate review | Matthew Hodgson | 2018-07-23 | 1 | -40/+27 |
| | |||||
* | incorporate review | Matthew Hodgson | 2018-07-19 | 1 | -17/+27 |
| | |||||
* | add a filtered_types param to limit filtering to specific types | Matthew Hodgson | 2018-07-19 | 1 | -29/+36 |
| | |||||
* | merge develop pydoc for _get_state_for_groups | Matthew Hodgson | 2018-07-19 | 1 | -13/+13 |
|\ | |||||
| * | run isort | Amber Brown | 2018-07-09 | 1 | -12/+12 |
| | | |||||
| * | typo | Matthew Hodgson | 2018-06-25 | 1 | -1/+1 |
| | | |||||
* | | Merge branch 'develop' into matthew/filter_members | Matthew Hodgson | 2018-06-04 | 1 | -4/+14 |
|\| | |||||
| * | Consistently use six's iteritems and wrap lazy keys/values in list() if ↵ | Amber Brown | 2018-05-31 | 1 | -3/+3 |
| | | | | | | | | they're not meant to be lazy (#3307) | ||||
| * | Update some comments and docstrings in SyncHandler | Richard van der Hoff | 2018-05-29 | 1 | -1/+11 |
| | | |||||
* | | more comments | Matthew Hodgson | 2018-06-04 | 1 | -0/+7 |
| | | |||||
* | | add pydoc | Matthew Hodgson | 2018-05-29 | 1 | -5/+13 |
| | | |||||
* | | merge develop | Matthew Hodgson | 2018-05-29 | 1 | -24/+41 |
|\| | |||||
| * | replace some iteritems with six | Adrian Tschira | 2018-05-19 | 1 | -6/+8 |
| | | | | | | | | Signed-off-by: Adrian Tschira <nota@notafile.com> | ||||
| * | Add comment to sync as to why code path is split | Erik Johnston | 2018-05-09 | 1 | -0/+5 |
| | | |||||
| * | Refactor sync APIs to reuse pagination API | Erik Johnston | 2018-05-09 | 1 | -6/+13 |
| | | | | | | | | | | | | The sync API often returns events in a topological rather than stream ordering, e.g. when the user joined the room or on initial sync. When this happens we can reuse existing pagination storage functions. | ||||
| * | Refactor get_recent_events_for_room return type | Erik Johnston | 2018-05-09 | 1 | -1/+1 |
| | | | | | | | | | | | | There is no reason to return a tuple of tokens when the last token is always the token passed as an argument. Changing it makes it consistent with other storage APIs | ||||
| * | Merge pull request #3107 from NotAFile/py3-bool-nonzero | Richard van der Hoff | 2018-04-20 | 1 | -0/+7 |
| |\ | | | | | | | add __bool__ alias to __nonzero__ methods | ||||
| | * | add __bool__ alias to __nonzero__ methods | Adrian Tschira | 2018-04-15 | 1 | -0/+7 |
| | | | | | | | | | | | | Signed-off-by: Adrian Tschira <nota@notafile.com> | ||||
| * | | Refactor ResponseCache usage | Richard van der Hoff | 2018-04-12 | 1 | -10/+6 |
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds a `.wrap` method to ResponseCache which wraps up the boilerplate of a (get, set) pair, and then use it throughout the codebase. This will be largely non-functional, but does include the following functional changes: * federation_server.on_context_state_request: drops use of _server_linearizer which looked redundant and could cause incorrect cache misses by yielding between the get and the set. * RoomListHandler.get_remote_public_room_list(): fixes logcontext leaks * the wrap function includes some logging. I'm hoping this won't be too noisy on production. | ||||
| * | Add metrics for ResponseCache | Richard van der Hoff | 2018-04-10 | 1 | -1/+1 |
| | | |||||
* | | make lazy_load_members configurable in filters | Matthew Hodgson | 2018-03-19 | 1 | -9/+9 |
| | | |||||
* | | reshuffle todo & comments | Matthew Hodgson | 2018-03-19 | 1 | -2/+10 |
| | | |||||
* | | only get member state IDs for incremental syncs if we're filtering | Matthew Hodgson | 2018-03-18 | 1 | -5/+5 |
| | | |||||
* | | remove debug | Matthew Hodgson | 2018-03-16 | 1 | -4/+0 |
| | | |||||
* | | fix tsm search again | Matthew Hodgson | 2018-03-16 | 1 | -5/+4 |
| | | |||||
* | | add state_ids for timeline entries | Matthew Hodgson | 2018-03-16 | 1 | -4/+14 |
| | | |||||
* | | simplify timeline_start_members | Matthew Hodgson | 2018-03-16 | 1 | -14/+13 |
| | | |||||
* | | make incr syncs work | Matthew Hodgson | 2018-03-16 | 1 | -3/+4 |
| | | |||||
* | | add copyright to nudge CI | Matthew Hodgson | 2018-03-14 | 1 | -1/+2 |
| | | |||||
* | | oops | Matthew Hodgson | 2018-03-13 | 1 | -1/+1 |
| | | |||||
* | | make it work | Matthew Hodgson | 2018-03-13 | 1 | -3/+3 |
| | | |||||
* | | ensure we always include the members for a given timeline block | Matthew Hodgson | 2018-03-13 | 1 | -4/+32 |
| | | |||||
* | | typos | Matthew Hodgson | 2018-03-11 | 1 | -2/+2 |
| | | |||||
* | | WIP experiment in lazyloading room members | Matthew Hodgson | 2018-03-11 | 1 | -12/+31 |
|/ | |||||
* | Fix up log message | Erik Johnston | 2018-03-07 | 1 | -1/+1 |
| | |||||
* | Fix typo | Erik Johnston | 2018-03-07 | 1 | -2/+2 |
| | |||||
* | Fix race in sync when joining room | Erik Johnston | 2018-03-07 | 1 | -28/+75 |
| | | | | | | | | | | | The race happens when the user joins a room at the same time as doing a sync. We fetch the current token and then get the rooms the user is in. If the join happens after the current token, but before we get the rooms we end up sending down a partial room entry in the sync. This is fixed by looking at the stream ordering of the membership returned by get_rooms_for_user, and handling the case when that stream ordering is after the current token. | ||||
* | Remove ability for AS users to call /events and /sync | Erik Johnston | 2018-03-05 | 1 | -4/+6 |
| | | | | | | | This functionality has been deprecated for a while as well as being broken for a while. Instead of fixing it lets just remove it entirely. See: https://github.com/matrix-org/matrix-doc/issues/1144 | ||||
* | Do logcontexts outside ResponseCache | Erik Johnston | 2017-10-25 | 1 | -3/+3 |
| | |||||
* | Merge branch 'develop' into erikj/groups_merged | David Baker | 2017-10-02 | 1 | -7/+32 |
|\ | |||||
| * | Refactor to speed up incremental syncs | Erik Johnston | 2017-09-25 | 1 | -5/+18 |
| | | |||||
| * | Fix device list when rejoining room (#2461) | Erik Johnston | 2017-09-22 | 1 | -2/+14 |
| | | |||||
* | | Ensure that creator of group sees group down /sync | Erik Johnston | 2017-09-19 | 1 | -0/+1 |
| | | |||||
* | | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/groups_merged | Erik Johnston | 2017-09-19 | 1 | -21/+105 |
|\| | |||||
| * | Don't filter out current state events from timeline | Erik Johnston | 2017-09-18 | 1 | -0/+7 |
| | | |||||
| * | Actually hook leave notifs up | Erik Johnston | 2017-09-14 | 1 | -2/+3 |
| | | |||||
| * | Get left rooms | Erik Johnston | 2017-09-13 | 1 | -3/+32 |
| | | |||||
| * | In sync handle device lists for newly joined/left rooms | Erik Johnston | 2017-09-12 | 1 | -2/+10 |
| | | |||||
| * | Add left section to /keys/changes | Erik Johnston | 2017-09-08 | 1 | -1/+1 |
| | | |||||
| * | Send down device list change notif when member leaves/rejoins room | Erik Johnston | 2017-09-07 | 1 | -12/+52 |
| | | |||||
| * | Use less DB for device list handling in sync | Erik Johnston | 2017-07-12 | 1 | -8/+7 |
| | | |||||
* | | Correctly add joins to correct segment | Erik Johnston | 2017-07-24 | 1 | -1/+1 |
| | | |||||
* | | Remember to cast to bool | Erik Johnston | 2017-07-20 | 1 | -1/+1 |
| | | |||||
* | | Add groups to sync stream | Erik Johnston | 2017-07-20 | 1 | -1/+63 |
|/ | |||||
* | Add count of one time keys to sync stream | Erik Johnston | 2017-05-19 | 1 | -0/+11 |
| | |||||
* | Comments | Erik Johnston | 2017-03-16 | 1 | -2/+2 |
| | |||||
* | Comment | Erik Johnston | 2017-03-16 | 1 | -3/+8 |
| | |||||
* | Don't recreate so many sets | Erik Johnston | 2017-03-16 | 1 | -11/+7 |
| | |||||
* | Implement no op for room stream in sync | Erik Johnston | 2017-03-16 | 1 | -4/+47 |
| | |||||
* | Format presence events on the edges instead of reformatting them multiple times | Erik Johnston | 2017-03-15 | 1 | -7/+7 |
| | |||||
* | Noop repated delete device inbox calls from /sync | Erik Johnston | 2017-03-10 | 1 | -3/+3 |
| | |||||
* | Measure new device list stuff | Erik Johnston | 2017-02-02 | 1 | -1/+2 |
| | |||||
* | Wake sync up for device changes | Erik Johnston | 2017-02-01 | 1 | -1/+2 |
| | |||||
* | Hook device list updates to replication | Erik Johnston | 2017-01-27 | 1 | -10/+25 |
| | |||||
* | Add basic implementation of local device list changes | Erik Johnston | 2017-01-25 | 1 | -0/+13 |
| | |||||
* | Add some logging for syncing to_device events | Richard van der Hoff | 2016-12-15 | 1 | -4/+8 |
| | | | | | Attempt to track down the loss of to_device events (https://github.com/vector-im/riot-web/issues/2711 etc). | ||||
* | Fix rare notifier bug where listeners dont timeout | Erik Johnston | 2016-12-09 | 1 | -0/+1 |
| | | | | | | There was a race condition that caused the notifier to 'miss' the timeout notification, since there were no other checks for the timeout this caused listeners to get stuck in a loop until something happened. | ||||
* | Return early on /sync code paths if a '*' filter is used | Kegan Dougal | 2016-11-22 | 1 | -9/+22 |
| | | | | | | | | This is currently very conservative in that it only does this if there is no `since` token. This limits the risk to clients likely to be doing one-off syncs (like bridges), but does mean that normal human clients won't benefit from the time savings here. If the savings are large enough, I would consider generalising this to just check the filter. | ||||
* | storage/appservice: make appservice methods only relying on the cache ↵ | Patrik Oldsberg | 2016-10-06 | 1 | -1/+1 |
| | | | | synchronous | ||||
* | Only return new device messages in /sync | Mark Haines | 2016-09-02 | 1 | -1/+1 |
| | |||||
* | Comment about message deletion | Erik Johnston | 2016-08-30 | 1 | -0/+3 |
| | |||||
* | Fix check | Erik Johnston | 2016-08-30 | 1 | -2/+1 |
| | |||||
* | Noop get_new_messages_for_device if token hasn't changed | Erik Johnston | 2016-08-30 | 1 | -9/+12 |
| | |||||
* | Merge pull request #1049 from matrix-org/erikj/presence_users_in_room | Erik Johnston | 2016-08-30 | 1 | -1/+2 |
|\ | | | | | Use state handler instead of get_users_in_room/get_joined_hosts | ||||
| * | Use state handler instead of get_users_in_room/get_joined_hosts | Erik Johnston | 2016-08-26 | 1 | -1/+2 |
| | | |||||
* | | Merge remote-tracking branch 'origin/develop' into markjh/direct_to_device | Mark Haines | 2016-08-26 | 1 | -34/+41 |
|\| | |||||
| * | Make sync not pull out full state | Erik Johnston | 2016-08-25 | 1 | -34/+41 |
| | | |||||
* | | Add store-and-forward direct-to-device messaging | Mark Haines | 2016-08-25 | 1 | -1/+42 |
|/ | |||||
* | defer.returnValue must not be called within Measure | Erik Johnston | 2016-08-19 | 1 | -7/+7 |
| | |||||
* | Cache federation state responses | Erik Johnston | 2016-07-21 | 1 | -1/+1 |
| | |||||
* | Load push rules in storage layer, so that they get cached | Erik Johnston | 2016-06-03 | 1 | -3/+2 |
| | |||||
* | Deduplicate presence entries in sync (#818) | Mark Haines | 2016-06-02 | 1 | -0/+3 |
| | |||||
* | Change short circuit path | Erik Johnston | 2016-05-24 | 1 | -16/+26 |
| | |||||
* | Don't send down all ephemeral events | Erik Johnston | 2016-05-24 | 1 | -1/+3 |
| | |||||
* | Only work out newly_joined_users for incremental sync | Erik Johnston | 2016-05-24 | 1 | -6/+9 |
| | |||||
* | Only include non-offline presence in initial sync | Erik Johnston | 2016-05-24 | 1 | -0/+3 |
| | |||||
* | Spell builder correctly | Erik Johnston | 2016-05-24 | 1 | -63/+63 |
| | |||||
* | Inline function. Make load_filtered_recents private | Erik Johnston | 2016-05-24 | 1 | -17/+7 |
| | |||||
* | Add comments | Erik Johnston | 2016-05-24 | 1 | -7/+105 |
| | |||||
* | Shuffle things room | Erik Johnston | 2016-05-24 | 1 | -37/+33 |
| | |||||
* | Add back concurrently_execute | Erik Johnston | 2016-05-23 | 1 | -25/+9 |
| | |||||
* | Refactor SyncHandler | Erik Johnston | 2016-05-23 | 1 | -497/+481 |
| | |||||
* | Move SyncHandler out of the Handlers object | Mark Haines | 2016-05-16 | 1 | -5/+5 |
| | |||||
* | Merge branch 'markjh/liberate_presence_handler' into ↵ | Mark Haines | 2016-05-16 | 1 | -1/+1 |
|\ | | | | | | | markjh/liberate_sync_handler | ||||
| * | Move the presence handler out of the Handlers object | Mark Haines | 2016-05-16 | 1 | -1/+1 |
| | | |||||
* | | Remove get_joined_rooms_for_user from RoomMemberHandler | Mark Haines | 2016-05-16 | 1 | -3/+3 |
|/ | |||||
* | move filter_events_for_client out of base handler | Mark Haines | 2016-05-11 | 1 | -2/+5 |
| | |||||
* | Merge pull request #759 from matrix-org/dbkr/email_notifs | Matthew Hodgson | 2016-05-10 | 1 | -2/+2 |
|\ | | | | | Send email notifications for missed messages | ||||
| * | Run filter_events_for_client | David Baker | 2016-04-27 | 1 | -2/+2 |
| | | | | | | | | so we don't accidentally mail out events people shouldn't see | ||||
* | | Add bulk fetch storage API | Erik Johnston | 2016-05-05 | 1 | -1/+1 |
| | | |||||
* | | Implement basic ignore user | Erik Johnston | 2016-05-04 | 1 | -3/+19 |
|/ | |||||
* | Merge pull request #686 from matrix-org/markjh/doc_strings | Mark Haines | 2016-04-01 | 1 | -18/+31 |
|\ | | | | | Use google style doc strings. | ||||
| * | Use google style doc strings. | Mark Haines | 2016-04-01 | 1 | -18/+31 |
| | | | | | | | | | | | | | | pycharm supports them so there is no need to use the other format. Might as well convert the existing strings to reduce the risk of people accidentally cargo culting the wrong doc string format. | ||||
* | | Add concurrently_execute function | Erik Johnston | 2016-04-01 | 1 | -56/+42 |
| | | |||||
* | | Filter rooms list before chunking | Erik Johnston | 2016-04-01 | 1 | -6/+12 |
|/ | |||||
* | Deduplicate identical /sync requests | Mark Haines | 2016-03-24 | 1 | -1/+15 |
| | |||||
* | Merge pull request #618 from matrix-org/markjh/pushrule_stream | Mark Haines | 2016-03-04 | 1 | -0/+22 |
|\ | | | | | Add a stream for push rule updates | ||||
| * | Hook up the push rules stream to account_data in /sync | Mark Haines | 2016-03-04 | 1 | -0/+22 |
| | | |||||
* | | Always include kicks and bans in full /sync | Erik Johnston | 2016-03-04 | 1 | -3/+9 |
|/ | |||||
* | handlers/sync: style fix, line too long | Patrik Oldsberg | 2016-02-23 | 1 | -1/+5 |
| | | | | Signed-off-by: Patrik Oldsberg <patrik.oldsberg@ericsson.com> | ||||
* | handlers/sync: fix SyncResult not counting account_data change when ↵ | Patrik Oldsberg | 2016-02-23 | 1 | -1/+1 |
| | | | | | | | | converting to bool This fixes account_data events not triggering an immediate /sync response Signed-off-by: Patrik Oldsberg <patrik.oldsberg@ericsson.com> | ||||
* | Merge pull request #587 from matrix-org/rav/guest_access_after_room_join | Richard van der Hoff | 2016-02-22 | 1 | -2/+0 |
|\ | | | | | Allow guest users access to messages in rooms they have joined | ||||
| * | Merge branch 'develop' into rav/guest_access_after_room_join | Richard van der Hoff | 2016-02-19 | 1 | -5/+34 |
| |\ | |||||
| * | | Allow guest users access to messages in rooms they have joined | Richard van der Hoff | 2016-02-19 | 1 | -2/+0 |
| | | | | | | | | | | | | | | | | | | | | | There should be no difference between guest users and non-guest users in terms of access to messages. Define the semantics of the is_peeking argument to filter_events_for_clients (slightly) better; interpret it appropriately, and set it correctly from /sync. | ||||
* | | | Remove superfluous call to get_state_at when we already have an event for ↵ | Erik Johnston | 2016-02-22 | 1 | -4/+12 |
| |/ |/| | | | | | that stream position | ||||
* | | Merge pull request #582 from matrix-org/erikj/presence | Erik Johnston | 2016-02-19 | 1 | -0/+22 |
|\ \ | | | | | | | Rewrite presence for performance. | ||||
| * | | Initial cut | Erik Johnston | 2016-02-17 | 1 | -0/+22 |
| |/ | |||||
* / | Mitigate against incorrect old state in /sync. | Erik Johnston | 2016-02-12 | 1 | -5/+12 |
|/ | | | | | | | | There have been reports from the field that servers occasionally have incorrect notions of what the old state of a room is. This proves problematic as /sync relies on a correct old state. This patch makes /sync specifically include in the 'state' key any current state events that haven't been correctly included. | ||||
* | Use _simple_select_many for _get_state_group_for_events | Erik Johnston | 2016-02-10 | 1 | -1/+1 |
| | |||||
* | Only calculate initial sync for 10 rooms at a time | Erik Johnston | 2016-02-10 | 1 | -24/+29 |
| | | | | This helps to ensure we don't completely starve other requests. | ||||
* | Remove dead code | Erik Johnston | 2016-02-09 | 1 | -12/+0 |
| | |||||
* | Don't load all ephemeral state for a room on every sync | Erik Johnston | 2016-02-09 | 1 | -14/+6 |
| | |||||
* | Fix unit tests | Erik Johnston | 2016-02-09 | 1 | -1/+4 |
| | |||||
* | Measure some /sync related things | Erik Johnston | 2016-02-09 | 1 | -140/+149 |
| | |||||
* | Fix up logcontexts | Erik Johnston | 2016-02-08 | 1 | -19/+21 |
| | |||||
* | Merge pull request #555 from matrix-org/erikj/logcontext | Erik Johnston | 2016-02-03 | 1 | -0/+10 |
|\ | | | | | Allowing tagging log contexts | ||||
| * | Allowing tagging log contexts | Erik Johnston | 2016-02-03 | 1 | -0/+10 |
| | | |||||
* | | Change event_push_actions_rm_tokens schema | Erik Johnston | 2016-02-03 | 1 | -4/+2 |
|/ | |||||
* | s/get_room_changes_for_user/get_membership_changes_for_user/ | Erik Johnston | 2016-02-02 | 1 | -1/+1 |
| | |||||
* | Comments | Erik Johnston | 2016-02-01 | 1 | -5/+6 |
| | |||||
* | Move state calculations from rest to handler | Erik Johnston | 2016-02-01 | 1 | -66/+98 |
| | |||||
* | Don't work out unread_notifs_for_room_id unless needed | Erik Johnston | 2016-01-29 | 1 | -11/+12 |
| | |||||
* | Change load limit params | Erik Johnston | 2016-01-28 | 1 | -2/+2 |
| | |||||
* | Amalgamate incremental and full sync for user | Erik Johnston | 2016-01-28 | 1 | -40/+16 |
| | |||||
* | Use the same path for incremental with gap or without gap | Erik Johnston | 2016-01-27 | 1 | -208/+144 |
| | |||||
* | Add cache to room stream | Erik Johnston | 2016-01-27 | 1 | -12/+30 |
| | |||||
* | PEP8 | Erik Johnston | 2016-01-25 | 1 | -1/+0 |
| | |||||
* | Remove weird stuff | Erik Johnston | 2016-01-25 | 1 | -6/+0 |
| | |||||
* | Move logic from rest/ to handlers/ | Erik Johnston | 2016-01-25 | 1 | -41/+148 |
| | |||||
* | Allow non-guests to peek on rooms using /events | Daniel Wagner-Hall | 2016-01-20 | 1 | -2/+2 |
| | |||||
* | Only compute unread notifications for rooms we send down stream | Erik Johnston | 2016-01-19 | 1 | -28/+22 |
| | |||||
* | Use all_ephemeral_by_room in incremental_sync_with_gap_for_room | Erik Johnston | 2016-01-19 | 1 | -3/+5 |
| | |||||
* | Return highlight_count in /sync | Erik Johnston | 2016-01-19 | 1 | -6/+36 |
| | |||||
* | Re-enable urnead notifications | Erik Johnston | 2016-01-18 | 1 | -3/+0 |
| | |||||
* | Use logger not logging | Erik Johnston | 2016-01-14 | 1 | -2/+2 |
| | |||||
* | Don't change signature. Return empty list | Erik Johnston | 2016-01-13 | 1 | -2/+2 |
| | |||||
* | Temporarily disable notification branch | Erik Johnston | 2016-01-13 | 1 | -1/+4 |
| | |||||
* | Don't include old left rooms | Erik Johnston | 2016-01-12 | 1 | -1/+5 |
| | |||||
* | Merge pull request #456 from matrix-org/store_event_actions | David Baker | 2016-01-08 | 1 | -0/+63 |
|\ | | | | | Send unread notification counts | ||||
| * | Merge remote-tracking branch 'origin/develop' into store_event_actions | David Baker | 2016-01-06 | 1 | -107/+47 |
| |\ | |||||
| * \ | Merge remote-tracking branch 'origin/develop' into store_event_actions | David Baker | 2016-01-05 | 1 | -3/+2 |
| |\ \ | |||||
| * | | | comma | David Baker | 2016-01-04 | 1 | -1/+1 |
| | | | | |||||
| * | | | Add unread_notif_count in incremental_sync_with_gap | David Baker | 2016-01-04 | 1 | -0/+8 |
| | | | | |||||
| * | | | Rename event-actions to event_push_actions as per PR request | David Baker | 2016-01-04 | 1 | -1/+1 |
| | | | | |||||
| * | | | Fix merge fail with anon access stuff | David Baker | 2015-12-22 | 1 | -2/+2 |
| | | | | |||||
| * | | | Merge remote-tracking branch 'origin/develop' into store_event_actions | David Baker | 2015-12-22 | 1 | -45/+107 |
| |\ \ \ | |||||
| * | | | | Add some comments to areas that could be optimised. | David Baker | 2015-12-22 | 1 | -0/+3 |
| | | | | | |||||
| * | | | | Merge remote-tracking branch 'origin/develop' into store_event_actions | David Baker | 2015-12-21 | 1 | -4/+12 |
| |\ \ \ \ | |||||
| * | | | | | pep8 | David Baker | 2015-12-21 | 1 | -3/+3 |
| | | | | | | |||||
| * | | | | | Make unread notification count sending work: put the correct count in ↵ | David Baker | 2015-12-18 | 1 | -11/+37 |
| | | | | | | | | | | | | | | | | | | | | | | | | incremental syncs too, where necessary, and fix silly bugs like only select the event actions for that user... | ||||
| * | | | | | still very WIP, but now sends unread_notifications_count in the room object ↵ | David Baker | 2015-12-16 | 1 | -0/+26 |
| | | | | | | | | | | | | | | | | | | | | | | | | on sync (only actually corrrect in a full sync: hardcoded to 0 in incremental syncs). | ||||
* | | | | | | Use logger not logging | Erik Johnston | 2016-01-07 | 1 | -2/+2 |
| |_|_|_|/ |/| | | | | |||||
* | | | | | Pass whether the user was a guest to some of the event streams | Mark Haines | 2016-01-06 | 1 | -5/+3 |
| | | | | | |||||
* | | | | | Guest users must be joined to a room to see it in /sync | Mark Haines | 2016-01-06 | 1 | -103/+49 |
| |_|_|/ |/| | | | |||||
* | | | | Skip, rather than erroring, invalid guest requests | Daniel Wagner-Hall | 2016-01-05 | 1 | -1/+0 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Erroring causes problems when people make illegal requests, because they don't know what limit parameter they should pass. This is definitely buggy. It leaks message counts for rooms people don't have permission to see, via tokens. But apparently we already consciously decided to allow that as a team, so this preserves that behaviour. | ||||
* | | | | Allow guests to upgrade their accounts | Daniel Wagner-Hall | 2016-01-05 | 1 | -1/+1 |
| | | | | |||||
* | | | | Return /sync when something under the 'leave' key has changed | Erik Johnston | 2016-01-05 | 1 | -1/+1 |
| |_|/ |/| | | |||||
* | | | Include the list of bad room ids in the error | Mark Haines | 2015-12-22 | 1 | -2/+8 |
| | | | |||||
* | | | Use a list comprehension | Mark Haines | 2015-12-22 | 1 | -3/+4 |
| | | | |||||
* | | | Hook up read receipts and typing notifications for guest access | Mark Haines | 2015-12-22 | 1 | -13/+11 |
| | | | |||||
* | | | Allow guest access to /sync | Mark Haines | 2015-12-22 | 1 | -46/+98 |
| | | | |||||
* | | | Allow guest access if the user provides a list of rooms in the filter | Mark Haines | 2015-12-22 | 1 | -0/+1 |
| |/ |/| | |||||
* | | Do the /sync in parallel accross the rooms like /initialSync does | Mark Haines | 2015-12-11 | 1 | -4/+12 |
|/ | |||||
* | Only include the archived rooms if a include_leave flag in set in the filter | Mark Haines | 2015-12-04 | 1 | -6/+6 |
| | |||||
* | Add API for setting account_data globaly or on a per room basis | Mark Haines | 2015-12-01 | 1 | -15/+57 |
| | |||||
* | s/private_user_data/account_data/ | Mark Haines | 2015-11-18 | 1 | -14/+14 |
| | |||||
* | Fix a few race conditions in the state calculation | Richard van der Hoff | 2015-11-13 | 1 | -60/+63 |
| | | | | | | | | | | | | | | | | | | | Be a bit more careful about how we calculate the state to be returned by /sync. In a few places, it was possible for /sync to return slightly later state than that represented by the next_batch token and the timeline. In particular, the following cases were susceptible: * On a full state sync, for an active room * During a per-room incremental sync with a timeline gap * When the user has just joined a room. (Refactor check_joined_room to make it less magical) Also, use store.get_state_for_events() (and thus the existing stategroups) to calculate the state corresponding to a particular sync position, rather than state_handler.compute_event_context(), which recalculates from first principles (and tends to miss some state). Merged from PR https://github.com/matrix-org/synapse/pull/372 | ||||
* | Make handlers.sync return a state dictionary, instead of an event list. | Richard van der Hoff | 2015-11-13 | 1 | -31/+39 |
| | | | | | | | | | Basically this moves the process of flattening the existing dictionary into a list up to rest.client.*, instead of doing it in handlers.sync. This simplifies a bit of the code in handlers.sync, but it is also going to be somewhat beneficial in the next stage of my hacking on SPEC-254. Merged from PR #371 | ||||
* | Update some comments | Richard van der Hoff | 2015-11-13 | 1 | -10/+24 |
| | | | | | | | Add a couple of type annotations, docstrings, and other comments, in the interest of keeping track of what types I have. Merged from pull request #370. | ||||
* | Don't fiddle with results returned by event sources | Richard van der Hoff | 2015-11-09 | 1 | -4/+12 |
| | | | | | | Overwriting hashes returned by other methods is poor form. Fixes: SYN-516 | ||||
* | SYN-513: Include updates for rooms that have had all their tags deleted | Mark Haines | 2015-11-09 | 1 | -1/+1 |
| | |||||
* | Open up /events to anonymous users for room events only | Daniel Wagner-Hall | 2015-11-05 | 1 | -3/+17 |
| | | | | Squash-merge of PR #345 from daniel/anonymousevents | ||||
* | Merge branch 'develop' into daniel/removesomelies | Mark Haines | 2015-11-04 | 1 | -20/+82 |
|\ | | | | | | | | | Conflicts: synapse/notifier.py | ||||
| * | Merge branch 'develop' into markjh/v2_sync_receipts | Mark Haines | 2015-11-03 | 1 | -10/+57 |
| |\ | | | | | | | | | | | | | Conflicts: synapse/handlers/sync.py | ||||
| | * | Include room tags in v2 /sync | Mark Haines | 2015-11-02 | 1 | -11/+58 |
| | | | |||||
| * | | Include read receipts in v2 sync | Mark Haines | 2015-11-02 | 1 | -15/+30 |
| |/ | |||||
* | | Remove more unused parameters | Daniel Wagner-Hall | 2015-11-02 | 1 | -1/+0 |
| | | |||||
* | | Remove unused arguments and code | Daniel Wagner-Hall | 2015-11-02 | 1 | -14/+1 |
|/ | |||||
* | Update the other place check_joined_room is called | Mark Haines | 2015-10-30 | 1 | -1/+1 |
| | |||||
* | Don't mark newly joined room timelines as limited in an incremental sync | Mark Haines | 2015-10-29 | 1 | -3/+5 |
| | |||||
* | Implement full_state incremental sync | Richard van der Hoff | 2015-10-26 | 1 | -17/+34 |
| | | | | | | | | A hopefully-complete implementation of the full_state incremental sync, as specced at https://github.com/matrix-org/matrix-doc/pull/133. This actually turns out to be a relatively simple modification to the initial sync implementation. | ||||
* | Merge branch 'develop' into markjh/v2_sync_typing | Mark Haines | 2015-10-21 | 1 | -3/+127 |
|\ | | | | | | | | | Conflicts: synapse/handlers/sync.py | ||||
| * | Include banned rooms in the archived section of v2 sync | Mark Haines | 2015-10-21 | 1 | -6/+9 |
| | | |||||
| * | Fix pep8 | Mark Haines | 2015-10-19 | 1 | -1/+0 |
| | | |||||
| * | Add rooms that the user has left under archived in v2 sync. | Mark Haines | 2015-10-19 | 1 | -3/+125 |
| | | |||||
* | | Doc string for the SyncHandler.typing_by_room method | Mark Haines | 2015-10-21 | 1 | -0/+12 |
| | | |||||
* | | Include typing events in initial v2 sync | Mark Haines | 2015-10-20 | 1 | -14/+29 |
|/ | |||||
* | Amalgamate _filter_events_for_client | Erik Johnston | 2015-10-16 | 1 | -47/+1 |
| | |||||
* | Merge pull request #305 from matrix-org/markjh/v2_sync_api | Mark Haines | 2015-10-14 | 1 | -92/+105 |
|\ | | | | | Update the v2 sync API to work as specified in the current spec. | ||||
| * | Fix v2 sync polling | Mark Haines | 2015-10-14 | 1 | -3/+3 |
| | | |||||
| * | Add a get_invites_for_user method to the storage to find out the rooms a ↵ | Mark Haines | 2015-10-13 | 1 | -6/+2 |
| | | | | | | | | user is invited to | ||||
| * | Include invites in incremental sync | Mark Haines | 2015-10-13 | 1 | -6/+25 |
| | | |||||
| * | Include invited rooms in the initial sync | Mark Haines | 2015-10-13 | 1 | -10/+6 |
| | | |||||
| * | Start spliting out the rooms into joined and invited in v2 sync | Mark Haines | 2015-10-13 | 1 | -18/+40 |
| | | |||||
| * | Update the filters to match the latest spec. | Mark Haines | 2015-10-12 | 1 | -3/+3 |
| | | | | | | | | | | Apply the filter the 'timeline' and 'ephemeral' keys of rooms. Apply the filter to the 'presence' key of a sync response. | ||||
| * | Update the v2 room sync format to match the current v2 spec | Mark Haines | 2015-10-08 | 1 | -14/+11 |
| | | |||||
| * | Move the rooms out into a room_map mapping from room_id to room. | Mark Haines | 2015-10-05 | 1 | -18/+9 |
| | | |||||
| * | Start updating the sync API to match the specification | Mark Haines | 2015-10-01 | 1 | -36/+28 |
| | | |||||
* | | Remove unused room_id arg | Erik Johnston | 2015-10-14 | 1 | -1/+1 |
|/ | |||||
* | Fix up one more reference | Daniel Wagner-Hall | 2015-08-25 | 1 | -1/+0 |
| | |||||
* | Don't get apservice interested rooms in RoomHandler.get_joined_rooms_for_users | Erik Johnston | 2015-08-19 | 1 | -3/+21 |
| | |||||
* | Fix _filter_events_for_client | Erik Johnston | 2015-08-12 | 1 | -3/+1 |
| | |||||
* | Use list comprehension instead of filter | Erik Johnston | 2015-08-12 | 1 | -10/+3 |
| | |||||
* | Remove debug loggers | Erik Johnston | 2015-08-11 | 1 | -3/+0 |
| | |||||
* | Fix application of ACLs | Erik Johnston | 2015-08-11 | 1 | -4/+13 |
| | |||||
* | Speed up event filtering (for ACL) logic | Erik Johnston | 2015-08-04 | 1 | -1/+5 |
| | |||||
* | Rename key and values for m.room.history_visibility. Support 'invited' value | Erik Johnston | 2015-07-06 | 1 | -5/+20 |
| | |||||
* | Respect m.room.history_visibility in v2_alpha sync API | Erik Johnston | 2015-07-03 | 1 | -0/+33 |
| |