Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Move storage classes into a main "data store". | Erik Johnston | 2019-10-21 | 1 | -1119/+0 |
| | | | | | This is in preparation for having multiple data stores that offer different functionality, e.g. splitting out state or event storage. | ||||
* | Replace IN usage with helper funcs | Erik Johnston | 2019-10-10 | 1 | -6/+12 |
| | |||||
* | Move roommember's bg updates to a dedicated store | Brendan Abolivier | 2019-10-07 | 1 | -108/+114 |
| | |||||
* | Fix bug where we didn't pull out event ID | Erik Johnston | 2019-10-07 | 1 | -1/+1 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2019-10-03 | 1 | -6/+15 |
|\ | | | | | | | erikj/cache_memberships | ||||
| * | add some metrics on the federation sender (#6160) | Richard van der Hoff | 2019-10-03 | 1 | -6/+15 |
| | | |||||
* | | Use the right error.... | Erik Johnston | 2019-10-03 | 1 | -1/+1 |
| | | |||||
* | | pep8 | Erik Johnston | 2019-10-03 | 1 | -1/+0 |
| | | |||||
* | | Fixup names and comments | Erik Johnston | 2019-10-03 | 1 | -6/+7 |
| | | |||||
* | | cachedList descriptor doesn't like typing | Erik Johnston | 2019-10-03 | 1 | -2/+2 |
| | | |||||
* | | Cache room membership lookups in _get_joined_users_from_context | Erik Johnston | 2019-10-03 | 1 | -19/+45 |
|/ | |||||
* | Servers-known-about statistic (#5981) | Amber Brown | 2019-09-07 | 1 | -0/+59 |
| | |||||
* | Fix and refactor room and user stats (#5971) | Erik Johnston | 2019-09-04 | 1 | -21/+23 |
| | | | Previously the stats were not being correctly populated. | ||||
* | Fix current_state_events membership background update. | Erik Johnston | 2019-07-30 | 1 | -1/+1 |
| | | | | | | Turns out not all rooms are in `rooms`, so lets fetch the room list from `current_state_events`. We move the delta file to force it to be run again. | ||||
* | Merge pull request #5774 from matrix-org/erikj/fix_rejected_membership | Erik Johnston | 2019-07-29 | 1 | -0/+6 |
|\ | | | | | Fix room summary when rejected events are in state | ||||
| * | Fix room summary when rejected events are in state | Erik Johnston | 2019-07-26 | 1 | -0/+6 |
| | | | | | | | | | | | | Annoyingly, `current_state_events` table can include rejected events, in which case the membership column will be null. To work around this lets just always filter out null membership for now. | ||||
* | | Merge pull request #5752 from matrix-org/erikj/forgotten_user | Erik Johnston | 2019-07-29 | 1 | -35/+105 |
|\ \ | | | | | | | Remove some more joins on room_memberships | ||||
| * | | Expand comment | Erik Johnston | 2019-07-29 | 1 | -0/+5 |
| |/ | |||||
| * | Remove join when calculating room summaries. | Erik Johnston | 2019-07-24 | 1 | -13/+21 |
| | | |||||
| * | Remove join on room_memberships when fetching rooms for user. | Erik Johnston | 2019-07-24 | 1 | -22/+36 |
| | | |||||
| * | Add function to get all forgotten rooms for user | Erik Johnston | 2019-07-24 | 1 | -0/+43 |
| | | | | | | | | | | | | This will allow us to efficiently filter out rooms that have been forgotten in other queries without having to join against the `room_memberships` table. | ||||
* | | Fix current_state bg update to work on old SQLite | Erik Johnston | 2019-07-29 | 1 | -2/+2 |
| | | |||||
* | | Replace returnValue with return (#5736) | Amber Brown | 2019-07-23 | 1 | -22/+20 |
|/ | |||||
* | Speed up current state background update. | Erik Johnston | 2019-07-23 | 1 | -18/+30 |
| | | | | | Turns out that storing huge JSON arrays in the progress JSON isn't something that postgres particularly likes. | ||||
* | LoggingTransaction accepts None for callback lists. | Erik Johnston | 2019-07-19 | 1 | -2/+0 |
| | | | | | Its a bit disingenuousto give LoggingTransaction lists to append callbacks to if we're not going to run the callbacks. | ||||
* | Use the current_state_events.membership column | Erik Johnston | 2019-07-18 | 1 | -17/+37 |
| | |||||
* | Track if current_state_events.membership is up to date | Erik Johnston | 2019-07-18 | 1 | -0/+45 |
| | |||||
* | Add background update for current_state_events.membership column | Erik Johnston | 2019-07-18 | 1 | -0/+51 |
| | |||||
* | Add membership column to current_state_events table. | Erik Johnston | 2019-07-18 | 1 | -3/+3 |
| | | | | | It turns out that doing a join is surprisingly expensive for the DB to do when room_membership table is larger than the disk cache. | ||||
* | Add basic function to get all data for a user out of synapse | Erik Johnston | 2019-07-02 | 1 | -0/+20 |
| | |||||
* | Run Black. (#5482) | Amber Brown | 2019-06-20 | 1 | -4/+4 |
| | |||||
* | Fetch membership counts all at once | Erik Johnston | 2019-05-30 | 1 | -22/+11 |
| | |||||
* | Room Statistics (#4338) | Amber Brown | 2019-05-21 | 1 | -0/+32 |
| | |||||
* | Run `black` on some storage modules that the stats branch touches (#4959) | Amber Brown | 2019-03-29 | 1 | -86/+87 |
| | |||||
* | Use term 'out of band membership' instead | Erik Johnston | 2019-01-24 | 1 | -3/+3 |
| | |||||
* | Clarify the invite flows | Erik Johnston | 2019-01-23 | 1 | -4/+7 |
| | |||||
* | Store rejected remote invite events as outliers | Erik Johnston | 2019-01-23 | 1 | -4/+1 |
| | | | | | | | | | | | Currently they're stored as non-outliers even though the server isn't in the room, which can be problematic in places where the code assumes it has the state for all non outlier events. In particular, there is an edge case where persisting the leave event triggers a state resolution, which requires looking up the room version from state. Since the server doesn't have the state, this causes an exception to be thrown. | ||||
* | Speed up lazy loading (#3827) | Matthew Hodgson | 2018-09-12 | 1 | -0/+65 |
| | | | | | * 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) | ||||
* | Rename async to async_helpers because `async` is a keyword on Python 3.7 (#3678) | Amber Brown | 2018-08-10 | 1 | -1/+1 |
| | |||||
* | Make EventStore inherit from EventFederationStore | Richard van der Hoff | 2018-07-26 | 1 | -1/+1 |
| | | | | | | | | (since it uses methods therein) Turns out that we had a bunch of things which were incorrectly importing EventWorkerStore from events.py rather than events_worker.py, which broke once I removed the import into events.py. | ||||
* | Pull out did_forget to worker store | Erik Johnston | 2018-07-24 | 1 | -25/+27 |
| | |||||
* | Merge remote-tracking branch 'origin/develop' into rav/remove_who_forgot_in_room | Richard van der Hoff | 2018-07-23 | 1 | -2/+5 |
|\ | |||||
| * | Use new getters | Erik Johnston | 2018-07-23 | 1 | -2/+5 |
| | | |||||
* | | Remove redundant checks on room forgottenness | Richard van der Hoff | 2018-07-23 | 1 | -15/+0 |
|/ | | | | Fixes #3550 | ||||
* | run isort | Amber Brown | 2018-07-09 | 1 | -10/+9 |
| | |||||
* | Attempt to be more performant on PyPy (#3462) | Amber Brown | 2018-06-28 | 1 | -1/+1 |
| | |||||
* | Make _get_joined_hosts_cache cache non-iterable | Erik Johnston | 2018-06-22 | 1 | -1/+1 |
| | |||||
* | Remove was_forgotten_at | Richard van der Hoff | 2018-06-01 | 1 | -26/+0 |
| | | | | | | This is unused. IT MUST DIE!!!1 ̧̪͈̱̹̳͖͙H̵̰̤̰͕̖e̛ ͚͉̗̼̞w̶̩̥͉̮h̩̺̪̩͘ͅọ͎͉̟ ̜̩͔̦̘ͅW̪̫̩̣̲͔̳a͏͔̳͖i͖͜t͓̤̠͓͙s̘̰̩̥̙̝ͅ ̲̠̬̥Be̡̙̫̦h̰̩i̛̫͙͔̭̤̗̲n̳͞d̸ ͎̻͘T̛͇̝̲̹̠̗ͅh̫̦̝ͅe̩̫͟ ͓͖̼W͕̳͎͚̙̥ą̙l̘͚̺͔͞ͅl̳͍̙̤̤̮̳.̢ ̟̺̜̙͉Z̤̲̙̙͎̥̝A͎̣͔̙͘L̥̻̗̳̻̳̳͢G͉̖̯͓̞̩̦O̹̹̺!̙͈͎̞̬ * | ||||
* | more iteritems | Adrian Tschira | 2018-05-24 | 1 | -4/+6 |
| | |||||
* | Remove uses of events.content | Richard van der Hoff | 2018-03-29 | 1 | -2/+4 |
| | |||||
* | Merge branch 'master' of github.com:matrix-org/synapse into develop | Erik Johnston | 2018-03-19 | 1 | -1/+1 |
|\ | |||||
| * | Replace ujson with simplejson | Erik Johnston | 2018-03-15 | 1 | -1/+1 |
| | | |||||
* | | Fix race in sync when joining room | Erik Johnston | 2018-03-07 | 1 | -1/+26 |
| | | | | | | | | | | | | | | | | | | | | | | 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. | ||||
* | | Move storage functions for push calculations | Erik Johnston | 2018-02-27 | 1 | -12/+12 |
| | | | | | | | | This will allow push actions for an event to be calculated on workers. | ||||
* | | Update copyright | Erik Johnston | 2018-02-23 | 1 | -0/+1 |
| | | |||||
* | | Split out RoomMemberStore | Erik Johnston | 2018-02-21 | 1 | -179/+181 |
|/ | |||||
* | Make __init__ consitstent across Store heirarchy | Richard van der Hoff | 2017-11-13 | 1 | -2/+2 |
| | | | | | | Add db_conn parameters to the `__init__` methods of the *Store classes, so that they are all consistent, which makes the multiple inheritance work correctly (and so that we can later extract mixins which can be used in the slavedstores) | ||||
* | replace 'except:' with 'except Exception:' | Richard van der Hoff | 2017-10-23 | 1 | -1/+1 |
| | | | | what could possibly go wrong | ||||
* | Fix up comment | Erik Johnston | 2017-10-09 | 1 | -1/+2 |
| | |||||
* | Update comments | Erik Johnston | 2017-10-03 | 1 | -0/+7 |
| | |||||
* | Ignore incoming events for rooms that we have left | Erik Johnston | 2017-10-03 | 1 | -0/+32 |
| | | | | | | | | | | | | | | | | | When synapse receives an event for a room its not in over federation, it double checks with the remote server to see if it is in fact in the room. This is done so that if the server has forgotten about the room (usually as a result of the database being dropped) it can recover from it. However, in the presence of state resets in large rooms, this can cause a lot of work for servers that have legitimately left. As a hacky solution that supports both cases we drop incoming events for rooms that we have explicitly left. This means that we no longer support the case of servers having forgotten that they've rejoined a room, but that is sufficiently rare that we're not going to support it for now. | ||||
* | Add cache for is_host_joined | Erik Johnston | 2017-06-13 | 1 | -1/+1 |
| | |||||
* | Tweak SQL | Erik Johnston | 2017-06-09 | 1 | -3/+6 |
| | |||||
* | Change is_host_joined to use current_state table | Erik Johnston | 2017-06-09 | 1 | -29/+23 |
| | | | | | | This bypasses a bug where using the state groups to figure out if a host is in a room sometimes errors if the servers isn't in the room. (For example when the server rejected an invite to a remote room) | ||||
* | Comments | Erik Johnston | 2017-06-07 | 1 | -0/+9 |
| | |||||
* | Remove spurious log lines | Erik Johnston | 2017-06-07 | 1 | -1/+0 |
| | |||||
* | Handle None state group correctly | Erik Johnston | 2017-05-26 | 1 | -1/+4 |
| | |||||
* | Faster cache for get_joined_hosts | Erik Johnston | 2017-05-25 | 1 | -21/+72 |
| | |||||
* | Comment | Erik Johnston | 2017-05-17 | 1 | -0/+5 |
| | |||||
* | Short circuit when we have delta ids | Erik Johnston | 2017-05-17 | 1 | -3/+19 |
| | |||||
* | Speed up get_joined_hosts | Erik Johnston | 2017-05-16 | 1 | -1/+2 |
| | |||||
* | Don't update event cache hit ratio from get_joined_users | Erik Johnston | 2017-05-08 | 1 | -0/+4 |
| | | | | | Otherwise the hit ration of plain get_events gets completely skewed by calls to get_joined_users* functions. | ||||
* | Merge pull request #2176 from matrix-org/erikj/faster_get_joined | Erik Johnston | 2017-05-05 | 1 | -16/+42 |
|\ | | | | | Make get_joined_users faster | ||||
| * | Fixes | Erik Johnston | 2017-05-05 | 1 | -3/+4 |
| | | |||||
| * | Add comment | Erik Johnston | 2017-05-04 | 1 | -0/+3 |
| | | |||||
| * | Make get_joined_users faster | Erik Johnston | 2017-05-03 | 1 | -16/+38 |
| | | |||||
* | | Merge pull request #2185 from matrix-org/erikj/smaller_caches | Erik Johnston | 2017-05-05 | 1 | -2/+2 |
|\ \ | | | | | | | Optimise caches for single key | ||||
| * | | Reduce size of get_users_in_room | Erik Johnston | 2017-05-04 | 1 | -2/+2 |
| |/ | |||||
* | | Intern host strings | Erik Johnston | 2017-05-04 | 1 | -1/+2 |
| | | |||||
* | | Make caches bigger | Erik Johnston | 2017-05-04 | 1 | -1/+1 |
| | | |||||
* | | Fix comment and num args | Erik Johnston | 2017-05-04 | 1 | -1/+1 |
| | | |||||
* | | Add cache for get_current_hosts_in_room | Erik Johnston | 2017-05-02 | 1 | -0/+38 |
|/ | |||||
* | Comment | Erik Johnston | 2017-04-25 | 1 | -0/+2 |
| | |||||
* | Reduce size of joined_user cache | Erik Johnston | 2017-04-25 | 1 | -8/+14 |
| | | | | | | | | The _get_joined_users_from_context cache stores a mapping from user_id to avatar_url and display_name. Instead of storing those in a dict, store them in a namedtuple as that uses much less memory. We also try converting the string to ascii to further reduce the size. | ||||
* | Cache hosts in room | Erik Johnston | 2017-03-24 | 1 | -0/+10 |
| | |||||
* | Replace some calls to cursor_to_dict | Erik Johnston | 2017-03-24 | 1 | -34/+9 |
| | | | | | cursor_to_dict can be surprisinglh expensive for large result sets, so lets only call it when we need to. | ||||
* | Comments | Erik Johnston | 2017-03-16 | 1 | -0/+2 |
| | |||||
* | Don't recreate so many sets | Erik Johnston | 2017-03-16 | 1 | -5/+6 |
| | |||||
* | Bump cache sizes for common membership queries | Erik Johnston | 2017-02-02 | 1 | -3/+3 |
| | |||||
* | Comment | Erik Johnston | 2017-02-02 | 1 | -1/+2 |
| | |||||
* | Make presence.get_new_events a bit faster | Erik Johnston | 2017-02-02 | 1 | -0/+16 |
| | | | | We do this by caching the set of users a user shares rooms with. | ||||
* | Merge pull request #1868 from matrix-org/erikj/replication_cache | Erik Johnston | 2017-02-01 | 1 | -2/+0 |
|\ | | | | | Only invalidate membership caches based on the cache stream | ||||
| * | Only invalidate membership caches based on the cache stream | Erik Johnston | 2017-01-31 | 1 | -2/+0 |
| | | | | | | | | | | Before we completely invalidated get_users_in_room whenever we updated any current_state_events table. This was way too aggressive. | ||||
* | | Add m.room.member type to query | Erik Johnston | 2017-02-01 | 1 | -1/+1 |
| | | |||||
* | | Add an index to make membership queries faster | Erik Johnston | 2017-01-31 | 1 | -1/+1 |
|/ | |||||
* | Don't have such a large cache | Erik Johnston | 2017-01-30 | 1 | -1/+1 |
| | |||||
* | Use get_users_in_room and declare it iterable | Erik Johnston | 2017-01-30 | 1 | -1/+1 |
| | |||||
* | Up cache max entries for state | Erik Johnston | 2017-01-16 | 1 | -1/+1 |
| | |||||
* | Increase cache size limit | Erik Johnston | 2017-01-16 | 1 | -1/+1 |
| | |||||
* | Optionally measure size of cache by sum of length of values | Erik Johnston | 2017-01-13 | 1 | -1/+2 |
| | |||||
* | fix annoying typos | Matthew Hodgson | 2017-01-05 | 1 | -2/+2 |
| | |||||
* | Fixup membership query | Erik Johnston | 2016-12-14 | 1 | -2/+2 |
| | |||||
* | Fix background update that prematurely stopped | Erik Johnston | 2016-12-12 | 1 | -1/+1 |
| | |||||
* | Add /room/<room_id>/joined_members API | Erik Johnston | 2016-12-08 | 1 | -3/+13 |
| | | | | | | This returns the currently joined members in the room with their display names and avatar urls. This is more efficient than /members for large rooms where you don't need the full events. | ||||
* | Add profile data to the room_membership table for joins | Erik Johnston | 2016-12-08 | 1 | -0/+86 |
| | |||||
* | Reduce batch size to be under SQL limit | Erik Johnston | 2016-09-09 | 1 | -1/+1 |
| | |||||
* | Correctly handle the difference between prev and current state | Erik Johnston | 2016-08-31 | 1 | -4/+23 |
| | |||||
* | Use state handler instead of get_users_in_room/get_joined_hosts | Erik Johnston | 2016-08-26 | 1 | -9/+2 |
| | |||||
* | Add is_host_joined to slave storage | Erik Johnston | 2016-08-26 | 1 | -3/+4 |
| | |||||
* | Cache check_host_in_room | Erik Johnston | 2016-08-26 | 1 | -0/+35 |
| | |||||
* | Add desc | Erik Johnston | 2016-08-25 | 1 | -1/+2 |
| | |||||
* | Replace context.current_state with context.current_state_ids | Erik Johnston | 2016-08-25 | 1 | -2/+43 |
| | |||||
* | Add some invalidations to a cache_stream | Erik Johnston | 2016-08-15 | 1 | -5/+7 |
| | |||||
* | Remove dead code. | Mark Haines | 2016-06-07 | 1 | -7/+0 |
| | | | | | | | | | | | Loading push rules now happens in the datastore, so we can remove the methods that loaded them outside the datastore. The ``waiting_for_join_list`` in federation handler is populated by anything, so can be removed. The ``_get_members_events_txn`` method isn't called from anywhere so can be removed. | ||||
* | Make get_joined_hosts_for_room use get_users_in_room | Erik Johnston | 2016-06-03 | 1 | -16/+3 |
| | |||||
* | Use state to calculate get_users_in_room | Erik Johnston | 2016-06-01 | 1 | -3/+0 |
| | |||||
* | get_room_members is unused now | Mark Haines | 2016-05-16 | 1 | -18/+0 |
| | |||||
* | Spell "domain" correctly | Mark Haines | 2016-05-16 | 1 | -2/+2 |
| | | | | s/domian/domain/g | ||||
* | Add and use get_domian_from_id | Erik Johnston | 2016-05-09 | 1 | -5/+2 |
| | |||||
* | Merge pull request #705 from matrix-org/dbkr/pushers_use_event_actions | David Baker | 2016-04-11 | 1 | -0/+3 |
|\ | | | | | Change pushers to use the event_actions table | ||||
| * | pep8 | David Baker | 2016-04-06 | 1 | -1/+3 |
| | | |||||
| * | Make pushers use the event_push_actions table instead of listening on an ↵ | David Baker | 2016-04-06 | 1 | -0/+1 |
| | | | | | | | | | | | | | | event stream & running the rules again. Sytest passes, but remaining to do: * Make badges work again * Remove old, unused code | ||||
* | | Remove some unused functions (#711) | Mark Haines | 2016-04-08 | 1 | -33/+0 |
|/ | | | | | | | | * Remove some unused functions * get_room_events_stream is only used in tests * is_exclusive_room might actually be something we want | ||||
* | Fix stuck invites | Erik Johnston | 2016-04-05 | 1 | -0/+19 |
| | | | | | | | | If rejecting a remote invite fails with an error response don't fail the entire request; instead mark the invite as locally rejected. This fixes the bug where users can get stuck invites which they can neither accept nor reject. | ||||
* | Docs and indents | Erik Johnston | 2016-04-04 | 1 | -2/+16 |
| | |||||
* | Add upgrade path, rename table | Erik Johnston | 2016-04-04 | 1 | -3/+3 |
| | |||||
* | Store invites in a separate table. | Erik Johnston | 2016-04-04 | 1 | -21/+90 |
| | |||||
* | Make get_invites return RoomsForUser | Erik Johnston | 2016-03-23 | 1 | -6/+4 |
| | |||||
* | Remove dead code left over from presence changes | Mark Haines | 2016-03-17 | 1 | -24/+0 |
| | |||||
* | Cache get_room_changes_for_user | Erik Johnston | 2016-01-29 | 1 | -0/+4 |
| | |||||
* | Up get_rooms_for_user cache size | Erik Johnston | 2016-01-28 | 1 | -1/+1 |
| | |||||
* | Push: Use storage apis that are cached | Erik Johnston | 2016-01-25 | 1 | -0/+1 |
| | |||||
* | Allow filtering events for multiple users at once | Erik Johnston | 2016-01-18 | 1 | -0/+13 |
| | |||||
* | copyrights | Matthew Hodgson | 2016-01-07 | 1 | -1/+1 |
| | |||||
* | Fix typo | Daniel Wagner-Hall | 2015-12-14 | 1 | -1/+1 |
| | |||||
* | Add caches for whether a room has been forgotten by a user | Mark Haines | 2015-12-10 | 1 | -4/+7 |
| | |||||
* | Fix SQL for postgres again | Daniel Wagner-Hall | 2015-11-23 | 1 | -1/+1 |
| | |||||
* | Fix SQL for postgres | Daniel Wagner-Hall | 2015-11-23 | 1 | -1/+1 |
| | |||||
* | Ignore forgotten rooms in v2 sync | Daniel Wagner-Hall | 2015-11-19 | 1 | -1/+1 |
| | |||||
* | Simplify code | Daniel Wagner-Hall | 2015-11-19 | 1 | -7/+5 |
| | |||||
* | Apply forgetting properly to historical events | Daniel Wagner-Hall | 2015-11-18 | 1 | -2/+32 |
| | |||||
* | Allow users to forget rooms | Daniel Wagner-Hall | 2015-11-17 | 1 | -0/+36 |
| | |||||
* | Include banned rooms in the archived section of v2 sync | Mark Haines | 2015-10-21 | 1 | -2/+2 |
| | |||||
* | Add rooms that the user has left under archived in v2 sync. | Mark Haines | 2015-10-19 | 1 | -0/+13 |
| | |||||
* | Add a get_invites_for_user method to the storage to find out the rooms a ↵ | Mark Haines | 2015-10-13 | 1 | -0/+14 |
| | | | | user is invited to | ||||
* | Merge pull request #288 from matrix-org/markjh/unused_definitions | Mark Haines | 2015-09-28 | 1 | -6/+0 |
|\ | | | | | Remove some of the unused definitions from synapse | ||||
| * | synapse/storage/roommember.py:_get_members_query was unused | Mark Haines | 2015-09-23 | 1 | -6/+0 |
| | | |||||
* | | Fix order of ON constraints in _get_rooms_for_user_where_membership_is_txn | Mark Haines | 2015-09-24 | 1 | -6/+6 |
|/ | |||||
* | Include the event_id and stream_ordering of membership events when looking ↵ | Mark Haines | 2015-09-08 | 1 | -2/+4 |
| | | | | up which rooms a user is in | ||||
* | Move all the caches into their own package, synapse.util.caches | Erik Johnston | 2015-08-11 | 1 | -1/+2 |
| | |||||
* | Change Cache to not use *args in its interface | Erik Johnston | 2015-08-07 | 1 | -3/+3 |
| | |||||
* | Up the cache size for 'get_joined_hosts_for_room' and 'get_users_in_room' | Erik Johnston | 2015-08-05 | 1 | -2/+2 |
| | |||||
* | Add bulk insert events API | Erik Johnston | 2015-06-25 | 1 | -27/+17 |
| | |||||
* | Merge branch 'master' of github.com:matrix-org/synapse into develop | Erik Johnston | 2015-05-22 | 1 | -0/+2 |
|\ | |||||
| * | Add caches for things requested by the pushers | Mark Haines | 2015-05-21 | 1 | -0/+2 |
| | | |||||
* | | Move fetching of events into their own transactions | Erik Johnston | 2015-05-14 | 1 | -21/+18 |
|/ | |||||
* | Collect the invalidate callbacks on the transaction object rather than ↵ | Mark Haines | 2015-05-05 | 1 | -5/+3 |
| | | | | passing around a separate list | ||||
* | Invalidate the caches from the correct thread | Mark Haines | 2015-05-05 | 1 | -3/+5 |
| | |||||
* | More join conditions | Erik Johnston | 2015-04-30 | 1 | -2/+6 |
| | |||||
* | Add more conditions on JOINs to make postgres go a little faster. | Erik Johnston | 2015-04-30 | 1 | -1/+1 |
| | |||||
* | Add get_rooms_for_user cache | Erik Johnston | 2015-04-30 | 1 | -0/+2 |
| | |||||
* | PEP8 | Erik Johnston | 2015-04-07 | 1 | -1/+0 |
| | |||||
* | Don't use room hosts table | Erik Johnston | 2015-03-24 | 1 | -25/+4 |
| | |||||
* | Sanitize RoomMemberStore | Erik Johnston | 2015-03-23 | 1 | -63/+61 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into mysql | Erik Johnston | 2015-03-20 | 1 | -1/+2 |
|\ | |||||
| * | Give sensible names for '_simple_...' transactions | Erik Johnston | 2015-03-20 | 1 | -1/+2 |
| | | |||||
* | | Convert storage layer to be mysql compatible | Erik Johnston | 2015-03-19 | 1 | -1/+1 |
|/ | |||||
* | PEP8 | Kegan Dougal | 2015-03-02 | 1 | -1/+1 |
| | |||||
* | Wrap all of get_app_service_rooms in a txn. | Kegan Dougal | 2015-03-02 | 1 | -17/+19 |
| | |||||
* | RoomMemberStore no longer needs a _user_rooms_cache member | Paul "LeoNerd" Evans | 2015-02-23 | 1 | -5/+0 |
| | |||||
* | Take named arguments to @cached() decorator, add a 'max_entries' limit | Paul "LeoNerd" Evans | 2015-02-19 | 1 | -1/+1 |
| | |||||
* | Move @cached decorator out into synapse.storage._base; add minimal docs | Paul "LeoNerd" Evans | 2015-02-19 | 1 | -27/+1 |
| | |||||
* | Pull out the 'get_rooms_for_user' cache logic into a reüsable @cached decorator | Paul "LeoNerd" Evans | 2015-02-19 | 1 | -24/+29 |
| | |||||
* | 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. | ||||
* | Added another TODO note | Paul "LeoNerd" Evans | 2015-02-11 | 1 | -0/+3 |
| | |||||
* | Cache the result of a get_rooms_for_user query, to make ↵ | Paul "LeoNerd" Evans | 2015-02-11 | 1 | -7/+34 |
| | | | | user_rooms_intersect() much lighter in the read-common case | ||||
* | First step of making user_rooms_intersect() faster - implement in ↵ | Paul "LeoNerd" Evans | 2015-02-11 | 1 | -18/+20 |
| | | | | intersection logic in Python code terms of a DB query that is cacheable per user | ||||
* | Replace hs.parse_userid with UserID.from_string | Mark Haines | 2015-01-23 | 1 | -2/+3 |
| | |||||
* | Merge branch 'erikj-perf' of github.com:matrix-org/synapse into develop | Erik Johnston | 2015-01-06 | 1 | -21/+49 |
|\ | |||||
| * | Name 'user_rooms_intersect' transaction | Erik Johnston | 2015-01-06 | 1 | -16/+18 |
| | | |||||
| * | We don't need the full events for get_rooms_for_user_where_membership_is | Erik Johnston | 2015-01-06 | 1 | -5/+31 |
| | | |||||
* | | Merge pull request #28 from matrix-org/erikj-perf | Mark Haines | 2015-01-06 | 1 | -7/+14 |
|\| | | | | | Database performance improvements. | ||||
| * | Add RoomMemberStore.get_users_in_room, so that we can get the list of joined ↵ | Erik Johnston | 2015-01-06 | 1 | -0/+13 |
| | | | | | | | | users without having to retrieve the full events | ||||
| * | Test some ideas that might help performance a bit | Erik Johnston | 2014-12-17 | 1 | -7/+1 |
| | | |||||
* | | Update copyright notices | Mark Haines | 2015-01-06 | 1 | -1/+1 |
|/ | |||||
* | Workaround for non-uniqueness of room member events in the database ↵ | Paul "LeoNerd" Evans | 2014-12-02 | 1 | -1/+3 |
| | | | | confusing HAVING COUNT() test of room membership intersection (with thanks to Tom Molesworth) | ||||
* | Add a few missing yields, Move deferred lists inside PreserveLoggingContext ↵ | Mark Haines | 2014-11-20 | 1 | -2/+2 |
| | | | | because they don't interact well with the logging contexts | ||||
* | Fix pep8 warnings | Mark Haines | 2014-10-30 | 1 | -3/+5 |
| | |||||
* | pyflakes cleanup | Erik Johnston | 2014-09-30 | 1 | -1/+0 |
| | |||||
* | Add LIMIT to scalar subquery | Erik Johnston | 2014-09-25 | 1 | -1/+2 |
| | |||||
* | Rename deletions to redactions | Erik Johnston | 2014-09-24 | 1 | -3/+3 |
| | |||||
* | Add m.room.deletion. If an event is deleted it will be returned to clients ↵ | Erik Johnston | 2014-09-23 | 1 | -3/+10 |
| | | | | 'pruned', i.e. all client specified keys will be removed. | ||||
* | Merge remote-tracking branch 'origin/develop' into test-sqlite-memory | Paul "LeoNerd" Evans | 2014-09-15 | 1 | -2/+2 |
|\ | |||||
| * | Fix bug where we relied on the current_state_events being updated when we ↵ | Erik Johnston | 2014-09-12 | 1 | -2/+2 |
| | | | | | | | | are handling type specific persistence | ||||
* | | Merge remote-tracking branch 'origin/develop' into test-sqlite-memory | Paul "LeoNerd" Evans | 2014-09-12 | 1 | -12/+45 |
|\| | | | | | | | | | Conflicts: synapse/storage/pdu.py | ||||
| * | Fix bug where we incorrectly removed a remote host from the list of hosts in ↵ | Erik Johnston | 2014-09-12 | 1 | -12/+45 |
| | | | | | | | | a room when any user from that host left that room even if they weren't the last user from that host in that room | ||||
* | | More accurate docs / clearer paramter names in RoomMemberStore | Paul "LeoNerd" Evans | 2014-09-12 | 1 | -6/+7 |
| | | |||||
* | | Revert recent changes to RoomMemberStore | Paul "LeoNerd" Evans | 2014-09-12 | 1 | -27/+9 |
| | | |||||
* | | Add a .runInteraction() method on SQLBaseStore itself to wrap the .db_pool | Paul "LeoNerd" Evans | 2014-09-12 | 1 | -0/+5 |
| | | |||||
* | | Add a better _store_room_member_txn() method that takes separated fields ↵ | Paul "LeoNerd" Evans | 2014-09-11 | 1 | -8/+21 |
| | | | | | | | | instead of an event object; also add FIXME comment about a big bug in the logic | ||||
* | | Rename _store_room_member_txn to _store_room_member_from_event_txn so we can ↵ | Paul "LeoNerd" Evans | 2014-09-11 | 1 | -1/+1 |
|/ | | | | create another, more sensible function of that name | ||||
* | When getting a state event also include the previous content | Erik Johnston | 2014-09-06 | 1 | -2/+2 |
| | |||||
* | fix the copyright holder from matrix.org to OpenMarket Ltd, as matrix.org ↵ | Matthew Hodgson | 2014-09-03 | 1 | -1/+1 |
| | | | | hasn't been incorporated in time for launch. | ||||
* | Rename the 'do_users_share_a_room' to something slightly less verb-sounding | Paul "LeoNerd" Evans | 2014-09-03 | 1 | -1/+1 |
| | |||||
* | add _get_room_member, fix datastore methods | Mark Haines | 2014-08-27 | 1 | -2/+20 |
| | |||||
* | Merge branch 'develop' into storage_transactions | Mark Haines | 2014-08-26 | 1 | -10/+27 |
|\ | | | | | | | | | | | | | Conflicts: synapse/api/auth.py synapse/handlers/room.py synapse/storage/__init__.py | ||||
| * | Fix pyflakes errors | Mark Haines | 2014-08-26 | 1 | -7/+2 |
| | | |||||
| * | Add a do_users_share_a_room method and use that in the presence handler. | Erik Johnston | 2014-08-26 | 1 | -0/+21 |
| | | |||||
| * | Merge branch 'develop' of github.com:matrix-org/synapse into ↵ | Kegan Dougal | 2014-08-26 | 1 | -1/+1 |
| |\ | | | | | | | | | | client_server_url_rename | ||||
| | * | Turn off spammy logging | Erik Johnston | 2014-08-22 | 1 | -1/+1 |
| | | | |||||
| * | | Removed member list servlet: now using generic state paths. | Kegan Dougal | 2014-08-26 | 1 | -2/+3 |
| |/ | |||||
* / | Move the event storage into a single transaction | Mark Haines | 2014-08-26 | 1 | -5/+5 |
|/ | |||||
* | PEP8 cleanups | Erik Johnston | 2014-08-15 | 1 | -1/+0 |
| | |||||
* | Start chagning the events stream to work with the new DB schema | Erik Johnston | 2014-08-15 | 1 | -1/+7 |
| | |||||
* | Fix up typos and correct sql queries | Erik Johnston | 2014-08-14 | 1 | -13/+13 |
| | |||||
* | Start fixing places that use the data store. | Erik Johnston | 2014-08-14 | 1 | -1/+1 |
| | |||||
* | Rename _execute_query | Erik Johnston | 2014-08-14 | 1 | -1/+1 |
| | |||||
* | Fix up RoomMemberStore to work with the new schema. | Erik Johnston | 2014-08-14 | 1 | -95/+69 |
| | |||||
* | add in whitespace after copyright statements to improve legibility | Matthew Hodgson | 2014-08-13 | 1 | -0/+1 |
| | |||||
* | Reference Matrix Home Server | matrix.org | 2014-08-12 | 1 | -0/+171 |