• Resolved BelleT

    (@bellet)


    Hi nice people!
    I have tried to follow previous suggestions as I understand a few people have run into this issue, however none of the tips have seemed to work.

    I have:
    – updated all of my plugins and have gone through de-activating and re-activating them and nothing seems to make a difference
    – WP Cron is enabled
    – fsockopen/cURL is enabled

    My status report is:

    <details><summary>System Status Report</summary>

    <br>### WordPress Environment ###<br><br>WordPress address (URL): &#091;Redacted]<br>Site address (URL): &#091;Redacted]<br>WC Version: 10.2.1<br>Legacy REST API Package Version: ✔ 1.0.5<br>Action Scheduler Version: ✔ 3.9.3<br>Log Directory Writable: ✔<br>WP Version: 6.8.2<br>WP Multisite: –<br>WP Memory Limit: 256 MB<br>WP Debug Mode: –<br>WP Cron: ✔<br>Language: en_US<br>External object cache: ✔<br><br>### Server Environment ###<br><br>Server Info: Apache<br>Server Architecture: Linux 4.18.0-553.54.1.lve.el8.x86_64 x86_64<br>PHP Version: 8.3.7<br>PHP Post Max Size: 8 MB<br>PHP Time Limit: 30<br>PHP Max Input Vars: 1000<br>cURL Version: 7.87.0<br>OpenSSL/1.1.1w<br><br>SUHOSIN Installed: –<br>MySQL Version: 10.5.24-MariaDB-cll-lve<br>Max Upload Size: 2 MB<br>Default Timezone is UTC: ✔<br>fsockopen/cURL: ✔<br>SoapClient: ✔<br>DOMDocument: ✔<br>GZip: ✔<br>Multibyte String: ✔<br>Remote Post: ✔<br>Remote Get: ✔<br><br>### Database ###<br><br>&#091;REDACTED]<br><br>### Post Type Counts ###<br><br>attachment: 162<br>custom_css: 3<br>customize_changeset: 2<br>da_image: 1<br>elementor_library: 7<br>jetpack_migration: 2<br>mc4wp-form: 1<br>nav_menu_item: 34<br>oembed_cache: 2<br>page: 29<br>post: 119<br>product: 29<br>product_variation: 63<br>pt_view: 9<br>revision: 1<br>shop_coupon: 5<br>shop_order: 542<br>shop_order_refund: 9<br>testimonial: 1<br>wp_font_face: 33<br>wp_font_family: 12<br>wp_global_styles: 1<br>wp_navigation: 1<br>wpcf7_contact_form: 3<br>wpsc-product: 40<br><br>### Security ###<br><br>Secure connection (HTTPS): ✔<br>Hide errors from visitors: ✔<br><br>### Active Plugins (29) ###<br><br>Advanced Database Cleaner: by Younes JFR. – 3.1.6<br>Advanced Shipment Tracking Pro: by zorem – 4.8.3<br>Afterpay Gateway for WooCommerce: by Afterpay – 3.8.8<br>Broken Link Checker: by WPMU DEV – 2.4.6<br>Child Theme Configurator: by Lilaea Media – 2.6.7<br>Contact Form 7: by Takayuki Miyoshi – 6.1.1<br>Content Views: by Content Views – 4.2<br>Draw Attention: by NSquared – 2.0.38<br>Elementor: by Elementor.com – 3.32.2<br>Enhanced Media Library: by wpUXsolutions – 2.9.4<br>Facebook for WooCommerce: by Facebook – 3.5.7<br>Fraud and Scam Detection For WooCommerce: by Link Nacional – 1.1.6<br>Google for WooCommerce: by WooCommerce – 3.4.3<br>Jetpack: by Automattic – 15.0<br>Mailchimp for WooCommerce: by Mailchimp – 5.6<br>Ocean Extra: by OceanWP – 2.5.1<br>PixelYourSite: by PixelYourSite – 11.1.1<br>Advanced Editor Tools: by Automattic – 5.9.2<br>UpdraftPlus - Backup/Restore: by TeamUpdraft<br>DavidAnderson – 1.25.7<br><br>W3 Total Cache: by BoldGrid – 2.8.12<br>WooCommerce.com Update Manager: by Automattic – 1.0.3<br>WooCommerce Legacy REST API: by WooCommerce – 1.0.5<br>WooCommerce PayPal Payments: by PayPal – 3.1.0<br>WooCommerce: by Automattic – 10.2.1<br>Yoast SEO: by Team Yoast – 26.0<br>WP Crontrol: by John Blackbourn – 1.19.2<br>WP Mail SMTP: by WP Mail SMTP – 4.6.0<br>Smush: by WPMU DEV – 3.21.1<br>ReCaptcha v2 for Contact Form 7: by IQComputing – 1.4.9<br><br>### Inactive Plugins (1) ###<br><br>Google Analytics for WooCommerce: by WooCommerce – 2.1.17<br><br>### Dropin Plugins () ###<br><br>advanced-cache.php: advanced-cache.php<br>object-cache.php: object-cache.php<br><br>### Settings ###<br><br>Legacy API Enabled: ✔<br>Force SSL: –<br>Currency: AUD ($)<br>Currency Position: left<br>Thousand Separator: ,<br>Decimal Separator: .<br>Number of Decimals: 2<br>Taxonomies: Product Types: external (external)<br>grouped (grouped)<br>simple (simple)<br>variable (variable)<br><br>Taxonomies: Product Visibility: exclude-from-catalog (exclude-from-catalog)<br>exclude-from-search (exclude-from-search)<br>featured (featured)<br>outofstock (outofstock)<br>rated-1 (rated-1)<br>rated-2 (rated-2)<br>rated-3 (rated-3)<br>rated-4 (rated-4)<br>rated-5 (rated-5)<br><br>Connected to WooCommerce.com: ✔<br>Enforce Approved Product Download Directories: –<br>HPOS feature enabled: –<br>Order datastore: WC_Order_Data_Store_CPT<br>HPOS data sync enabled: –<br>Enabled Features: analytics<br>marketplace<br>order_attribution<br>site_visibility_badge<br>remote_logging<br>blueprint<br>point_of_sale<br><br><br>### Logging ###<br><br>Enabled: ✔<br>Handler: Automattic\WooCommerce\Internal\Admin\Logging\LogHandlerFileV2<br>Retention period: 30 days<br>Level threshold: –<br>Log directory size: 3 MB<br><br>### WC Pages ###<br><br>Shop base: #474 - /shop/<br>Cart: #863 - /cart/ - Contains the woocommerce/cart block<br>Checkout: #864 - /checkout/ - Contains the woocommerce/checkout block<br>My account: #865 - /my-account/ - Contains the &#091;woocommerce_my_account] shortcode<br>Terms and conditions: #1283 - /terms-and-conditions/<br><br>### Theme ###<br><br>Name: OceanWP_Amabelle<br>Version: 1.0.1610496705<br>Author URL: <br>Child Theme: ✔<br>Parent Theme Name: OceanWP<br>Parent Theme Version: 4.1.3<br>Parent Theme Author URL: https://oceanwp.org/about-oceanwp/<br>Theme type: Classic theme<br>WooCommerce Support: ✔<br><br>### Templates ###<br><br>Overrides: oceanwp/woocommerce/cart/mini-cart.php<br>oceanwp/woocommerce/content-single-product.php<br>OceanWP_Amabelle/woocommerce/emails/admin-cancelled-order.php<br>OceanWP_Amabelle/woocommerce/emails/admin-new-order.php<br>oceanwp/woocommerce/loop/loop-start.php<br>oceanwp/woocommerce/single-product/product-image.php<br>oceanwp/woocommerce/single-product/title.php<br><br><br>### WooCommerce PayPal Payments ###<br><br>Onboarded: ✔<br>Branded only: –<br>New UI active: ✔<br>Shop country code: AU<br>WooCommerce currency supported: ✔<br>Advanced Card Processing available in country: ✔<br>Pay Later messaging available in country: ✔<br>Webhook status: ✔<br>PayPal Vault enabled: –<br>ACDC Vault enabled: –<br>Logging enabled: –<br>Reference Transactions: –<br>Used PayPal Checkout plugin: ✔<br>Subscriptions Mode: Disabled<br>PayPal Shipping Callback: ✔<br>Apple Pay: –<br>Google Pay: –<br>Fastlane: ✔<br><br>### Admin ###<br><br>Enabled Features: activity-panels<br>analytics<br>product-block-editor<br>coupons<br>core-profiler<br>customize-store<br>customer-effort-score-tracks<br>import-products-task<br>experimental-fashion-sample-products<br>shipping-smart-defaults<br>shipping-setting-tour<br>homescreen<br>marketing<br>mobile-app-banner<br>onboarding<br>onboarding-tasks<br>pattern-toolkit-full-composability<br>product-custom-fields<br>remote-inbox-notifications<br>remote-free-extensions<br>payment-gateway-suggestions<br>printful<br>shipping-label-banner<br>subscriptions<br>store-alerts<br>transient-notices<br>woo-mobile-welcome<br>wc-pay-promotion<br>wc-pay-welcome-page<br>launch-your-store<br><br>Disabled Features: product-data-views<br>experimental-blocks<br>experimental-iapi-mini-cart<br>experimental-iapi-runtime<br>coming-soon-newsletter-template<br>minified-js<br>product-pre-publish-modal<br>settings<br>async-product-editor-category-field<br>product-editor-template-system<br>use-wp-horizon<br>experimental-wc-rest-api<br><br>Daily Cron: ✔ Next scheduled: 2025-09-15 00:43:12 +10:00<br>Options: ✔<br>Notes: 195<br>Onboarding: completed<br><br>### Google for WooCommerce ###<br><br>Products API Pull: ❌ Disabled<br>Products MC Push: ✔ Enabled<br>Coupons API Pull: ❌ Disabled<br>Coupons MC Push: ✔ Enabled<br>Shipping API Pull: ❌ Disabled<br>Shipping MC Push: ✔ Enabled<br>Settings API Pull: ❌ Disabled<br>Settings MC Push: ✔ Enabled<br><br>### Action Scheduler ###<br><br>Complete: 7,827<br>Oldest: 2025-02-25 15:35:24 +1100<br>Newest: 2025-09-24 20:15:58 +1000<br><br>Pending: 674<br>Oldest: 2025-09-19 18:10:06 +1000<br>Newest: 2025-09-29 16:27:42 +1000<br><br>In-progress: 1<br>Oldest: –<br>Newest: –<br><br>Failed: 69<br>Oldest: 2024-09-06 19:58:43 +1000<br>Newest: 2025-09-15 14:00:43 +1000<br><br>Canceled: 81<br>Oldest: -0001-11-30 10:04:52 +1004<br>Newest: -0001-11-30 10:04:52 +1004<br><br><br>### Status report information ###<br><br>Generated at: 2025-09-24 21:07:07 +10:00<br>
    </details>

    I have installed WP Crontrol and there are a total of 41 cron events
    – 1 event with no action
    – 11 WordPress Core events and
    – 30 Custom events

    Any advice or support would be deeply appreciated.
    Thank you 🙂

    The page I need help with: [log in to see the link]

