Page MenuHomePhabricator

Loading CentralAuthUser for user ~* from cache object
Closed, ResolvedPublic

Description

When I visit the login page while not logged in, with verbose logging enabled, I see log events like

Loading CentralAuthUser for user ~2025-* from cache object
Loading attached wiki list for global user ~2025-* from DB

That probably shouldn't happen?

I see this both locally and in production.

Event Timeline

Looks like that's the user name of the temporary account placeholder initialized by PermissionManager for autocreate actions:

#0 /var/www/html/mediawiki/includes/user/UserFactory.php(364): MediaWiki\User\User->setName()
#1 /var/www/html/mediawiki/includes/Permissions/PermissionManager.php(460): MediaWiki\User\UserFactory->newTempPlaceholder()
#2 /var/www/html/mediawiki/includes/Permissions/PermissionManager.php(291): MediaWiki\Permissions\PermissionManager->getPermissionStatus()
#3 /var/www/html/mediawiki/includes/Permissions/UserAuthority.php(380): MediaWiki\Permissions\PermissionManager->userCan()
#4 /var/www/html/mediawiki/includes/Permissions/UserAuthority.php(171): MediaWiki\Permissions\UserAuthority->internalCan()
#5 /var/www/html/mediawiki/includes/user/User.php(3304): MediaWiki\Permissions\UserAuthority->probablyCan()
#6 /var/www/html/mediawiki/includes/Output/OutputPage.php(4233): MediaWiki\User\User->probablyCan()
#7 /var/www/html/mediawiki/includes/Output/OutputPage.php(3876): MediaWiki\Output\OutputPage->getJSVars()
#8 /var/www/html/mediawiki/includes/Output/OutputPage.php(3898): MediaWiki\Output\OutputPage->getRlClient()
#9 /var/www/html/mediawiki/includes/skins/Skin.php(692): MediaWiki\Output\OutputPage->headElement()
#10 /var/www/html/mediawiki/includes/Output/OutputPage.php(3286): MediaWiki\Skin\Skin->outputPageFinal()
#11 /var/www/html/mediawiki/includes/exception/MWExceptionRenderer.php(197): MediaWiki\Output\OutputPage->output()
#12 /var/www/html/mediawiki/includes/exception/MWExceptionRenderer.php(116): MediaWiki\Exception\MWExceptionRenderer::reportHTML()
#13 /var/www/html/mediawiki/includes/exception/MWExceptionHandler.php(137): MediaWiki\Exception\MWExceptionRenderer::output()
#14 /var/www/html/mediawiki/includes/exception/MWExceptionHandler.php(241): MediaWiki\Exception\MWExceptionHandler::report()
#15 /var/www/html/mediawiki/includes/MediaWikiEntryPoint.php(222): MediaWiki\Exception\MWExceptionHandler::handleException()
#16 /var/www/html/mediawiki/includes/actions/ActionEntryPoint.php(79): MediaWiki\MediaWikiEntryPoint->handleTopLevelError()
#17 /var/www/html/mediawiki/includes/MediaWikiEntryPoint.php(208): MediaWiki\Actions\ActionEntryPoint->handleTopLevelError()
#18 /var/www/html/mediawiki/index.php(58): MediaWiki\MediaWikiEntryPoint->run()

It's triggered by edit permission checks from OutputPage.

Probably CA could check for this well-known user name and ignore it.

It's not really a well-known username though, it depends on the temp user naming configuration.

I guess you can get it from UserNameUtils::getTempPlaceholder()...

Change #1143130 had a related patch set uploaded (by Gergő Tisza; author: Gergő Tisza):

[mediawiki/extensions/CentralAuth@master] Do not try to load central user for temporary account placeholder

https://gerrit.wikimedia.org/r/1143130

Change #1143130 merged by jenkins-bot:

[mediawiki/extensions/CentralAuth@master] Do not try to load central user when it can't exist

https://gerrit.wikimedia.org/r/1143130

matmarex subscribed.