7.0.15 (2022-05-19)
Overview of merged pull requests
TASK: Delete apigen.yml
The API documentation is discontinued, the tooling is outdated and no one cares for static documentation anymore.
Review instructions
BUGFIX: Store cache content in BLOB field with PdoBackend
The cache PdoBackend used a MEDIUMTEXT column for the content, with some special handling for PostgreSQL to fix null bytes in the content.
When using igbinary, even with MariadDB problems can occur, since the written content is garbled when fetched back and cannot be unserialized anymore, leading to cache misses / read errors.
This change fixes it by using a MEDIUMBLOB (BYTEA on PostgreSQL) field for the content.
See: #2830
Upgrade instructions
To make use of the new field, drop the cache table and run the cache setup again.
Another option is to switch the column type manually using a DB management tool of your choice.
If you keep the old DB structure, aside from not having the fixed bug fixed:
MariaDB doesn’t care at all, the new code with the old DB structure works just fine.
PostgreSQL will “work” but need a cache flush, as previously cached content shows wrong.
Review instructions
Hard to say, but you definitely need igbinary to run into the issue. Probably also a specific kind of data that cannot be stored in MariaDB MEDIUMTEXT.
For PostgreSQL some code that used to do bin2hex/hex2bin on the data has been removed, so if things still work as before, this is good.
Packages:
Cache
TASK: Use type casting instead of intval/floatval
Use type casting instead of slower function calls.
Packages:
Arrays
Eel
Flow