Neu JTL Debug 2.0.4 und Shop 5.5.2 - Fehler 500

chefsalat

Sehr aktives Mitglied
10. Januar 2013
278
118
Sobald ich "Anzeige von Smartyvariablen aktivieren?" aktiviere, bekomme ich einen 500er Fehler und folgende Meldung

Got error 'PHP message: PHP Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 4096 bytes) in /home/users/webshop/www/betashop/plugins/jtl_debug/Debugger.php on line 234; PHP message: PHP Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 12288 bytes) in Unknown on line 0',

Neuste Version von https://gitlab.com/jtl-software/jtl-shop/plugins/jtl_debug geladen
 

Morimus

Sehr aktives Mitglied
16. Mai 2019
296
75
Abhängig von der Art des Hosts würde ich erstmal versuchen das PHP memory_limit von 512 MB auf 1024 zu erhöhen.
Vielleicht reicht das ja schon.
 

chefsalat

Sehr aktives Mitglied
10. Januar 2013
278
118
Mhh, im 5.3.4er genügt 256MB, habe es extra schon auf 512 MB gesetzt. Kommt mir auch reichlich übertrieben vor
 

Traumpixel

Gut bekanntes Mitglied
11. April 2021
62
25
Köln
Hallo zusammen,

das Problem liegt an der Variablen $parentSmarty, die in der Debug-Ansicht durch eine zyklische Referenz zu einer endlosen Rekursion führt und dadurch einen Memory-Overflow Fehler verursacht. Auch ein Erhöhen des memory_limits würde hier nicht helfen.

