-
Task
-
Resolution: Done
-
Major
-
4.2
-
None
-
MOODLE_402_STABLE
-
MOODLE_402_STABLE
Preparations
This is about to inspect apache logs for complete behat runs and fix as many notices / problems are shown there. Aggregating information from all supported themes.
Used this regexp against goutte and chrome webserver logs, for reference:
ag -v 'POST|GET|OPTIONS|\] (checking plan|(saving|calculating|loading|setting) controller|(applying|loading|instantiating) (backup|restore|plan)|(activity|section) skipped|setting file inclusion|processing file aliases|Unknown setting: (questionbank|overwrite_conf|course_shortname|course_fullname|course_startdate))|Failed Login: ' aggregated.txt > results.txt
|
(where aggregated.txt is the union of goutte and chrome web server logs of all core themes)
Trick: When it's difficult to find which exact behat test is causing the problem, it's useful to run the tests with the --pretty command, getting the date prepended, that way later can match them with the dates in apache error logs. To do so just add the following to your behat run command:
vendor/bin/behat ...... --format pretty --no-colors | awk '{ print strftime("%Y-%m-%d %H:%M:%S"), $0; fflush(); }'
|
You can see the actual results @ results.txt
Trick: Always look to previous release issue to verify if the error already was detected there and considered ok.
Summary:
Problem A: Cannot find session record (user profile). It happens 2 times.
Happens in scenario "As a student, request deletion of account and data"
114783:[Sat Apr 15 07:52:39.098346 2023] [php:notice] [pid 3205] [client 172.20.0.5:51502] Cannot find session record 7b626dc16ec3edff31dff3bf86fd016a for user 104000, creating new session., referer: http://webserver4718fa63dcceb5d8/behatrun2/user/profile.php
Confirmed that it's testing exactly that the session has expired (see prev. release). So 100% ignorable.
Problem B: User id 'xxxxxx' already has a grade. It happens 4 times.
MDL-68961
Happens with scenario "Delete and restore a quiz with user data"
244036:[Sat Apr 15 09:40:52.638812 2023] [php:notice] [pid 6233] [client 172.20.0.5:50416] User id '104001' already has a grade entry for grade item id '266000', referer: http://webserver4718fa63dcceb5d8/behatrun2/admin/tool/recyclebin/index.php?contextid=100002
Confirmed that it's trying to recreate already existing course grade (see MDL-68961 and prev. release). So 100% ignorable.
Problem C: Invalid get_string() identifier: 'helplinktext' or component 'tiny_link'. It happens 1846 times.
MDL-77874
It happens with lots of scenarios.
500095:[Sat Apr 15 07:33:58.068505 2023] [php:notice] [pid 4989] [client 192.168.48.6:36730] Debugging: Invalid get_string() identifier: 'helplinktext' or component 'tiny_link'. Perhaps you are missing $string['helplinktext'] = ''; in /var/www/html/lib/editor/tiny/plugins/link/lang/en/tiny_link.php? in
* line 356 of /lib/classes/string_manager_standard.php: call to debugging()
* line 109 of /lib/external/externallib.php: call to core_string_manager_standard->get_string()
* line ? of unknownfile: call to core_external::get_string()
* line 251 of /lib/external/classes/external_api.php: call to call_user_func_array()
* line 83 of /lib/ajax/service.php: call to core_external
external_api::call_external_function()
* line 33 of /lib/ajax/service-nologin.php: call to require_once()
, referer: http://webserver37dd5abd728cfb47/behatrun3/mod/forum/view.php?id=193000
Just a missing lang string to be fixed by the issue above.
Problem D: Cannot find session record (h5p/embed.php). It happens 4 times.
Unable to reproduce locally (2 full behat runs plus individual component runs didn't show it). Leaving here for future reference.
268216:[Sat Apr 15 09:56:33.607597 2023] [php:notice] [pid 6794] [client 172.20.0.6:50370] Cannot find session record 57162ffc28b7cfa886aa466bb7bfc3d6 for user 108003, creating new session., referer: http://webserver4718fa63dcceb5d8/behatrun3/h5p/embed.php?url=http%3A%2F%2Fwebserver4718fa63dcceb5d8%2Fbehatrun3%2Fpluginfile.php%2F103005%2Fmod_h5pactivity%2Fpackage%2F0%2Ffilltheblanks.h5p&preventredirect=1&component=mod_h5pactivity
These are similar to A, but brand new in Moodle 4.2. Need to be confirmed if they are expected or no.
Problem E: Exception handler @ course/modedit.php. It happens 16 times.
Unable to reproduce locally (2 full behat runs plus individual component runs didn't show it). Leaving here for future reference.
32032:[Sat Apr 15 06:22:38.789438 2023] [php:notice] [pid 811] [client 172.20.0.5:56358] Default exception handler: Exception - Warning: rename([localcachedir]/theme/1681538349/boost/pix/assign/monologo.svg.tmp,[localcachedir]/theme/1681538349/boost/pix/assign/monologo.svg): No such file or directory in [dirroot]/theme/image.php on line 319 Debug:
Error code: generalexceptionmessage
* line 157 of /lib/behat/lib.php: Exception thrown
* line ? of unknownfile: call to behat_error_handler()
* line 319 of /theme/image.php: call to rename()
* line 181 of /theme/image.php: call to cache_image()
, referer: http://webserver4718fa63dcceb5d8/behatrun2/course/modedit.php?update=193000
New in 4.2, it has problems to move the monologo.svg icon or so, maybe it doesn't exist?
- has a clone
-
MDL-79317 Fix problems reported in Apache logs before 4.3 release
- Closed
- has a non-specific relationship to
-
MDL-68996 Behat webserver logs: Course or activity not accessible (autosave-ajax)
- Closed
- has been marked as being related by
-
MDL-76407 Verify that the apache logs are clean of PHP 8.2 notices/warnings/errors
- Closed
- is a clone of
-
MDL-76064 Fix problems reported in apache logs before 4.1 release
- Closed
- Testing discovered
-
MDL-78861 Cannot find session record in logs (h5p/embed.php) since Moodle 4.2
- Open
-
MDL-78862 Error renaming localcachedir monologo.svg since Moodle 4.2
- Waiting for peer review
- will be (partly) resolved by
-
MDL-77874 Tiny editor "Link" plugin missing language string debugging
- Closed