Commit Graph

62 Commits (657298cebd312d9b636b822a8c116f17b001b5f6)

Author SHA1 Message Date
Erik Johnston 61d05daab1 More join conditions 10 years ago
Erik Johnston 6ead27ddda Add more conditions on JOINs to make postgres go a little faster. 10 years ago
Erik Johnston 69d4063651 Add get_rooms_for_user cache 10 years ago
Erik Johnston 0bfa78b39b PEP8 10 years ago
Erik Johnston 5a447098dd Don't use room hosts table 10 years ago
Erik Johnston 9a7f496298 Sanitize RoomMemberStore 10 years ago
Erik Johnston dc0c989ef4 Give sensible names for '_simple_...' transactions 10 years ago
Erik Johnston d7a0496f3e Convert storage layer to be mysql compatible 10 years ago
Kegan Dougal cb97ea3ec2 PEP8 10 years ago
Kegan Dougal 377ae369c1 Wrap all of get_app_service_rooms in a txn. 10 years ago
Paul "LeoNerd" Evans 357fba2c24 RoomMemberStore no longer needs a _user_rooms_cache member 10 years ago
Paul "LeoNerd" Evans ebc3db295b Take named arguments to @cached() decorator, add a 'max_entries' limit 10 years ago
Paul "LeoNerd" Evans 077d200342 Move @cached decorator out into synapse.storage._base; add minimal docs 10 years ago
Paul "LeoNerd" Evans 61959928bb Pull out the 'get_rooms_for_user' cache logic into a reüsable @cached decorator 10 years ago
Erik Johnston 72a4de2ce6 Use consumeErrors=True on all DeferredLists. 10 years ago
Paul "LeoNerd" Evans 7f47ba7383 Added another TODO note 10 years ago
Paul "LeoNerd" Evans 45b56609ae Cache the result of a get_rooms_for_user query, to make user_rooms_intersect() much lighter in the read-common case 10 years ago
Paul "LeoNerd" Evans 7be0f6594e First step of making user_rooms_intersect() faster - implement in intersection logic in Python code terms of a DB query that is cacheable per user 10 years ago
Mark Haines 5759bec43c Replace hs.parse_userid with UserID.from_string 10 years ago
Erik Johnston 96707ed718 Name 'user_rooms_intersect' transaction 10 years ago
Erik Johnston 76ec154e95 We don't need the full events for get_rooms_for_user_where_membership_is 10 years ago
Mark Haines adb04b1e57 Update copyright notices 10 years ago
Erik Johnston f0128f9600 Add RoomMemberStore.get_users_in_room, so that we can get the list of joined users without having to retrieve the full events 10 years ago
Erik Johnston f3788e3c78 Test some ideas that might help performance a bit 10 years ago
Paul "LeoNerd" Evans 10eb8f070c Workaround for non-uniqueness of room member events in the database confusing HAVING COUNT() test of room membership intersection (with thanks to Tom Molesworth) 10 years ago
Mark Haines 32090aee16 Add a few missing yields, Move deferred lists inside PreserveLoggingContext because they don't interact well with the logging contexts 10 years ago
Mark Haines 7d709542ca Fix pep8 warnings 10 years ago
Erik Johnston fbf6320614 pyflakes cleanup 10 years ago
Erik Johnston c818aa13eb Add LIMIT to scalar subquery 10 years ago
Erik Johnston 70899d3ab2 Rename deletions to redactions 10 years ago
Erik Johnston 78af6bbb98 Add m.room.deletion. If an event is deleted it will be returned to clients 'pruned', i.e. all client specified keys will be removed. 10 years ago
Erik Johnston 14975ce5bc Fix bug where we relied on the current_state_events being updated when we are handling type specific persistence 10 years ago
Erik Johnston b42fe05c51 Fix bug where we incorrectly removed a remote host from the list of hosts in 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 10 years ago
Paul "LeoNerd" Evans aa525e4a63 More accurate docs / clearer paramter names in RoomMemberStore 10 years ago
Paul "LeoNerd" Evans a87eac4308 Revert recent changes to RoomMemberStore 10 years ago
Paul "LeoNerd" Evans e53d77b501 Add a .runInteraction() method on SQLBaseStore itself to wrap the .db_pool 10 years ago
Paul "LeoNerd" Evans 249e8f2277 Add a better _store_room_member_txn() method that takes separated fields instead of an event object; also add FIXME comment about a big bug in the logic 10 years ago
Paul "LeoNerd" Evans aaf9ab68c6 Rename _store_room_member_txn to _store_room_member_from_event_txn so we can create another, more sensible function of that name 10 years ago
Erik Johnston 781ff713ba When getting a state event also include the previous content 10 years ago
Matthew Hodgson 8a7c1d6a00 fix the copyright holder from matrix.org to OpenMarket Ltd, as matrix.org hasn't been incorporated in time for launch. 10 years ago
Paul "LeoNerd" Evans da3e04df8b Rename the 'do_users_share_a_room' to something slightly less verb-sounding 10 years ago
Mark Haines b30358f439 add _get_room_member, fix datastore methods 10 years ago
Mark Haines ac21dfff6d Fix pyflakes errors 10 years ago
Mark Haines 4b2ad549d5 Move the event storage into a single transaction 10 years ago
Erik Johnston a664ec20e0 Add a do_users_share_a_room method and use that in the presence handler. 10 years ago
Kegan Dougal cab3095803 Removed member list servlet: now using generic state paths. 10 years ago
Erik Johnston 537ecd4e99 Turn off spammy logging 10 years ago
Erik Johnston d260a42ca2 PEP8 cleanups 10 years ago
Paul "LeoNerd" Evans 3c532314ec Fix imsync's SELECT query to only find the rooms I'm actually joined in, not every room I have ever joined 10 years ago
Erik Johnston 114984a236 Start chagning the events stream to work with the new DB schema 10 years ago