summary refs log tree commit diff
path: root/synapse/storage/_base.py (follow)
Commit message (Expand)AuthorAgeFilesLines
* Be stricter about JSON that is accepted by Synapse (#8106)Patrick Cloke2020-08-191-4/+3
* Convert the roommember database to async/await. (#8070)Patrick Cloke2020-08-121-1/+0
* Rename database classes to make some sense (#8033)Erik Johnston2020-08-051-3/+3
* Consistently use `db_to_json` to convert from database values to JSON objects...Patrick Cloke2020-07-161-2/+2
* remove `builtins.buffer` code from storage codeRichard van der Hoff2020-05-151-8/+0
* Support any process writing to cache invalidation stream. (#7436)Erik Johnston2020-05-071-0/+3
* Clarify list/set/dict/tuple comprehensions and enforce via flake8 (#6957)Patrick Cloke2020-02-211-1/+1
* Allow streaming cache invalidate all to workers. (#6749)Erik Johnston2020-01-221-5/+13
* Add a background update to clear tombstoned rooms from the directory (#6648)Richard van der Hoff2020-01-071-1/+3
* Add database config class (#6513)Erik Johnston2019-12-181-1/+1
* Pass Database into the data storeErik Johnston2019-12-061-1/+1
* Change DataStores to accept 'database' param.Erik Johnston2019-12-061-1/+1
* CommentsErik Johnston2019-12-051-1/+7
* Move DB pool and helper functions into dedicated Database classErik Johnston2019-12-051-1462/+6
* Remove underscore from SQLBaseStore functionsErik Johnston2019-12-041-73/+69
* Don't call SQLBaseStore methods from outside storesErik Johnston2019-12-041-8/+0
* Revert "Move get_user_count_txn out of base store"Erik Johnston2019-12-041-0/+12
* Move get_user_count_txn out of base storeErik Johnston2019-12-041-12/+0
* Move cache invalidation to main data storeErik Johnston2019-12-041-104/+0
* Move event fetch vars to EventWorkStoreErik Johnston2019-12-041-12/+0
* Move account validity bg updates to registration storeErik Johnston2019-12-041-66/+0
* Make sure that we close cursors before returning from a query (#6408)Richard van der Hoff2019-11-251-9/+42
* Clean up newline quote marks around the codebase (#6362)Andrew Morgan2019-11-211-1/+1
* Fix guest -> real account upgrade with account validity enabled (#6359)Andrew Morgan2019-11-141-6/+3
* Remove usage of deprecated logger.warn method from codebase (#6271)Andrew Morgan2019-10-311-3/+3
* Fix SQLite take 2Erik Johnston2019-10-101-1/+1
* Remove add_in_list_sql_clauseErik Johnston2019-10-101-29/+6
* Merge branch 'develop' of github.com:matrix-org/synapse into erikj/postgres_anyErik Johnston2019-10-101-3/+4
|\
| * Patch inlinecallbacks for log contextsErik Johnston2019-09-271-3/+4
* | Add helper funcs to use postgres ANYErik Johnston2019-10-101-8/+56
|/
* Fix a cache-invalidation bug for worker-based deployments (#5920)Richard van der Hoff2019-08-281-8/+16
* Replace returnValue with return (#5736)Amber Brown2019-07-231-7/+7
* LoggingTransaction accepts None for callback lists.Erik Johnston2019-07-191-2/+16
* Move logging utilities out of the side drawer of util/ and into logging/ (#5606)Amber Brown2019-07-041-1/+1
* Merge pull request #5499 from matrix-org/rav/cleanup_metricsRichard van der Hoff2019-06-241-22/+13
|\
| * blackRichard van der Hoff2019-06-241-6/+2
| * Merge branch 'develop' into rav/cleanup_metricsRichard van der Hoff2019-06-241-4/+2
| |\
| * | Simplify PerformanceCounters.update interfaceRichard van der Hoff2019-06-191-11/+12
| * | Remove unused _get_event_countersRichard van der Hoff2019-06-191-7/+1
* | | Merge pull request #5498 from matrix-org/rav/fix_clock_reversalRichard van der Hoff2019-06-241-6/+14
|\ \ \ | |_|/ |/| |
| * | Use monotonic clock where possible for metricsRichard van der Hoff2019-06-191-6/+14
* | | Run Black. (#5482)Amber Brown2019-06-201-4/+2
| |/ |/|
* | Don't send renewal emails to deactivated usersBrendan Abolivier2019-06-141-2/+2
|/
* Add ability to perform password reset via email without trusting the identity...Andrew Morgan2019-06-061-1/+5
* Merge pull request #5276 from matrix-org/babolivier/account_validity_job_deltaErik Johnston2019-05-311-2/+20
|\
| * Move delta from +10% to -10%Brendan Abolivier2019-05-311-2/+2
| * Make max_delta equal to period * 10%Brendan Abolivier2019-05-311-4/+3
| * Allow configuring a range for the account validity startup jobBrendan Abolivier2019-05-281-2/+21
* | Log actual number of entries deletedErik Johnston2019-05-291-3/+9
|/
* Do the select and insert in a single transactionBrendan Abolivier2019-05-211-10/+6
* Add startup background job for account validityBrendan Abolivier2019-05-171-0/+62
* Clean up the database pagination code (#5007)Amber Brown2019-04-051-60/+50
* Run black on the rest of the storage module (#4996)Amber Brown2019-04-031-223/+173
* Fix sync bug when accepting invites (#4956)Richard van der Hoff2019-04-021-5/+0
* fixesAmber Brown2019-03-121-3/+10
* Limit cache invalidation replication line length (#4748)Erik Johnston2019-02-271-4/+11
* Add database version to phonehome stats. (#4753)Richard van der Hoff2019-02-271-0/+8
* Fix state cache invalidation on workersErik Johnston2019-02-221-6/+34
* UPSERT many functionality (#4644)Amber Brown2019-02-201-12/+134
* DocsErik Johnston2019-02-191-2/+3
* Use itertoolsErik Johnston2019-02-191-2/+2
* DocumentationErik Johnston2019-02-191-4/+4
* Batch cache invalidation over replicationErik Johnston2019-02-181-1/+56
* Fix 'no unique or exclusion constraint' error (#4591)Richard van der Hoff2019-02-081-6/+21
* Fix typo in upserts code (#4505)Amber Brown2019-01-291-1/+1
* Fix UPSERTs on SQLite 3.24+ (#4477)Amber Brown2019-01-281-2/+8
* Fix UPSERT check (#4459)Amber Brown2019-01-241-5/+28
* Use native UPSERTs where possible (#4306)Amber Brown2019-01-241-11/+137
* Fix adding new rows instead of updating them if one of the key values is a NU...Amber Brown2019-01-091-1/+9
* add more detail to logging regarding "More than one row matched" error (#4234)Ben Parsons2018-12-041-6/+6
* Fix UnicodeDecodeError when postgres is not configured in english (#4253)Richard van der Hoff2018-12-041-7/+8
* Make scripts/ and scripts-dev/ pass pyflakes (and the rest of the codebase on...Amber Brown2018-10-201-2/+2
* Port storage/ to Python 3 (#3725)Amber Brown2018-08-311-1/+31
* initial cut at a room summary API (#3574)Matthew Hodgson2018-08-161-4/+3
* Fix another logcontext leak in _persist_eventsRichard van der Hoff2018-07-251-0/+6
* revert 00bc979Richard van der Hoff2018-07-191-4/+3
* Disable logcontext warningRichard van der Hoff2018-07-191-3/+4
* Attempt to include db threads in cpu usage stats (#3496)Richard van der Hoff2018-07-101-17/+15
* run isortAmber Brown2018-07-091-10/+9
* update metrics to be in secondsAmber Brown2018-05-281-15/+15
* Merge remote-tracking branch 'origin/develop' into 3218-official-promAmber Brown2018-05-281-18/+29
|\
| * Merge pull request #3278 from NotAFile/py3-storage-baseAmber Brown2018-05-241-17/+22
| |\
| | * Py3 storage/_base.pyAdrian Tschira2018-05-241-17/+22
| * | use stand-in value if maxint is not availableAdrian Tschira2018-05-191-1/+7
| |/
* / rest of the changesAmber Brown2018-05-211-10/+7
|/
* Use psycopg2cffi module instead of psycopg2 if running on pypyVincent Breitmoser2018-04-101-1/+1
* Fix bug with delayed cache invalidation streamErik Johnston2018-03-021-12/+14
* Track DB scheduling delay per-requestRichard van der Hoff2018-01-161-1/+3
* rework runInteraction in terms of runConnectionRichard van der Hoff2018-01-161-20/+31
* Merge branch 'develop' into matthew/search-all-local-usersMatthew Hodgson2017-11-301-9/+14
|\
| * Merge pull request #2697 from matrix-org/rav/fix_urlcache_index_errorRichard van der Hoff2017-11-271-9/+7
| |\
| | * fix sql failsRichard van der Hoff2017-11-221-1/+1
| | * Check database in has_completed_background_updatesRichard van der Hoff2017-11-221-9/+7
| * | Avoid retrying forever on IntegrityErrorRichard van der Hoff2017-11-271-0/+7
| |/
* / untested WIP but might actually workMatthew Hodgson2017-11-291-1/+1
|/
* Fix broken ref to IntegrityErrorRichard van der Hoff2017-11-161-1/+1
* _simple_upsert: retry on IntegrityErrorRichard van der Hoff2017-11-161-6/+29
* Cleanup in _simple_upsert_txnRichard van der Hoff2017-11-161-16/+17
* Revert "Revert "move _state_group_cache to statestore""Richard van der Hoff2017-11-141-6/+0
* Make __init__ consitstent across Store heirarchyRichard van der Hoff2017-11-131-1/+1
* Revert "move _state_group_cache to statestore"Erik Johnston2017-11-131-0/+6
* move _state_group_cache to statestoreRichard van der Hoff2017-11-071-6/+0
* replace 'except:' with 'except Exception:'Richard van der Hoff2017-10-231-1/+1
* Add _simple_updateErik Johnston2017-08-251-19/+32
* Define CACHE_SIZE_FACTOR onceErik Johnston2017-07-041-4/+1
* Merge pull request #2259 from matrix-org/erikj/fix_state_woesErik Johnston2017-06-071-8/+21
|\
| * Fix bug where state_group tables got corruptedErik Johnston2017-06-071-8/+21
* | Split the table in twoErik Johnston2017-06-011-0/+5
|/
* Prefill state cachesErik Johnston2017-05-151-4/+4
* Revert "Prefill state caches"Erik Johnston2017-05-041-4/+4
* Prefill state cachesErik Johnston2017-05-021-4/+4
* Use iter(items|values)Erik Johnston2017-03-241-6/+6
* User Cursor.__iter__ instead of fetchallErik Johnston2017-03-231-5/+8
* Implement _simple_delete_many_txn, use it to delete devicesLuke Barnard2017-03-131-0/+41
* Remove spurious SQL logging (#1972)Richard van der Hoff2017-03-081-8/+0
* Intern table column names onceErik Johnston2017-02-281-3/+2
* Strip newlines from SQL queriesErik Johnston2017-02-231-0/+6
* admin,storage: added more administrator functionalitiesMorteza Araby2017-02-021-0/+159
* Add basic implementation of local device list changesErik Johnston2017-01-251-0/+6
* Increase state_group_cache_sizeErik Johnston2017-01-171-1/+1
* Limit number of entries to prefill from cacheErik Johnston2017-01-101-2/+3
* Fix testsErik Johnston2016-11-211-2/+2
* Store federation stream positions in the databaseErik Johnston2016-11-211-4/+14
* Refactor test_filter to use real DataStorepik2016-10-181-1/+0
* Remove lru optionErik Johnston2016-08-191-1/+1
* Do it in storage functionErik Johnston2016-08-161-0/+3
* Use cached get_user_by_access_token in slavesErik Johnston2016-08-161-0/+1
* Doc get_next() context manager usageErik Johnston2016-08-151-0/+4
* Rename table. Add docs.Erik Johnston2016-08-151-2/+10
* Implement cache replication streamErik Johnston2016-08-151-12/+35
* Add some invalidations to a cache_streamErik Johnston2016-08-151-0/+18
* Always run txn.after_callbacksErik Johnston2016-08-151-7/+8
* More doc-commentsRichard van der Hoff2016-07-201-7/+12
* Feature: Add deactivate account admin APIErik Johnston2016-06-301-0/+5
* Fix setting the _clock in SQLBaseStoreMark Haines2016-06-021-0/+1
* Make deleting push actions more efficientDavid Baker2016-05-201-1/+0
* SpellingErik Johnston2016-05-131-1/+1
* Fixup add_pusherErik Johnston2016-05-131-1/+7
* Remove some unused functions (#711)Mark Haines2016-04-081-6/+0
* Move _get_cache_dict into the SQLBaseStoreMark Haines2016-04-061-0/+34
* Intern all the thingsErik Johnston2016-03-231-1/+2
* Make stateGroupCache honour CACHE_SIZE_FACTORErik Johnston2016-03-221-1/+7
* Add a stream for push rule updatesMark Haines2016-03-011-7/+18
* Fix up logcontextsErik Johnston2016-02-081-9/+9
* Fix flake8 warnings for new flake8Daniel Wagner-Hall2016-02-021-2/+5
* Add a Homeserver.setup method.Erik Johnston2016-01-261-26/+23
* Guard against empty iterablesErik Johnston2016-01-251-0/+6
* Correct docstringErik Johnston2016-01-251-1/+0
* Implement a _simple_select_many_batchErik Johnston2016-01-251-0/+67
* copyrightsMatthew Hodgson2016-01-071-1/+1
* Track the time spent in the database per request.Mark Haines2015-12-071-2/+7
* Add basic full text search impl.Erik Johnston2015-10-091-1/+1
* synapse/storage/_base.py:_simple_max_id was unusedMark Haines2015-09-231-18/+0
* synapse/storage/_base.py:_simple_delete was unusedMark Haines2015-09-231-10/+0
* synapse/storage/_base.py:_simple_selectupdate_one was unusedMark Haines2015-09-231-31/+0
* synapse/storage/_base.py:_execute_and_decode was unusedMark Haines2015-09-221-3/+0
* synapse/storage/_base.py:Table was unusedMark Haines2015-09-221-128/+0
* Merge branch 'release-v0.10.0' of github.com:matrix-org/synapse into developErik Johnston2015-09-011-1/+1
|\
| * Lower size of 'stateGroupCache' now that we have data from matrix.org to supp...Erik Johnston2015-09-011-1/+1
* | /tokenrefresh POST endpointDaniel Wagner-Hall2015-08-201-0/+1
|/
* Move all the caches into their own package, synapse.util.cachesErik Johnston2015-08-111-332/+3
* CommentsErik Johnston2015-08-111-0/+2
* CommentErik Johnston2015-08-111-0/+2
* DocsErik Johnston2015-08-111-0/+9
* CommentsErik Johnston2015-08-101-0/+6
* Merge branch 'erikj/cache_varargs_interface' of github.com:matrix-org/synapse...Erik Johnston2015-08-101-5/+5
|\
| * Rename keyargs to args in CacheDescriptorErik Johnston2015-08-101-5/+5
* | Merge branch 'erikj/cache_varargs_interface' of github.com:matrix-org/synapse...Erik Johnston2015-08-101-9/+9
|\|
| * Rename keyargs to args in CacheErik Johnston2015-08-101-9/+9
| * Merge branch 'erikj/cache_deferreds' of github.com:matrix-org/synapse into er...Erik Johnston2015-08-071-3/+3
| |\
| * \ Merge branch 'erikj/cache_deferreds' of github.com:matrix-org/synapse into er...Erik Johnston2015-08-071-3/+4
| |\ \
| * | | Change Cache to not use *args in its interfaceErik Johnston2015-08-071-30/+31
* | | | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/dictionary...Erik Johnston2015-08-071-3/+4
|\ \ \ \ | | |_|/ | |/| |
| * | | s/observed/observer/Erik Johnston2015-08-071-3/+3
| | |/ | |/|
| * | Propogate stale cache errors to calling functionsErik Johnston2015-08-071-3/+4
| |/
* | Implement a CacheListDescriptorErik Johnston2015-08-071-0/+106
* | Change Cache to not use *args in its interfaceErik Johnston2015-08-071-50/+35
* | Merge branch 'erikj/cache_deferreds' into erikj/dictionary_cacheErik Johnston2015-08-061-3/+27
|\|
| * DocsErik Johnston2015-08-061-0/+3
| * Remove failed deferreds from cacheErik Johnston2015-08-061-1/+7
| * Re-implement DEBUG_CACHES flagErik Johnston2015-08-061-2/+17
* | Merge branch 'erikj/cache_deferreds' into erikj/dictionary_cacheErik Johnston2015-08-061-13/+8
|\|
| * Merge branch 'erikj/cached_keyword_args' into erikj/cache_deferredsErik Johnston2015-08-061-3/+3
| |\
| | * Merge branch 'develop' of github.com:matrix-org/synapse into erikj/cached_key...Erik Johnston2015-08-061-3/+3
| | |\
| * | | Make @cached cache deferreds rather than the deferreds' valuesErik Johnston2015-08-061-13/+8
| |/ /
* | | Merge branch 'erikj/cached_keyword_args' of github.com:matrix-org/synapse int...Erik Johnston2015-08-051-6/+34
|\| |
| * | Add support for using keyword arguments with cached functionsErik Johnston2015-07-271-6/+34
* | | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/dictionary...Erik Johnston2015-08-051-3/+3
|\ \ \ | | |/ | |/|
| * | Use LRU cache by defaultErik Johnston2015-08-051-3/+3
| |/
* | Use dictionary cache to do group -> state fetchingErik Johnston2015-08-051-13/+26
* | Speed up event filtering (for ACL) logicErik Johnston2015-08-041-2/+8
|/
* Add basic storage functions for handling of receiptsErik Johnston2015-07-011-1/+2
* Caches should be bound to instances.Erik Johnston2015-06-031-14/+31
* Merge branch 'master' of github.com:matrix-org/synapse into developErik Johnston2015-05-221-0/+6
|\
| * Add caches for things requested by the pushersMark Haines2015-05-211-0/+1
| * Add a cache for get_current_state with state_keyMark Haines2015-05-211-0/+5
* | Remove unused metricErik Johnston2015-05-181-1/+0
* | Newline, remove debug loggingErik Johnston2015-05-181-1/+0
* | PEP8Erik Johnston2015-05-151-1/+0
* | Add a waitErik Johnston2015-05-151-1/+1
* | Fix daedlockErik Johnston2015-05-151-16/+10
* | Remove race conditionErik Johnston2015-05-141-61/+107
* | Count and loopErik Johnston2015-05-141-1/+1
* | Awful idea for speeding up fetching of eventsErik Johnston2015-05-141-0/+4
* | Move from _base to eventsErik Johnston2015-05-141-232/+1
* | Jump out earlyErik Johnston2015-05-141-0/+6
* | Actually, we probably want to run this in a transactionErik Johnston2015-05-141-15/+12
* | Preemptively jump into a transaction if we ask for get_prev_contentErik Johnston2015-05-141-12/+22
* | loop -> gatherResultsErik Johnston2015-05-141-10/+14
* | Err, we probably want a bigger limitErik Johnston2015-05-141-1/+1
* | Refactor _get_eventsErik Johnston2015-05-141-252/+94
* | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/perfErik Johnston2015-05-141-0/+1
|\ \
| * | Add ID generator for push_rules_enable to #resolve SYN-378David Baker2015-05-141-0/+1
* | | Actually use async methodErik Johnston2015-05-131-3/+1
* | | Fetch events from events_id in their own transactionsErik Johnston2015-05-131-3/+151
* | | TypoErik Johnston2015-05-131-1/+1
* | | Don't insert NoneErik Johnston2015-05-131-1/+4
* | | Don't return NoneErik Johnston2015-05-131-1/+1
* | | Limit batch sizeErik Johnston2015-05-131-5/+10
* | | Fetch events in bulkErik Johnston2015-05-131-13/+62
* | | Don't fetch redaction and rejection stuff for each event, so we can use index...Erik Johnston2015-05-131-4/+19
* | | Load events for state group seperatelyErik Johnston2015-05-131-2/+2
|/ /
* | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/logging_co...Erik Johnston2015-05-121-0/+1
|\|
| * push_rules table expects an 'id' fieldErik Johnston2015-05-111-0/+1
* | Change the way we do logging contexts so that they survive divergencesErik Johnston2015-05-081-5/+6
|/
* Merge branch 'develop' of github.com:matrix-org/synapse into erikj/executemanyErik Johnston2015-05-051-9/+59
|\
| * Merge pull request #139 from matrix-org/bugs/SYN-369Mark Haines2015-05-051-9/+59
| |\
| | * Add some doc-stringMark Haines2015-05-051-0/+4
| | * Collect the invalidate callbacks on the transaction object rather than passin...Mark Haines2015-05-051-5/+13
| | * SYN-369: Add comments to the sequence number logic in the cacheMark Haines2015-05-051-0/+7
| | * Add debug flag in synapse/storage/_base.py for debugging the cache logic by c...Mark Haines2015-05-051-1/+12
| | * Sequence the modifications to the cache so that selects don't race with insertsMark Haines2015-05-051-3/+23
* | | Add a comment about the zip(*[zip(sorted(...),...)])Erik Johnston2015-05-051-0/+8
* | | Add support for using executemanyErik Johnston2015-05-051-13/+41
|/ /
* / Don't call 'encode_parameter' no-opErik Johnston2015-05-051-4/+0
|/
* Don't lock user_ips table for upsert.Erik Johnston2015-05-011-4/+7
* Fix bug where we reconnected to the database on every query.Erik Johnston2015-05-011-0/+1
* Shuffle operations so that locking upsert happens last in the txn. This ensur...Erik Johnston2015-04-271-0/+3
* Handle the fact that postgres databases can be restarted from under usErik Johnston2015-04-271-1/+27
* Go back to storing JSON in TEXTErik Johnston2015-04-161-3/+0
* Remove debug loggingErik Johnston2015-04-151-2/+0
* pushers table requires a unique id.Erik Johnston2015-04-151-3/+7
* Don't pass in removed flagErik Johnston2015-04-151-1/+0
* Postgres does not allow you to continue using a cursor after a DB exception h...Erik Johnston2015-04-151-11/+14
* Add support for postgres instead of mysql. Change sql accourdingly. blob + va...Erik Johnston2015-04-141-1/+1
* Handle the fact that in sqlite binary data might be stored as unicode or bytesErik Johnston2015-04-101-2/+5
* Merge branch 'develop' of github.com:matrix-org/synapse into mysqlErik Johnston2015-04-091-19/+28
|\
| * Merge pull request #114 from matrix-org/improve_get_event_cacheMark Haines2015-04-081-19/+28
| |\
| | * Appease pep8Paul "LeoNerd" Evans2015-03-261-1/+2
| | * Implement the main getEvent cache using Cache() instead of a custom applicati...Paul "LeoNerd" Evans2015-03-251-12/+7