Problem after upgrading to OMP 3.1 (user_nav_backend and press-grid not loading)

Hi,

i run into a problem after upgrading to OMP 3.1. Everything went well, but after entering the admin area i see a an endless loading script at the top of the screen. It seems, that the presses could not be loaded, because the same problem occurs when I enter the “Hosted Presses” section .Screenshot_20171123_161910

What is the problem here or how can i debug this issue? I have already activated show_stacktrace and display_errors, but nothing interesting appeared in the log files.

Interesting to be mentioned is, that this problem does not occur after a fresh and empty install, but only after upgrading the existing database (OMP 1.1.1.0 ). But the upgrade process also does not show any error.

After further investigations I see the following problems. When entering the url /index.php/XXX/admin/contexts, some resources are loaded via javascript (represented as curl request):

curl ‘https://xxx.de/index.php/XXX/$$$call$$$/page/page/user-nav-backend?_=1511508522045’ -H ‘Accept: application/json, text/javascript, /; q=0.01’ -H ‘Accept-Encoding: gzip, deflate, br’ -H ‘Accept-Language: de-DE,en-US;q=0.7,en;q=0.3’ -H ‘Cookie: ajs_user_id=null; ajs_group_id=null; ajs_anonymous_id=%2200000000000000000000000000%22; OMPSID=7e4a2c7d1cee3fff4d4861fc80xxxxxx’ -H ‘Host: xxx.de’ -H ‘Referer: https://xxx.rub.de/index.php/XXX/admin/contexts’ -H ‘User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:56.0) Gecko/20100101 Firefox/56.0’ -H ‘X-Requested-With: XMLHttpRequest’

curl ‘https://xxx.de/index.php/RUB/$$$call$$$/grid/admin/press/press-grid/fetch-grid?_=1511508522046’ -H ‘Accept: application/json, text/javascript, /; q=0.01’ -H ‘Accept-Encoding: gzip, deflate, br’ -H ‘Accept-Language: de-DE,en-US;q=0.7,en;q=0.3’ -H ‘Cookie: ajs_user_id=null; ajs_group_id=null; ajs_anonymous_id=%2200000000000000000000000000%22; OMPSID=7e4a2c7d1cee3fff4d4861fc80xxxxxx’ -H ‘Host: xxx.de’ -H ‘Referer: https://xxx.de/index.php/XXX/admin/contexts’ -H ‘User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:56.0) Gecko/20100101 Firefox/56.0’ -H ‘X-Requested-With: XMLHttpRequest’

But those requests do not return any response. As mentioned in the post before, I cannot see any problems in the logs. Logging is configured as follows:
error_reporting = E_ALL
log_errors = On

Hi @rub

Have you checked your php error long in webserver? It may shows you some important info about what is going on.

Regards,
Israel Cefrin
Public Knowledge Project Team

As mentioned before, the log only shows some php notice and php warnings, but no error:

