Page MenuHomePhabricator

Inspect import conflicts with test.wikimedia.beta
Closed, ResolvedPublic

Description

It seems we have problems on test.wikimedia.beta when trying to import files from production Wikipedia. See the following error when e.g. importing this

https://test.wikimedia.beta.wmflabs.org/wiki/Special:ImportFile?clientUrl=https://de.wikipedia.org/wiki/Datei:Carl_Bantzer,_Willingshausen_1898.jpg

[XDxZWqwQBHcAACdo9i8AAAAW] /wiki/Special:ImportFile CannotCreateActorException from line 2539 of /srv/mediawiki/php-master/includes/user/User.php: Cannot create an actor for a usable name that is not an existing user

Backtrace:

#0 /srv/mediawiki/php-master/includes/filerepo/file/LocalFile.php(1456): User->getActorId(Wikimedia\Rdbms\DatabaseMysqli)
#1 /srv/mediawiki/php-master/includes/filerepo/file/LocalFile.php(1370): LocalFile->recordUpload2(string, string, string, array, string, User, array, boolean)
#2 /srv/mediawiki/php-master/includes/import/ImportableUploadRevisionImporter.php(126): LocalFile->upload(string, string, string, integer, array, string, User, array, boolean)
#3 /srv/mediawiki/php-master/extensions/FileImporter/src/Operations/FileRevisionFromRemoteUrl.php(189): ImportableUploadRevisionImporter->import(WikiRevision)
#4 /srv/mediawiki/php-master/extensions/FileImporter/src/Data/ImportOperations.php(92): FileImporter\Operations\FileRevisionFromRemoteUrl->commit()
#5 /srv/mediawiki/php-master/extensions/FileImporter/src/Services/Importer.php(293): FileImporter\Data\ImportOperations->commit()
#6 /srv/mediawiki/php-master/extensions/FileImporter/src/Services/Importer.php(178): FileImporter\Services\Importer->commitImportOperations(FileImporter\Data\ImportOperations)
#7 /srv/mediawiki/php-master/extensions/FileImporter/src/Services/Importer.php(119): FileImporter\Services\Importer->importInternal(User, FileImporter\Data\ImportPlan)
#8 /srv/mediawiki/php-master/extensions/FileImporter/src/SpecialImportFile.php(292): FileImporter\Services\Importer->import(User, FileImporter\Data\ImportPlan)
#9 /srv/mediawiki/php-master/extensions/FileImporter/src/SpecialImportFile.php(181): FileImporter\SpecialImportFile->doImport(FileImporter\Data\ImportPlan)
#10 /srv/mediawiki/php-master/includes/specialpage/SpecialPage.php(569): FileImporter\SpecialImportFile->execute(NULL)
#11 /srv/mediawiki/php-master/includes/specialpage/SpecialPageFactory.php(558): SpecialPage->run(NULL)
#12 /srv/mediawiki/php-master/includes/MediaWiki.php(288): MediaWiki\Special\SpecialPageFactory->executePath(Title, RequestContext)
#13 /srv/mediawiki/php-master/includes/MediaWiki.php(862): MediaWiki->performRequest()
#14 /srv/mediawiki/php-master/includes/MediaWiki.php(517): MediaWiki->main()
#15 /srv/mediawiki/php-master/index.php(42): MediaWiki->run()
#16 /srv/mediawiki/w/index.php(3): include(string)
#17 {main}

The error seems to be related to user account creation/handling of external usernames on FileImport.

My very rough guess is, that this is somewhat due to the conflictive configuration on that wiki, allowing imports from the "outside" on the one hand but having access to CentralAuth that does not know that "outside" on the other hand.

Event Timeline

WMDE-Fisch claimed this task.

The reasons this was broken is the same as why tests started failing in T220713: Fix broken FileImporter unit test. Seems the config change that interfered with our workflow was deployed earlier on beta already. - The issues was fixed with https://gerrit.wikimedia.org/r/504832 and I could import the example given here.