Very large graph definitions, totaling over 64KB, don't fit into page_props DB table, and thus end up trimmed / invalid JSON. Need to switch to an alternative storage.
|mediawiki/extensions/Graph : master||Compress graph_specs page property|
- Mentioned In
- T124840: Section edit preview doesn't let you preview references defined outside the section being previewed
T105898: Allow large page props data to be transparently compressed with gzip in storage
- Mentioned Here
- T53740: TemplateData: page_props limits value length to 65535 bytes (MySQL 'blob' field)
Note that TemplateData also uses page_props. It uses an edit hook to prevent oversized blobs from being saved in the first place. Doesn't solve the size problem, but at least ensures data integrity.
Ok intermediate fix could be something like:
- gzip the graph_specs page props data
- add API query page props extension to provide the decompressed graph specs
- tweak graphoid to use that instead of raw page_props
Proper fix for this is to do the data transformations on the MediaWiki side and bundle everything into a data blob indexed by (a fuller) hash value, but that's farther out.