I was too optimistic that the cause of the mysql dump issue detailed in T3854 (two broken tables that cannot be dropped)
did not have critical side effects, turns out the WordPress customizer fails to load now due to these errors (requests on
the broken tables). This means page layouts cannot be edited anymore, so pretty critical.
[18-Jan-2022 10:50:03 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id ORDER BY t.name ASC made by require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), include('/themes/layerswp/builder.php'), dynamic_sidebar, WP_Widget->display_callback, WP_Widget_Text->widget, apply_filters('widget_text_content'), WP_Hook->apply_filters, do_shortcode, preg_replace_callback, do_shortcode_tag, tp_list_shortcode, tp_publist_shortcode, TP_Tags::get_tags [18-Jan-2022 12:19:50 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id ORDER BY t.name ASC made by require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), include('/themes/layerswp/builder.php'), dynamic_sidebar, WP_Widget->display_callback, WP_Widget_Text->widget, apply_filters('widget_text_content'), WP_Hook->apply_filters, do_shortcode, preg_replace_callback, do_shortcode_tag, tp_list_shortcode, tp_publist_shortcode, TP_Tags::get_tags [18-Jan-2022 12:52:20 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id ORDER BY t.name ASC made by require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), include('/themes/layerswp/builder.php'), dynamic_sidebar, WP_Widget->display_callback, WP_Widget_Text->widget, apply_filters('widget_text_content'), WP_Hook->apply_filters, do_shortcode, preg_replace_callback, do_shortcode_tag, tp_list_shortcode, tp_publist_shortcode, TP_Tags::get_tags [18-Jan-2022 14:25:05 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id ORDER BY t.name ASC made by require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), include('/themes/layerswp/builder.php'), dynamic_sidebar, WP_Widget->display_callback, WP_Widget_Text->widget, apply_filters('widget_text_content'), WP_Hook->apply_filters, do_shortcode, preg_replace_callback, do_shortcode_tag, tp_list_shortcode, tp_publist_shortcode, TP_Tags::get_tags [18-Jan-2022 15:04:04 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id ORDER BY t.name ASC made by require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), include('/themes/layerswp/builder.php'), dynamic_sidebar, WP_Widget->display_callback, WP_Widget_Text->widget, apply_filters('widget_text_content'), WP_Hook->apply_filters, do_shortcode, preg_replace_callback, do_shortcode_tag, tp_list_shortcode, tp_publist_shortcode, TP_Tags::get_tags [18-Jan-2022 15:33:23 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id ORDER BY t.name ASC made by require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), include('/themes/layerswp/builder.php'), dynamic_sidebar, WP_Widget->display_callback, WP_Widget_Text->widget, apply_filters('widget_text_content'), WP_Hook->apply_filters, do_shortcode, preg_replace_callback, do_shortcode_tag, tp_list_shortcode, tp_publist_shortcode, TP_Tags::get_tags [18-Jan-2022 16:29:46 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by require('wp-admin/edit-form-advanced.php'), require_once('wp-admin/admin-header.php'), do_action('admin_head'), WP_Hook->do_action, WP_Hook->apply_filters, tp_write_data_for_tinymce, TP_Tags::get_tags [18-Jan-2022 16:33:34 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by require('wp-admin/edit-form-advanced.php'), require_once('wp-admin/admin-header.php'), do_action('admin_head'), WP_Hook->do_action, WP_Hook->apply_filters, tp_write_data_for_tinymce, TP_Tags::get_tags [18-Jan-2022 16:35:05 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by require('wp-admin/edit-form-advanced.php'), require_once('wp-admin/admin-header.php'), do_action('admin_head'), WP_Hook->do_action, WP_Hook->apply_filters, tp_write_data_for_tinymce, TP_Tags::get_tags [18-Jan-2022 16:38:58 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by require('wp-admin/edit-form-advanced.php'), require_once('wp-admin/admin-header.php'), do_action('admin_head'), WP_Hook->do_action, WP_Hook->apply_filters, tp_write_data_for_tinymce, TP_Tags::get_tags [18-Jan-2022 16:39:08 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by require('wp-admin/edit-form-advanced.php'), require_once('wp-admin/admin-header.php'), do_action('admin_head'), WP_Hook->do_action, WP_Hook->apply_filters, tp_write_data_for_tinymce, TP_Tags::get_tags [18-Jan-2022 16:41:53 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by require('wp-admin/edit-form-advanced.php'), require_once('wp-admin/admin-header.php'), do_action('admin_head'), WP_Hook->do_action, WP_Hook->apply_filters, tp_write_data_for_tinymce, TP_Tags::get_tags [18-Jan-2022 16:42:03 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by require('wp-admin/edit-form-advanced.php'), require_once('wp-admin/admin-header.php'), do_action('admin_head'), WP_Hook->do_action, WP_Hook->apply_filters, tp_write_data_for_tinymce, TP_Tags::get_tags [18-Jan-2022 16:51:16 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by require('wp-admin/edit-form-advanced.php'), require_once('wp-admin/admin-header.php'), do_action('admin_head'), WP_Hook->do_action, WP_Hook->apply_filters, tp_write_data_for_tinymce, TP_Tags::get_tags [18-Jan-2022 16:51:30 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id ORDER BY t.name ASC made by do_action('toplevel_page_publications'), WP_Hook->do_action, WP_Hook->apply_filters, tp_show_publications_page, TP_Publications_Page::get_tab, TP_Tags::get_tags [18-Jan-2022 16:51:30 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by do_action('toplevel_page_publications'), WP_Hook->do_action, WP_Hook->apply_filters, tp_show_publications_page, TP_Publications_Page::get_tab, TP_Publications_Page::get_tag_filter, TP_Tags::get_tags [18-Jan-2022 16:51:45 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id WHERE ( r.pub_id = '25' ) ORDER BY t.name ASC made by do_action('publications_page_teachpress/addpublications'), WP_Hook->do_action, WP_Hook->apply_filters, tp_add_publication_page, TP_Publication_Page::get_tags_box, TP_Publication_Page::get_current_tags, TP_Tags::get_tags [18-Jan-2022 16:51:45 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by do_action('publications_page_teachpress/addpublications'), WP_Hook->do_action, WP_Hook->apply_filters, tp_add_publication_page, TP_Publication_Page::get_tags_box, TP_Tags::get_tags [18-Jan-2022 16:51:45 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT a.name, r.author_id, r.pub_id, r.con_id, r.is_author, r.is_editor FROM wp_teachpress_rel_pub_auth r INNER JOIN wp_teachpress_authors a ON a.author_id = r.author_id GROUP BY a.name ORDER BY a.sort_name ASC, a.name ASC made by do_action('publications_page_teachpress/addpublications'), WP_Hook->do_action, WP_Hook->apply_filters, tp_add_publication_page, TP_Publication_Page::print_scripts, TP_Authors::get_authors [18-Jan-2022 16:55:11 UTC] WordPress database error Table 'wordpress_dev.wp_teachpress_tags' doesn't exist for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by require('wp-admin/edit-form-advanced.php'), require_once('wp-admin/admin-header.php'), do_action('admin_head'), WP_Hook->do_action, WP_Hook->apply_filters, tp_write_data_for_tinymce, TP_Tags::get_tags [18-Jan-2022 16:56:11 UTC] WordPress database error Table 'wordpress_dev.wp_teachpress_tags' doesn't exist for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by require('wp-admin/edit-form-advanced.php'), require_once('wp-admin/admin-header.php'), do_action('admin_head'), WP_Hook->do_action, WP_Hook->apply_filters, tp_write_data_for_tinymce, TP_Tags::get_tags [18-Jan-2022 16:56:44 UTC] WordPress database error Table 'wordpress_dev.wp_teachpress_tags' doesn't exist for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by require('wp-admin/edit-form-advanced.php'), require_once('wp-admin/admin-header.php'), do_action('admin_head'), WP_Hook->do_action, WP_Hook->apply_filters, tp_write_data_for_tinymce, TP_Tags::get_tags [18-Jan-2022 16:57:52 UTC] WordPress database error Table 'wordpress_dev.wp_teachpress_tags' doesn't exist for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by require('wp-admin/edit-form-advanced.php'), require_once('wp-admin/admin-header.php'), do_action('admin_head'), WP_Hook->do_action, WP_Hook->apply_filters, tp_write_data_for_tinymce, TP_Tags::get_tags [18-Jan-2022 16:58:40 UTC] WordPress database error Table 'wordpress_dev.wp_teachpress_tags' doesn't exist for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by require('wp-admin/edit-form-advanced.php'), require_once('wp-admin/admin-header.php'), do_action('admin_head'), WP_Hook->do_action, WP_Hook->apply_filters, tp_write_data_for_tinymce, TP_Tags::get_tags [18-Jan-2022 16:58:50 UTC] WordPress database error Table 'wordpress_dev.wp_teachpress_tags' doesn't exist for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by require('wp-admin/edit-form-advanced.php'), require_once('wp-admin/admin-header.php'), do_action('admin_head'), WP_Hook->do_action, WP_Hook->apply_filters, tp_write_data_for_tinymce, TP_Tags::get_tags [18-Jan-2022 17:00:15 UTC] WordPress database error Table 'wordpress_dev.wp_teachpress_tags' doesn't exist for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by require('wp-admin/edit-form-advanced.php'), require_once('wp-admin/admin-header.php'), do_action('admin_head'), WP_Hook->do_action, WP_Hook->apply_filters, tp_write_data_for_tinymce, TP_Tags::get_tags [18-Jan-2022 17:15:26 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id ORDER BY t.name ASC made by require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), include('/themes/layerswp/builder.php'), dynamic_sidebar, WP_Widget->display_callback, WP_Widget_Text->widget, apply_filters('widget_text_content'), WP_Hook->apply_filters, do_shortcode, preg_replace_callback, do_shortcode_tag, tp_list_shortcode, tp_publist_shortcode, TP_Tags::get_tags [18-Jan-2022 17:15:29 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id ORDER BY t.name ASC made by require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), include('/themes/layerswp/builder.php'), dynamic_sidebar, WP_Widget->display_callback, WP_Widget_Text->widget, apply_filters('widget_text_content'), WP_Hook->apply_filters, do_shortcode, preg_replace_callback, do_shortcode_tag, tp_list_shortcode, tp_publist_shortcode, TP_Tags::get_tags [18-Jan-2022 17:20:22 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id ORDER BY t.name ASC made by require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), include('/themes/layerswp/builder.php'), dynamic_sidebar, WP_Widget->display_callback, WP_Widget_Text->widget, apply_filters('widget_text_content'), WP_Hook->apply_filters, do_shortcode, preg_replace_callback, do_shortcode_tag, tp_list_shortcode, tp_publist_shortcode, TP_Tags::get_tags [18-Jan-2022 17:25:32 UTC] WordPress database error Index column size too large. The maximum column size is 767 bytes. for query SELECT DISTINCT t.name, r.tag_id, r.pub_id, r.con_id FROM wp_teachpress_relation r INNER JOIN wp_teachpress_tags t ON t.tag_id = r.tag_id GROUP BY t.name ORDER BY t.name ASC made by require('wp-admin/edit-form-advanced.php'), require_once('wp-admin/admin-header.php'), do_action('admin_head'), WP_Hook->do_action, WP_Hook->apply_filters, tp_write_data_for_tinymce, TP_Tags::get_tags
The broken tables comes from the teachPress plugin used to display publication list.
They were created using mysql 5 at the time the plugin was installed with a compact row format which is the cause of the error.
To fix the issue, we need to recreate those tables with mysql 8 and fill them back with a bibtex export.
As those broken tables cannot be dropped, the only way to sanitize the database is to:
- create a new one
- fill it with a dump of the old one without the teachPress tables
- switch database name in WordPress configuration
- recreate teachPress tables from the WordPress settings
- reimport publications from a previous export in BibTex format
I will test that procedure on our testbed first.