summary refs log tree commit diff
path: root/synapse/storage (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Create index on user_ips in the backgroundRichard van der Hoff2016-07-223-12/+80
| | | | | | | | user_ips is kinda big, so really we want to add the index in the background once we're running. Replace the schema delta with one which will do that. I've done this in a way that's reasonably easy to reuse as there a few other indexes I need, and I don't suppose they will be the last.
* storage/client_ips: remove some dead codeRichard van der Hoff2016-07-211-3/+0
|
* Merge branch 'develop' into rav/get_devices_apiRichard van der Hoff2016-07-201-1/+2
|\ | | | | | | (pick up PR #938 in the hope of fixing the UTs)
| * Record device_id in client_ipsRichard van der Hoff2016-07-201-1/+2
| | | | | | | | | | Record the device_id when we add a client ip; it's somewhat redundant as we could get it via the access_token, but it will make querying rather easier.
* | GET /devices endpointRichard van der Hoff2016-07-203-1/+109
|/ | | | | | | implement a GET /devices endpoint which lists all of the user's devices. It also returns the last IP where we saw that device, so there is some dancing to fish that out of the user_ips table.
* More doc-commentsRichard van der Hoff2016-07-201-7/+12
| | | | Fix some more comments on some things
* Merge pull request #932 from matrix-org/rav/register_refactorDavid Baker2016-07-201-2/+4
|\ | | | | Further registration refactoring
| * Further registration refactoringRichard van der Hoff2016-07-191-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * `RegistrationHandler.appservice_register` no longer issues an access token: instead it is left for the caller to do it. (There are two of these, one in `synapse/rest/client/v1/register.py`, which now simply calls `AuthHandler.issue_access_token`, and the other in `synapse/rest/client/v2_alpha/register.py`, which is covered below). * In `synapse/rest/client/v2_alpha/register.py`, move the generation of access_tokens into `_create_registration_details`. This means that the normal flow no longer needs to call `AuthHandler.issue_access_token`; the shared-secret flow can tell `RegistrationHandler.register` not to generate a token; and the appservice flow continues to work despite the above change.
* | Merge pull request #922 from matrix-org/erikj/file_api2Erik Johnston2016-07-203-1/+197
|\ \ | |/ |/| Feature: Add filter to /messages. Add 'contains_url' to filter.
| * CommentErik Johnston2016-07-201-0/+4
| |
| * Add support for filters in paginate_room_eventsErik Johnston2016-07-141-1/+51
| |
| * Add sender and contains_url field to events tableErik Johnston2016-07-142-0/+142
| |
* | schema fixRichard van der Hoff2016-07-191-1/+1
| | | | | | | | device_id should be text, not bigint.
* | Add device_id support to /loginRichard van der Hoff2016-07-185-10/+135
| | | | | | | | | | | | | | | | | | | | | | | | | | Add a 'devices' table to the storage, as well as a 'device_id' column to refresh_tokens. Allow the client to pass a device_id, and initial_device_display_name, to /login. If login is successful, then register the device in the devices table if it wasn't known already. If no device_id was supplied, make one up. Associate the device_id with the access token and refresh token, so that we can get at it again later. Ensure that the device_id is copied from the refresh token to the access_token when the token is refreshed.
* | Fix /purge_history bugErik Johnston2016-07-151-19/+15
| | | | | | | | This was caused by trying to insert duplicate backward extremeties
* | Pull out min stream_ordering from ex_outlier_streamErik Johnston2016-07-151-1/+2
| |
* | event_backwards_extremeties may not be emptyErik Johnston2016-07-151-1/+11
|/
* Add a comment explaining allow_noneMark Haines2016-07-081-0/+2
|
* Ensure that the guest user is in the database when upgrading accountsMark Haines2016-07-081-0/+13
|
* Merge branch 'master' of github.com:matrix-org/synapse into developErik Johnston2016-07-083-3/+14
|\
| * Merge pull request #886 from matrix-org/markjh/async_commitMark Haines2016-06-293-3/+14
| |\ | | | | | | Optionally make committing to postgres asynchronous.
| | * Optionally make committing to postgres asynchronous.Mark Haines2016-06-203-3/+14
| | | | | | | | | | | | | | | Useful when running tests when you don't care whether the server will lose data that it claims that it has committed.
* | | CommentErik Johnston2016-07-071-0/+3
| | |
* | | Return 400 rather than 500Erik Johnston2016-07-071-1/+4
| | |
* | | Add rest servlet. Fix SQL.Erik Johnston2016-07-061-5/+4
| | |
* | | Merge branch 'erikj/shared_secret' into erikj/test2Erik Johnston2016-07-063-83/+131
|\ \ \
| * | | Remove spurious txnErik Johnston2016-07-051-9/+0
| | | |
| * | | Fix for postgresErik Johnston2016-07-051-2/+2
| | | |
| * | | Add an admin option to shared secret registrationErik Johnston2016-07-051-23/+38
| | | |
| * | | Fix typoMark Haines2016-07-051-1/+1
| | | |
| * | | Make get_events_around more efficient on sqlite3Mark Haines2016-07-051-13/+49
| | | |
| * | | Use true/false for boolean parameter inclusive to avoid potential for sqli, ↵Mark Haines2016-07-052-5/+7
| | | | | | | | | | | | | | | | and possibly make the code clearer
| * | | Use different SQL for postgres and sqlite3 for when using multicolumn indexesMark Haines2016-07-042-59/+59
| | | |
| * | | Use a query that postgresql optimises better for get_events_aroundMark Haines2016-07-041-12/+16
| | | |
* | | | Add ReadWriteLock for pagination and history pruneErik Johnston2016-07-051-2/+2
| | | |
* | | | Add purge_history APIErik Johnston2016-07-051-0/+6
| | | |
* | | | Add storage function to purge history for a roomErik Johnston2016-07-041-0/+140
|/ / /
* | | Feature: Add deactivate account admin APIErik Johnston2016-06-302-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allows server admins to "deactivate" accounts, which: - Revokes all access tokens - Removes all threepids - Removes password The API is a POST to `/admin/deactivate/<user_id>`
* | | Implement purge_media_cache admin APIErik Johnston2016-06-291-0/+29
| | |
* | | Track approximate last access time for remote mediaErik Johnston2016-06-293-1/+47
| | |
* | | more pep8David Baker2016-06-241-1/+0
| | |
* | | Use similar naming we use in email notifs for pushDavid Baker2016-06-242-50/+0
| | | | | | | | | | | | Fixes https://github.com/vector-im/vector-web/issues/1654
* | | Actually we need to order these properlyDavid Baker2016-06-221-2/+12
| | | | | | | | | | | | otherwise we'll end up returning the wrong 20
* | | StyleDavid Baker2016-06-221-1/+1
| | |
* | | Put most recent 20 messages in notifDavid Baker2016-06-221-3/+4
|/ / | | | | | | Fixes https://github.com/vector-im/vector-web/issues/1648
* | Add the create_profile method back since the tests use itMark Haines2016-06-171-0/+6
| |
* | Remove registered_users from the distributor.Mark Haines2016-06-172-9/+14
|/ | | | | | | | | | The only place that was observed was to set the profile. I've made it so that the profile is set within store.register in the same transaction that creates the user. This required some slight changes to the registration code for upgrading guest users, since it previously relied on the distributor swallowing errors if the profile already existed.
* Don't hit DB for noop replications queriesErik Johnston2016-06-084-0/+12
|
* Remove dead code.Mark Haines2016-06-071-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.
* Fix AS retries, but with correct orderingErik Johnston2016-06-071-2/+2
|
* Fix AS retriesErik Johnston2016-06-071-2/+2
|
* Merge pull request #841 from matrix-org/erikj/event_counterErik Johnston2016-06-061-0/+9
|\ | | | | Add metric counter for number of persisted events
| * Add metric counter for number of persisted eventsErik Johnston2016-06-061-0/+9
| |
* | Add events to cache when we persist themErik Johnston2016-06-061-0/+41
|/
* Don't rely on options when inserting event into cacheErik Johnston2016-06-031-40/+43
|
* Change the way we cache eventsErik Johnston2016-06-031-39/+41
|
* Remove event fetching from DB threadsErik Johnston2016-06-035-194/+74
|
* Move insert_client_ip to a separate classMark Haines2016-06-032-45/+71
|
* Merge pull request #828 from matrix-org/erikj/joined_hosts_for_roomErik Johnston2016-06-031-16/+3
|\ | | | | Make get_joined_hosts_for_room use get_users_in_room
| * Make get_joined_hosts_for_room use get_users_in_roomErik Johnston2016-06-031-16/+3
| |
* | Merge pull request #825 from matrix-org/erikj/cache_push_rulesErik Johnston2016-06-032-2/+38
|\ \ | | | | | | Load push rules in storage layer so that they get cached
| * | Load push rules in storage layer, so that they get cachedErik Johnston2016-06-031-1/+37
| | |
| * | Only get local usersErik Johnston2016-06-031-1/+1
| |/
* | Merge pull request #824 from matrix-org/markjh/slaved_presence_storeMark Haines2016-06-031-3/+3
|\ \ | |/ |/| Add a slaved store for presence
| * Add a slaved store for presenceMark Haines2016-06-031-3/+3
| |
* | Merge pull request #811 from matrix-org/erikj/state_users_in_roomErik Johnston2016-06-033-17/+27
|\ \ | | | | | | Use state to calculate get_users_in_room
| * | Use state to calculate get_users_in_roomErik Johnston2016-06-013-17/+27
| | |
* | | Merge pull request #809 from matrix-org/erikj/cache_receipts_in_roomErik Johnston2016-06-031-0/+28
|\| | | |/ |/| Add get_users_with_read_receipts_in_room cache
| * Add get_users_with_read_receipts_in_room cacheErik Johnston2016-06-011-0/+28
| |
* | Fix setting the _clock in SQLBaseStoreMark Haines2016-06-021-0/+1
| |
* | Merge pull request #807 from matrix-org/erikj/push_rules_cacheErik Johnston2016-06-011-1/+2
|\ \ | | | | | | Ensure we always return boolean in push rules
| * | Force booleanErik Johnston2016-05-311-1/+2
| | |
* | | Merge pull request #806 from matrix-org/erikj/hash_cacheErik Johnston2016-06-011-9/+16
|\ \ \ | | | | | | | | Cache get_event_reference_hashes
| * | | Cache get_event_reference_hashesErik Johnston2016-05-311-9/+16
| | |/ | |/|
* | | Limit number of notifications in an email notificationDavid Baker2016-06-011-2/+4
| | |
* | | Fix synapse/storage/schema/delta/30/as_users.pyMark Haines2016-05-311-2/+2
| | |
* | | Merge pull request #805 from matrix-org/erikj/push_rules_cacheErik Johnston2016-05-311-2/+8
|\ \ \ | | |/ | |/| Fix GET /push_rules
| * | Fix typoErik Johnston2016-05-311-1/+1
| | |
| * | Change fixErik Johnston2016-05-311-2/+8
| |/
* | Merge pull request #804 from matrix-org/erikj/push_rules_cacheErik Johnston2016-05-311-6/+10
|\| | | | | Add caches to bulk_get_push_rules*
| * Add caches to bulk_get_push_rules*Erik Johnston2016-05-311-6/+10
| |
* | Fix to allow start with postgresErik Johnston2016-05-271-2/+7
| |
* | Remove debug loggingDavid Baker2016-05-231-1/+0
| |
* | Oops, missing commaDavid Baker2016-05-201-1/+1
| |
* | Remove stale lineDavid Baker2016-05-201-2/+0
| |
* | Handle empty events tableDavid Baker2016-05-201-0/+3
| |
* | Make deleting push actions more efficientDavid Baker2016-05-203-13/+68
| | | | | | | | There's no index on received_ts, so manually binary search using the stream_ordering index, and only update it once an hour.
* | Only delete push actions after 30 daysDavid Baker2016-05-202-6/+38
|/
* Add desc to get_presence_for_usersErik Johnston2016-05-181-0/+1
|
* Move the functions for parsing app service configMark Haines2016-05-171-102/+3
|
* get_room_members is unused nowMark Haines2016-05-161-18/+0
|
* Spell "domain" correctlyMark Haines2016-05-161-2/+2
| | | | s/domian/domain/g
* Allow receipts for events we haven't seen in the dbMark Haines2016-05-131-4/+6
|
* Merge pull request #778 from matrix-org/erikj/add_pusherErik Johnston2016-05-132-4/+17
|\ | | | | Fixup add_pusher
| * SpellingErik Johnston2016-05-131-1/+1
| |
| * Fixup add_pusherErik Johnston2016-05-132-4/+17
| |
* | Merge pull request #769 from matrix-org/erikj/push_actions_deleteErik Johnston2016-05-132-9/+29
|\ \ | | | | | | Delete old pushers
| * \ Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2016-05-067-46/+210
| |\ \ | | | | | | | | | | | | erikj/push_actions_delete
| * | | Delete old pushersErik Johnston2016-05-032-9/+29
| | | |
* | | | Merge pull request #779 from matrix-org/erikj/receiptsErik Johnston2016-05-131-3/+3
|\ \ \ \ | | | | | | | | | | Use tree cache for get_linearized_receipts_for_room
| * | | | Use tree cache for get_linearized_receipts_for_roomErik Johnston2016-05-131-3/+3
| | |_|/ | |/| |
* | | | Remove topics tableErik Johnston2016-05-131-1/+0
| | | |
* | | | Annotate the removed indicies with why they were removed.Mark Haines2016-05-131-18/+15
| | | |
* | | | Remove unused indicesErik Johnston2016-05-131-0/+42
|/ / / | | | | | | | | | | | | This includes removing both unused indices and indices that are subsets of other indices.
* | | unbreak schemaMatrix2016-05-102-0/+0
| | |
* | | Merge pull request #759 from matrix-org/dbkr/email_notifsMatthew Hodgson2016-05-105-13/+104
|\ \ \ | | | | | | | | Send email notifications for missed messages
| * \ \ Merge remote-tracking branch 'origin/develop' into dbkr/email_notifsDavid Baker2016-05-1010-62/+364
| |\ \ \
| * | | | Correct SQL statement for postgresDavid Baker2016-05-041-2/+3
| | | | | | | | | | | | | | | | | | | | In standard sql, join binds tighter than comma, so we were joining on the wrong table. Postgres follows the standard (apparently).
| * | | | Remove unused functionDavid Baker2016-04-291-22/+0
| | | | |
| * | | | Use explicit joinDavid Baker2016-04-291-3/+3
| | | | |
| * | | | Oops, actually specify the user idDavid Baker2016-04-291-1/+3
| | | | |
| * | | | Remove unnecessary ifDavid Baker2016-04-291-1/+1
| | | | |
| * | | | Put spaces at start of lineDavid Baker2016-04-291-16/+16
| | | | |
| * | | | Merge remote-tracking branch 'origin/develop' into dbkr/email_notifsDavid Baker2016-04-298-12/+199
| |\ \ \ \ | | | |/ / | | |/| |
| * | | | Send a rather basic email notifDavid Baker2016-04-202-2/+1
| | | | | | | | | | | | | | | | | | | | Also pep8 fixes
| * | | | First bits of emailpusherDavid Baker2016-04-195-7/+118
| | | | | | | | | | | | | | | | | | | | Mostly logic of when to send an email
* | | | | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/ignore_userErik Johnston2016-05-091-5/+2
|\ \ \ \ \ | | |_|/ / | |/| | |
| * | | | Merge pull request #773 from matrix-org/erikj/get_domian_from_idErik Johnston2016-05-091-5/+2
| |\ \ \ \ | | | | | | | | | | | | Add and use get_domain_from_id
| | * | | | Add and use get_domian_from_idErik Johnston2016-05-091-5/+2
| | | |_|/ | | |/| |
* | | | | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/ignore_userErik Johnston2016-05-096-56/+317
|\| | | |
| * | | | Merge pull request #772 from matrix-org/erikj/get_user_cacheErik Johnston2016-05-091-0/+3
| |\ \ \ \ | | | | | | | | | | | | Add cache to get_user_by_id
| | * | | | Add cache to get_user_by_idErik Johnston2016-05-091-0/+3
| | |/ / /
| * | | | Remove unused importErik Johnston2016-05-061-1/+1
| | | | |
| * | | | Pull loop one level upErik Johnston2016-05-061-36/+41
| | | | |
| * | | | Queue events for persistenceErik Johnston2016-05-061-11/+144
| |/ / /
| * | | Pull prev txn from in memoryErik Johnston2016-05-061-5/+13
| | | |
| * | | Don't needlessly enter transactionErik Johnston2016-05-061-9/+9
| | | |
| * | | Reduce database inserts when sending transactionsErik Johnston2016-05-061-44/+113
| | | |
| * | | Add an openidish mechanism for proving to third parties that you own a given ↵Mark Haines2016-05-053-1/+44
| | | | | | | | | | | | | | | | user_id
* | | | Add bulk fetch storage APIErik Johnston2016-05-051-3/+22
| | | |
* | | | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/ignore_userErik Johnston2016-05-044-1/+45
|\| | |
| * | | Add primary keyErik Johnston2016-05-041-1/+1
| | | |
| * | | Add timestamp and auto incrementing IDErik Johnston2016-05-043-1/+8
| | | |
| * | | Add /report endpointErik Johnston2016-05-043-1/+38
| | |/ | |/|
* / | Implement basic ignore userErik Johnston2016-05-041-0/+31
|/ /
* | Check that somethign has happend before running the selectsMark Haines2016-04-273-2/+14
| |
* | Simplify query and handle finishing correctlyErik Johnston2016-04-222-17/+16
| |
* | Order NULLs firstErik Johnston2016-04-212-5/+16
| |
* | Fix queryErik Johnston2016-04-211-2/+2
| |
* | Use special UPDATE syntaxErik Johnston2016-04-212-22/+14
| |
* | TypoErik Johnston2016-04-211-1/+1
| |
* | Need to do _background_update_progress_txn in actual transactionErik Johnston2016-04-211-6/+8
| |
* | Update progress when creating indexErik Johnston2016-04-211-0/+7
| |
* | Fix SQL statementErik Johnston2016-04-211-3/+3
| |
* | Create index must be on a connErik Johnston2016-04-211-6/+13
| |
* | Create index concurrentlyErik Johnston2016-04-212-6/+14
| |
* | Add missing run_upgradeErik Johnston2016-04-211-0/+4
| |
* | Optimise event_search in postgresErik Johnston2016-04-213-5/+137
| |
* | Add cache to _get_state_groups_from_groupsErik Johnston2016-04-191-3/+16
|/
* Add desc argErik Johnston2016-04-141-1/+5
|
* Add indexErik Johnston2016-04-141-0/+18
|
* Fix query for get_unread_push_actions_for_user_in_rangeErik Johnston2016-04-141-1/+2
|
* pep8David Baker2016-04-131-1/+1
|
* Only return unread notificationsDavid Baker2016-04-131-9/+50
| | | | Make get_unread_push_actions_for_user_in_range only return unread event actions, being more true to its name. Done in two separate sql queries to get actions after a read receipt and those in a room wiht no receipt at all. SQL queries by Erik.
* Merge pull request #716 from matrix-org/dbkr/get_pushersDavid Baker2016-04-121-14/+30
|\ | | | | Add get endpoint for pushers
| * UnneccessarywhitespaceisunnecessaryDavid Baker2016-04-121-1/+0
| |
| * Oops, forgot the desc.David Baker2016-04-121-1/+1
| |
| * Tidy up get_pusher functionsDavid Baker2016-04-121-32/+30
| | | | | | | | Decodes pushers rows on the main thread rather than the db thread and uses _simple_select_list. Also do the same to the function I copied and factor out the duplication into a helper function.
| * Mis-named functionDavid Baker2016-04-121-1/+1
| |
| * Add get endpoint for pushersDavid Baker2016-04-111-0/+19
| | | | | | | | As per https://github.com/matrix-org/matrix-doc/pull/308
* | Add back backfilled parameter that was removedErik Johnston2016-04-121-3/+4
| |
* | Check if we've already backfilled eventsErik Johnston2016-04-121-0/+16
|/
* Merge pull request #705 from matrix-org/dbkr/pushers_use_event_actionsDavid Baker2016-04-117-52/+209
|\ | | | | Change pushers to use the event_actions table
| * Fix invite pushesDavid Baker2016-04-081-0/+7
| | | | | | | | | | | | * If the event is an invite event, add the invitee to list of user we run push rules for (if they have a pusher etc) * Move invite_for_me to be higher prio than member events otherwise member events matches them * Spell override right
| * Literally a dictionaryDavid Baker2016-04-071-17/+17
| |
| * generate id in the main threadDavid Baker2016-04-071-3/+3
| |
| * Oops, inequality failDavid Baker2016-04-071-1/+1
| |
| * pep8David Baker2016-04-071-0/+1
| |
| * Fix port script for changes merged from developDavid Baker2016-04-071-1/+4
| |
| * Merge remote-tracking branch 'origin/develop' into ↵David Baker2016-04-0714-107/+91
| |\ | | | | | | | | | dbkr/pushers_use_event_actions
| * | Send badge count pushes.David Baker2016-04-071-3/+6
| | | | | | | | | | | | Also fix bugs with retrying.
| * | pep8David Baker2016-04-064-4/+8
| | |
| * | Make pushers use the event_push_actions table instead of listening on an ↵David Baker2016-04-066-49/+188
| | | | | | | | | | | | | | | | | | | | | event stream & running the rules again. Sytest passes, but remaining to do: * Make badges work again * Remove old, unused code
* | | Merge pull request #688 from matrix-org/matthew/preview_urlsMatthew Hodgson2016-04-112-1/+83
|\ \ \ | | | | | | | | URL previewing support
| * | | move local_media_repository_url_cache.sql to schema v31Matthew Hodgson2016-04-081-0/+0
| | | |
| * | | fix error checking for new SQLMatthew Hodgson2016-04-081-2/+2
| | | |
| * | | fix SQL based on PR feedbackMatthew Hodgson2016-04-081-2/+4
| | | |
| * | | Merge branch 'develop' into matthew/preview_urlsMatthew Hodgson2016-04-0718-140/+280
| |\ \ \ | | | |/ | | |/|
| * | | Merge branch 'develop' into matthew/preview_urlsMatthew Hodgson2016-04-0414-162/+346
| |\ \ \
| * | | | pep8Matthew Hodgson2016-04-031-1/+2
| | | | |
| * | | | add a persistent cache of URL lookups, and fix up the in-memory one to workMatthew Hodgson2016-04-032-1/+80
| | | | |
* | | | | Remove some unused functions (#711)Mark Haines2016-04-085-151/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove some unused functions * get_room_events_stream is only used in tests * is_exclusive_room might actually be something we want
* | | | | Add tests for redactionsMark Haines2016-04-071-1/+1
| |_|/ / |/| | |
* | | | Merge pull request #697 from matrix-org/markjh/slaveIMark Haines2016-04-061-2/+2
|\ \ \ \ | | | | | | | | | | Add a slaved events store class
| * | | | Add a slaved events store classMark Haines2016-04-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Add a test to check that get_room_names_and_aliases does the same thing on both the master and on the slave data store.
* | | | | Merge pull request #698 from matrix-org/erikj/port_script_fixErik Johnston2016-04-069-68/+51
|\ \ \ \ \ | |/ / / / |/| | | | Don't require config to create database
| * | | | Don't require config to create databaseErik Johnston2016-04-069-68/+51
| | |_|/ | |/| |
* | | | Merge pull request #694 from matrix-org/markjh/cachesMark Haines2016-04-062-33/+34
|\ \ \ \ | | | | | | | | | | Move _get_cache_dict into the SQLBaseStore
| * | | | Move _get_cache_dict into the SQLBaseStoreMark Haines2016-04-062-33/+34
| |/ / /
* / / / Make the cache objects be per instance rather than being globalMark Haines2016-04-063-5/+5
|/ / /
* | | Merge pull request #691 from matrix-org/erikj/memberErik Johnston2016-04-052-1/+21
|\ \ \ | | | | | | | | Fix stuck invites
| * | | Fix stuck invitesErik Johnston2016-04-052-1/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | Merge pull request #690 from matrix-org/erikj/memberErik Johnston2016-04-054-31/+151
|\| | | | | | | | | | | Store invites in a separate table.
| * | | Docs and indentsErik Johnston2016-04-042-13/+27
| | | |
| * | | Add upgrade path, rename tableErik Johnston2016-04-042-6/+20
| | | |
| * | | Store invites in a separate table.Erik Johnston2016-04-044-31/+123
| | | |
* | | | Merge pull request #689 from matrix-org/erikj/memberErik Johnston2016-04-041-0/+16
|\| | | | |_|/ |/| | Do checks for memberships before creating events
| * | Use computed prev event idsErik Johnston2016-04-011-0/+16
| | |
* | | Merge pull request #686 from matrix-org/markjh/doc_stringsMark Haines2016-04-013-13/+20
|\ \ \ | |/ / |/| | Use google style doc strings.
| * | Use google style doc strings.Mark Haines2016-04-013-13/+20
| | | | | | | | | | | | | | | | | | | | | 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.
* | | Merge pull request #684 from matrix-org/markjh/backfill_id_genMark Haines2016-04-0111-61/+71
|\ \ \ | | | | | | | | Use a stream id generator for backfilled ids
| * | | Assert that the step != 0Mark Haines2016-04-011-0/+1
| | | |
| * | | use google style doc stringsMark Haines2016-04-011-11/+12
| | | |
| * | | Rename direction to step, apply checks consistentlyMark Haines2016-04-012-16/+16
| | | |
| * | | Use a stream id generator for backfilled idsMark Haines2016-04-0111-61/+69
| |/ /
* / / Fix the invalidation of the names and aliases cacheMark Haines2016-04-011-1/+1
|/ /
* | Move the check for backfilled outside the for loopMark Haines2016-03-311-5/+5
| |
* | Remove the is_new_state argument to persist event.Mark Haines2016-03-311-40/+50
| | | | | | | | | | | | | | | | | | Move the checks for whether an event is new state inside persist event itself. This was harder than expected because there wasn't enough information passed to persist event to correctly handle invites from remote servers for new rooms.
* | Merge pull request #676 from matrix-org/markjh/replicate_stateIIIMark Haines2016-03-312-2/+114
|\ \ | | | | | | Add replication streams for ex outliers and current state resets
| * | Use a namedtuple rather than tuple unpackingMark Haines2016-03-311-2/+9
| | |
| * | Add replication streams for ex outliers and current state resetsMark Haines2016-03-302-1/+97
| | |
| * | Add a entry to current_state_resets table when the current state is resetMark Haines2016-03-301-0/+9
| | |
* | | return the state_group for backfillMark Haines2016-03-301-1/+2
|/ /
* | Add a replication stream for state groupsMark Haines2016-03-302-1/+35
| |
* | Use a stream id generator to assign state group idsMark Haines2016-03-303-49/+59
|/
* Don't bother interning keys that are already internedErik Johnston2016-03-231-3/+1
|
* Intern all the thingsErik Johnston2016-03-233-17/+17
|
* String internErik Johnston2016-03-231-3/+9
|
* Merge pull request #664 from matrix-org/erikj/public_room_listErik Johnston2016-03-231-0/+23
|\ | | | | Don't require alias in public room list.
| * Comment about weird SQLErik Johnston2016-03-231-1/+3
| |
| * SQLite and postgres doesn't share a true literalErik Johnston2016-03-231-1/+1
| |
| * Ensure all old public rooms have aliasesErik Johnston2016-03-231-0/+21
| |
* | Merge pull request #663 from matrix-org/erikj/invite_for_userErik Johnston2016-03-231-6/+4
|\ \ | | | | | | Make get_invites return RoomsForUser
| * | Make get_invites return RoomsForUserErik Johnston2016-03-231-6/+4
| |/
* | Merge pull request #665 from matrix-org/erikj/dont_cache_eventsErik Johnston2016-03-233-23/+30
|\ \ | | | | | | Only cache events in the event cache
| * | Don't cache events in get_recent_events_for_roomErik Johnston2016-03-231-14/+19
| | |
| * | Don't cache events in get_current_state_for_keyErik Johnston2016-03-232-9/+11
| |/
* / Make StateHandler._state_cache only store event_ids.Erik Johnston2016-03-221-0/+25
|/
* Bump get_unread_event_push_actions_by_room_for_user cacheErik Johnston2016-03-221-1/+1
|
* Bump get_aliases_for_room cacheErik Johnston2016-03-221-1/+1
|
* Merge pull request #660 from matrix-org/erikj/state_cacheErik Johnston2016-03-221-60/+48
|\ | | | | Don't cache events in _state_group_cache
| * Don't cache events in _state_group_cacheErik Johnston2016-03-221-60/+48
| | | | | | | | | | | | | | | | | | Instead, simply cache the event ids, relying on the event cache to cache the actual events. The problem was that while the state groups cache was limited in the number of groups it could hold, each individual group could consist of thousands of events.
* | Merge pull request #659 from matrix-org/erikj/state_cache_factorErik Johnston2016-03-221-1/+7
|\ \ | | | | | | Make stateGroupCache honour CACHE_SIZE_FACTOR
| * | Make stateGroupCache honour CACHE_SIZE_FACTORErik Johnston2016-03-221-1/+7
| |/
* | Merge pull request #657 from matrix-org/erikj/roomlistErik Johnston2016-03-221-0/+8
|\ \ | |/ |/| Add published room list edit API
| * Add published room list edit APIErik Johnston2016-03-211-0/+8
| |
* | Remove unused backfilled parameter from persist_eventMark Haines2016-03-211-18/+4
|/
* Dedupe requested event list in _get_eventsErik Johnston2016-03-181-14/+12
|
* Remove dead code left over from presence changesMark Haines2016-03-171-24/+0
|
* Add a comment to offer a hint to an explanation for why we have a unique ↵Mark Haines2016-03-161-0/+1
| | | | constraint on (app_id, pushkey, user_id)
* Fix a couple of errors when deleting pushersMark Haines2016-03-151-2/+2
|
* Add replication stream for pushersMark Haines2016-03-154-17/+82
|
* Thats not how transactions work.Erik Johnston2016-03-111-13/+16
|
* Implement logoutErik Johnston2016-03-111-14/+35
|
* Fix SQL statementErik Johnston2016-03-111-1/+1
|
* Merge pull request #641 from matrix-org/dbkr/fix_change_passwordErik Johnston2016-03-111-21/+18
|\ | | | | Fix logout on password change
| * more pep8David Baker2016-03-111-1/+1
| |
| * Make select more sensible when dseleting access tokens, rename pusher ↵David Baker2016-03-111-5/+3
| | | | | | | | deletion to match access token deletion and make exception arg optional.
| * Delete old, unused methods and rename new one to just be ↵David Baker2016-03-111-15/+2
| | | | | | | | `user_delete_access_tokens` with an `except_token_ids` argument doing what it says on the tin.
| * Dear PyCharm, please indent sensibly for me. Thx.David Baker2016-03-111-1/+1
| |