Stash WatchedItem changes so that the jobs run from the queue
authorAaron Schulz <aschulz@wikimedia.org>
Sat, 3 Mar 2018 00:21:36 +0000 (16:21 -0800)
committerAaron Schulz <aschulz@wikimedia.org>
Thu, 28 Feb 2019 17:46:00 +0000 (09:46 -0800)
commit7c12727fff020b7154875c992f942214a7bbb2bf
treef4a53a1a23cd99777cdb05395c289cc9a247b890
parent04179d3a5ce90f3f967d0e004fdf68bd45b04541
Stash WatchedItem changes so that the jobs run from the queue

Previously, the jobs ran at post-send instead of via runners.
The stash is still written to immediately and will quickly
replicate to all datacenters. Since the stash and DB data is
merged on access, users should still almost always see their
changes on the next request. There is still the small chance
of unusually high latency at the in-memory stash layer, which
should be rare.

Also inject the JobQueueGroup into the store instance instead
of adding more singleton references.

Bug: T188801
Change-Id: Ic1c2b5a3592469b5b8386012a9c3365fdcf5b8e1
includes/ServiceWiring.php
includes/watcheditem/NoWriteWatchedItemStore.php
includes/watcheditem/WatchedItemQueryService.php
includes/watcheditem/WatchedItemQueryServiceExtension.php
includes/watcheditem/WatchedItemStore.php
includes/watcheditem/WatchedItemStoreInterface.php
tests/phpunit/includes/watcheditem/WatchedItemQueryServiceUnitTest.php
tests/phpunit/includes/watcheditem/WatchedItemStoreIntegrationTest.php
tests/phpunit/includes/watcheditem/WatchedItemStoreUnitTest.php