Go to file
Matthias Mullie 6bcece22cc Don't repopulate cache with potentially lagging DB data
getNotificationCount & getLastUnreadNotificationTime have an
argument $cached that allows cache to be bypassed & read from
DB. That result is then stored to cache.

In practice, it seems to be used only for cache invalidation.
getLastUnreadNotificationTime didn't allow to specify the DB
to be read from, and EchoNotificationMapper::fetchUnreadByUser
only read from slave.
So when we wanted to invalidate the cache, we would end up
immediately repopulating it with data from a (potentially and
likely) lagging slave.

I've made it accept the DB type, similar to getNotificationCount.

Bug: T98421
Change-Id: Ie4b09eeb04b9827b454cb2d92ee8c674bdd59a19
2015-05-07 14:01:56 +02:00
api Display red badge based on time of notifications vs last time panel was opened 2015-05-01 11:39:45 -07:00
controller Add job to keep user notifications in reasonable volume 2014-09-29 23:10:18 +00:00
db_patches Allow multiple target pages per event 2015-03-31 07:56:52 +00:00
formatters Add emailsubject as a distribution type 2014-09-12 20:32:27 +00:00
i18n Localisation updates from https://translatewiki.net. 2015-05-06 21:59:46 +02:00
includes Don't repopulate cache with potentially lagging DB data 2015-05-07 14:01:56 +02:00
jobs Made EchoNotificationDeleteJob flush transactions so the slave wait works 2015-04-17 19:55:37 -07:00
maintenance Delete invalid records from echo_target_page 2014-08-19 11:34:01 -07:00
model Allow multiple target pages per event 2015-03-31 07:56:52 +00:00
modules Until seentime is recorded, we should treat notifications as unseen 2015-05-06 10:53:45 +02:00
scripts Hygiene: Use the core AutoloadGenerator 2014-11-19 09:16:43 -08:00
special Display red badge based on time of notifications vs last time panel was opened 2015-05-01 11:39:45 -07:00
tests Actually pass jscs 2015-05-04 19:28:01 +00:00
.csslintrc Add Grunt infrastructure for CI 2015-05-01 20:35:23 -07:00
.gitignore Ignore browser test screenshots 2014-09-30 13:34:28 -07:00
.gitreview Add .gitreview file 2012-04-28 01:26:21 +10:00
.jscsrc Actually pass jscs 2015-05-04 19:28:01 +00:00
.jshintignore Add ability to run QUnit tests 2014-08-01 15:55:22 -07:00
.jshintrc Add .jshintrc 2013-04-18 00:36:08 +02:00
.rubocop.yml QA: rubocop fixes broke the tests in the builds 2015-02-23 09:44:41 -07:00
.rubocop_todo.yml QA: rubocop fixes broke the tests in the builds 2015-02-23 09:44:41 -07:00
autoload.php Display red badge based on time of notifications vs last time panel was opened 2015-05-01 11:39:45 -07:00
COPYING Add COPYING 2014-01-24 16:00:24 -08:00
Echo.alias.php Localisation updates from https://translatewiki.net. 2015-04-08 21:29:50 +02:00
Echo.i18n.php Update i18n shim 2014-04-22 13:18:45 +00:00
Echo.php Display red badge based on time of notifications vs last time panel was opened 2015-05-01 11:39:45 -07:00
echo.sql Allow multiple target pages per event 2015-03-31 07:56:52 +00:00
Gemfile QA update for single quote preference 2014-11-10 14:21:28 -07:00
Gemfile.lock QA: update Ruby gems for mediawiki-selenium 2015-02-09 13:38:16 -07:00
Gruntfile.js Add Grunt infrastructure for CI 2015-05-01 20:35:23 -07:00
Hooks.php Until seentime is recorded, we should treat notifications as unseen 2015-05-06 10:53:45 +02:00
Makefile Hygiene: Dont run jshint against .less files 2014-09-05 16:45:34 -07:00
Notifier.php Made Echo respect $wgEnableEmail = false; 2015-04-18 19:16:47 +05:30
package.json Add Grunt infrastructure for CI 2015-05-01 20:35:23 -07:00
RELEASE_NOTES Allow multiple target pages per event 2015-03-31 07:56:52 +00:00
Resources.php Explicitly define module position 2015-04-28 15:46:03 +02:00