Fixed ErrorException: [E_WARNING] Undefined array key "sessionActivityOptimized"

rdn

Well-known member
Affected version
2.2.8
Error happens during web upgrade from 2.2.7 to 2.2.8, but only once.
Using PHP 8.0.13

PHP:
Server error log
ErrorException: [E_WARNING] Undefined array key "sessionActivityOptimized" src/XF/Repository/SessionActivity.php:125
Generated by: Unknown account Dec 3, 2021 at 4:25 AM

Stack trace
#0 src/XF/Repository/SessionActivity.php(125): XF::handlePhpError(2, '[E_WARNING] Und...', '/home/nginx/dom...', 125)
#1 src/XF/Pub/Controller/AbstractController.php(84): XF\Repository\SessionActivity->updateSessionActivity(0, '54.36.148.108', 'XF\\Pub\\Controll...', 'Index', Array, 'valid', 'ahrefs')
#2 src/XF/Pub/Controller/AbstractController.php(44): XF\Pub\Controller\AbstractController->updateSessionActivity('Index', Object(XF\Mvc\ParameterBag), Object(XF\Mvc\Reply\View))
#3 src/XF/Mvc/Controller.php(289): XF\Pub\Controller\AbstractController->postDispatchType('Index', Object(XF\Mvc\ParameterBag), Object(XF\Mvc\Reply\View))
#4 src/XF/Mvc/Dispatcher.php(385): XF\Mvc\Controller->postDispatch('Index', Object(XF\Mvc\ParameterBag), Object(XF\Mvc\Reply\View))
#5 src/XF/Mvc/Dispatcher.php(259): XF\Mvc\Dispatcher->dispatchClass('XF:Thread', 'Index', Object(XF\Mvc\RouteMatch), Object(XFMG\XF\Pub\Controller\Thread), NULL)
#6 src/XF/Mvc/Dispatcher.php(115): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(XFMG\XF\Pub\Controller\Thread), NULL)
#7 src/XF/Mvc/Dispatcher.php(57): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#8 src/XF/App.php(2345): XF\Mvc\Dispatcher->run()
#9 src/XF.php(512): XF\App->run()
#10 index.php(20): XF::runApp('XF\\Pub\\App')
#11 {main}

Request state
array(4) {
  ["url"] => string(83) "/threads/title.450070/page-37"
  ["referrer"] => bool(false)
  ["_GET"] => array(1) {
    ["/threads/title_450070/page-37"] => string(0) ""
  }
  ["_POST"] => array(0) {
  }
}
 

rdn

Well-known member
During upgrade also I got this error.
Not sure if it's related.

NGINX:
2021/12/03 04:25:23 [error] 37313#0: *7967760 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: my.ip, server: xf.com, request: "POST /install/index.php?upgrade/run-job HTTP/2.0", upstream: "fastcgi://127.0.0.1:9000", host: "xf.com", referrer: "https://xf.com/install/index.php?upgrade/run"
 

rdn

Well-known member
Directly accessing the URL gives me this error:
PHP:
Server error log
ErrorException: [E_WARNING] Attempt to read property "completed" on null src/XF/Install/Controller/AbstractController.php:26
Generated by: Admin Dec 3, 2021 at 4:36 AM

Stack trace
#0 src/XF/Install/Controller/AbstractController.php(26): XF::handlePhpError(2, '[E_WARNING] Att...', '/home/nginx/dom...', 26)
#1 src/XF/Install/Controller/Upgrade.php(266): XF\Install\Controller\AbstractController->manualJobRunner('index.php?upgra...', 'index.php?upgra...')
#2 src/XF/Mvc/Dispatcher.php(352): XF\Install\Controller\Upgrade->actionRunJob(Object(XF\Mvc\ParameterBag))
#3 src/XF/Mvc/Dispatcher.php(259): XF\Mvc\Dispatcher->dispatchClass('XF:Upgrade', 'RunJob', Object(XF\Mvc\RouteMatch), Object(XF\Install\Controller\Upgrade), NULL)
#4 src/XF/Mvc/Dispatcher.php(115): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(XF\Install\Controller\Upgrade), NULL)
#5 src/XF/Mvc/Dispatcher.php(57): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#6 src/XF/App.php(2351): XF\Mvc\Dispatcher->run()
#7 src/XF.php(517): XF\App->run()
#8 install/index.php(14): XF::runApp('XF\\Install\\App')
#9 {main}

Request state
array(4) {
  ["url"] => string(34) "/install/index.php?upgrade/run-job"
  ["referrer"] => string(54) "https://xf.com/install/index.php?upgrade/run-job"
  ["_GET"] => array(1) {
    ["upgrade/run-job"] => string(0) ""
  }
  ["_POST"] => array(3) {
    ["_xfRedirect"] => string(55) "https://xf.com/install/index.php?upgrade/complete"
    ["_xfToken"] => string(8) "********"
    ["execute"] => string(1) "1"
  }
}
 

PaulB

Well-known member
Related: https://xenforo.com/community/threa...t-exceeded-try-restarting-transaction.200189/

Edit: The fix for that bug introduced sessionActivityOptimized. It's possible src/XF/Repository/SessionActivity.php was updated prior to src/XF/App.php, which would result in that error message. This can also happen with some opcache configurations. If that's the cause of the first bug, you can safely ignore it as long as it doesn't happen again.

The other errors are unrelated.
 

XF Bug Bot

XenForo bug fixer bot
Staff member
Thank you for reporting this issue, it has now been resolved. We are aiming to include any changes that have been made in a future XF release (2.2.9).

Change log:
Workaround an undefined array key error that may happen during upgrade
There may be a delay before changes are rolled out to the XenForo Community.
 
Top