Viewing 11 replies - 1 through 11 (of 11 total)
  • Plugin Support LovingBro (woo-hc)

    (@lovingbro)

    Hi @bellet,

    Welcome to the WooCommerce support forum! Thank you for reaching out about your Action Scheduler issue.

    I can see you’re dealing with 547 past-due actions, which is definitely concerning and can impact your site’s performance. It’s great that you’ve already tried several troubleshooting steps including updating plugins, checking WP Cron, and verifying fsockopen/cURL – that shows good initiative!

    Before we dive deeper into diagnostics, could you help us with a couple of things:

    1. Action Status Review: Have you had a chance to check the individual past-due actions to see their specific statuses? You can view these in WooCommerce > Status > Action Scheduler. It would be helpful to know if these are showing as failed, pending, or have other specific error messages.
    2. Full System Report: To better diagnose any potential database or configuration issues, could you please share your complete system status report via https://pastebin.com? Please include the full, unredacted version (including site URL and database information) – this will help our team check for any missing or inconsistent database tables that might be causing the scheduler backup.

    The fact that you have WP Crontrol installed and can see the cron events is helpful. With 547 past-due actions, there’s likely an underlying issue preventing the Action Scheduler from processing these tasks properly.

    Once we have this additional information, we’ll be better positioned to identify the root cause and get your Action Scheduler running smoothly again.

    Thanks for your patience, and we’ll get this sorted out for you! 🙂

    Thread Starter BelleT

    (@bellet)

    Hi LovingBro!

    Thanks so much for getting back to me so quickly. I really do appreciate it.
    To answer your questions:

    1. Scheduled Actions: I’m now up to 733 past-due actions, most seem to be “pending”

    2. Full system report: https://pastebin.com/Ac1aXdG0

    If you need any further information, please let me know!

    Plugin Support LovingBro (woo-hc)

    (@lovingbro)

    Hi @bellet,

    I understand how worrying it is to see the past due actions keep climbing, especially when you have already checked cron and updated plugins. I will help you get the queue moving again.

    From your report I can see a few red flags. Your WooCommerce database is still on version 9.8.1 while the WooCommerce plugin is 10.2.1, this mismatch often stalls scheduled tasks. Your PHP Post Max Size is 8 MB and PHP Time Limit is 30, these limits are quite low for processing large action queues and can cause timeouts. You also have object cache enabled and W3 Total Cache active, aggressive caching can delay cron runners.

    Please work through these steps in order.
    Update the WooCommerce database. Go to WooCommerce > Status > Tools, then run the Update database tool. After it finishes, return to Scheduled Actions and check if new actions start completing.

    Increase server limits. In your hosting panel or php.ini, raise PHP Time Limit to at least 120, raise PHP Post Max Size to 32 MB or higher, and raise Upload Max Filesize to 32 MB or higher. Your memory limit is fine.

    Let Action Scheduler catch up. Go to WooCommerce, Status, Scheduled Actions. Filter to Pending, run a small batch manually from the screen. If you see very old Pending items, you can cancel those older than about thirty days to reduce the backlog.

    Make cron reliable. Ensure a real server cron calls wp cron regularly, every five minutes is typical. If you rely on WP Cron only, you can temporarily enable alternate cron in wp config to help requests spawn. Exclude wp cron and admin ajax from all caches and firewalls. In W3 Total Cache, temporarily disable page cache and object cache, then see if pending actions start to complete, you can re enable them after confirming.

    Identify the blocker. In Scheduled Actions, sort Pending by hook name and tell me the top five hooks you see most often, also open one of them and share any error message you find in the action log. This will point to the plugin that is holding the queue.

    Database storage engines. A few WooCommerce tables like order items and postmeta are still using MyISAM, while others use InnoDB. Mixed engines can slow or lock cron work. After a full backup, ask your host to convert remaining MyISAM WooCommerce tables to InnoDB.

    If the queue still does not move after the database update and limit increases, please share a screenshot of your Scheduled Actions screen showing the filters and one action’s details via snipboard.io, plus which hooks dominate the Pending list. Feel free to let us know how it goes.

    Thread Starter BelleT

    (@bellet)

    Hi LovingBro,

    Thanks so much for your detailed response!
    I’ve tried to follow through:

    1. Update the WooCommerce database.
    I have tried to do this but it has now joined the queue of other items scheduled to run!

    2. Increase server limits.
    I can confirm that I’ve now set
    a) max_execution_time to 120
    b) max-input_time is at 60
    c) memory_limit is at 128M
    d) post_max_size is at 32M
    e) upload_max_filesize is at 32M

    3. Let Action Scheduler catch up.

    4. Make cron reliable.
    I’ve temporarily de-activated W3 Total Cache to see if that would make a difference.
    I’d like to try following your advice to “temporarily enable alternate cron in wp config to help requests spawn. Exclude wp cron and admin ajax from all caches and firewalls.”
    Could you please walk me through that?

    5. Identify the blocker.
    Right now, it would appear that the woocommerce_run_update_callback is the hook that is appearing most frequently!

    6. Database storage engines.
    I’ll definitely ask my host to convert remaining MyISAM WooCommerce tables to InnoDB after this is sorted…

    Plugin Support shahzeen(woo-hc)

    (@shahzeenfarooq)

    Hi there!

    Thank you for the update. I have checked the system status report again and noticed that the cron job’s next scheduled date is 2025-09-15, which is an old date. It should be a future date. I recommend contacting your hosting provider to check if something is blocking the cron job.

    Please let us know what they say.

    Thread Starter BelleT

    (@bellet)

    Hi Shahzeen,

    I contacted my hosting provider and unfortunately, they were not able to assist.
    Here's the copy of the interaction:

    You will need to refer this to your web developer for further investigation of the concern or issue that you are seeing of your WooCommerce. Or you can do this
    Step 1: Check Action Scheduler Events In WP Admin → Tools → Cron Events (from WP Crontrol). Look for these hooks: action_scheduler_run_queue woocommerce_cleanup_sessions wc_admin_unsnooze_admin_notes If you see many overdue / missed runs, it means WordPress is not reliably calling wp-cron.
    Step 2: Run a Cron Event Manually In WP Crontrol, click Run Now on action_scheduler_run_queue. If it works and processes some actions, that means cron itself is okay, but it’s just not being triggered automatically. If it fails, check for PHP errors in WooCommerce → Status → Logs.
    Step 3: Check Loopback Requests Go to WooCommerce → Status → scroll to WordPress Environment. Find Loopback request. If it shows red or failed, that’s a sign cron can’t call back into your site (often due to hosting firewall, htaccess, or a security plugin).
    Step 4: Decide Between WP-Cron vs. Real Cron If your hosting allows, it’s best to disable WP-Cron and replace it with a server cron job. Edit wp-config.php and add: In cPanel or Plesk, set up a cron job:
    Step 5: Clear Out the Backlog In Tools → Scheduled Actions (if WooCommerce is active, you’ll see this menu). Bulk select overdue actions → Run or Delete if safe. This clears the “667 past-due actions” warning.
    🛠️ Step 6: Check for Plugin Conflicts Security/caching plugins (Wordfence, iThemes, LiteSpeed Cache, etc.) sometimes block wp-cron.php. Temporarily disable them and re-test cron runs. Also make sure Cloudflare (if used) isn’t blocking wp-cron.php. /5 * wget -q -O - https://amabelle.com.au/wp-cron.php?doing_wp_cron >/dev/null 2>&1 define('DISABLE_WP_CRON', true);



    Me: Would crazy domains be able to replace my wp-cron with a server cron job? would that make a difference?

    Tech Support officer: As much as I’d love to assist further, this request falls outside the scope of my support. I recommend reaching out to your developer for assistance.

    I could be wrong but it feels like the suggestions provided were AI generated and even though I provided the individual with the link to this thread which has all the information, they were not able to pursue it any further. Any further advice or suggestions would be greatly appreciated.

    Hi @bellet,

    Thank you for the update. I completely understand how this situation can feel like hitting a dead end, especially with actions continuing to build up—it can be very frustrating.

    As a first step, I recommend simplifying the number of plugins you’re using. For example, instead of running Advanced Database Cleaner, WP Smush, and WP Super Cache, you could switch to WP-Optimize, which includes database cleaning, image optimization, and caching (with minification and compression) in its free version. I also noticed you may have a few plugins installed that you might not be actively using.

    For a more reliable test, I suggest creating a staging site by moving a copy of your live site to a subdomain or directory (e.g., staging.yourdomain.com or yourdomain.com/staging). On the staging site, clear all failed and pending actions, deactivate every plugin except WooCommerce, switch your theme to Storefront, and then monitor the site for 1–3 days. During this time, check it frequently to see if actions begin piling up again.

    Please report back with your observations after testing. If actions still accumulate, it’s likely an issue with your server. If they don’t, then the cause is probably a conflict with your theme or another plugin. The results will guide us toward the next steps in troubleshooting.

    Thread Starter BelleT

    (@bellet)

    Hi @mosesmedh,

    SUCCESS!!!! Thank you for your time and great suggestions!

    I’ll note down what I did in the hopes that it may help someone else, but in the end, I believe it was because I followed your advice and reduced the number of plugins and switched over to WP-Optimize.

    After deleting Advanced Database Cleaner, WP Smush, and W3 SuperCache, I installed and ran WP-Optimise. After that, I de-activated all the plugins again with the exception of Woo-Commerce.
    Then I cleared all the old scheduled actions and was finally able to update the database which cleared the backlog of scheduled actions. To double check, I then re-activated each plugin and checked to see if the scheduled actions started to pile up again.

    Thanks again to everyone who tried to assist – I really am grateful for your time, patience, and suggestions 🙂

    Plugin Support LovingBro (woo-hc)

    (@lovingbro)

    Hi @bellet,

    Thank you so much for circling back and sharing your results—it’s wonderful to hear you got everything running smoothly again! Cleaning up the plugin stack, switching to WP-Optimize, and then re-running the database update was a smart move, and I’m glad it cleared the backlog. Your notes will definitely help other store owners who face the same issue.

    Since WooCommerce is free and powered by community feedback, would you mind taking a moment to leave us a review? It really helps us continue improving: https://wordpress.org/support/plugin/woocommerce/reviews/#new-post

    We’re happy to know things are working better on your end now—thanks again for your patience and persistence throughout the troubleshooting!

    Thread Starter BelleT

    (@bellet)

    @bellet, thank you so much for your kind words. I’m glad we could help resolve your issue. If you have any other questions or need assistance in the future, don’t hesitate to start a new topic — we’ll be more than happy to help again. Kudos!

Viewing 11 replies - 1 through 11 (of 11 total)

The topic ‘Action Scheduler: 547 past-due actions’ is closed to new replies.