Ich habe gesehen, dass bereits gestern ein Hotfix in Git (https://gitlab.com/jtl-software/jtl-shop/plugins/jtl_debug/-/blob/master/Debugger.php) hinzugefügt wurde, der beim Auftreten der Variablen $parentSmarty mit einem break die weitere Verarbeitung beendet.
Allerdings finde ich diese Lösung nicht elegant, da dadurch fast 35 wichtige nachfolgende Variablen verloren gehen, die ansonsten sauber verarbeitet würden.

Daher wäre meiner Meinung nach ein Überspringen der Variablen $parentSmarty eleganter. Dabei würde ausschließlich nur diese eine Variable übersprungen bzw. das Kind-Element durch einen Platzhalter ersetzt, ohne den gesamten Rest der Struktur zu verlieren. So bleiben alle anderen Variablen erhalten und der Debugger bleibt stabil.

Die Lösung mit gezieltem Überspringen wäre, die Funktion transform (ca Zeile 185) in der Debugger.php wie folgt zu ersetzen:
PHP:
    private function transform($node, $key, $parent = null, bool $showPath = false): array
    {
        $key  = (string)$key;
 
       // HOTFIX: parentSmarty überspringen, um Memory-Overflow zu verhindern
        if ($key === 'parentSmarty') {
            return [
                'type'  => 'string',
                'key'   => $key,
                'class' => 'string',
                'value' => '[SKIPPED - parentSmarty - MEMORY OVERFLOW PREVENTION]',
                'path'  => ''
            ];
        }
 
        $type = \gettype($node);
        $res  = [
            'type'  => $type,
            'key'   => $key,
            'class' => $type === 'object' ? \get_class($node) : $type
        ];
        if ($res['type'] === 'array' && $this->isAssoc($node)) {
            $res['type'] = 'assoc_array';
        }
        // we don't care what numeric type it is, we just want to know if it is a number
        if (\is_numeric($node)) {
            $res['type'] = 'number';
        }
        $res = $this->buildPath($showPath, $res, $parent, $key);
        if ($res['type'] === 'object' || $res['type'] === 'array' || $res['type'] === 'assoc_array') {
            // build children array recursively
            $res['children'] = [];
            $res['length']   = 0;
            foreach ($node as $k => $value) {
                $k = (string)$k;
                $res['children'][$k] = $this->transform($value, $k, $res, $showPath);
                ++$res['length'];
            }
        } else {
            // simple data type
            $res['value'] = $node;
        }

        return $res;
    }

Damit wird nur parentSmarty übersprungen bzw. ersetzt, der Debugger bleibt vollständig funktionsfähig und alle folgendenen Variablen werden weiterhin angezeigt.

Liebe Grüße
 
Zuletzt bearbeitet:
Ähnliche Themen
Titel Forum Antworten Datum
Neu Keine automatische Übernahme von Änderungen in JTL trotz Abgleich? Onlineshop-Anbindung 3
Neu JTL-POS Absturz nach Benutzeranmeldung JTL-POS - Fehler und Bugs 0
Fehler beim Verknüpfen von JTL-FFN mit Wawi – „Anmeldung nicht möglich“ JTL-Wawi 1.11 1
Neu Dokumentation: Kundenverknüpfung JTL-Wawi (Version 1.10.15.0) zu JTL-Shop JTL-Shop 5.2 Onlineshop-Anbindung 0
Einzelartikel als Kindartikel zu einem neuen Vaterartikel zusammenführen (JTL-Wawi + Shopware Connector) JTL-Wawi 1.8 0
Neu Handhabung JTL Wawi - zu Datev Unternehmen Online User helfen Usern - Fragen zu JTL-Wawi 1
Neu JTL-Wawi Aufträge die mit JTL-POS bezahlt wurde tauchen im Tagenabschluss auf JTL-POS - Fehler und Bugs 7
Neu JTL Coupon - Rabatt direkt am Artikel Allgemeine Fragen zu JTL-Shop 0
Neu Preisfehler Anzeige JTL Shop 5 JTL-Shop - Fehler und Bugs 1
Neu 🚀 Pilotkunden gesucht: HS Dynamic Pricing Plugin für JTL-Shop Plugins für JTL-Shop 0
Neu Werden Bilder aus shopify in JTL geladen? Shopify-Connector 4
Neu Bitte legen Sie eine Retoure in JTL-Wawi an, damit eine korrekte Zuordnung zu den Stücklistenartikeln möglich ist. - WMS Retoure JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 0
Neu JTL-Ameise Export "Artikeldaten WEEE-Richtlinie" - unvollständige Datenmenge JTL-Ameise - Fehler und Bugs 0
Neu Probleme bei WooCommerce JTL-Connector, keine Aktivierung möglich, Bestands-Shop lahmgelegt Onlineshop-Anbindung 0
Neu Kapazitäten frei für Routineaufgaben JTL Wawi Dienstleistung, Jobs und Ähnliches 0
Neu 🚀 JTL Shop Performance Check (Free): Kostenloses Plugin Plugins für JTL-Shop 0
Datenabgleich von WooCommerce auf JTL Wawi 1.9.7.0 JTL-Wawi 1.9 0
JTL WMS Server startet nicht JTL-Wawi 1.11 2
JTL Wawi to ShopApotheke Artikelname eigenesfeld JTL-Wawi 1.11 16
Neu Downgrade von 3 JTL-Shop-Lizenzen auf 1 – Frage zur Umstellung der Domains User helfen Usern - Fragen zu JTL-Wawi 1
Neu JTL SHop 5.4 KAtegoriebild Allgemeine Fragen zu JTL-Shop 5
Neu Trainingsmodus für JTL-POS gewünscht JTL-POS - Ideen, Lob und Kritik 0
JTL-Stammtisch am 13.11.25 in Bonn powered by SaphirSolution Messen, Stammtische und interessante Events 0
Neu Wer hat 2025 mit Xentral Erfahrungen gesammelt? Wechsel von JTL‑Wawi in Sicht Smalltalk 9
JTL Wawi und JTL-POS gleichen nicht mehr ab JTL-Wawi 1.11 2
Neu JTL Theme Editor Templates für JTL-Shop 6
Neu 2 Instanzen JTL-POS Einrichtung / Updates von JTL-POS 0
Neu Übergabe Versandlaber an Fulfiller möglich über FFN standallone aber nicht über FFN mit angebundeener JTL-WAWI Arbeitsabläufe in JTL-Wawi 0
Ticket erstellen bei einer Fehlermeldung mit JTL-Start ??? JTL-Wawi 1.9 6
Neu JTL Track&Trace API Fehler derzeit? seit 15:50 Uhr JTL-Track&Trace - Fehler und Bugs 2
Neu JTL Shipping Server nicht erreichbar JTL-ShippingLabels - Fehler und Bugs 19
Neu Welcher Hoster ist für JTL-Shop 5 empfehlenswert? User helfen Usern 12
Neu 15 Jahre Vapsmoke.ch – unser Weg zu JTL Shops stellen sich vor 1
Neu JTL STAMMTISCH BONN – 13.11.2025 – powered by SaphirSolution Messen, Stammtische und interessante Events 0
JTL Plattform ebay Designvorlage JTL-Wawi 1.11 5
Neu Aktuellen JTL Shop installieren *Fehler* Installation / Updates von JTL-Shop 0
Studio-Webcast E-Com Insights mit JTL: Black Friday Edition am 30.10.25 Messen, Stammtische und interessante Events 0
JTL Wawi API beendet Registrierung nicht 1.11.1 JTL-Wawi 1.11 10
Neu Fehlerhafte Adress-Übernahme durch NinePoint (Mirakl → JTL) – wer ist noch betroffen? JTL-Wawi - Fehler und Bugs 3
Neu JTL Shop Versand Preisstaffel mit negativen Werten?? Allgemeine Fragen zu JTL-Shop 0
Jtl-Amz Problem JTL-Wawi 1.9 0
Neu Dropshipping Import/Export von JTL zu JTL User helfen Usern - Fragen zu JTL-Wawi 6
Keine Anmeldung mehr möglich in JTL Wawi seit Update? JTL-Wawi 1.11 5
JTL-Wawi stürzt beim Speichern des Shopify-Connectors jedes Mal ab JTL-Wawi 1.11 0
Neu JTL Shop - OSS - Länderauswahl notwendig ?! JTL-Shop - Ideen, Lob und Kritik 1
Neu Umzug von Shopify auf JTL Umstieg auf JTL-Shop 1
Webinar JTL + eBay: Dein Shortcut zu besseren Automatisierungen & mehr Verkäufen am 06.11.25 Messen, Stammtische und interessante Events 0
Neu JTL Shop Brevo Plugin meldet keine Abmeldungen an JTL Shop + Kontakte landen nicht in der Willkommenssequenz Plugins für JTL-Shop 0
Neu Suche Freelancer für Aufsetzen JTL B2B Shop Dienstleistung, Jobs und Ähnliches 3
Neu JTL-Shop Admin Bereich und Shop nur noch 504 Gateway Time-out ( Hosting über JTL ) User helfen Usern - Fragen zu JTL-Wawi 4

Ähnliche Themen