Page MenuHomePhabricator

PHP Notice: Undefined index: questions
Closed, ResolvedPublicPRODUCTION ERROR

Description

Error
normalized_message
[{reqId}] {exception_url}   PHP Notice: Undefined index: questions
exception.trace
from /srv/mediawiki/php-1.37.0-wmf.7/extensions/GrowthExperiments/includes/WelcomeSurvey.php(137)
#0 /srv/mediawiki/php-1.37.0-wmf.7/extensions/GrowthExperiments/includes/WelcomeSurvey.php(137): MWExceptionHandler::handleError(integer, string, string, integer, array)
#1 /srv/mediawiki/php-1.37.0-wmf.7/extensions/GrowthExperiments/includes/WelcomeSurvey.php(347): GrowthExperiments\WelcomeSurvey->getQuestions(string)
#2 /srv/mediawiki/php-1.37.0-wmf.7/extensions/GrowthExperiments/includes/WelcomeSurveyHooks.php(80): GrowthExperiments\WelcomeSurvey->getRedirectUrl(string)
#3 /srv/mediawiki/php-1.37.0-wmf.7/includes/HookContainer/HookContainer.php(160): GrowthExperiments\WelcomeSurveyHooks->onBeforeWelcomeCreation(string, string)
#4 /srv/mediawiki/php-1.37.0-wmf.7/includes/HookContainer/HookRunner.php(1032): MediaWiki\HookContainer\HookContainer->run(string, array)
#5 /srv/mediawiki/php-1.37.0-wmf.7/includes/specials/SpecialCreateAccount.php(157): MediaWiki\HookContainer\HookRunner->onBeforeWelcomeCreation(string, string)
#6 /srv/mediawiki/php-1.37.0-wmf.7/includes/specialpage/LoginSignupSpecialPage.php(357): SpecialCreateAccount->successfulAction(boolean)
#7 /srv/mediawiki/php-1.37.0-wmf.7/includes/specialpage/SpecialPage.php(646): LoginSignupSpecialPage->execute(NULL)
#8 /srv/mediawiki/php-1.37.0-wmf.7/includes/specialpage/SpecialPageFactory.php(1390): SpecialPage->run(NULL)
#9 /srv/mediawiki/php-1.37.0-wmf.7/includes/MediaWiki.php(314): MediaWiki\SpecialPage\SpecialPageFactory->executePath(string, RequestContext)
#10 /srv/mediawiki/php-1.37.0-wmf.7/includes/MediaWiki.php(917): MediaWiki->performRequest()
#11 /srv/mediawiki/php-1.37.0-wmf.7/includes/MediaWiki.php(551): MediaWiki->main()
#12 /srv/mediawiki/php-1.37.0-wmf.7/index.php(53): MediaWiki->run()
#13 /srv/mediawiki/php-1.37.0-wmf.7/index.php(46): wfIndexMain()
#14 /srv/mediawiki/w/index.php(3): require(string)
#15 {main}
Impact

There are 310 such errors recorded. For a user impact, I checked arwiki - it seems that Special:WelcomeSurvey page works as expected.

Notes

Couple of other errors re WelcomeSurvey.php.

(1) PHP Warning: Invalid argument supplied for foreach()

normalized_message
[{reqId}] {exception_url}   PHP Warning: Invalid argument supplied for foreach()
exception.trace
from /srv/mediawiki/php-1.37.0-wmf.7/extensions/GrowthExperiments/includes/WelcomeSurvey.php(152)
#0 /srv/mediawiki/php-1.37.0-wmf.7/extensions/GrowthExperiments/includes/WelcomeSurvey.php(152): MWExceptionHandler::handleError(integer, string, string, integer, array)
#1 /srv/mediawiki/php-1.37.0-wmf.7/extensions/GrowthExperiments/includes/WelcomeSurvey.php(347): GrowthExperiments\WelcomeSurvey->getQuestions(string)
#2 /srv/mediawiki/php-1.37.0-wmf.7/extensions/GrowthExperiments/includes/WelcomeSurveyHooks.php(80): GrowthExperiments\WelcomeSurvey->getRedirectUrl(string)
#3 /srv/mediawiki/php-1.37.0-wmf.7/includes/HookContainer/HookContainer.php(160): GrowthExperiments\WelcomeSurveyHooks->onBeforeWelcomeCreation(string, string)
#4 /srv/mediawiki/php-1.37.0-wmf.7/includes/HookContainer/HookRunner.php(1032): MediaWiki\HookContainer\HookContainer->run(string, array)
#5 /srv/mediawiki/php-1.37.0-wmf.7/includes/specials/SpecialCreateAccount.php(157): MediaWiki\HookContainer\HookRunner->onBeforeWelcomeCreation(string, string)
#6 /srv/mediawiki/php-1.37.0-wmf.7/includes/specialpage/LoginSignupSpecialPage.php(357): SpecialCreateAccount->successfulAction(boolean)
#7 /srv/mediawiki/php-1.37.0-wmf.7/includes/specialpage/SpecialPage.php(646): LoginSignupSpecialPage->execute(NULL)
#8 /srv/mediawiki/php-1.37.0-wmf.7/includes/specialpage/SpecialPageFactory.php(1390): SpecialPage->run(NULL)
#9 /srv/mediawiki/php-1.37.0-wmf.7/includes/MediaWiki.php(314): MediaWiki\SpecialPage\SpecialPageFactory->executePath(string, RequestContext)
#10 /srv/mediawiki/php-1.37.0-wmf.7/includes/MediaWiki.php(917): MediaWiki->performRequest()
#11 /srv/mediawiki/php-1.37.0-wmf.7/includes/MediaWiki.php(551): MediaWiki->main()
#12 /srv/mediawiki/php-1.37.0-wmf.7/index.php(53): MediaWiki->run()
#13 /srv/mediawiki/php-1.37.0-wmf.7/index.php(46): wfIndexMain()
#14 /srv/mediawiki/w/index.php(3): require(string)
#15 {main}

