summary refs log tree commit diff
path: root/synapse/storage (follow)
Commit message (Collapse)AuthorAgeFilesLines
* 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
| |
| * Fix cache invalidation so deleting access tokens (which we did when changing ↵David Baker2016-03-111-8/+20
| | | | | | | | password) actually takes effect without HS restart. Reinstate the code to avoid logging out the session that changed the password, removed in 415c2f05491ce65a4fc34326519754cd1edd9c54
* | Merge pull request #635 from matrix-org/erikj/sync_orderErik Johnston2016-03-111-3/+6
|\ \ | |/ |/| Use topological orders for initial sync timeline
| * Add commentErik Johnston2016-03-091-0/+3
| |
| * Return the correct token formErik Johnston2016-03-091-1/+1
| |
| * Use topological orders for initial sync timelineErik Johnston2016-03-091-2/+2
| |
* | Store appservice ID on registerDaniel Wagner-Hall2016-03-101-6/+34
| |
* | Update users table in a batched mannerErik Johnston2016-03-101-9/+14
|/
* Ensure integer is an integerErik Johnston2016-03-091-1/+1
|
* Merge pull request #632 from matrix-org/markjh/py3v2Mark Haines2016-03-086-6/+6
|\ | | | | Fix relative imports so they work in both py3 and py27
| * Fix relative imports so they work in both py3 and py27Mark Haines2016-03-086-6/+6
| |
* | Merge branch 'develop' into daniel/ickDaniel Wagner-Hall2016-03-087-86/+302
|\|
| * Prefill from the correct streamMark Haines2016-03-041-1/+1
| |
| * prefill the push rules stream change cacheMark Haines2016-03-041-2/+9
| |
| * s/stream_ordering/event_stream_ordering/ in pushMark Haines2016-03-042-26/+30
| |
| * /FNARG/dMark Haines2016-03-041-1/+0
| |
| * Merge branch 'develop' into markjh/pushrule_streamMark Haines2016-03-048-26/+126
| |\
| | * Merge pull request #614 from matrix-org/erikj/alias_deleteErik Johnston2016-03-042-1/+30
| | |\ | | | | | | | | Allow alias creators to delete aliases
| | | * Allow alias creators to delete aliasesErik Johnston2016-03-012-1/+30
| | | |
| * | | Hook up the push rules stream to account_data in /syncMark Haines2016-03-042-68/+62
| | | |
| * | | Hook push rules up to the replication APIMark Haines2016-03-021-0/+6
| | | |
| * | | Add a stream for push rule updatesMark Haines2016-03-015-74/+251
| | | |
* | | | Idempotent-ise schema update scriptDaniel Wagner-Hall2016-03-081-1/+5
| |/ / |/| | | | | | | | | | | If any ASes don't have an ID, the schema will fail, and then it will error when trying to add the column again.
* | | Merge pull request #571 from matrix-org/daniel/asidsDaniel Wagner-Hall2016-03-036-25/+96
|\ \ \ | |/ / |/| | Mark AS users with their AS's ID
| * | Mark AS users with their AS's IDDaniel Wagner-Hall2016-02-116-26/+97
| | |
* | | Merge pull request #489 from matrix-org/markjh/replicationMark Haines2016-03-015-2/+164
|\ \ \ | | | | | | | | Add a /replication API for extracting the updates that happened on synapse.
| * | | Add a /replication API for extracting the updates that happened onMark Haines2016-03-015-2/+164
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | synapse This is necessary for replicating the data in synapse to be visible to a separate service because presence and typing notifications aren't stored in a database so won't be visible to another process. This API can be used to either get the raw data by requesting the tables themselves or to just receive notifications for updates by following the streams meta-stream. Returns updates for each table requested a JSON array of arrays with a row for each row in the table. Each table is prefixed by a header row with the: name of the table, current stream_id position for the table, number of rows, number of columns and the names of the columns. This is followed by the rows that have been added to the server since the requester last asked. The API has a timeout and is hooked up to the notifier so that a slave can long poll for updates.
* / | Load the current id in the IdGenerator constructorMark Haines2016-03-0112-77/+52
|/ / | | | | | | | | | | | | | | | | Rather than loading them lazily. This allows us to remove all the yield statements and spurious arguments for the get_next methods. It also allows us to replace all instances of get_next_txn with get_next since get_next no longer needs to access the db.
* | Add support for changing the actions for default rulesMark Haines2016-02-261-0/+25
| | | | | | | | | | | | See matrix-org/matrix-doc#283 Works by adding dummy rules to the push rules table with a negative priority class and then using those rules to clobber the default rule actions when adding the default rules in ``list_with_base_rules``
* | Generate guest access token on 3pid invitesDaniel Wagner-Hall2016-02-242-0/+68
| | | | | | | | | | | | | | | | | | This means that following the same link across multiple sessions or devices can re-use the same guest account. Note that this is somewhat of an abuse vector; we can't throw up captchas on this flow, so this is a way of registering ephemeral accounts for spam, whose sign-up we don't rate limit.
* | Create a new stream_id per presence updateErik Johnston2016-02-231-6/+9
| |
* | Merge pull request #582 from matrix-org/erikj/presenceErik Johnston2016-02-1910-65/+211
|\ \ | | | | | | Rewrite presence for performance.
| * | Close cursorErik Johnston2016-02-181-0/+1
| | |
| * | Remove unused param from get_max_tokenErik Johnston2016-02-186-13/+11
| | |
| * | Prefix TS fields with _tsErik Johnston2016-02-183-16/+17
| | |
| * | Initial cutErik Johnston2016-02-175-55/+201
| | |
* | | Remove dead code for setting device specific rules.Mark Haines2016-02-182-7/+6
| | | | | | | | | | | | | | | | | | It wasn't possible to hit the code from the API because of a typo in parsing the request path. Since no-one was using the feature we might as well remove the dead code.
* | | Merge branch 'develop' into daniel/roomcleanupincrementalDaniel Wagner-Hall2016-02-171-82/+86
|\| | | | | | | | | | | | | | Conflicts: synapse/rest/client/v1/room.py
| * | Make adding push rules idempotentMark Haines2016-02-161-82/+86
| | | | | | | | | | | | | | | | | | Also remove the **kwargs from the add_push_rule method. Fixes https://matrix.org/jira/browse/SYN-391
* | | Respond to federated invite with non-empty contextDaniel Wagner-Hall2016-02-171-4/+4
|/ / | | | | | | | | | | | | Currently, we magically perform an extra database hit to find the inviter, and use this to guess where we should send the event. Instead, fill in a valid context, so that other callers relying on the context actually have one.
* | Fix SYN-627, events are in incorrect room in /syncErik Johnston2016-02-111-1/+1
| |
* | Return events in correct order for /eventsErik Johnston2016-02-111-8/+11
|/
* Batch fetch _get_state_groups_from_groupsErik Johnston2016-02-101-32/+34
|
* Use _simple_select_many for _get_state_group_for_eventsErik Johnston2016-02-101-16/+10
|
* Merge pull request #568 from matrix-org/erikj/unread_notifErik Johnston2016-02-102-39/+32
|\ | | | | Atomically persit push actions when we persist the event
| * Rename functionsErik Johnston2016-02-102-4/+4
| |
| * Atomically persit push actions when we persist the eventErik Johnston2016-02-092-39/+32
| |
* | Change a log from debug to infoErik Johnston2016-02-091-1/+1
|/
* Invalidate get_last_receipt_event_id_for_user cacheErik Johnston2016-02-091-0/+5
|
* Don't load all ephemeral state for a room on every syncErik Johnston2016-02-091-0/+14
|
* Fix up logcontextsErik Johnston2016-02-084-29/+37
|
* Allocate guest user IDs numericcallyDaniel Wagner-Hall2016-02-051-0/+36
| | | | | | | | | The current random IDs are ugly and confusing when presented in UIs. This makes them prettier and easier to read. Also, disable non-automated registration of numeric IDs so that we don't need to worry so much about people carving out our automated address space and us needing to keep retrying ID registration.
* Actually return something sensibleErik Johnston2016-02-031-1/+1
|
* We return dicts now.Erik Johnston2016-02-031-1/+1
|
* Add descriptionsErik Johnston2016-02-034-1/+5
|
* Merge pull request #554 from matrix-org/erikj/event_pushErik Johnston2016-02-033-16/+64
|\ | | | | Change event_push_actions_rm_tokens schema
| * Change event_push_actions_rm_tokens schemaErik Johnston2016-02-033-16/+64
| |
* | Simplify get_roomsErik Johnston2016-02-031-77/+7
| |
* | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2016-02-036-36/+42
|\| | | | | | | erikj/public_room_fix
| * Fix flake8 warnings for new flake8Daniel Wagner-Hall2016-02-026-9/+12
| |
| * s/get_room_changes_for_user/get_membership_changes_for_user/Erik Johnston2016-02-021-2/+2
| |
| * Fetch events in a separate transaction.Erik Johnston2016-02-021-26/+29
| | | | | | | | | | | | | | | | | | This has a couple of benefits: - It reduces the time of transactions, allowing other database requests to run. - Fetching events is given a dedicated database thread, and so can't starve other database requests.
* | Unused importErik Johnston2016-02-031-1/+1
| |
* | Change the way we do public room list fetchingErik Johnston2016-02-022-1/+17
|/
* Order things correctlyErik Johnston2016-02-011-0/+4
|
* Switch over /events to use per room cachesErik Johnston2016-02-011-2/+2
|