Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Track DB scheduling delay per-request | Richard van der Hoff | 2018-01-16 | 1 | -1/+3 |
| | | | | | | For each request, track the amount of time spent waiting for a db connection. This entails adding it to the LoggingContext and we may as well add metrics for it while we are passing. | ||||
* | rework runInteraction in terms of runConnection | Richard van der Hoff | 2018-01-16 | 1 | -20/+31 |
| | | | | ... so that we can share the code | ||||
* | Merge branch 'develop' into matthew/search-all-local-users | Matthew Hodgson | 2017-11-30 | 1 | -9/+14 |
|\ | |||||
| * | Merge pull request #2697 from matrix-org/rav/fix_urlcache_index_error | Richard van der Hoff | 2017-11-27 | 1 | -9/+7 |
| |\ | | | | | | | Fix error on sqlite 3.7 | ||||
| | * | fix sql fails | Richard van der Hoff | 2017-11-22 | 1 | -1/+1 |
| | | | |||||
| | * | Check database in has_completed_background_updates | Richard van der Hoff | 2017-11-22 | 1 | -9/+7 |
| | | | | | | | | | | | | so that the right thing happens on workers. | ||||
| * | | Avoid retrying forever on IntegrityError | Richard van der Hoff | 2017-11-27 | 1 | -0/+7 |
| |/ | |||||
* / | untested WIP but might actually work | Matthew Hodgson | 2017-11-29 | 1 | -1/+1 |
|/ | |||||
* | Fix broken ref to IntegrityError | Richard van der Hoff | 2017-11-16 | 1 | -1/+1 |
| | |||||
* | _simple_upsert: retry on IntegrityError | Richard van der Hoff | 2017-11-16 | 1 | -6/+29 |
| | | | | | | wrap the call to _simple_upsert_txn in a loop so that we retry on an integrityerror: this means we can avoid locking the table provided there is an unique index. | ||||
* | Cleanup in _simple_upsert_txn | Richard van der Hoff | 2017-11-16 | 1 | -16/+17 |
| | | | | Bail out early to reduce indentation | ||||
* | Revert "Revert "move _state_group_cache to statestore"" | Richard van der Hoff | 2017-11-14 | 1 | -6/+0 |
| | | | | | | | We're going to fix this properly on this branch, so that the _state_group_cache can end up in StateGroupReadStore. This reverts commit ab335edb023d66cd0be439e045b10ca104b73cb5. | ||||
* | Make __init__ consitstent across Store heirarchy | Richard van der Hoff | 2017-11-13 | 1 | -1/+1 |
| | | | | | | 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) | ||||
* | Revert "move _state_group_cache to statestore" | Erik Johnston | 2017-11-13 | 1 | -0/+6 |
| | | | | This reverts commit f5cf3638e9c6086e1c33ddad8eda9298cf53a58e. | ||||
* | move _state_group_cache to statestore | Richard van der Hoff | 2017-11-07 | 1 | -6/+0 |
| | | | | this is internal to statestore, so let's keep it there. | ||||
* | replace 'except:' with 'except Exception:' | Richard van der Hoff | 2017-10-23 | 1 | -1/+1 |
| | | | | what could possibly go wrong | ||||
* | Add _simple_update | Erik Johnston | 2017-08-25 | 1 | -19/+32 |
| | |||||
* | Define CACHE_SIZE_FACTOR once | Erik Johnston | 2017-07-04 | 1 | -4/+1 |
| | |||||
* | Merge pull request #2259 from matrix-org/erikj/fix_state_woes | Erik Johnston | 2017-06-07 | 1 | -8/+21 |
|\ | | | | | Fix bug where state_group tables got corrupted | ||||
| * | Fix bug where state_group tables got corrupted | Erik Johnston | 2017-06-07 | 1 | -8/+21 |
| | | | | | | | | | | | | | | | | This is due to the fact that we prefilled caches using txn.call_after, which always gets called including on error. We fix this by making txn.call_after only fire when a transaction completes successfully, which is what we want most of the time anyway. | ||||
* | | Split the table in two | Erik Johnston | 2017-06-01 | 1 | -0/+5 |
|/ | |||||
* | Prefill state caches | Erik Johnston | 2017-05-15 | 1 | -4/+4 |
| | |||||
* | Revert "Prefill state caches" | Erik Johnston | 2017-05-04 | 1 | -4/+4 |
| | |||||
* | Prefill state caches | Erik Johnston | 2017-05-02 | 1 | -4/+4 |
| | |||||
* | Use iter(items|values) | Erik Johnston | 2017-03-24 | 1 | -6/+6 |
| | |||||
* | User Cursor.__iter__ instead of fetchall | Erik Johnston | 2017-03-23 | 1 | -5/+8 |
| | | | | This prevents unnecessary construction of lists | ||||
* | Implement _simple_delete_many_txn, use it to delete devices | Luke Barnard | 2017-03-13 | 1 | -0/+41 |
| | | | | | | (But this doesn't implement the same for deleting access tokens or e2e keys. Also respond to code review. | ||||
* | Remove spurious SQL logging (#1972) | Richard van der Hoff | 2017-03-08 | 1 | -8/+0 |
| | | | | | looks like the upsert function was accidentally sending sql logging to the general logger. We already log the sql in `txn.execute`. | ||||
* | Intern table column names once | Erik Johnston | 2017-02-28 | 1 | -3/+2 |
| | |||||
* | Strip newlines from SQL queries | Erik Johnston | 2017-02-23 | 1 | -0/+6 |
| | |||||
* | admin,storage: added more administrator functionalities | Morteza Araby | 2017-02-02 | 1 | -0/+159 |
| | | | | | | | | | | | | | | administrators can now: - Set displayname of users - Update user avatars - Search for users by user_id - Browse all users in a paginated API - Reset user passwords - Deactivate users Helpers for doing paginated queries has also been added to storage Signed-off-by: Morteza Araby <morteza.araby@ericsson.com> | ||||
* | Add basic implementation of local device list changes | Erik Johnston | 2017-01-25 | 1 | -0/+6 |
| | |||||
* | Increase state_group_cache_size | Erik Johnston | 2017-01-17 | 1 | -1/+1 |
| | |||||
* | Limit number of entries to prefill from cache | Erik Johnston | 2017-01-10 | 1 | -2/+3 |
| | | | | | | | | | Some tables, like device_inbox, take a long time to query at startup for the stream change cache prefills. This is likely because they are slower growing streams and so are more fragmented on disk. For now, lets pull fewer entries out to make startup quicker. In future, we should add a better index to make it even faster. | ||||
* | Fix tests | Erik Johnston | 2016-11-21 | 1 | -2/+2 |
| | |||||
* | Store federation stream positions in the database | Erik Johnston | 2016-11-21 | 1 | -4/+14 |
| | |||||
* | Refactor test_filter to use real DataStore | pik | 2016-10-18 | 1 | -1/+0 |
| | | | | * add tests for filter api errors | ||||
* | Remove lru option | Erik Johnston | 2016-08-19 | 1 | -1/+1 |
| | |||||
* | Do it in storage function | Erik Johnston | 2016-08-16 | 1 | -0/+3 |
| | |||||
* | Use cached get_user_by_access_token in slaves | Erik Johnston | 2016-08-16 | 1 | -0/+1 |
| | |||||
* | Doc get_next() context manager usage | Erik Johnston | 2016-08-15 | 1 | -0/+4 |
| | |||||
* | Rename table. Add docs. | Erik Johnston | 2016-08-15 | 1 | -2/+10 |
| | |||||
* | Implement cache replication stream | Erik Johnston | 2016-08-15 | 1 | -12/+35 |
| | |||||
* | Add some invalidations to a cache_stream | Erik Johnston | 2016-08-15 | 1 | -0/+18 |
| | |||||
* | Always run txn.after_callbacks | Erik Johnston | 2016-08-15 | 1 | -7/+8 |
| | |||||
* | More doc-comments | Richard van der Hoff | 2016-07-20 | 1 | -7/+12 |
| | | | | Fix some more comments on some things | ||||
* | Feature: Add deactivate account admin API | Erik Johnston | 2016-06-30 | 1 | -0/+5 |
| | | | | | | | | | | 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>` | ||||
* | Fix setting the _clock in SQLBaseStore | Mark Haines | 2016-06-02 | 1 | -0/+1 |
| | |||||
* | Make deleting push actions more efficient | David Baker | 2016-05-20 | 1 | -1/+0 |
| | | | | There's no index on received_ts, so manually binary search using the stream_ordering index, and only update it once an hour. | ||||
* | Spelling | Erik Johnston | 2016-05-13 | 1 | -1/+1 |
| | |||||
* | Fixup add_pusher | Erik Johnston | 2016-05-13 | 1 | -1/+7 |
| | |||||
* | Remove some unused functions (#711) | Mark Haines | 2016-04-08 | 1 | -6/+0 |
| | | | | | | | | * Remove some unused functions * get_room_events_stream is only used in tests * is_exclusive_room might actually be something we want | ||||
* | Move _get_cache_dict into the SQLBaseStore | Mark Haines | 2016-04-06 | 1 | -0/+34 |
| | |||||
* | Intern all the things | Erik Johnston | 2016-03-23 | 1 | -1/+2 |
| | |||||
* | Make stateGroupCache honour CACHE_SIZE_FACTOR | Erik Johnston | 2016-03-22 | 1 | -1/+7 |
| | |||||
* | Add a stream for push rule updates | Mark Haines | 2016-03-01 | 1 | -7/+18 |
| | |||||
* | Fix up logcontexts | Erik Johnston | 2016-02-08 | 1 | -9/+9 |
| | |||||
* | Fix flake8 warnings for new flake8 | Daniel Wagner-Hall | 2016-02-02 | 1 | -2/+5 |
| | |||||
* | Add a Homeserver.setup method. | Erik Johnston | 2016-01-26 | 1 | -26/+23 |
| | | | | | | This is for setting up dependencies that require work on startup. This is useful for the DataStore that wants to read a bunch from the database before initiliazing. | ||||
* | Guard against empty iterables | Erik Johnston | 2016-01-25 | 1 | -0/+6 |
| | |||||
* | Correct docstring | Erik Johnston | 2016-01-25 | 1 | -1/+0 |
| | |||||
* | Implement a _simple_select_many_batch | Erik Johnston | 2016-01-25 | 1 | -0/+67 |
| | |||||
* | copyrights | Matthew Hodgson | 2016-01-07 | 1 | -1/+1 |
| | |||||
* | Track the time spent in the database per request. | Mark Haines | 2015-12-07 | 1 | -2/+7 |
| | | | | and track the number of transactions that request started. | ||||
* | Add basic full text search impl. | Erik Johnston | 2015-10-09 | 1 | -1/+1 |
| | |||||
* | synapse/storage/_base.py:_simple_max_id was unused | Mark Haines | 2015-09-23 | 1 | -18/+0 |
| | |||||
* | synapse/storage/_base.py:_simple_delete was unused | Mark Haines | 2015-09-23 | 1 | -10/+0 |
| | |||||
* | synapse/storage/_base.py:_simple_selectupdate_one was unused | Mark Haines | 2015-09-23 | 1 | -31/+0 |
| | |||||
* | synapse/storage/_base.py:_execute_and_decode was unused | Mark Haines | 2015-09-22 | 1 | -3/+0 |
| | |||||
* | synapse/storage/_base.py:Table was unused | Mark Haines | 2015-09-22 | 1 | -128/+0 |
| | |||||
* | Merge branch 'release-v0.10.0' of github.com:matrix-org/synapse into develop | Erik Johnston | 2015-09-01 | 1 | -1/+1 |
|\ | |||||
| * | Lower size of 'stateGroupCache' now that we have data from matrix.org to ↵ | Erik Johnston | 2015-09-01 | 1 | -1/+1 |
| | | | | | | | | support doing so | ||||
* | | /tokenrefresh POST endpoint | Daniel Wagner-Hall | 2015-08-20 | 1 | -0/+1 |
|/ | | | | | | | | This allows refresh tokens to be exchanged for (access_token, refresh_token). It also starts issuing them on login, though no clients currently interpret them. | ||||
* | Move all the caches into their own package, synapse.util.caches | Erik Johnston | 2015-08-11 | 1 | -332/+3 |
| | |||||
* | Comments | Erik Johnston | 2015-08-11 | 1 | -0/+2 |
| | |||||
* | Comment | Erik Johnston | 2015-08-11 | 1 | -0/+2 |
| | |||||
* | Docs | Erik Johnston | 2015-08-11 | 1 | -0/+9 |
| | |||||
* | Comments | Erik Johnston | 2015-08-10 | 1 | -0/+6 |
| | |||||
* | Merge branch 'erikj/cache_varargs_interface' of ↵ | Erik Johnston | 2015-08-10 | 1 | -5/+5 |
|\ | | | | | | | github.com:matrix-org/synapse into erikj/dictionary_cache | ||||
| * | Rename keyargs to args in CacheDescriptor | Erik Johnston | 2015-08-10 | 1 | -5/+5 |
| | | |||||
* | | Merge branch 'erikj/cache_varargs_interface' of ↵ | Erik Johnston | 2015-08-10 | 1 | -9/+9 |
|\| | | | | | | | github.com:matrix-org/synapse into erikj/dictionary_cache | ||||
| * | Rename keyargs to args in Cache | Erik Johnston | 2015-08-10 | 1 | -9/+9 |
| | | |||||
| * | Merge branch 'erikj/cache_deferreds' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2015-08-07 | 1 | -3/+3 |
| |\ | | | | | | | | | | erikj/cache_varargs_interface | ||||
| * \ | Merge branch 'erikj/cache_deferreds' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2015-08-07 | 1 | -3/+4 |
| |\ \ | | | | | | | | | | | | | erikj/cache_varargs_interface | ||||
| * | | | Change Cache to not use *args in its interface | Erik Johnston | 2015-08-07 | 1 | -30/+31 |
| | | | | |||||
* | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2015-08-07 | 1 | -3/+4 |
|\ \ \ \ | | |_|/ | |/| | | | | | | erikj/dictionary_cache | ||||
| * | | | s/observed/observer/ | Erik Johnston | 2015-08-07 | 1 | -3/+3 |
| | |/ | |/| | |||||
| * | | Propogate stale cache errors to calling functions | Erik Johnston | 2015-08-07 | 1 | -3/+4 |
| |/ | |||||
* | | Implement a CacheListDescriptor | Erik Johnston | 2015-08-07 | 1 | -0/+106 |
| | | |||||
* | | Change Cache to not use *args in its interface | Erik Johnston | 2015-08-07 | 1 | -50/+35 |
| | | |||||
* | | Merge branch 'erikj/cache_deferreds' into erikj/dictionary_cache | Erik Johnston | 2015-08-06 | 1 | -3/+27 |
|\| | |||||
| * | Docs | Erik Johnston | 2015-08-06 | 1 | -0/+3 |
| | | |||||
| * | Remove failed deferreds from cache | Erik Johnston | 2015-08-06 | 1 | -1/+7 |
| | | |||||
| * | Re-implement DEBUG_CACHES flag | Erik Johnston | 2015-08-06 | 1 | -2/+17 |
| | | |||||
* | | Merge branch 'erikj/cache_deferreds' into erikj/dictionary_cache | Erik Johnston | 2015-08-06 | 1 | -13/+8 |
|\| | |||||
| * | Merge branch 'erikj/cached_keyword_args' into erikj/cache_deferreds | Erik Johnston | 2015-08-06 | 1 | -3/+3 |
| |\ | |||||
| | * | Merge branch 'develop' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2015-08-06 | 1 | -3/+3 |
| | |\ | | | | | | | | | | | | | erikj/cached_keyword_args | ||||
| * | | | Make @cached cache deferreds rather than the deferreds' values | Erik Johnston | 2015-08-06 | 1 | -13/+8 |
| |/ / | |||||
* | | | Merge branch 'erikj/cached_keyword_args' of github.com:matrix-org/synapse ↵ | Erik Johnston | 2015-08-05 | 1 | -6/+34 |
|\| | | | | | | | | | | | into erikj/dictionary_cache | ||||
| * | | Add support for using keyword arguments with cached functions | Erik Johnston | 2015-07-27 | 1 | -6/+34 |
| | | | |||||
* | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2015-08-05 | 1 | -3/+3 |
|\ \ \ | | |/ | |/| | | | | erikj/dictionary_cache | ||||
| * | | Use LRU cache by default | Erik Johnston | 2015-08-05 | 1 | -3/+3 |
| |/ | |||||
* | | Use dictionary cache to do group -> state fetching | Erik Johnston | 2015-08-05 | 1 | -13/+26 |
| | | |||||
* | | Speed up event filtering (for ACL) logic | Erik Johnston | 2015-08-04 | 1 | -2/+8 |
|/ | |||||
* | Add basic storage functions for handling of receipts | Erik Johnston | 2015-07-01 | 1 | -1/+2 |
| | |||||
* | Caches should be bound to instances. | Erik Johnston | 2015-06-03 | 1 | -14/+31 |
| | | | | | Before, caches were global and so different instances of the stores would share caches. This caused problems in the unit tests. | ||||
* | Merge branch 'master' of github.com:matrix-org/synapse into develop | Erik Johnston | 2015-05-22 | 1 | -0/+6 |
|\ | |||||
| * | Add caches for things requested by the pushers | Mark Haines | 2015-05-21 | 1 | -0/+1 |
| | | |||||
| * | Add a cache for get_current_state with state_key | Mark Haines | 2015-05-21 | 1 | -0/+5 |
| | | |||||
* | | Remove unused metric | Erik Johnston | 2015-05-18 | 1 | -1/+0 |
| | | |||||
* | | Newline, remove debug logging | Erik Johnston | 2015-05-18 | 1 | -1/+0 |
| | | |||||
* | | PEP8 | Erik Johnston | 2015-05-15 | 1 | -1/+0 |
| | | |||||
* | | Add a wait | Erik Johnston | 2015-05-15 | 1 | -1/+1 |
| | | |||||
* | | Fix daedlock | Erik Johnston | 2015-05-15 | 1 | -16/+10 |
| | | |||||
* | | Remove race condition | Erik Johnston | 2015-05-14 | 1 | -61/+107 |
| | | |||||
* | | Count and loop | Erik Johnston | 2015-05-14 | 1 | -1/+1 |
| | | |||||
* | | Awful idea for speeding up fetching of events | Erik Johnston | 2015-05-14 | 1 | -0/+4 |
| | | |||||
* | | Move from _base to events | Erik Johnston | 2015-05-14 | 1 | -232/+1 |
| | | |||||
* | | Jump out early | Erik Johnston | 2015-05-14 | 1 | -0/+6 |
| | | |||||
* | | Actually, we probably want to run this in a transaction | Erik Johnston | 2015-05-14 | 1 | -15/+12 |
| | | |||||
* | | Preemptively jump into a transaction if we ask for get_prev_content | Erik Johnston | 2015-05-14 | 1 | -12/+22 |
| | | |||||
* | | loop -> gatherResults | Erik Johnston | 2015-05-14 | 1 | -10/+14 |
| | | |||||
* | | Err, we probably want a bigger limit | Erik Johnston | 2015-05-14 | 1 | -1/+1 |
| | | |||||
* | | Refactor _get_events | Erik Johnston | 2015-05-14 | 1 | -252/+94 |
| | | |||||
* | | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/perf | Erik Johnston | 2015-05-14 | 1 | -0/+1 |
|\ \ | |||||
| * | | Add ID generator for push_rules_enable to #resolve SYN-378 | David Baker | 2015-05-14 | 1 | -0/+1 |
| | | | |||||
* | | | Actually use async method | Erik Johnston | 2015-05-13 | 1 | -3/+1 |
| | | | |||||
* | | | Fetch events from events_id in their own transactions | Erik Johnston | 2015-05-13 | 1 | -3/+151 |
| | | | |||||
* | | | Typo | Erik Johnston | 2015-05-13 | 1 | -1/+1 |
| | | | |||||
* | | | Don't insert None | Erik Johnston | 2015-05-13 | 1 | -1/+4 |
| | | | |||||
* | | | Don't return None | Erik Johnston | 2015-05-13 | 1 | -1/+1 |
| | | | |||||
* | | | Limit batch size | Erik Johnston | 2015-05-13 | 1 | -5/+10 |
| | | | |||||
* | | | Fetch events in bulk | Erik Johnston | 2015-05-13 | 1 | -13/+62 |
| | | | |||||
* | | | Don't fetch redaction and rejection stuff for each event, so we can use ↵ | Erik Johnston | 2015-05-13 | 1 | -4/+19 |
| | | | | | | | | | | | | index only scan | ||||
* | | | Load events for state group seperately | Erik Johnston | 2015-05-13 | 1 | -2/+2 |
|/ / | |||||
* | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2015-05-12 | 1 | -0/+1 |
|\| | | | | | | | erikj/logging_context | ||||
| * | push_rules table expects an 'id' field | Erik Johnston | 2015-05-11 | 1 | -0/+1 |
| | | |||||
* | | Change the way we do logging contexts so that they survive divergences | Erik Johnston | 2015-05-08 | 1 | -5/+6 |
|/ | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/executemany | Erik Johnston | 2015-05-05 | 1 | -9/+59 |
|\ | |||||
| * | Merge pull request #139 from matrix-org/bugs/SYN-369 | Mark Haines | 2015-05-05 | 1 | -9/+59 |
| |\ | | | | | | | Fix race with cache invalidation. SYN-369 | ||||
| | * | Add some doc-string | Mark Haines | 2015-05-05 | 1 | -0/+4 |
| | | | |||||
| | * | Collect the invalidate callbacks on the transaction object rather than ↵ | Mark Haines | 2015-05-05 | 1 | -5/+13 |
| | | | | | | | | | | | | passing around a separate list | ||||
| | * | SYN-369: Add comments to the sequence number logic in the cache | Mark Haines | 2015-05-05 | 1 | -0/+7 |
| | | | |||||
| | * | Add debug flag in synapse/storage/_base.py for debugging the cache logic by ↵ | Mark Haines | 2015-05-05 | 1 | -1/+12 |
| | | | | | | | | | | | | comparing what is in the cache with what was in the database on every access | ||||
| | * | Sequence the modifications to the cache so that selects don't race with inserts | Mark Haines | 2015-05-05 | 1 | -3/+23 |
| | | | |||||
* | | | Add a comment about the zip(*[zip(sorted(...),...)]) | Erik Johnston | 2015-05-05 | 1 | -0/+8 |
| | | | |||||
* | | | Add support for using executemany | Erik Johnston | 2015-05-05 | 1 | -13/+41 |
|/ / | |||||
* / | Don't call 'encode_parameter' no-op | Erik Johnston | 2015-05-05 | 1 | -4/+0 |
|/ | |||||
* | Don't lock user_ips table for upsert. | Erik Johnston | 2015-05-01 | 1 | -4/+7 |
| | |||||
* | Fix bug where we reconnected to the database on every query. | Erik Johnston | 2015-05-01 | 1 | -0/+1 |
| | |||||
* | Shuffle operations so that locking upsert happens last in the txn. This ↵ | Erik Johnston | 2015-04-27 | 1 | -0/+3 |
| | | | | ensures the lock is held for the least amount of time possible. | ||||
* | Handle the fact that postgres databases can be restarted from under us | Erik Johnston | 2015-04-27 | 1 | -1/+27 |
| | |||||
* | Go back to storing JSON in TEXT | Erik Johnston | 2015-04-16 | 1 | -3/+0 |
| | |||||
* | Remove debug logging | Erik Johnston | 2015-04-15 | 1 | -2/+0 |
| | |||||
* | pushers table requires a unique id. | Erik Johnston | 2015-04-15 | 1 | -3/+7 |
| | |||||
* | Don't pass in removed flag | Erik Johnston | 2015-04-15 | 1 | -1/+0 |
| | |||||
* | Postgres does not allow you to continue using a cursor after a DB exception ↵ | Erik Johnston | 2015-04-15 | 1 | -11/+14 |
| | | | | has been raised, so move _simple_insert or_ignore flag out of transaction | ||||
* | Add support for postgres instead of mysql. Change sql accourdingly. blob + ↵ | Erik Johnston | 2015-04-14 | 1 | -1/+1 |
| | | | | varbinary -> bytea. No support for UNSIGNED or CREATE INDEX IF NOT EXISTS. | ||||
* | Handle the fact that in sqlite binary data might be stored as unicode or bytes | Erik Johnston | 2015-04-10 | 1 | -2/+5 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into mysql | Erik Johnston | 2015-04-09 | 1 | -19/+28 |
|\ | |||||
| * | Merge pull request #114 from matrix-org/improve_get_event_cache | Mark Haines | 2015-04-08 | 1 | -19/+28 |
| |\ | | | | | | | Improve get event cache | ||||
| | * | Appease pep8 | Paul "LeoNerd" Evans | 2015-03-26 | 1 | -1/+2 |
| | | | |||||
| | * | Implement the main getEvent cache using Cache() instead of a custom ↵ | Paul "LeoNerd" Evans | 2015-03-25 | 1 | -12/+7 |
| | | | | | | | | | | | | application of LruCache; also unify its two-level structure into just one | ||||
| | * | Use FrozenEvent's reject_reason to decide whether to return it; don't ↵ | Paul "LeoNerd" Evans | 2015-03-25 | 1 | -10/+14 |
| | | | | | | | | | | | | include allow_rejected in the main getEvents cache key | ||||
| | * | Store the rejected reason in (Frozen)Event structs | Paul "LeoNerd" Evans | 2015-03-25 | 1 | -2/+8 |
| | | | |||||
| | * | Indirect invalidations of _get_event_cache via a helper method to keep all ↵ | Paul "LeoNerd" Evans | 2015-03-25 | 1 | -0/+3 |
| | | | | | | | | | | | | uses of the cache lexically within one .py file | ||||
* | | | Stream ordering and out of order insertions. | Erik Johnston | 2015-04-09 | 1 | -43/+3 |
| | | | | | | | | | | | | | | | | | | | | | Handle the fact that events can be persisted out of order, and so to get the "current max" stream token becomes non trivial - as we need to make sure that *all* stream tokens less than the current max have also successfully been persisted. | ||||
* | | | Merge branch 'develop' of github.com:matrix-org/synapse into mysql | Erik Johnston | 2015-04-08 | 1 | -1/+2 |
|\| | | |||||
| * | | Move database timer logging to seperate logger | Erik Johnston | 2015-04-08 | 1 | -1/+2 |
| |/ | |||||
* | | Retry transaction, not SQL query | Erik Johnston | 2015-04-08 | 1 | -21/+25 |
| | | |||||
* | | Merge branch 'develop' of github.com:matrix-org/synapse into mysql | Erik Johnston | 2015-04-07 | 1 | -39/+61 |
|\| | |||||
| * | Allow a choice of LRU behaviour for Cache() by using LruCache() or OrderedDict() | Paul "LeoNerd" Evans | 2015-03-25 | 1 | -8/+12 |
| | | |||||
| * | Pull out the cache logic from the @cached wrapper into its own class we can ↵ | Paul "LeoNerd" Evans | 2015-03-20 | 1 | -35/+54 |
| | | | | | | | | reuse | ||||
| * | func(*EXPR) is valid Python syntax, really... | Paul "LeoNerd" Evans | 2015-03-20 | 1 | -2/+1 |
| | | |||||
* | | Retry on deadlock | Erik Johnston | 2015-04-07 | 1 | -3/+13 |
| | | |||||
* | | Don't use multiple UNIQUE constraints; it will cause deadlocks | Erik Johnston | 2015-04-07 | 1 | -2/+2 |
| | | |||||
* | | Implement or_ignore flag on inserts | Erik Johnston | 2015-04-07 | 1 | -4/+9 |
| | | |||||
* | | Don't use AUTOINCREMENT, use an in memory version | Erik Johnston | 2015-04-07 | 1 | -6/+48 |
| | | |||||
* | | Fix unicode support | Erik Johnston | 2015-04-02 | 1 | -10/+12 |
| | | |||||
* | | Make work in both Maria and SQLite. Fix tests | Erik Johnston | 2015-04-01 | 1 | -9/+21 |
| | | |||||
* | | Fix unicode database support | Erik Johnston | 2015-03-25 | 1 | -0/+4 |
| | | |||||
* | | Don't order by rowid | Erik Johnston | 2015-03-24 | 1 | -1/+1 |
| | | |||||
* | | Remove uses of REPLACE and ON CONFLICT IGNORE to make the SQL more portable. | Erik Johnston | 2015-03-23 | 1 | -9/+4 |
| | | |||||
* | | Merge branch 'develop' of github.com:matrix-org/synapse into mysql | Erik Johnston | 2015-03-20 | 1 | -63/+110 |
|\| | |||||
| * | PEP8 | Erik Johnston | 2015-03-20 | 1 | -1/+1 |
| | | |||||
| * | Merge branch 'develop' of github.com:matrix-org/synapse into store_rearrangement | Erik Johnston | 2015-03-20 | 1 | -13/+27 |
| |\ | |||||
| | * | Allow @cached-wrapped functions to have more or fewer than 1 argument; ↵ | Paul "LeoNerd" Evans | 2015-03-20 | 1 | -13/+27 |
| | | | | | | | | | | | | assert on the total count of them though | ||||
| * | | Give sensible names for '_simple_...' transactions | Erik Johnston | 2015-03-20 | 1 | -16/+21 |
| | | | |||||
| * | | Tidy up _simple_... methods | Erik Johnston | 2015-03-20 | 1 | -39/+60 |
| | | | |||||
| * | | Rearrange storage modules | Erik Johnston | 2015-03-20 | 1 | -0/+7 |
| |/ | |||||
| * | Be polite and ensure we use @functools.wraps() when creating a function ↵ | Paul "LeoNerd" Evans | 2015-03-17 | 1 | -0/+2 |
| | | | | | | | | decorator | ||||
* | | Rearrange storage modules | Erik Johnston | 2015-03-20 | 1 | -0/+7 |
| | | |||||
* | | Convert storage layer to be mysql compatible | Erik Johnston | 2015-03-19 | 1 | -13/+17 |
|/ | |||||
* | Add a metric for the scheduling latency of SQL queries | Paul "LeoNerd" Evans | 2015-03-16 | 1 | -0/+5 |
| | |||||
* | Bugfix to sql_txn_timer increment - add only the per-TXN duration, not the ↵ | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -7/+5 |
| | | | | total time ever spent since boot | ||||
* | Rename the timer metrics exported by synapse.storage to append _time, so the ↵ | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -3/+3 |
| | | | | meaning of ':total' is clearer | ||||
* | Rename TimerMetric to DistributionMetric; as it could count more than just time | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -7/+7 |
| | |||||
* | Pretend the 'getEvent' cache is just another cache in the set of all the ↵ | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -6/+5 |
| | | | | others for metric | ||||
* | Use _ instead of . as a metric namespacing separator, for Prometheus | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -5/+13 |
| | |||||
* | Rename Metrics' "keys" to "labels" | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -3/+3 |
| | |||||
* | Add TimerMetrics to shadow the PerformanceCounters in synapse.storage; with ↵ | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -3/+20 |
| | | | | the view to eventually replacing them entirely | ||||
* | Collect per-SQL-verb timer stats on query execution time | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -5/+11 |
| | |||||
* | Delete a couple of TODO markers of monitoring stats now done | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -1/+0 |
| | |||||
* | Rename CacheCounterMetric to just CacheMetric; add a CallbackMetric ↵ | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -3/+3 |
| | | | | component to give the size of the cache | ||||
* | Sprinkle some CacheCounterMetrics around the synapse.storage layer | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -1/+15 |
| | |||||
* | Also give _execute() a description | Paul "LeoNerd" Evans | 2015-03-11 | 1 | -4/+3 |
| | |||||
* | Add a description to storage layer's _execute_and_decode() | Paul "LeoNerd" Evans | 2015-03-11 | 1 | -1/+2 |
| | |||||
* | Modify _simple_select_list to allow an empty WHERE clause. Use it for ↵ | Kegan Dougal | 2015-03-02 | 1 | -7/+15 |
| | | | | get_all_rooms and get_all_users. | ||||
* | Use OrderedDict for @cached backing store, so we can evict the oldest key ↵ | Paul "LeoNerd" Evans | 2015-02-23 | 1 | -7/+4 |
| | | | | unbiased | ||||
* | Use cache.pop() instead of a separate membership test + del [] | Paul "LeoNerd" Evans | 2015-02-23 | 1 | -2/+1 |
| | |||||
* | Fix code style warning | Mark Haines | 2015-02-23 | 1 | -1/+1 |
| | |||||
* | Pull the _get_event_cache.setdefault() call out of the try block, as it ↵ | Paul "LeoNerd" Evans | 2015-02-23 | 1 | -1/+2 |
| | | | | doesn't need to be there and is confusing | ||||
* | Allow @cached-wrapped functions to have a prefill method for setting entries | Paul "LeoNerd" Evans | 2015-02-23 | 1 | -8/+15 |
| | |||||
* | Remove a TODO note | Paul "LeoNerd" Evans | 2015-02-19 | 1 | -1/+0 |
| | |||||
* | Take named arguments to @cached() decorator, add a 'max_entries' limit | Paul "LeoNerd" Evans | 2015-02-19 | 1 | -15/+24 |
| | |||||
* | Move @cached decorator out into synapse.storage._base; add minimal docs | Paul "LeoNerd" Evans | 2015-02-19 | 1 | -0/+35 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into use-simplejson | Erik Johnston | 2015-02-11 | 1 | -4/+20 |
|\ | |||||
| * | Fix formatting | Mark Haines | 2015-02-11 | 1 | -2/+0 |
| | | |||||
| * | Add a cache for get_event | Mark Haines | 2015-02-11 | 1 | -3/+21 |
| | | |||||
* | | Blunty replace json with simplejson | Erik Johnston | 2015-02-11 | 1 | -1/+1 |
|/ | |||||
* | Code-style fixes | Mark Haines | 2015-02-10 | 1 | -3/+3 |
| | |||||
* | Fix pyflakes | Mark Haines | 2015-02-10 | 1 | -3/+3 |
| | |||||
* | Add performance counters for different stages of loading events | Mark Haines | 2015-02-10 | 1 | -24/+60 |
| | |||||
* | Use the transaction 'desc' rather than 'name', increment the txn_ids in | Mark Haines | 2015-02-09 | 1 | -3/+3 |
| | | | | txn names | ||||
* | Formatting | Mark Haines | 2015-02-09 | 1 | -1/+0 |
| | |||||
* | Performance counters for database transaction names | Mark Haines | 2015-02-09 | 1 | -1/+31 |
| | |||||
* | Fix typo | Erik Johnston | 2015-02-09 | 1 | -1/+1 |
| | |||||
* | Log database time every 10s and log as percentage | Erik Johnston | 2015-02-09 | 1 | -2/+2 |
| | |||||
* | Time how long we're spending on the database thread | Erik Johnston | 2015-02-09 | 1 | -0/+25 |
| | |||||
* | Be more specific in naming columns in selects. | Erik Johnston | 2015-01-30 | 1 | -1/+1 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into rejections_storage | Erik Johnston | 2015-01-30 | 1 | -2/+46 |
|\ | | | | | | | | | | | Conflicts: synapse/storage/__init__.py synapse/storage/schema/delta/v12.sql | ||||
| * | unnecessary newlines | David Baker | 2015-01-28 | 1 | -2/+0 |
| | | |||||
| * | More magic commas (including the place I copied it from...) | David Baker | 2015-01-28 | 1 | -4/+4 |
| | | |||||
| * | Google doc style | David Baker | 2015-01-28 | 1 | -4/+5 |
| | | |||||
| * | Merge branch 'develop' into pushers | David Baker | 2015-01-13 | 1 | -17/+35 |
| |\ | |||||
| * \ | Merge branch 'develop' into pushers | David Baker | 2014-12-18 | 1 | -103/+55 |
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: synapse/api/errors.py synapse/server.py synapse/storage/__init__.py | ||||
| * | | | after a few rethinks, a working implementation of pushers. | David Baker | 2014-12-18 | 1 | -0/+45 |
| | | | | |||||
* | | | | Add support for storing rejected events in EventContext and data stores | Erik Johnston | 2015-01-22 | 1 | -8/+13 |
| |_|/ |/| | | |||||
* | | | Use time.time() instead of time.clock() | Erik Johnston | 2015-01-06 | 1 | -4/+4 |
| | | | |||||
* | | | Don't include None's in _get_events_txn | Erik Johnston | 2015-01-06 | 1 | -1/+3 |
| | | | |||||
* | | | Merge pull request #28 from matrix-org/erikj-perf | Mark Haines | 2015-01-06 | 1 | -11/+25 |
|\ \ \ | | | | | | | | | Database performance improvements. | ||||
| * | | | PEP8 | Erik Johnston | 2015-01-06 | 1 | -2/+4 |
| | | | | |||||
| * | | | Don't do batching when getting events. | Erik Johnston | 2015-01-06 | 1 | -35/+4 |
| | | | | |||||
| * | | | Only fetch prev_content when a client is streaming/paginating. Use ↵ | Erik Johnston | 2015-01-06 | 1 | -9/+23 |
| | | | | | | | | | | | | | | | | transactions for event streams. | ||||
| * | | | Temporarily turn off 'redacted_because' and 'prev_content' keys | Erik Johnston | 2015-01-06 | 1 | -0/+2 |
| | | | | |||||
| * | | | More debug logging | Erik Johnston | 2015-01-06 | 1 | -0/+4 |
| | | | | |||||
| * | | | Reformat | Erik Johnston | 2015-01-06 | 1 | -13/+14 |
| | | | | |||||
| * | | | Test some ideas that might help performance a bit | Erik Johnston | 2014-12-17 | 1 | -6/+28 |
| | | | | |||||
* | | | | Update copyright notices | Mark Haines | 2015-01-06 | 1 | -1/+1 |
|/ / / | |||||
* | / | Don't assume an event exists | Erik Johnston | 2014-12-16 | 1 | -2/+4 |
| |/ |/| |