• pokalebigworld

    (@pokalebigworld)


    Hallo zusammen,

    ich hoffe, ihr könnt mir weiterhelfen.

    Ich habe ein massives Problem mit meinem WooCommerce-Shop. Die Datenbank wächst innerhalb kürzester Zeit immer weiter an und ist inzwischen bereits auf 8,46 GB angewachsen.

    Nach meinen Recherchen scheint die Ursache der WooCommerce Action Scheduler zu sein.

    System:

    • WordPress 7.0.1
    • WooCommerce 10.9.4
    • PHP 8.3
    • MariaDB 10.11
    • HPOS aktiviert
    • Zeitzone: Europe/Berlin

    Im Action Scheduler werden permanent neue Aktionen mit folgendem Hook erstellt:

    wc_run_batch_process

    Argument:

    Automattic\WooCommerce\Internal\DataStores\Orders\DataSynchronizer

    Die Aktionen werden größtenteils als “Complete” markiert, trotzdem werden sofort wieder neue erstellt. Dadurch wachsen die Tabellen des Action Schedulers ununterbrochen weiter.

    Aktuell gibt es bereits:

    • über 9,4 Millionen abgeschlossene Action Scheduler-Aktionen
    • Millionen von Log-Einträgen
    • eine Datenbankgröße von 8,46 GB

    Mein Hostinganbieter (ESTUGO) hat die Serverprotokolle geprüft. Dort gibt es Hinweise darauf, dass asynchrone WooCommerce-Aufgaben nicht korrekt verarbeitet werden. Der Support vermutet, dass der WooCommerce Action Scheduler in einer Endlosschleife läuft und hat mir empfohlen, mich direkt an das WooCommerce-Forum zu wenden.

    Ich habe bereits Folgendes geprüft bzw. durchgeführt:

    • WooCommerce auf die aktuelle Version aktualisiert
    • Zeitzone geprüft (Europe/Berlin)
    • Datenbank optimiert
    • Action Scheduler geprüft
    • Server-Logs geprüft
    • Keine offensichtlichen PHP- oder Datenbankfehler gefunden

    Meine Fragen:

    1. Ist dieses Verhalten bekannt?
    2. Warum beendet der DataSynchronizer seine Arbeit nicht?
    3. Wodurch werden ständig neue wc_run_batch_process-Aktionen erstellt?
    4. Gibt es eine Möglichkeit, die Ursache der Endlosschleife zu finden oder zu beheben?

    Ich bin für jeden Hinweis sehr dankbar, da die Datenbank immer weiter wächst und inzwischen bereits 8,46 GB erreicht hat.

    Vielen Dank!

Ansicht von 5 Antworten – 1 bis 5 (von insgesamt 5)
  • Moderator threadi

    (@threadi)

    Du hast bei HPOS den Kompatibilitätsmodus aktiviert. Dadurch werden laufen die Bestellungen zwischen den WordPress-Tabellen und der HPOS-Speicherung abgeglichen.

    Schau mal unter WooCommerce > Einstellungen > Erweitert > Funktionen. Dort müsste ein Häkchen namens „Aktiviert den Kompatibilitätsmodus (Synchronisierung von Bestellungen zwischen der leistungsstarken Speicherung von Bestellungen (High-Performance Order Storage, HPOS) und der Speicherung von WordPress-Beiträgen).“ zu finden sein. Ich vermute es ist bei dir gesetzt. Eine Dokumentation dazu befindet sich hier: https://woocommerce.com/document/high-performance-order-storage/

    Bevor du das deaktivierst, würde ich dir empfehlen zu prüfen, wieso es aktiviert ist. Oft haben Projekte, die das nutzen, eine Historie. Eigentlich braucht man die Einstellung nach meiner Erfahrung nur, wenn man Bestellungen im alten Format erhält und diese in HPOS haben möchte. Das kann z.B. beim Einsatz eines externen CRM passieren, welches HPOS noch nicht unterstützt. Oder wenn du Plugins hast, die HPOS noch nicht unterstützen. Das musst du anhand deines Projektes selbst herausfinden und dann entscheiden. Wenn du die Einstellung weiterhin benötigst, dann solltest du ggfs. mehr Speicherplatz für das Projekt einplanen, da nicht nur Logs geschrieben werden sondern auch Bestelldaten doppelt vorgehalten werden.

    Thread-Starter pokalebigworld

    (@pokalebigworld)

    Vielen Dank für die Rückmeldung.

    Ja, der HPOS-Kompatibilitätsmodus ist bei mir aktiviert.

    Allerdings habe ich Folgendes festgestellt:

    Sobald ich das Plugin “EU Order Withdrawal Button for WooCommerce” (vendidero) deaktiviere, werden keine neuen wc_run_batch_process-Aktionen mehr erstellt. Sobald ich das Plugin aktiviere, beginnt die Synchronisierung wieder und die Anzahl der Action-Scheduler-Einträge wächst sehr schnell.

    Meine Datenbank ist dadurch bereits auf 8,46 GB angewachsen.

    Ist dieses Verhalten in Verbindung mit dem HPOS-Kompatibilitätsmodus bekannt oder deutet das eher auf eine Inkompatibilität des Plugins hin?

    Moderator threadi

    (@threadi)

    Mir ist so etwas nicht bekannt, ich hab aber auch so eine Kombination nicht im Einsatz. Wenn du den Zusammenhang schon erkannt hast, würde ich dir empfehlen dich an deren Supportforum zu wenden – die Reden dort auch deutsch: https://wordpress.org/support/plugin/eu-order-withdrawal-button-for-woocommerce/

    Thread-Starter pokalebigworld

    (@pokalebigworld)

    Vielen Dank an für deine Hilfe und den Hinweis. Auf deine Empfehlung hin stelle ich mein Problem jetzt hier vor. Vielleicht kennt jemand dieses Verhalten oder hatte bereits denselben Fehler.

    Moderator Support Moderator

    (@moderator)

Ansicht von 5 Antworten – 1 bis 5 (von insgesamt 5)

Das Thema „Action Scheduler erstellt Millionen wc_run_batch_process“ ist für neue Antworten geschlossen.