Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Autoloader: Fatal errors on each plugin update #16273

Closed
jeherve opened this issue Jun 24, 2020 · 1 comment · Fixed by #16279
Closed

Autoloader: Fatal errors on each plugin update #16273

jeherve opened this issue Jun 24, 2020 · 1 comment · Fixed by #16279
Assignees
Labels
[Package] Autoloader [Pri] BLOCKER [Type] Bug When a feature is broken and / or not performing as intended
Milestone

Comments

@jeherve
Copy link
Member

jeherve commented Jun 24, 2020

It seems that this started happening right after we merged #15106.

This is on a Multisite network when Jetpack is network-activated. The VaultPress plugin (running Autoloader 1.3.7) is also installed on the network, but not network-activated. It is activated on some of the sites though.

The site also uses the Jetpack Beta plugin, set to the Bleeding edge option, and is set to autoupdate. On each update, the following error happens:

[24-Jun-2020 15:00:11 UTC] PHP Fatal error:  Uncaught Error: Call to undefined function Automattic\Jetpack\Autoloader\jpc74400305ae47f17074763a083b7f93f\set_up_autoloader() in wp-content/plugins/jetpack-dev/vendor/autoload_packages.php:14
Stack trace:
#0 wp-content/plugins/jetpack-dev/vendor/class-plugins-handler.php(201): require()
#1 wp-includes/class-wp-hook.php(287): Automattic\Jetpack\Autoloader\jpcda59666bc458741d31463f9a28c94fc\Plugins_Handler->reset_maps_after_update(true, Array, Array)
#2 wp-includes/plugin.php(206): WP_Hook->apply_filters(true, Array)
#3 wp-admin/includes/class-wp-upgrader.php(621): apply_filters('upgrader_post_i...', true, Array, Array)
#4 wp-admin/includes/class-wp-upgrader.php(794): WP_Upgrader->install_package(Array)
#5 wp-admin/includes/class-plugin-upgrader.php(295): WP_Upgrader->run(Array)
#6 wp-content/plugins/jetpack-beta-master/jetpack-beta.php(1057): Plugin_Upgrader->bulk_upgrade(Array)
#7 wp-includes/class-wp-hook.php(287): Jetpack_Beta::run_autoupdate()
#8 wp-includes/class-wp-hook.php(311): WP_Hook->apply_filters('', Array)
#9 wp-includes/plugin.php(544): WP_Hook->do_action(Array)
#10 wp-cron.php(138): do_action_ref_array('jetpack_beta_au...', Array)
#11 {main}
  thrown in wp-content/plugins/jetpack-dev/vendor/autoload_packages.php on line 14
[24-Jun-2020 15:00:11 UTC] PHP Fatal error:  Uncaught Error: Class 'Automattic\Jetpack\Roles' not found in wp-content/plugins/jetpack-dev/vendor/automattic/jetpack-sync/src/class-listener.php:399
Stack trace:
#0 wp-content/plugins/jetpack-dev/vendor/automattic/jetpack-sync/src/class-listener.php(335): Automattic\Jetpack\Sync\Listener->get_actor('jetpack_update_...', Array)
#1 wp-content/plugins/jetpack-dev/vendor/automattic/jetpack-sync/src/class-listener.php(199): Automattic\Jetpack\Sync\Listener->enqueue_action('jetpack_update_...', Array, Object(Automattic\Jetpack\Sync\Queue))
#2 wp-includes/class-wp-hook.php(287): Automattic\Jetpack\Sync\Listener->action_handler(Object(stdClass))
#3 wp-includes/class-wp-hook.php(311): WP_Hook->apply_filters('', Array)
#4 wp-includes/plugin.php(478): WP_Hook->do_action(Array)
#5 wp-content/plugins/jetpack-dev/vendor/automattic/jetpack-sync/src/modules/class-updates.php(347): do_action('jetpack_update_...', Object(stdClass))
#6 wp-includes/class-wp-hook.php(287): Automattic\Jetpack\Sync\Modules\Updates->sync_last_event('')
#7 wp-includes/class-wp-hook.php(311): WP_Hook->apply_filters(NULL, Array)
#8 wp-includes/plugin.php(478): WP_Hook->do_action(Array)
#9 wp-includes/load.php(1021): do_action('shutdown')
#10 [internal function]: shutdown_action_hook()
#11 {main}
  thrown in wp-content/plugins/jetpack-dev/vendor/automattic/jetpack-sync/src/class-listener.php on line 399

cc @kbrown9

@jeherve jeherve added [Type] Bug When a feature is broken and / or not performing as intended [Pri] BLOCKER [Package] Autoloader labels Jun 24, 2020
@jeherve jeherve added this to the 8.7 milestone Jun 24, 2020
@bisko
Copy link
Contributor

bisko commented Jun 24, 2020

Looking at the traces, that sounds really similar to Automattic/jetpack-beta#98 (and the origin issue: #15209) - the code is replaced while we're trying to load different version of it in the same request which fails.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Package] Autoloader [Pri] BLOCKER [Type] Bug When a feature is broken and / or not performing as intended
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants