Erik Johnston
b16b7efb5e
Code review
2020-10-06 17:34:50 +01:00
Erik Johnston
0e5c73b2a3
Allow running DB interactions in autocommit mode.
...
This allows running queries outside of transactions, which is useful to
avoid the overhead of transaction management (in terms of RTT and
isolation levels).
2020-10-05 15:14:01 +01:00
Erik Johnston
d8c2c96dfb
Fix uncommitted connections leaking to pool when first connected
2020-10-05 14:18:14 +01:00
Erik Johnston
e3debf9682
Add logging on startup/shutdown ( #8448 )
...
This is so we can tell what is going on when things are taking a while to start up.
The main change here is to ensure that transactions that are created during startup get correctly logged like normal transactions.
2020-10-02 15:20:45 +01:00
reivilibre
58f61f10f7
Catch-up after Federation Outage (split, 1) ( #8230 )
...
Signed-off-by: Olivier Wilkinson (reivilibre) <olivier@librepush.net>
2020-09-04 12:22:23 +01:00
reivilibre
e351298444
Fix type signature in simple_select_one_onecol and friends ( #8241 )
...
Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
2020-09-04 12:02:29 +01:00
Patrick Cloke
c619253db8
Stop sub-classing object ( #8249 )
2020-09-04 06:54:56 -04:00
Patrick Cloke
c8758cb72f
Add an overload for simple_select_one_onecol_txn. ( #8235 )
2020-09-02 15:03:12 -04:00
Patrick Cloke
912e024913
Convert runInteraction to async/await ( #8156 )
2020-09-02 13:11:02 -04:00
Erik Johnston
112266eafd
Add StreamStore to mypy ( #8232 )
2020-09-02 17:52:38 +01:00
Patrick Cloke
b71d4a094c
Convert simple_delete to async/await. ( #8191 )
2020-08-27 14:16:41 -04:00
Patrick Cloke
c9fa696ea2
simple_search_list_txn should return None, not 0. ( #8187 )
2020-08-27 12:07:13 -04:00
Patrick Cloke
30426c7063
Convert additional database methods to async (select list, search, insert_many, delete_*) ( #8168 )
2020-08-27 07:41:01 -04:00
Patrick Cloke
4a739c73b4
Convert simple_update* and simple_select* to async ( #8173 )
2020-08-27 07:08:38 -04:00
Patrick Cloke
4c6c56dc58
Convert simple_select_one and simple_select_one_onecol to async ( #8162 )
2020-08-26 07:19:32 -04:00
Patrick Cloke
5eac0b7e76
Add more types to synapse.storage.database. ( #8127 )
2020-08-20 09:00:59 -04:00
Patrick Cloke
d89692ea84
Convert runWithConnection to async. ( #8121 )
2020-08-19 07:09:24 -04:00
Patrick Cloke
050e20e7ca
Convert some of the general database methods to async ( #8100 )
2020-08-17 12:18:01 -04:00
Erik Johnston
a7bdf98d01
Rename database classes to make some sense ( #8033 )
2020-08-05 21:38:57 +01:00
Andrew Morgan
8a25332d94
Move some log lines from default logger to sql/transaction loggers ( #7952 )
...
Idea from matrix-org/synapse-dinsic#49
2020-07-28 18:52:13 +01:00
Dagfinn Ilmari Mannsåker
a3f11567d9
Replace all remaining six usage with native Python 3 equivalents ( #7704 )
2020-06-16 08:51:47 -04:00
Patrick Cloke
bd6dc17221
Replace iteritems/itervalues/iterkeys with native versions. ( #7692 )
2020-06-15 07:03:36 -04:00
Richard van der Hoff
edd9a7214c
Replace device_27_unique_idx bg update with a fg one ( #7562 )
...
The bg update never managed to complete, because it kept being interrupted by
transactions which want to take a lock.
Just doing it in the foreground isn't that bad, and is a good deal simpler.
2020-05-26 11:43:17 +01:00
Richard van der Hoff
08fa96f030
Remove `exception_to_unicode`
...
this is a no-op on python 3.
2020-05-15 19:07:24 +01:00
Erik Johnston
1a1da60ad2
Fix new flake8 errors ( #7470 )
2020-05-12 11:20:48 +01:00
Richard van der Hoff
e48361545d
use an upsert to update device_lists_outbound_last_success
2020-05-06 11:41:23 +01:00
Richard van der Hoff
0f6ebf393d
Better type annotations for simple_upsert_txn
...
most of these params don't really need to be lists.
2020-05-06 11:41:23 +01:00
Richard van der Hoff
f31e65a749
bg update to clear out duplicate outbound_device_list_pokes ( #7193 )
...
We seem to have some duplicates, which could do with being cleared out.
2020-04-07 23:06:39 +01:00
Richard van der Hoff
39230d2171
Clean up some LoggingContext stuff ( #7120 )
...
* Pull Sentinel out of LoggingContext
... and drop a few unnecessary references to it
* Factor out LoggingContext.current_context
move `current_context` and `set_context` out to top-level functions.
Mostly this means that I can more easily trace what's actually referring to
LoggingContext, but I think it's generally neater.
* move copy-to-parent into `stop`
this really just makes `start` and `stop` more symetric. It also means that it
behaves correctly if you manually `set_log_context` rather than using the
context manager.
* Replace `LoggingContext.alive` with `finished`
Turn `alive` into `finished` and make it a bit better defined.
2020-03-24 14:45:33 +00:00
Brendan Abolivier
dc6fb56c5f
Hopefully mypy is happy now
2020-03-10 14:40:28 +00:00
Richard van der Hoff
132b673dbe
Add some type annotations in `synapse.storage` ( #6987 )
...
I cracked, and added some type definitions in synapse.storage.
2020-02-27 11:53:40 +00:00
Patrick Cloke
509e381afa
Clarify list/set/dict/tuple comprehensions and enforce via flake8 ( #6957 )
...
Ensure good comprehension hygiene using flake8-comprehensions.
2020-02-21 07:15:07 -05:00
Erik Johnston
7b7c3cedf2
Minor perf fixes to `get_auth_chain_ids`.
2020-02-19 15:47:11 +00:00
Michael Kaye
a831d2e4e3
Reduce performance logging to DEBUG ( #6833 )
...
* Reduce tnx performance logging to DEBUG
* Changelog.d
2020-02-05 08:57:37 +00:00
Erik Johnston
2284eb3a53
Add database config class ( #6513 )
...
This encapsulates config for a given database and is the way to get new
connections.
2019-12-18 10:45:12 +00:00
Erik Johnston
d537be1ebd
Pass Database into the data store
2019-12-06 15:49:44 +00:00
Erik Johnston
2ace775d88
Merge branch 'develop' of github.com:matrix-org/synapse into erikj/make_database_class
2019-12-06 11:33:34 +00:00
Erik Johnston
e216ec381a
Remove unused var
2019-12-06 11:16:37 +00:00
Erik Johnston
4a33a6dd19
Move background update handling out of store
2019-12-05 11:11:26 +00:00
Erik Johnston
8863624f78
Comments
2019-12-05 10:46:37 +00:00
Erik Johnston
756d4942f5
Move DB pool and helper functions into dedicated Database class
2019-12-05 10:46:37 +00:00