• Resolved 12sp

    (@sp12)


    About an hour ago (9 PM PST) this plugin caused a critical error and shut down my site. I had to deactivate it (with the help of my host) to get the site up again.

    • This topic was modified 4 years, 8 months ago by 12sp.
Viewing 10 replies - 1 through 10 (of 10 total)
  • Plugin Author Jared Atchison

    (@jaredatch)

    Thanks for reaching out!

    Can you provide the critical error message? This likely will be in your error log, which your host can provide. This will hopefully help us understand what might be happening behind the scenes.

    Thread Starter 12sp

    (@sp12)

    Thanks. I was just looking at the log. It looks like a table is missing. I deleted the plugin and reinstalled it but it didn’t fix the issue.

    The file said:
    #0 /home1/webholid/public_html/wp-content/plugins/wpforms-lite/vendor/woocommerce/action-scheduler/classes/ActionScheduler_ActionFactory.php(177): ActionScheduler_DBStore->save_action(Object(ActionScheduler_Action))
    #1 /home1/webholid/public_html/wp-content/plugins/wpforms-lite/vendor/woocommerce/action-scheduler/classes/ActionScheduler_ActionFactory.php(105): ActionScheduler_ActionFactory->store(Object(ActionScheduler_Action))
    #2 /home1/webholid/public_html/wp-content/plugins/wpforms-lite/vendor/woocommerce/action-scheduler/functions.php(45): ActionScheduler_ActionFactory->recurring(‘wpforms_process…’, Array, 1584057600, 86400, ‘wpforms’)
    #3 /home1/webholid/public_html/wp-content/plugins/wpforms-lite/src/Tasks/Task.php(256): as_schedule_r in /home1/webholid/public_html/wp-content/plugins/wpforms-lite/vendor/woocommerce/action-scheduler/classes/data-stores/ActionScheduler_DBStore.php on line 74
    [12-Mar-2020 17:42:31 UTC] WordPress database error Table ‘webholid_wrd.wp_actionscheduler_actions’ doesn’t exist for query SELECT a.action_id FROM wp_actionscheduler_actions a WHERE a.hook=’wpforms_process_entry_emails_meta_cleanup’ AND a.status=’in-progress’ ORDER BY scheduled_date_gmt DESC LIMIT 1 made by require(‘wp-blog-header.php’), require_once(‘wp-load.php’), require_once(‘wp-config.php’), require_once(‘wp-settings.php’), do_action(‘init’), WP_Hook->do_action, WP_Hook->apply_filters, WPForms\WPForms->WPForms\{closure}, WPForms\Tasks\Tasks->init, WPForms\Tasks\Actions\EntryEmailsMetaCleanupTask->__construct, WPForms\Tasks\Actions\EntryEmailsMetaCleanupTask->init, as_next_scheduled_action, ActionScheduler_DBStore->find_action
    [12-Mar-2020 17:42:31 UTC] WordPress database error Table ‘webholid_wrd.wp_actionscheduler_actions’ doesn’t exist for query SELECT a.action_id FROM wp_actionscheduler_actions a WHERE a.hook=’wpforms_process_entry_emails_meta_cleanup’ AND a.status=’pending’ ORDER BY scheduled_date_gmt ASC LIMIT 1 made by require(‘wp-blog-header.php’), require_once(‘wp-load.php’), require_once(‘wp-config.php’), require_once(‘wp-settings.php’), do_action(‘init’), WP_Hook->do_action, WP_Hook->apply_filters, WPForms\WPForms->WPForms\{closure}, WPForms\Tasks\Tasks->init, WPForms\Tasks\Actions\EntryEmailsMetaCleanupTask->__construct, WPForms\Tasks\Actions\EntryEmailsMetaCleanupTask->init, as_next_scheduled_action, ActionScheduler_DBStore->find_action
    [12-Mar-2020 17:42:31 UTC] WordPress database error Table ‘webholid_wrd.wp_actionscheduler_actions’ doesn’t exist for query SHOW FULL COLUMNS FROM wp_actionscheduler_actions made by require(‘wp-blog-header.php’), require_once(‘wp-load.php’), require_once(‘wp-config.php’), require_once(‘wp-settings.php’), do_action(‘init’), WP_Hook->do_action, WP_Hook->apply_filters, WPForms\WPForms->WPForms\{closure}, WPForms\Tasks\Tasks->init, WPForms\Tasks\Actions\EntryEmailsMetaCleanupTask->__construct, WPForms\Tasks\Actions\EntryEmailsMetaCleanupTask->init, WPForms\Tasks\Task->register, WPForms\Tasks\Task->register_recurring, as_schedule_recurring_action, ActionScheduler_ActionFactory->recurring, ActionScheduler_ActionFactory->store, ActionScheduler_DBStore->save_action
    [12-Mar-2020 17:42:31 UTC] PHP Fatal error: Uncaught RuntimeException: Error saving action: Table ‘webholid_wrd.wp_actionscheduler_actions’ doesn’t exist in /home1/webholid/public_html/wp-content/plugins/wpforms-lite/vendor/woocommerce/action-scheduler/classes/data-stores/ActionScheduler_DBStore.php:74

    Plugin Author Jared Atchison

    (@jaredatch)

    Hey 12sp,

    Thanks for the details, they are very helpful.

    We’ve seen that error encountered by a few users. The cause has been from another plugin used an old version of the background processing library we use (and recently included), which had an an error.

    (A few WooCommerce addons accidentally included Action Scheduler 3.0 BETA briefly)

    To get things back and running, you’ll need to run through a few steps (below). This should trigger the database tables to be recreated and get things up and running.

    1. Open /wp-admin/options.php page on your site.
    2. On this page find options schema-ActionScheduler_LoggerSchema, schema-ActionScheduler_StoreSchema, and action_scheduler_migration_status and remove their values (leave them empty), save options changes.
    3. Activate WPForms plugin again.

    Let me know if that helps. Sorry for the trouble here!

    Thread Starter 12sp

    (@sp12)

    That fixed it! Thank you.

    Plugin Author Jared Atchison

    (@jaredatch)

    Hey @sp12,

    Thank you for reporting back and as I mentioned I’m sorry for the trouble. Have a great weekend ??

    Jared

    Hello,

    I’m writing there because i got a very similar error, but the technique used by 12sp didn’t work for me.

    Here is my stack trace

    Fatal error: Uncaught Error: Cannot call abstract method ActionScheduler_Logger::init() in /home/pleasure/public_html/testing-version/wp-content/plugins/wpforms-lite/vendor/woocommerce/action-scheduler/classes/data-stores/ActionScheduler_DBLogger.php:102 Stack trace: #0 /home/pleasure/public_html/testing-version/wp-includes/class-wp-hook.php(286): ActionScheduler_DBLogger->init() #1 /home/pleasure/public_html/testing-version/wp-includes/class-wp-hook.php(312): WP_Hook->apply_filters(NULL, Array) #2 /home/pleasure/public_html/testing-version/wp-includes/plugin.php(478): WP_Hook->do_action(Array) #3 /home/pleasure/public_html/testing-version/wp-settings.php(523): do_action(‘init’) #4 /home/pleasure/public_html/testing-version/wp-config.php(102): require_once(‘/home/pleasure/…’) #5 /home/pleasure/public_html/testing-version/wp-load.php(37): require_once(‘/home/pleasure/…’) #6 /home/pleasure/public_html/testing-version/wp-blog-header.php(13): require_once(‘/home/pleasure/…’) #7 /home/pleasure/public_html/testing-version in /home/pleasure/public_html/testing-version/wp-content/plugins/wpforms-lite/vendor/woocommerce/action-scheduler/classes/data-stores/ActionScheduler_DBLogger.php on line 102

    I hope that is not a problem that I reply here instead than create a new topic. In that case let me know and I’ll star a new one.

    Thanks in advance.
    Anselmo.

    Plugin Support Ethan Choi

    (@ethanchoi)

    Hi @vicowilliams,

    We’ve released a fix for the issue. When you get the chance, could you update the plugin to its latest version (currently 1.5.9.5) and let us know how it goes?

    Thanks!

    Hi,

    i’ve tried to update to last version (1.5.9.5). But unfortunately, it didn’t work for me.. I get the same error.

    Fatal error: Uncaught Error: Cannot call abstract method ActionScheduler_Logger::init() in /home/pleasure/public_html/testing-version/wp-content/plugins/wpforms-lite/vendor/woocommerce/action-scheduler/classes/data-stores/ActionScheduler_DBLogger.php:102 Stack trace: #0 /home/pleasure/public_html/testing-version/wp-includes/class-wp-hook.php(286): ActionScheduler_DBLogger->init() #1 /home/pleasure/public_html/testing-version/wp-includes/class-wp-hook.php(312): WP_Hook->apply_filters(NULL, Array) #2 /home/pleasure/public_html/testing-version/wp-includes/plugin.php(478): WP_Hook->do_action(Array) #3 /home/pleasure/public_html/testing-version/wp-settings.php(523): do_action(‘init’) #4 /home/pleasure/public_html/testing-version/wp-config.php(102): require_once(‘/home/pleasure/…’) #5 /home/pleasure/public_html/testing-version/wp-load.php(37): require_once(‘/home/pleasure/…’) #6 /home/pleasure/public_html/testing-version/wp-admin/admin.php(34): require_once(‘/home/pleasure/…’) #7 /home/pleasure/public_html/testing-version in /home/pleasure/public_html/testing-version/wp-content/plugins/wpforms-lite/vendor/woocommerce/action-scheduler/classes/data-stores/ActionScheduler_DBLogger.php on line 102

    Thanks.
    Anselmo.

    Hi @vicowilliams,

    I’m sorry for the trouble here!

    We had recently included a background processing library in the plugin. However, some WooCommerce addons had included older version of that library, and this causes a conflict.

    We’re working on a broader solution, but in the meantime it should be possible to resolve this with the following steps:

    1. In the WordPress admin area, open /wp-admin/options.php for your site (you’ll need to type this into the browser bar for your site, ie https://yoursite.com/wp-admin/options.php).

    2. On this page find these options:
    schema-ActionScheduler_LoggerSchema
    schema-ActionScheduler_StoreSchema
    action_scheduler_migration_status

    For each of those, remove their values (leave their fields empty). At the bottom of this page, be sure to save changes.

    3. Check to see if this issue is resolved.

    If you give this a try, could you please let me know how it goes? Thanks!

    Hi,

    no problem, I’m a developer too, and I know that issues like this are part of the job. Sooner or later it happens.

    I’ll try as soon as possible the solution you suggest and i’ll report to you the result.

    Thanks.
    Anselmo.

Viewing 10 replies - 1 through 10 (of 10 total)
  • The topic ‘critical error’ is closed to new replies.