Page MenuHomePhabricator

CommentStreams broken on REL1_43: "MediaWiki\User\User::getName(): Return value must be of type string, null returned"
Open, Needs TriagePublic

Description

I'm not sure why someone back ported some big updates that were broken but it's broken the extension for MW 1.43.

We're seeing "TypeError: MediaWiki\\User\\User::getName(): Return value must be of type string, null returned" and "BadMethodCallException: Sessions are disabled for load entry point".

Event Timeline

Other users have said it broke for them (unrelated to us).

The partial stack trace is:

MediaWiki\\User\\User::getName(): Return value must be of type string, null returned
from /srv/mediawiki/1.43/includes/user/User.php(1578)
#0 /srv/mediawiki/1.43/includes/user/Options/UserOptionsManager.php(607): MediaWiki\\User\\User->getName()
#1 /srv/mediawiki/1.43/includes/user/Options/UserOptionsManager.php(459): MediaWiki\\User\\Options\\UserOptionsManager->getCacheKey(MediaWiki\\User\\User)
#2 /srv/mediawiki/1.43/includes/user/Options/UserOptionsManager.php(169): MediaWiki\\User\\Options\\UserOptionsManager->loadUserOptions(MediaWiki\\User\\User, int)
#3 /srv/mediawiki/1.43/includes/context/RequestContext.php(478): MediaWiki\\User\\Options\\UserOptionsManager->getOption(MediaWiki\\User\\User, string)
#4 /srv/mediawiki/1.43/includes/ServiceWiring.php(578): MediaWiki\\Context\\RequestContext->getLanguage()
#5 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(440): Wikimedia\\Services\\ServiceContainer::{closure}(MediaWiki\\MediaWikiServices)
#6 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(406): Wikimedia\\Services\\ServiceContainer->createService(string)
#7 /srv/mediawiki/1.43/includes/MediaWikiServices.php(356): Wikimedia\\Services\\ServiceContainer->getService(string)
#8 /srv/mediawiki/1.43/includes/MediaWikiServices.php(914): MediaWiki\\MediaWikiServices->getService(string)
#9 /srv/mediawiki/1.43/includes/ServiceWiring.php(568): MediaWiki\\MediaWikiServices->getCommentParserFactory()
#10 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(440): Wikimedia\\Services\\ServiceContainer::{closure}(MediaWiki\\MediaWikiServices)
#11 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(406): Wikimedia\\Services\\ServiceContainer->createService(string)
#12 /srv/mediawiki/1.43/includes/MediaWikiServices.php(356): Wikimedia\\Services\\ServiceContainer->getService(string)
#13 /srv/mediawiki/1.43/includes/MediaWikiServices.php(907): MediaWiki\\MediaWikiServices->getService(string)
#14 /srv/mediawiki/1.43/includes/ServiceWiring.php(1211): MediaWiki\\MediaWikiServices->getCommentFormatter()
#15 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(440): Wikimedia\\Services\\ServiceContainer::{closure}(MediaWiki\\MediaWikiServices)
#16 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(406): Wikimedia\\Services\\ServiceContainer->createService(string)
#17 /srv/mediawiki/1.43/includes/MediaWikiServices.php(356): Wikimedia\\Services\\ServiceContainer->getService(string)
#18 /srv/mediawiki/1.43/includes/MediaWikiServices.php(1370): MediaWiki\\MediaWikiServices->getService(string)
#19 /srv/mediawiki/1.43/includes/ServiceWiring.php(2744): MediaWiki\\MediaWikiServices->getLogFormatterFactory()
#20 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(440): Wikimedia\\Services\\ServiceContainer::{closure}(MediaWiki\\MediaWikiServices)
#21 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(406): Wikimedia\\Services\\ServiceContainer->createService(string)
#22 /srv/mediawiki/1.43/includes/MediaWikiServices.php(356): Wikimedia\\Services\\ServiceContainer->getService(string)
#23 /srv/mediawiki/1.43/includes/ServiceWiring.php(776): MediaWiki\\MediaWikiServices->getService(string)
#24 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(440): Wikimedia\\Services\\ServiceContainer::{closure}(MediaWiki\\MediaWikiServices)
#25 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(406): Wikimedia\\Services\\ServiceContainer->createService(string)
#26 /srv/mediawiki/1.43/includes/MediaWikiServices.php(356): Wikimedia\\Services\\ServiceContainer->getService(string)
#27 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(414): MediaWiki\\MediaWikiServices->getService(string)
#28 /srv/mediawiki/1.43/vendor/wikimedia/object-factory/src/ObjectFactory.php(204): Wikimedia\\Services\\ServiceContainer->get(string)
#29 /srv/mediawiki/1.43/vendor/wikimedia/object-factory/src/ObjectFactory.php(149): Wikimedia\\ObjectFactory\\ObjectFactory::getObjectFromSpec(array, array)
#30 /srv/mediawiki/1.43/extensions/CommentStreams/includes/ServiceWiring.php(56): Wikimedia\\ObjectFactory\\ObjectFactory->createObject(array)
#31 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(440): Wikimedia\\Services\\ServiceContainer::MediaWiki\\Extension\\CommentStreams\\{closure}(MediaWiki\\MediaWikiServices)
#32 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(406): Wikimedia\\Services\\ServiceContainer->createService(string)
#33 /srv/mediawiki/1.43/includes/MediaWikiServices.php(356): Wikimedia\\Services\\ServiceContainer->getService(string)
#34 /srv/mediawiki/1.43/extensions/CommentStreams/includes/ServiceWiring.php(42): MediaWiki\\MediaWikiServices->getService(string)
#35 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(440): Wikimedia\\Services\\ServiceContainer::MediaWiki\\Extension\\CommentStreams\\{closure}(MediaWiki\\MediaWikiServices)
#36 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(406): Wikimedia\\Services\\ServiceContainer->createService(string)
#37 /srv/mediawiki/1.43/includes/MediaWikiServices.php(356): Wikimedia\\Services\\ServiceContainer->getService(string)
#38 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(414): MediaWiki\\MediaWikiServices->getService(string)
#39 /srv/mediawiki/1.43/vendor/wikimedia/object-factory/src/ObjectFactory.php(204): Wikimedia\\Services\\ServiceContainer->get(string)
#40 /srv/mediawiki/1.43/vendor/wikimedia/object-factory/src/ObjectFactory.php(149): Wikimedia\\ObjectFactory\\ObjectFactory::getObjectFromSpec(array, array)
#41 /srv/mediawiki/1.43/includes/HookContainer/HookContainer.php(256): Wikimedia\\ObjectFactory\\ObjectFactory->createObject(array)
#42 /srv/mediawiki/1.43/includes/HookContainer/HookContainer.php(348): MediaWiki\\HookContainer\\HookContainer->makeExtensionHandlerCallback(string, array, array)
#43 /srv/mediawiki/1.43/includes/HookContainer/HookContainer.php(524): MediaWiki\\HookContainer\\HookContainer->normalizeHandler(string, array, array)
#44 /srv/mediawiki/1.43/includes/HookContainer/HookContainer.php(146): MediaWiki\\HookContainer\\HookContainer->getHandlers(string, array)
#45 /srv/mediawiki/1.43/includes/HookContainer/HookRunner.php(3009): MediaWiki\\HookContainer\\HookContainer->run(string, array)
#46 /srv/mediawiki/1.43/includes/parser/Parser.php(551): MediaWiki\\HookContainer\\HookRunner->onParserFirstCallInit(MediaWiki\\Parser\\Parser)
#47 /srv/mediawiki/1.43/includes/parser/ParserFactory.php(213): MediaWiki\\Parser\\Parser->__construct(MediaWiki\\Config\\ServiceOptions, MediaWiki\\Parser\\MagicWordFactory, LanguageEn, MediaWiki\\Parser\\ParserFactory, MediaWiki\\Utils\\UrlUtils, MediaWiki\\SpecialPage\\SpecialPageFactory, MediaWiki\\Linker\\LinkRendererFactory, MediaWiki\\Title\
amespaceInfo, Monolog\\Logger, MediaWiki\\Page\\File\\BadFileLookup, MediaWiki\\Languages\\LanguageConverterFactory, MediaWiki\\Languages\\LanguageNameUtils, MediaWiki\\HookContainer\\HookContainer, MediaWiki\\Tidy\\RemexDriver, Wikimedia\\ObjectCache\\WANObjectCache, MediaWiki\\User\\Options\\UserOptionsManager,

There is also

BadMethodCallException: Sessions are disabled for load entry point
from /srv/mediawiki/1.43/includes/session/SessionManager.php(915)
#0 /srv/mediawiki/1.43/includes/session/SessionManager.php(253): MediaWiki\\Session\\SessionManager->getSessionFromInfo(MediaWiki\\Session\\SessionInfo, MediaWiki\\Request\\WebRequest)
#1 /srv/mediawiki/1.43/includes/Request/WebRequest.php(867): MediaWiki\\Session\\SessionManager->getSessionForRequest(MediaWiki\\Request\\WebRequest)
#2 /srv/mediawiki/1.43/includes/user/User.php(1069): MediaWiki\\Request\\WebRequest->getSession()
#3 /srv/mediawiki/1.43/includes/user/User.php(425): MediaWiki\\User\\User->loadFromSession()
#4 /srv/mediawiki/1.43/includes/user/User.php(1572): MediaWiki\\User\\User->load()
#5 /srv/mediawiki/1.43/includes/user/Options/UserOptionsManager.php(607): MediaWiki\\User\\User->getName()
#6 /srv/mediawiki/1.43/includes/user/Options/UserOptionsManager.php(459): MediaWiki\\User\\Options\\UserOptionsManager->getCacheKey(MediaWiki\\User\\User)
#7 /srv/mediawiki/1.43/includes/user/Options/UserOptionsManager.php(169): MediaWiki\\User\\Options\\UserOptionsManager->loadUserOptions(MediaWiki\\User\\User, int)
#8 /srv/mediawiki/1.43/includes/context/RequestContext.php(478): MediaWiki\\User\\Options\\UserOptionsManager->getOption(MediaWiki\\User\\User, string)
#9 /srv/mediawiki/1.43/includes/ServiceWiring.php(578): MediaWiki\\Context\\RequestContext->getLanguage()
#10 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(440): Wikimedia\\Services\\ServiceContainer::{closure}(MediaWiki\\MediaWikiServices)
#11 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(406): Wikimedia\\Services\\ServiceContainer->createService(string)
#12 /srv/mediawiki/1.43/includes/MediaWikiServices.php(356): Wikimedia\\Services\\ServiceContainer->getService(string)
#13 /srv/mediawiki/1.43/includes/MediaWikiServices.php(914): MediaWiki\\MediaWikiServices->getService(string)
#14 /srv/mediawiki/1.43/includes/ServiceWiring.php(568): MediaWiki\\MediaWikiServices->getCommentParserFactory()
#15 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(440): Wikimedia\\Services\\ServiceContainer::{closure}(MediaWiki\\MediaWikiServices)
#16 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(406): Wikimedia\\Services\\ServiceContainer->createService(string)
#17 /srv/mediawiki/1.43/includes/MediaWikiServices.php(356): Wikimedia\\Services\\ServiceContainer->getService(string)
#18 /srv/mediawiki/1.43/includes/MediaWikiServices.php(907): MediaWiki\\MediaWikiServices->getService(string)
#19 /srv/mediawiki/1.43/includes/ServiceWiring.php(1211): MediaWiki\\MediaWikiServices->getCommentFormatter()
#20 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(440): Wikimedia\\Services\\ServiceContainer::{closure}(MediaWiki\\MediaWikiServices)
#21 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(406): Wikimedia\\Services\\ServiceContainer->createService(string)
#22 /srv/mediawiki/1.43/includes/MediaWikiServices.php(356): Wikimedia\\Services\\ServiceContainer->getService(string)
#23 /srv/mediawiki/1.43/includes/MediaWikiServices.php(1370): MediaWiki\\MediaWikiServices->getService(string)
#24 /srv/mediawiki/1.43/includes/ServiceWiring.php(2744): MediaWiki\\MediaWikiServices->getLogFormatterFactory()
#25 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(440): Wikimedia\\Services\\ServiceContainer::{closure}(MediaWiki\\MediaWikiServices)
#26 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(406): Wikimedia\\Services\\ServiceContainer->createService(string)
#27 /srv/mediawiki/1.43/includes/MediaWikiServices.php(356): Wikimedia\\Services\\ServiceContainer->getService(string)
#28 /srv/mediawiki/1.43/includes/ServiceWiring.php(776): MediaWiki\\MediaWikiServices->getService(string)
#29 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(440): Wikimedia\\Services\\ServiceContainer::{closure}(MediaWiki\\MediaWikiServices)
#30 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(406): Wikimedia\\Services\\ServiceContainer->createService(string)
#31 /srv/mediawiki/1.43/includes/MediaWikiServices.php(356): Wikimedia\\Services\\ServiceContainer->getService(string)
#32 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(414): MediaWiki\\MediaWikiServices->getService(string)
#33 /srv/mediawiki/1.43/vendor/wikimedia/object-factory/src/ObjectFactory.php(204): Wikimedia\\Services\\ServiceContainer->get(string)
#34 /srv/mediawiki/1.43/vendor/wikimedia/object-factory/src/ObjectFactory.php(149): Wikimedia\\ObjectFactory\\ObjectFactory::getObjectFromSpec(array, array)
#35 /srv/mediawiki/1.43/extensions/CommentStreams/includes/ServiceWiring.php(56): Wikimedia\\ObjectFactory\\ObjectFactory->createObject(array)
#36 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(440): Wikimedia\\Services\\ServiceContainer::MediaWiki\\Extension\\CommentStreams\\{closure}(MediaWiki\\MediaWikiServices)
#37 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(406): Wikimedia\\Services\\ServiceContainer->createService(string)
#38 /srv/mediawiki/1.43/includes/MediaWikiServices.php(356): Wikimedia\\Services\\ServiceContainer->getService(string)
#39 /srv/mediawiki/1.43/extensions/CommentStreams/includes/ServiceWiring.php(42): MediaWiki\\MediaWikiServices->getService(string)
#40 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(440): Wikimedia\\Services\\ServiceContainer::MediaWiki\\Extension\\CommentStreams\\{closure}(MediaWiki\\MediaWikiServices)
#41 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(406): Wikimedia\\Services\\ServiceContainer->createService(string)
#42 /srv/mediawiki/1.43/includes/MediaWikiServices.php(356): Wikimedia\\Services\\ServiceContainer->getService(string)
#43 /srv/mediawiki/1.43/vendor/wikimedia/services/src/ServiceContainer.php(414): MediaWiki\\MediaWikiServices->getService(string)
#44 /srv/mediawiki/1.43/vendor/wikimedia/object-factory/src/ObjectFactory.php(204): Wikimedia\\Services\\ServiceContainer->get(string)
#45 /srv/mediawiki/1.43/vendor/wikimedia/object-factory/src/ObjectFactory.php(149): Wikimedia\\ObjectFactory\\ObjectFactory::getObjectFromSpec(array, array)
#46 /srv/mediawiki/1.43/includes/HookContainer/HookContainer.php(256): Wikimedia\\ObjectFactory\\ObjectFactory->createObject(array)
#47 /srv/mediawiki/1.43/includes/HookContainer/HookContainer.php(348): MediaWiki\\HookContainer\\HookContainer->makeExtensionHandlerCallback(string, array, array)
#48 /srv/mediawiki/1.43/includes/HookContainer/HookContainer.php(524): MediaWiki\\HookContainer\\HookContainer->normalizeHandler(string, array, array)
#49 /srv/mediawiki/1.43/includes/HookContainer/HookContainer.php(146): MediaWiki\\HookContainer\\HookContainer->getHandlers(string, array)
#50 /srv/mediawiki/1.43/includes/HookContainer/HookRunner.php(3009): MediaWiki\\HookContainer\\HookContainer->run(string, array)
#51 /srv/mediawiki/1.43/includes/parser/Parser.php(551): MediaWiki\\HookContainer\\HookRunner->onParserFirstCallInit(MediaWiki\\Parser\\Parser)
#52 /srv/mediawiki/1.43/includes/parser/ParserFactory.php(213): MediaWiki\\Parser\

It's cut off here because the message length exceeds our logging infrastructure.

In my 1.43 wiki, on a page with CommentStreams enabled, I get no errors, but also no output of the CommentStreams UI (button).

It turns out that this patch works for me - because I have

$wgCommentStreamsAllowedNamespaces = -1;

in my settings/config which is the subject of T404113

In my 1.43 wiki, on a page with CommentStreams enabled, I get no errors, but also no output of the CommentStreams UI (button).

It turns out that this patch works for me - because I have

$wgCommentStreamsAllowedNamespaces = -1;

in my settings/config which is the subject of T404113

FYI that patch is unrelated to this task - it doesn't fix an MW compatibility issue but rather a regression affecting all versions

Is this still a problem? I'm not having an issue on 1.43, but perhaps it has to do with how the extension is configured.

Aklapper renamed this task from CommentStreams broken on REL1_43 to CommentStreams broken on REL1_43: "MediaWiki\User\User::getName(): Return value must be of type string, null returned".Mar 18 2026, 8:30 AM