i Nov 24 12:41:00.618535 2017] [php7:warn] [pid 39] [client 172.20.0.18:48190] PHP Warning: Declaration of LanguageToggleBlockPlugin::getEnabled() should be compatible with BlockPlugin::getEnabled($contextId = NULL) in /var/www/omp/plugins/blocks/languageToggle/Langu
ageToggleBlockPlugin.inc.php on line 0, referer: https://xxx.de/index.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.619707 2017] [php7:notice] [pid 40] [client 172.20.0.18:48184] PHP Notice: unserialize(): Error at offset 236 of 238 bytes in /var/www/omp/lib/pkp/classes/db/DAO.inc.php on line 347, referer: https://xxx.de/index.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.620155 2017] [php7:notice] [pid 39] [client 172.20.0.18:48190] PHP Notice: unserialize(): Error at offset 236 of 238 bytes in /var/www/omp/lib/pkp/classes/db/DAO.inc.php on line 347, referer: https://xxx.de/index.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.620936 2017] [php7:notice] [pid 40] [client 172.20.0.18:48184] PHP Notice: unserialize(): Error at offset 228 of 230 bytes in /var/www/omp/lib/pkp/classes/db/DAO.inc.php on line 347, referer: https://xxx.de/index.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.621240 2017] [php7:notice] [pid 39] [client 172.20.0.18:48190] PHP Notice: unserialize(): Error at offset 228 of 230 bytes in /var/www/omp/lib/pkp/classes/db/DAO.inc.php on line 347, referer: https://xxx.de/index.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.622133 2017] [php7:warn] [pid 40] [client 172.20.0.18:48184] PHP Warning: error_log() expects parameter 2 to be integer, object given in /var/www/omp/lib/pkp/controllers/page/PageHandler.inc.php on line 62, referer: https://xxx.de/index.
php/RUB/admin/contexts
[Fri Nov 24 12:41:00.622902 2017] [php7:notice] [pid 39] [client 172.20.0.18:48190] PHP Notice: Only variables should be passed by reference in /var/www/omp/lib/pkp/controllers/grid/admin/context/ContextGridRow.inc.php on line 51, referer: https://xxx.de/ind
ex.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.623633 2017] [php7:notice] [pid 39] [client 172.20.0.18:48190] PHP Notice: Only variables should be passed by reference in /var/www/omp/lib/pkp/controllers/grid/admin/context/ContextGridRow.inc.php on line 64, referer: https://xxx.de/ind
ex.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.623790 2017] [php7:notice] [pid 39] [client 172.20.0.18:48190] PHP Notice: Only variables should be passed by reference in /var/www/omp/lib/pkp/controllers/grid/admin/context/ContextGridRow.inc.php on line 77, referer: https://xxx.de/ind
ex.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.623913 2017] [php7:notice] [pid 39] [client 172.20.0.18:48190] PHP Notice: Only variables should be passed by reference in /var/www/omp/lib/pkp/classes/controllers/grid/feature/OrderItemsFeature.inc.php on line 172, referer: https://omp-test.ub.rub.
de/index.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.624300 2017] [php7:notice] [pid 40] [client 172.20.0.18:48184] Malformed UTF-8 characters, possibly incorrectly encoded, referer: https://xxx.de/index.php/RUB/admin/contexts
172.20.0.18 - - [24/Nov/2017:12:41:00 +0000] “GET /index.php/RUB/$$$call$$$/page/page/user-nav-backend?=1511527262483 HTTP/1.1" 200 422 “https://xxx.de/index.php/RUB/admin/contexts” “Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge
cko) Chrome/62.0.3202.94 Safari/537.36”
[Fri Nov 24 12:41:00.634354 2017] [php7:notice] [pid 39] [client 172.20.0.18:48190] PHP Notice: Only variables should be passed by reference in /var/www/omp/lib/pkp/controllers/grid/admin/context/ContextGridRow.inc.php on line 51, referer: https://xxx.de/ind
ex.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.634946 2017] [php7:notice] [pid 39] [client 172.20.0.18:48190] PHP Notice: Only variables should be passed by reference in /var/www/omp/lib/pkp/controllers/grid/admin/context/ContextGridRow.inc.php on line 64, referer: https://xxx.de/ind
ex.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.635075 2017] [php7:notice] [pid 39] [client 172.20.0.18:48190] PHP Notice: Only variables should be passed by reference in /var/www/omp/lib/pkp/controllers/grid/admin/context/ContextGridRow.inc.php on line 77, referer: https://xxx.de/ind
ex.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.635178 2017] [php7:notice] [pid 39] [client 172.20.0.18:48190] PHP Notice: Only variables should be passed by reference in /var/www/omp/lib/pkp/classes/controllers/grid/feature/OrderItemsFeature.inc.php on line 172, referer: https://omp-test.ub.rub.
de/index.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.642542 2017] [php7:notice] [pid 39] [client 172.20.0.18:48190] PHP Notice: Only variables should be passed by reference in /var/www/omp/lib/pkp/controllers/grid/admin/context/ContextGridRow.inc.php on line 51, referer: https://xxx.de/ind
ex.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.643128 2017] [php7:notice] [pid 39] [client 172.20.0.18:48190] PHP Notice: Only variables should be passed by reference in /var/www/omp/lib/pkp/controllers/grid/admin/context/ContextGridRow.inc.php on line 64, referer: https://xxx.de/ind
ex.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.643258 2017] [php7:notice] [pid 39] [client 172.20.0.18:48190] PHP Notice: Only variables should be passed by reference in /var/www/omp/lib/pkp/controllers/grid/admin/context/ContextGridRow.inc.php on line 77, referer: https://xxx.de/ind
ex.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.643357 2017] [php7:notice] [pid 39] [client 172.20.0.18:48190] PHP Notice: Only variables should be passed by reference in /var/www/omp/lib/pkp/classes/controllers/grid/feature/OrderItemsFeature.inc.php on line 172, referer: https://omp-test.ub.rub.
de/index.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.656464 2017] [php7:notice] [pid 39] [client 172.20.0.18:48190] Malformed UTF-8 characters, possibly incorrectly encoded, referer: https://xxx.de/index.php/RUB/admin/contexts
172.20.0.18 - - [24/Nov/2017:12:41:00 +0000] "GET /index.php/RUB/$$$call$$$/grid/admin/press/press-grid/fetch-grid?
=1511527262484 HTTP/1.1” 200 422 “https://xxx.de/index.php/RUB/admin/contexts” “Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KH
TML, like Gecko) Chrome/62.0.3202.94 Safari/537.36”
[Fri Nov 24 12:41:00.777571 2017] [php7:notice] [pid 37] [client 172.20.0.18:48196] PHP Notice: unserialize(): Error at offset 228 of 230 bytes in /var/www/omp/lib/pkp/classes/db/DAO.inc.php on line 347, referer: https://xxx.de/index.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.795938 2017] [php7:notice] [pid 37] [client 172.20.0.18:48196] PHP Notice: Only variables should be passed by reference in /var/www/omp/lib/pkp/controllers/grid/notifications/NotificationsGridHandler.inc.php on line 63, referer: https://omp-test.ub.
rub.de/index.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.796812 2017] [php7:notice] [pid 37] [client 172.20.0.18:48196] PHP Notice: Only variables should be passed by reference in /var/www/omp/lib/pkp/controllers/grid/notifications/NotificationsGridHandler.inc.php on line 72, referer: https://omp-test.ub.
rub.de/index.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.796935 2017] [php7:notice] [pid 37] [client 172.20.0.18:48196] PHP Notice: Only variables should be passed by reference in /var/www/omp/lib/pkp/controllers/grid/notifications/NotificationsGridHandler.inc.php on line 83, referer: https://omp-test.ub.
rub.de/index.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.799563 2017] [php7:notice] [pid 37] [client 172.20.0.18:48196] PHP Notice: unserialize(): Error at offset 228 of 230 bytes in /var/www/omp/lib/pkp/classes/db/DAO.inc.php on line 347, referer: https://xxx.de/index.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.801967 2017] [php7:warn] [pid 37] [client 172.20.0.18:48196] PHP Warning: Declaration of LanguageToggleBlockPlugin::getSeq() should be compatible with BlockPlugin::getSeq($contextId = NULL) in /var/www/omp/plugins/blocks/languageToggle/LanguageToggl
eBlockPlugin.inc.php on line 0, referer: https://xxx.de/index.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.802014 2017] [php7:warn] [pid 37] [client 172.20.0.18:48196] PHP Warning: Declaration of LanguageToggleBlockPlugin::getBlockContext() should be compatible with BlockPlugin::getBlockContext($contextId = NULL) in /var/www/omp/plugins/blocks/languageTo
ggle/LanguageToggleBlockPlugin.inc.php on line 0, referer: https://xxx.de/index.php/RUB/admin/contexts
[Fri Nov 24 12:41:00.802028 2017] [php7:warn] [pid 37] [client 172.20.0.18:48196] PHP Warning: Declaration of LanguageToggleBlockPlugin::getEnabled() should be compatible with BlockPlugin::getEnabled($contextId = NULL) in /var/www/omp/plugins/blocks/languageToggle/Langu
ageToggleBlockPlugin.inc.php on line 0, referer: https://xxx.de/index.php/RUB/admin/contexts
172.20.0.18 - - [24/Nov/2017:12:41:00 +0000] “GET /favicon.ico HTTP/1.1” 200 1414 “https://xxx.de/index.php/RUB/admin/contexts” “Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36”
172.20.0.18 - - [24/Nov/2017:12:41:00 +0000] “GET /index.php/RUB/$$$call$$$/grid/notifications/task-notifications-grid/fetch-grid?_=1511527262485 HTTP/1.1” 200 1663 “https://xxx.de/index.php/RUB/admin/contexts” “Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleW
ebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36”

After debugging the code, I have found the problem:

One of the press name contains umlauts. In the PageHandler.inc.php i can see, that
return $templateMgr->fetchJson('controllers/page/usernav.tpl');
returns the html code containing wrong encoded characters. As a result, nothing is returned.

But I don’t understand this behavior. The database tables have an utf-8 encoding, and the server also has utf-8 encoding. I have checked this in the PKPString.inc.php (mb_internal_encoding($clientCharset);)

So, what is the problem here?