Error when changing to php 8.0

Hello
We are running OJS 3.3.0-13
we are getting an error in 1 of our journals sites when we switched to php 8.0.
The error occurs when clicking on the submissions menu in the dashboard.
The only odd thing I have seen in the data is the preferredPublicName in user_settings has multiple entries for each user with the same locale, the assoc_id will either be 0 or NULL. Could that be causing the problem?

Slim Application Error: Type: TypeError Message: Cannot access offset of type string on string File: /var/www/sites/ari/lib/pkp/classes/core/DataObject.inc.php Line: 133 Trace: #0 /var/www/sites/ari/lib/pkp/classes/db/DAO.inc.php(494): DataObject->setData() #1 /var/www/sites/ari/lib/pkp/classes/user/UserDAO.inc.php(239): DAO->getDataObjectSettings() #2 /var/www/sites/ari/lib/pkp/classes/user/UserDAO.inc.php(51): UserDAO->_returnUserFromRowWithData() #3 /var/www/sites/ari/lib/pkp/classes/submission/reviewAssignment/ReviewAssignmentDAO.inc.php(448): UserDAO->getById() #4 /var/www/sites/ari/lib/pkp/classes/submission/reviewAssignment/ReviewAssignmentDAO.inc.php(68): ReviewAssignmentDAO->_fromRow() #5 /var/www/sites/ari/lib/pkp/classes/submission/reviewAssignment/ReviewAssignmentDAO.inc.php(187): ReviewAssignmentDAO->_getReviewAssignmentsArray() #6 /var/www/sites/ari/lib/pkp/classes/services/PKPSubmissionService.inc.php(690): ReviewAssignmentDAO->getBySubmissionId() #7 /var/www/sites/ari/lib/pkp/classes/services/PKPSubmissionService.inc.php(308): PKP\Services\PKPSubmissionService->getReviewAssignments() #8 /var/www/sites/ari/lib/pkp/classes/services/PKPSubmissionService.inc.php(212): PKP\Services\PKPSubmissionService->getPropertyReviewAssignments() #9 /var/www/sites/ari/lib/pkp/classes/services/PKPSubmissionService.inc.php(297): PKP\Services\PKPSubmissionService->getProperties() #10 /var/www/sites/ari/lib/pkp/api/v1/_submissions/PKPBackendSubmissionsHandler.inc.php(160): PKP\Services\PKPSubmissionService->getBackendListProperties() #11 [internal function]: PKPBackendSubmissionsHandler->getMany() #12 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php(40): call_user_func() #13 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/Route.php(281): Slim\Handlers\Strategies\RequestResponse->__invoke() #14 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(117): Slim\Route->__invoke() #15 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/Route.php(268): Slim\Route->callMiddlewareStack() #16 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/App.php(503): Slim\Route->run() #17 /var/www/sites/ari/lib/pkp/classes/security/authorization/internal/ApiAuthorizationMiddleware.inc.php(77): Slim\App->__invoke() #18 [internal function]: ApiAuthorizationMiddleware->__invoke() #19 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array() #20 [internal function]: Slim\DeferredCallable->__invoke() #21 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func() #22 /var/www/sites/ari/lib/pkp/classes/security/authorization/internal/ApiCsrfMiddleware.inc.php(46): Slim\App->Slim\{closure}() #23 [internal function]: ApiCsrfMiddleware->__invoke() #24 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array() #25 [internal function]: Slim\DeferredCallable->__invoke() #26 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func() #27 /var/www/sites/ari/lib/pkp/classes/security/authorization/internal/ApiTokenDecodingMiddleware.inc.php(131): Slim\App->Slim\{closure}() #28 [internal function]: ApiTokenDecodingMiddleware->__invoke() #29 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array() #30 [internal function]: Slim\DeferredCallable->__invoke() #31 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func() #32 /var/www/sites/ari/lib/pkp/classes/handler/APIHandler.inc.php(68): Slim\App->Slim\{closure}() #33 [internal function]: APIHandler->{closure}() #34 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array() #35 [internal function]: Slim\DeferredCallable->__invoke() #36 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func() #37 /var/www/sites/ari/lib/pkp/classes/handler/APIHandler.inc.php(127): Slim\App->Slim\{closure}() #38 [internal function]: APIHandler->{closure}() #39 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array() #40 [internal function]: Slim\DeferredCallable->__invoke() #41 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func() #42 /var/www/sites/ari/lib/pkp/classes/handler/APIHandler.inc.php(132): Slim\App->Slim\{closure}() #43 [internal function]: APIHandler->{closure}() #44 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array() #45 [internal function]: Slim\DeferredCallable->__invoke() #46 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func() #47 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(117): Slim\App->Slim\{closure}() #48 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/App.php(392): Slim\App->callMiddlewareStack() #49 /var/www/sites/ari/lib/pkp/classes/handler/APIHandler.inc.php(124): Slim\App->process() #50 [internal function]: APIHandler->{closure}() #51 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array() #52 [internal function]: Slim\DeferredCallable->__invoke() #53 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func() #54 /var/www/sites/ari/lib/pkp/classes/handler/APIHandler.inc.php(132): Slim\App->Slim\{closure}() #55 [internal function]: APIHandler->{closure}() #56 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array() #57 [internal function]: Slim\DeferredCallable->__invoke() #58 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func() #59 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(117): Slim\App->Slim\{closure}() #60 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/App.php(392): Slim\App->callMiddlewareStack() #61 /var/www/sites/ari/lib/pkp/lib/vendor/slim/slim/Slim/App.php(297): Slim\App->process() #62 /var/www/sites/ari/lib/pkp/classes/core/APIRouter.inc.php(115): Slim\App->run() #63 /var/www/sites/ari/lib/pkp/classes/core/Dispatcher.inc.php(144): APIRouter->route() #64 /var/www/sites/ari/lib/pkp/classes/core/PKPApplication.inc.php(362): Dispatcher->dispatch() #65 /var/www/sites/ari/index.php(68): PKPApplication->execute() #66 {main} View in rendered output by enabling the "displayErrorDetails" setting.

Some user’s had duplicate settings in the user_settings table. I removed them and it worked.

1 Like

This topic was automatically closed after 6 days. New replies are no longer allowed.