mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/AbuseFilter.git
synced 2024-11-27 15:30:42 +00:00
774f4f02ef
Why: * The ProtectedVarsAccessLogger::logViewProtectedVariableValue method creates a debounced log entry for accessing protected variable values. * This log can be created when a user calls the 'abuselog' query API. This API query is made using a GET request. * Because the ProtectedVarsAccessLogger creates the log when it is called, the TransactionProfiler raises a warning about writing to the primary DB on a GET request. * We should address this warning by creating the log entry on POSTSEND, in a similar way to how the CheckUser extension creates CheckUser log entries. What: * Wrap the call to ProtectedVarsAccessLogger::log in ::logViewProtectedVariableValue with a DeferredUpdate callback that is run POSTSEND. ** As part of this, the expectations that the code only uses the replica DBs are silenced inside the DeferredUpdate as the PostSend-GET expectations do not usually allow for writes. The only other method would to be create the log via a job, but we want the log creation to occur quickly and reliably. Bug: T379083 Change-Id: If14e65b27b0bdd4fd0b99319024ffa281bf44656 |
||
---|---|---|
.. | ||
Api | ||
ChangeTags | ||
Consequences | ||
EditBox | ||
Filter | ||
Hooks | ||
LogFormatter | ||
Pager | ||
Parser | ||
Special | ||
VariableGenerator | ||
Variables | ||
View | ||
Watcher | ||
AbuseFilter.php | ||
AbuseFilterChangesList.php | ||
AbuseFilterPermissionManager.php | ||
AbuseFilterPreAuthenticationProvider.php | ||
AbuseFilterServices.php | ||
AbuseLogger.php | ||
AbuseLoggerFactory.php | ||
ActionSpecifier.php | ||
BlockAutopromoteStore.php | ||
BlockedDomainFilter.php | ||
BlockedDomainStorage.php | ||
CentralDBManager.php | ||
CentralDBNotAvailableException.php | ||
EchoNotifier.php | ||
EditRevUpdater.php | ||
EditStashCache.php | ||
EmergencyCache.php | ||
FilterCompare.php | ||
FilterImporter.php | ||
FilterLookup.php | ||
FilterProfiler.php | ||
FilterRunner.php | ||
FilterRunnerFactory.php | ||
FilterStore.php | ||
FilterUser.php | ||
FilterUtils.php | ||
FilterValidator.php | ||
GlobalNameUtils.php | ||
InvalidImportDataException.php | ||
KeywordsManager.php | ||
ProtectedVarsAccessLogger.php | ||
RunnerData.php | ||
ServiceWiring.php | ||
SpecsFormatter.php | ||
TableDiffFormatterFullContext.php | ||
TextExtractor.php | ||
ThrottleFilterPresentationModel.php |