(2) PHP Warning: in_array() expects parameter 2 to be array, null given

normalized_message
[{reqId}] {exception_url}   PHP Warning: in_array() expects parameter 2 to be array, null given
exception.trace
from /srv/mediawiki/php-1.37.0-wmf.7/extensions/GrowthExperiments/includes/WelcomeSurvey.php(138)
#0 [internal function]: MWExceptionHandler::handleError(integer, string, string, integer, array)
#1 /srv/mediawiki/php-1.37.0-wmf.7/extensions/GrowthExperiments/includes/WelcomeSurvey.php(138): in_array(string, NULL)
#2 /srv/mediawiki/php-1.37.0-wmf.7/extensions/GrowthExperiments/includes/WelcomeSurvey.php(347): GrowthExperiments\WelcomeSurvey->getQuestions(string)
#3 /srv/mediawiki/php-1.37.0-wmf.7/extensions/GrowthExperiments/includes/WelcomeSurveyHooks.php(80): GrowthExperiments\WelcomeSurvey->getRedirectUrl(string)
#4 /srv/mediawiki/php-1.37.0-wmf.7/includes/HookContainer/HookContainer.php(160): GrowthExperiments\WelcomeSurveyHooks->onBeforeWelcomeCreation(string, string)
#5 /srv/mediawiki/php-1.37.0-wmf.7/includes/HookContainer/HookRunner.php(1032): MediaWiki\HookContainer\HookContainer->run(string, array)
#6 /srv/mediawiki/php-1.37.0-wmf.7/includes/specials/SpecialCreateAccount.php(157): MediaWiki\HookContainer\HookRunner->onBeforeWelcomeCreation(string, string)
#7 /srv/mediawiki/php-1.37.0-wmf.7/includes/specialpage/LoginSignupSpecialPage.php(357): SpecialCreateAccount->successfulAction(boolean)
#8 /srv/mediawiki/php-1.37.0-wmf.7/includes/specialpage/SpecialPage.php(646): LoginSignupSpecialPage->execute(NULL)
#9 /srv/mediawiki/php-1.37.0-wmf.7/includes/specialpage/SpecialPageFactory.php(1390): SpecialPage->run(NULL)
#10 /srv/mediawiki/php-1.37.0-wmf.7/includes/MediaWiki.php(314): MediaWiki\SpecialPage\SpecialPageFactory->executePath(string, RequestContext)
#11 /srv/mediawiki/php-1.37.0-wmf.7/includes/MediaWiki.php(917): MediaWiki->performRequest()
#12 /srv/mediawiki/php-1.37.0-wmf.7/includes/MediaWiki.php(551): MediaWiki->main()
#13 /srv/mediawiki/php-1.37.0-wmf.7/index.php(53): MediaWiki->run()
#14 /srv/mediawiki/php-1.37.0-wmf.7/index.php(46): wfIndexMain()
#15 /srv/mediawiki/w/index.php(3): require(string)
#16 {main}

Details

Request URL
https://ar.wikipedia.org/w/index.php?title=*&returnto=*

Event Timeline

This was fixed with T284599 (caused by using an incorrect group for WS). This message does not get logged after this deploy AFAICS:

12:00	<urbanecm@deploy1002>	Synchronized wmf-config/InitialiseSettings.php: ac43baa: d185728: WelcomeSurveyExperimentalGroups: Use new syntax (T284599) (duration: 01m 19s)	[production]

Resolving.

Change 699198 had a related patch set uploaded (by Urbanecm; author: Urbanecm):

[operations/mediawiki-config@master] wgWelcomeSurveyExperimentalGroups: Use new syntax in CS.php

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

Good catch @kostajh. Uploaded a fix for it - forgot about the CS.php override. Note that this needs to be deployed ASAP – without this patch, https://gerrit.wikimedia.org/r/c/mediawiki/extensions/GrowthExperiments/+/698974 would cause survey to be displayed on wikis where our features are supposed to be in the dark mode.

Change 699198 merged by jenkins-bot:

[operations/mediawiki-config@master] wgWelcomeSurveyExperimentalGroups: Use new syntax in CS.php

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

Mentioned in SAL (#wikimedia-operations) [2021-06-10T18:05:35Z] <urbanecm@deploy1002> Synchronized wmf-config/CommonSettings.php: d26968c1c3b3f3e115ff37a9a138d225cabba25a: wgWelcomeSurveyExperimentalGroups: Use new syntax in CS.php (T284597; T284735) (duration: 01m 08s)

It seems that it was the last one. There were no errors after and WelcomeSurvey is presented when a user creates a new account (checked on bnwiki).