Shopfehler nach Installation eines Moduls per Compsoser (cleartmp)

Hallo, man hat mich zum Service eines Shops (6.1.6) auserchoren und ich ,muss ein Modul mit dem composer installieren. Klasse. Jetzt werden mir 3 Fehler aus Modulen im Log angezeigt, die abgeschaltet sind, weil eine Lizenz fehlt (abgelaufene Testmodule mit verschlüssleten Sprachen). Kann es sein, dass die Intsallation per Composer alle Module prüft? Bisher lief der shop nämlich ohne Probleme. Danke euch.

Moin :slight_smile:

Ja.

Danke. Ich habe die Module gelöscht. War der für mich einzigste Weg, dass der Shop wieder läuft.

Bei dem Shop kann man ja noch alte Module testen. Ist das deswegen so?

Seit OXID eShop 6+ läuft die Modulinstallation über Composer. Testen solltest Module immer in Deiner Testumgebung von einer Produktivumgebung würde ich abraten Module zu testen…

Ergänzung: Hinzu kommt das Du lizensierte Module testest, da hängt es sicherlich vom Modul von ab was es macht. Selber lehne ich verschlüsselte Module ab, weil die zu Mehrarbeit führen und bei heutigen Stundensätzen ist jede Stunde Mehrarbeit nervig und teuer.

Das “Problem” bei 6.1. war/ist ja, dass man mischen und ältere Module ohne Composer installieren kann.

1 Like

Die waren abgeschaltet und ich habe die Module wieder hochgeladen. Kein Fehler. Ich verstehs nicht.

Wahrscheinlich sind noch Datenbankreste übrig, welche den Shop offline nehmen. Aber dies müsstest im Detail prüfen was das Modul macht, aber dort hast keine Einsicht…

Aber Datenbankeinträge verschwinden doch nichts, wenn ich das Modul aus dem Ordner lösche. Ich hoffe, das ist bei der ganz neuen version anders.

Nein, dies wird sich nicht ändern.

Vorm Löschen ist immer die Deaktivierung des Moduls empfehlenswert, weil darüber ein Event angetriggert werden kann, welcher Datenbank Einstellungen rückgängig macht im besten Fall.

Aber selbst dann können noch Bestandteile in der Datenbank übrig bleiben.

Dies auch ein Grund beim Testen eines Moduls eine Testumgebung zu nutzen.

Danke, aber wir drehen uns im Kreis. Die Module waren alle deaktiviert. Ich habe nur cleartmp per composer hinzugefügt. Danach kam der Maintanance-Mode mit log-eintrag. Damit der Shop wieder geht, habe ich die Module entfernt. Jetzt sind die Module wieder zurück am selben platz und im Admin aktivierbar, ohne dass ich mehr getan hätte. Das kann doch nur der composer sein.

Nach Composer Modul Installation auch tmp Verzeichnis geleert?

Welche Log Fehlermeldungen gab es den genau?

Welches cleartmp Modul genau kommt zum Einsatz Packagist ?

composer require oxidcookbook/ocb_cleartmp

Fehlermledung → sel_lang.php requires license file

Ach okay dann wird das der Grund sein, wenn wie oben erwähnt sogar die Übersetzungen verschlüsselt sind.

Weil der OXID eShop lädt leider auch die Sprachübersetzungen von deaktivierten Modulen ein. Daher findet dort wahrscheinlich die Lizenzprüfung des Moduls statt nachdem Cache einmal geleert wurden ist.

Deshalb würde ich empfehlen unnötige, deaktivierte Module rauszuwerfen, weil die unnötiges Fehlerpotenzial mitbringen.

Die Frage ist dann halt, warum es vor der Installtion und nach dem kurzen Löschen wieder funktioniert, wenn die Module an Ort und Stelle sind ?

Weil in dem Fall vor Installation und nach dem Löschen der Module wahrscheinlich das tmp Verzeichnis mit den Übersetzungen im Cache gefüllt ist und das OXID eShop Framework keine Notwendigkeit sieht die Dateien aus dem Modulverzeichnis einzuladen, da die Übersetzungen aus dem Cache kommen.

Ergänzung: Um meine These zu belegen könntest

  1. das Modul was die Fehlerursache verursacht wieder reinkopieren ins Modulverzeichnis
  2. vom reinkopierten Modul die Übersetzungsdateien löschen
  3. das tmp Verzeichnis löschen
  4. und das Shop Frontend einmal aufrufen

Prüfen ob die Fehlermeldung weiterhin im Log Verzeichnis auftaucht.

1 Like

Das habe ich alles schon mehrfach genau so gemacht. Der gleiche Fehler tritt nur wieder auf, wenn ich mit dem composer was installiere.

Eine Lösung habe ich ja. Ich muss mal weiter. Danke für die Ratschläge.