Merge "user: Add a warning when creating cross-wiki users"
This commit is contained in:
commit
40a9efe296
1 changed files with 8 additions and 0 deletions
|
|
@ -24,8 +24,10 @@ namespace MediaWiki\User;
|
||||||
|
|
||||||
use InvalidArgumentException;
|
use InvalidArgumentException;
|
||||||
use MediaWiki\Config\ServiceOptions;
|
use MediaWiki\Config\ServiceOptions;
|
||||||
|
use MediaWiki\Logger\LoggerFactory;
|
||||||
use MediaWiki\MainConfigNames;
|
use MediaWiki\MainConfigNames;
|
||||||
use MediaWiki\Permissions\Authority;
|
use MediaWiki\Permissions\Authority;
|
||||||
|
use RuntimeException;
|
||||||
use stdClass;
|
use stdClass;
|
||||||
use Wikimedia\Rdbms\IDatabase;
|
use Wikimedia\Rdbms\IDatabase;
|
||||||
use Wikimedia\Rdbms\IDBAccessObject;
|
use Wikimedia\Rdbms\IDBAccessObject;
|
||||||
|
|
@ -218,7 +220,13 @@ class UserFactory implements UserRigorOptions {
|
||||||
// Stop-gap solution for the problem described in T222212.
|
// Stop-gap solution for the problem described in T222212.
|
||||||
// Force the User ID and Actor ID to zero for users loaded from the database
|
// Force the User ID and Actor ID to zero for users loaded from the database
|
||||||
// of another wiki, to prevent subtle data corruption and confusing failure modes.
|
// of another wiki, to prevent subtle data corruption and confusing failure modes.
|
||||||
|
// FIXME this assumes the same username belongs to the same user on all wikis
|
||||||
if ( $dbDomain !== false ) {
|
if ( $dbDomain !== false ) {
|
||||||
|
LoggerFactory::getInstance( 'user' )->warning(
|
||||||
|
'UserFactory::newFromAnyId called with cross-wiki user data',
|
||||||
|
[ 'userId' => $userId, 'userName' => $userName, 'actorId' => $actorId,
|
||||||
|
'dbDomain' => $dbDomain, 'exception' => new RuntimeException() ]
|
||||||
|
);
|
||||||
$userId = 0;
|
$userId = 0;
|
||||||
$actorId = 0;
|
$actorId = 0;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue