Commit message (Collapse) | Author | Files | Lines | ||
---|---|---|---|---|---|
2018-03-13 | Add is_blocked to worker store | Erik Johnston | 1 | -13/+17 | |
2018-03-13 | Implement RoomMemberWorkerHandler | Erik Johnston | 4 | -2/+418 | |
2018-03-13 | Raise, don't return, exception | Erik Johnston | 1 | -1/+1 | |
2018-03-13 | Add missing param to docstrings | Erik Johnston | 1 | -0/+3 | |
2018-03-13 | Correct import order | Erik Johnston | 1 | -3/+3 | |
2018-03-13 | Move user_*_room distributor stuff to master class | Erik Johnston | 1 | -5/+50 | |
I added yields when calling user_left_room, but they shouldn't matter on the master process as they always return None anyway. | |||||
2018-03-13 | Split RoomMemberHandler into base and master class | Erik Johnston | 2 | -98/+139 | |
The intention here is to split the class into the bits that can be done on workers and the bits that have to be done on the master. In future there will also be a class that can be run on the worker, which will delegate work to the master when necessary. | |||||
2018-03-13 | s/replication_client/federation_client/ | Erik Johnston | 17 | -29/+29 | |
2018-03-13 | s/replication_server/federation_server | Erik Johnston | 3 | -4/+4 | |
2018-03-13 | Add docstring | Erik Johnston | 1 | -0/+26 | |
2018-03-13 | RoomMembershipRestServlet doesn't handle /forget | Erik Johnston | 1 | -1/+1 | |
Due to the order we register the REST handlers `/forget` was handled by the correct handler. | |||||
2018-03-13 | Refactor get_or_register_3pid_guest | Erik Johnston | 2 | -11/+25 | |
2018-03-13 | Fix docstring types | Erik Johnston | 1 | -2/+2 | |
2018-03-13 | Factor out _remote_reject_invite in RoomMember | Erik Johnston | 1 | -22/+28 | |
2018-03-13 | extra_users is actually a list of UserIDs | Erik Johnston | 2 | -5/+5 | |
2018-03-13 | Make functions private that can be | Erik Johnston | 1 | -7/+7 | |
2018-03-13 | Don't build handlers on workers unnecessarily | Erik Johnston | 5 | -5/+0 | |
2018-03-13 | Remove unused ReplicationLayer | Erik Johnston | 2 | -59/+0 | |
2018-03-13 | Fix tests | Erik Johnston | 10 | -21/+22 | |
2018-03-13 | Split replication layer into two | Erik Johnston | 12 | -27/+19 | |
2018-03-13 | Move property setting from ReplicationLayer to FederationBase | Erik Johnston | 4 | -22/+13 | |
2018-03-13 | Fix tests | Erik Johnston | 2 | -10/+8 | |
2018-03-13 | Split out edu/query registration to a separate class | Erik Johnston | 10 | -60/+90 | |
2018-03-13 | Add Measure block for persist_events | Richard van der Hoff | 1 | -4/+5 | |
This seems like a useful thing to measure. | |||||
2018-03-12 | Add transactional API to history purge | Richard van der Hoff | 3 | -8/+161 | |
Make the purge request return quickly, and allow scripts to poll for updates. | |||||
2018-03-12 | Return an error when doing two purges on a room | Richard van der Hoff | 1 | -3/+14 | |
Queuing up purges doesn't sound like a good thing. | |||||
2018-03-09 | Add some docstrings to help figure this out | Richard van der Hoff | 1 | -2/+26 | |
2018-03-09 | Add a metric which increments when a request is received | Richard van der Hoff | 2 | -2/+26 | |
It's useful to know when there are peaks in incoming requests - which isn't quite the same as there being peaks in outgoing responses, due to the time taken to handle requests. | |||||
2018-03-09 | refactor JsonResource | Richard van der Hoff | 1 | -32/+46 | |
rephrase the OPTIONS and unrecognised request handling so that they look similar to the common flow. | |||||
2018-03-08 | Factor run_in_background out from preserve_fn | Richard van der Hoff | 2 | -28/+33 | |
It annoys me that we create temporary function objects when there's really no need for it. Let's factor the gubbins out of preserve_fn and start using it. | |||||
2018-03-07 | Fix up log message | Erik Johnston | 1 | -1/+1 | |
2018-03-07 | Fix typo | Erik Johnston | 1 | -2/+2 | |
2018-03-07 | Fix race in sync when joining room | Erik Johnston | 3 | -30/+102 | |
The race happens when the user joins a room at the same time as doing a sync. We fetch the current token and then get the rooms the user is in. If the join happens after the current token, but before we get the rooms we end up sending down a partial room entry in the sync. This is fixed by looking at the stream ordering of the membership returned by get_rooms_for_user, and handling the case when that stream ordering is after the current token. | |||||
2018-03-05 | use bcrypt.checkpw | Krombel | 2 | -3/+5 | |
in bcrypt 3.1.0 checkpw got introduced (already 2 years ago) This makes use of that with enhancements which might get introduced by that Signed-Off-by: Matthias Kesler <krombel@krombel.de> | |||||
2018-03-05 | Remove ability for AS users to call /events and /sync | Erik Johnston | 4 | -163/+14 | |
This functionality has been deprecated for a while as well as being broken for a while. Instead of fixing it lets just remove it entirely. See: https://github.com/matrix-org/matrix-doc/issues/1144 | |||||
2018-03-05 | Fix cache invalidation on deletion | Erik Johnston | 1 | -1/+4 | |
2018-03-05 | Split Directory store | Erik Johnston | 2 | -27/+26 | |
2018-03-05 | Provide a means to pass a timestamp to purge_history | Richard van der Hoff | 4 | -14/+96 | |
2018-03-05 | Fix comment typo | Richard van der Hoff | 1 | -1/+1 | |
2018-03-05 | Test and fix find_first_stream_ordering_after_ts | Richard van der Hoff | 2 | -15/+120 | |
It seemed to suffer from a bunch of off-by-one errors. | |||||
2018-03-05 | Add find_first_stream_ordering_after_ts | Richard van der Hoff | 1 | -0/+21 | |
Expose this as a public function which can be called outside a txn | |||||
2018-03-02 | Fix bug with delayed cache invalidation stream | Erik Johnston | 2 | -13/+15 | |
We poked the notifier before updated the current token for the cache invalidation stream. This mean that sometimes the update wouldn't be sent until the next time a cache was invalidated. | |||||
2018-03-02 | Split registration store | Erik Johnston | 2 | -72/+64 | |
2018-03-02 | Add missing yield during 3pid signature checks | Erik Johnston | 1 | -1/+1 | |
2018-03-01 | Fix typo in getting replication account data processing | Erik Johnston | 1 | -1/+1 | |
2018-03-01 | Remove unused DataStore | Erik Johnston | 1 | -1/+0 | |
2018-03-01 | Fewer lies are better | Erik Johnston | 1 | -2/+2 | |
2018-03-01 | Improve caching for read_marker API | Erik Johnston | 3 | -3/+41 | |
We add a new storage function to get a paritcular type of room account data. This allows us to prefill the cache when updating that acount data. | |||||
2018-03-01 | Add some caches to help read marker API | Erik Johnston | 3 | -2/+5 | |
2018-03-01 | Move back to hs.is_mine | Erik Johnston | 1 | -7/+6 | |
2018-03-01 | Stub out broken function only used for cache | Erik Johnston | 1 | -1/+3 | |
2018-03-01 | Remove unused variables | Erik Johnston | 1 | -8/+1 | |
2018-03-01 | Document abstract class and method better | Erik Johnston | 1 | -8/+13 | |
2018-03-01 | Default stream_ordering_*_ago to None | Erik Johnston | 1 | -2/+2 | |
2018-03-01 | Fix comment typo | Erik Johnston | 1 | -1/+1 | |
2018-03-01 | Split out stream store | Erik Johnston | 3 | -210/+202 | |
2018-03-01 | Move RoomMemberHandler out of Handlers | Erik Johnston | 11 | -45/+58 | |
2018-03-01 | Calculate stream_ordering_month_ago correctly on workers | Erik Johnston | 3 | -80/+85 | |
2018-03-01 | Split out SignatureStore and EventFederationStore | Erik Johnston | 3 | -174/+148 | |
2018-03-01 | Split up RoomStore | Erik Johnston | 2 | -135/+125 | |
2018-03-01 | Rewrite make_deferred_yieldable avoiding inlineCallbacks | Richard van der Hoff | 1 | -9/+11 | |
... because (a) it's actually simpler (b) it might be marginally more performant? | |||||
2018-03-01 | Log in the correct places | Erik Johnston | 1 | -2/+4 | |
2018-03-01 | Don't do preserve_fn for every request | Erik Johnston | 1 | -1/+2 | |
2018-03-01 | Add some logging | Erik Johnston | 1 | -0/+2 | |
2018-03-01 | Make repl send_event idempotent and retry on timeouts | Erik Johnston | 1 | -6/+38 | |
If we treated timeouts as failures on the worker we would attempt to clean up e.g. push actions while the master might still process the event. | |||||
2018-03-01 | Check event auth on the worker | Erik Johnston | 1 | -16/+16 | |
2018-03-01 | Correctly send ratelimit and extra_users params | Erik Johnston | 2 | -1/+15 | |
2018-03-01 | Fixup comments | Erik Johnston | 1 | -4/+4 | |
2018-02-28 | Calculate push actions on worker | Erik Johnston | 3 | -26/+70 | |
2018-02-27 | Move storage functions for push calculations | Erik Johnston | 6 | -98/+101 | |
This will allow push actions for an event to be calculated on workers. | |||||
2018-02-27 | Add comment | Erik Johnston | 1 | -0/+4 | |
2018-02-23 | Update copyright | Erik Johnston | 2 | -0/+2 | |
2018-02-23 | Update copyright | Erik Johnston | 3 | -0/+3 | |
2018-02-23 | Split EventsWorkerStore into separate file | Erik Johnston | 3 | -361/+401 | |
2018-02-23 | Update copyright | Erik Johnston | 2 | -0/+2 | |
2018-02-23 | Remove redundant clock | Erik Johnston | 1 | -3/+0 | |
2018-02-23 | _event_persist_queue shouldn't be in worker store | Erik Johnston | 1 | -4/+4 | |
2018-02-23 | Update copyright | Erik Johnston | 2 | -0/+2 | |
2018-02-23 | Update copyright | Erik Johnston | 2 | -0/+2 | |
2018-02-23 | Update copyright | Erik Johnston | 3 | -0/+3 | |
2018-02-23 | Update copyright | Erik Johnston | 3 | -0/+3 | |
2018-02-23 | Use absolute imports | Erik Johnston | 3 | -5/+5 | |
2018-02-21 | Fix missing invalidations for receipt storage | Erik Johnston | 2 | -14/+16 | |
2018-02-21 | Split out RoomMemberStore | Erik Johnston | 2 | -206/+184 | |
2018-02-21 | Split AS stores | Erik Johnston | 2 | -37/+23 | |
2018-02-21 | Split out get_events and co into a worker store | Erik Johnston | 2 | -356/+352 | |
2018-02-21 | Update comments | Erik Johnston | 1 | -3/+4 | |
2018-02-21 | Actually use new param | Erik Johnston | 1 | -1/+3 | |
2018-02-21 | Split out EventPushActionWorkerStore | Erik Johnston | 2 | -91/+76 | |
2018-02-21 | Split PusherStore | Erik Johnston | 2 | -13/+8 | |
2018-02-21 | Split PushRulesStore | Erik Johnston | 3 | -45/+61 | |
2018-02-21 | Split AccountDataStore and TagStore | Erik Johnston | 4 | -67/+69 | |
2018-02-20 | Raise exception in abstract method | Erik Johnston | 1 | -1/+1 | |
2018-02-20 | Fix comment | Erik Johnston | 2 | -2/+2 | |
2018-02-20 | Use abstract base class to access stream IDs | Erik Johnston | 2 | -17/+34 | |
2018-02-20 | Split ReceiptsStore | Erik Johnston | 3 | -76/+69 | |
2018-02-20 | Fix test | Erik Johnston | 1 | -1/+1 | |
2018-02-20 | Ensure all push actions are deleted from staging | Erik Johnston | 2 | -2/+19 | |
2018-02-20 | Refactor _set_push_actions_for_event_and_users_txn to use events_and_contexts | Erik Johnston | 2 | -33/+41 | |
2018-02-20 | Fix unit tests | Erik Johnston | 2 | -5/+7 | |
2018-02-20 | Delete from push_actions_staging in federation too | Erik Johnston | 1 | -9/+17 | |
2018-02-20 | Batch inserts into event_push_actions_staging | Erik Johnston | 2 | -23/+45 | |
2018-02-19 | Update pynacl dependency to 1.2.1 or higher | Pascal Bach | 1 | -1/+1 | |
Signed-off-by: Pascal Bach <pascal.bach@nextrem.ch> | |||||
2018-02-16 | (Really) fix tablescan of event_push_actions on purge | Richard van der Hoff | 1 | -1/+0 | |
commit 278d21b5 added new code to avoid the tablescan, but didn't remove the old :/ | |||||
2018-02-16 | Fix typo of double is_highlight | Erik Johnston | 1 | -1/+1 | |
2018-02-16 | Comments | Erik Johnston | 3 | -1/+9 | |
2018-02-15 | Fix unit test | Erik Johnston | 1 | -4/+6 | |
2018-02-15 | Ensure that we delete staging push actions on errors | Erik Johnston | 2 | -3/+25 | |
2018-02-15 | Remove context.push_actions | Erik Johnston | 5 | -20/+11 | |
2018-02-15 | Update event_push_actions table from staging table | Erik Johnston | 2 | -22/+39 | |
2018-02-15 | Store push actions in staging area | Erik Johnston | 3 | -0/+54 | |
2018-02-15 | Don't serialize current state over replication | Erik Johnston | 3 | -8/+51 | |
2018-02-15 | Fix state group storage bug in workers | Erik Johnston | 1 | -41/+41 | |
We needed to move `_count_state_group_hops_txn` to the StateGroupWorkerStore. | |||||
2018-02-15 | Don't log errors propogated from send_event | Erik Johnston | 1 | -1/+10 | |
2018-02-14 | Make store_file use store_into_file | Erik Johnston | 1 | -26/+11 | |
2018-02-14 | purge_history: fix sqlite syntax error | Richard van der Hoff | 1 | -1/+4 | |
apparently sqlite insists on indexes being named | |||||
2018-02-14 | purge_history: handle sqlite asshattery | Richard van der Hoff | 1 | -19/+27 | |
apparently creating a temporary table commits the transaction. because that's a useful thing. | |||||
2018-02-14 | remove overzealous exception handling | Richard van der Hoff | 1 | -18/+10 | |
2018-02-14 | purge_history: fix index use | Richard van der Hoff | 1 | -0/+14 | |
event_push_actions doesn't have an index on event_id, so we need to specify room_id. | |||||
2018-02-14 | Rework event purge to use a temporary table | Richard van der Hoff | 1 | -35/+58 | |
... which should speed things up by reducing the amount of data being shuffled across the connection | |||||
2018-02-13 | Update docs | Erik Johnston | 1 | -1/+4 | |
2018-02-13 | Fix log message in purge_history | Richard van der Hoff | 1 | -2/+1 | |
(we don't just remove remote events) | |||||
2018-02-13 | move search reindex to schema 47 | Richard van der Hoff | 2 | -1/+1 | |
We're up to schema v47 on develop now, so this will have to go in there to have an effect. This might cause an error if somebody has already run it in the v46 guise, and runs it again in the v47 guise, because it will cause a duplicate entry in the bbackground_updates table. On the other hand, the entry is removed once it is complete, and it is unlikely that anyone other than matrix.org has run it on v46. The update itself is harmless to re-run because it deliberately copes with the index already existing. | |||||
2018-02-13 | GIN reindex: Fix syntax errors, improve exception handling | Richard van der Hoff | 1 | -13/+27 | |
2018-02-13 | style nit | Richard van der Hoff | 1 | -1/+1 | |
2018-02-13 | Fix typos in purge api & doc | Richard van der Hoff | 2 | -4/+2 | |
* It's supposed to be purge_local_events, not ..._history * Fix the doc to have valid json | |||||
2018-02-12 | Update workers docs to include http port | Erik Johnston | 1 | -5/+20 | |
2018-02-09 | purge: move room_depth update to end | Richard van der Hoff | 1 | -6/+12 | |
... to avoid locking the table for too long | |||||
2018-02-09 | delete_local_events for purge_history | Richard van der Hoff | 5 | -15/+67 | |
Add a flag which makes the purger delete local events | |||||
2018-02-09 | purge: Move cache invalidation to more appropriate place | Richard van der Hoff | 1 | -4/+4 | |
it was a bit of a non-sequitur there | |||||
2018-02-09 | bump purge logging to info | Richard van der Hoff | 1 | -13/+14 | |
this thing takes ages and the only sign of any progress is the logs, so having some logs is useful. | |||||
2018-02-09 | rename delete_old_state -> purge_history | Richard van der Hoff | 2 | -8/+8 | |
(beacause it deletes more than state) | |||||
2018-02-07 | Tell storage providers about new file so they can upload | Erik Johnston | 1 | -0/+6 | |
2018-02-07 | Add note in docs/workers.rst | Erik Johnston | 1 | -0/+11 | |
2018-02-07 | Move presence handling into handle_new_client_event | Erik Johnston | 1 | -6/+6 | |
As we want to have it run on the main synapse instance | |||||
2018-02-07 | Add event_creator worker | Erik Johnston | 3 | -1/+190 | |
2018-02-07 | Add replication http endpoint for event sending | Erik Johnston | 8 | -13/+304 | |
2018-02-07 | Remove pointless ratelimit check | Erik Johnston | 1 | -5/+0 | |
The intention was for the check to be called as early as possible in the request, but actually was called just before the main ratelimit check, so was fairly pointless. | |||||
2018-02-06 | Update copyright | Erik Johnston | 6 | -1/+6 | |
2018-02-06 | s/_create_new_client_event/create_new_client_event/ | Erik Johnston | 4 | -12/+12 | |
2018-02-06 | Store state groups separately from events (#2784) | Erik Johnston | 12 | -189/+326 | |
* Split state group persist into seperate storage func * Add per database engine code for state group id gen * Move store_state_group to StateReadStore This allows other workers to use it, and so resolve state. * Hook up store_state_group * Fix tests * Rename _store_mult_state_groups_txn * Rename StateGroupReadStore * Remove redundant _have_persisted_state_group_txn * Update comments * Comment compute_event_context * Set start val for state_group_id_seq ... otherwise we try to recreate old state groups * Update comments * Don't store state for outliers * Update comment * Update docstring as state groups are ints | |||||
2018-02-05 | Use StateResolutionHandler to resolve state in persist events | Richard van der Hoff | 1 | -48/+24 | |
... and thus benefit (hopefully) from its cache. | |||||
2018-02-05 | Flatten _get_new_state_after_events | Richard van der Hoff | 1 | -44/+46 | |
rejig the if statements to simplify the logic and reduce indentation | |||||
2018-02-05 | Check that events being persisted have state_group | Richard van der Hoff | 1 | -4/+9 | |
2018-02-05 | Add event_map param to resolve_state_groups | Richard van der Hoff | 2 | -4/+31 | |
2018-02-05 | Remove redundant return value from _calculate_state_delta | Richard van der Hoff | 1 | -10/+23 | |
we already have the state from _get_new_state_after_events, so returning it from _calculate_state_delta is just confusing. | |||||
2018-02-05 | Factor out common code for search insert | Richard van der Hoff | 1 | -33/+62 | |
we can reuse the same code as is used for event insert, for doing the background index population. | |||||
2018-02-05 | Updates tests | Erik Johnston | 2 | -8/+6 | |
2018-02-05 | Update places where we create events | Erik Johnston | 7 | -38/+42 | |
2018-02-05 | Split event creation into a separate handler | Erik Johnston | 1 | -146/+160 | |
2018-02-05 | Move store_event_search_txn to SearchStore | Richard van der Hoff | 2 | -35/+41 | |
... as a precursor to making event storing and doing the bg update share some code. | |||||
2018-02-05 | report metrics on number of cache evictions | Richard van der Hoff | 5 | -5/+56 | |
2018-02-05 | Fix broken unit test for media storage | Erik Johnston | 1 | -1/+6 | |
2018-02-05 | Add .vscode to gitignore | Erik Johnston | 1 | -0/+2 | |
2018-02-04 | Factor out common code for search insert | Richard van der Hoff | 1 | -33/+56 | |
we can reuse the same code as is used for event insert, for doing the background index population. | |||||
2018-02-03 | Clean up work_mem handling | Richard van der Hoff | 1 | -11/+41 | |
Add some comments and improve exception handling when twiddling work_mem for the search update | |||||
2018-02-03 | Move store_event_search_txn to SearchStore | Richard van der Hoff | 2 | -37/+43 | |
... as a precursor to making event storing and doing the bg update share some code. | |||||
2018-02-02 | Reinstate event_search_postgres_gist handler | Richard van der Hoff | 3 | -6/+31 | |
People may have queued updates for this, so we can't just delete it. | |||||
2018-02-02 | Handle url_previews with no content-type | Richard van der Hoff | 1 | -21/+34 | |
avoid failing with an exception if the remote server doesn't give us a Content-Type header. Also, clean up the exception handling a bit. | |||||
2018-02-01 | doc arg types for _seperate | Richard van der Hoff | 1 | -0/+15 | |
2018-02-01 | More docstring fixes | Richard van der Hoff | 1 | -4/+4 | |
Fix a couple of errors in docstrings | |||||
2018-02-01 | Fix docstring for StateHandler.resolve_state_groups | Richard van der Hoff | 1 | -4/+9 | |
The return type was a complete lie, so fix it | |||||
2018-02-01 | Factor out resolve_state_groups to a separate handler | Richard van der Hoff | 4 | -54/+108 | |
We extract the storage-independent bits of the state group resolution out to a separate functiom, and stick it in a new handler, in preparation for its use from the storage layer. | |||||
2018-02-01 | Rename resolve_state_groups -> resolve_state_groups_for_events | Richard van der Hoff | 2 | -12/+11 | |
(to make way for a method that actually just does the state group resolution) | |||||
2018-01-31 | pep8 | Travis Ralston | 1 | -9/+12 | |
Signed-off-by: Travis Ralston <travpc@gmail.com> | |||||
2018-01-31 |