-
Bug
-
Resolution: Fixed
-
Minor
-
4.3
-
WP Sprint 2024-I1.1 (Clones)
While trying to enable download for "Browse list of users" in MDL-80560 we discovered a problem with the session writing. I'm moving it into a separate issue (Bug) since this can be reproduced by creating a custom report with some filters.
- Create a custom report from the "Courses" datasource
- Add any column (i.e. course name) and a filter "Select category"
- Preview and download this report, you don't need to filter by anything
- You will get a debugging message in the end of the downloaded file (that actually completely breaks formats like PDF/CSV/XLS)
Script /reportbuilder/download.php?sesskey=3AQay7e9Wt&download=html&id=43 mutated the session after it was closed: $SESSION->cachestore_session: default_session-core/coursecat,default_session-core/courseeditorstate,default_session-core/navigation_expandcourse
|
line 791 of /lib/classes/session/manager.php: call to debugging()
|
line 159 of /lib/classes/shutdown_manager.php: call to core\session\manager::check_mutated_closed_session()
|
line ? of unknownfile: call to core_shutdown_manager::shutdown_handler()
|
This happens because when we download, the session is closed BEFORE we initialise filters and some filters (especially this one) use session cache while populating the options. It is actually closed early on purpose, so that the long download would not lock the session. See more details in the comments on MDL-80560
- blocks
-
MDL-80560 New report for "Browse user list" follow up - picture, download, identity fields
- Closed
- has a non-specific relationship to
-
MDL-78774 Broken exported files when deprecated message is showing
- Closed
- is duplicated by
-
MDL-80795 Session mutated when downloading report builder report that has category column
- Closed
- will be (partly) resolved by
-
MDL-75813 Session cache store breaks cache api when session is closed or readonly - deprecate cachestore_session
- Open