v3.10.x Query error: TRIGGER command denied

Thema wurde von Anonymous, 23. November 2018 erstellt.

  1. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    16. April 2018
    Beiträge:
    105
    Danke erhalten:
    9
    Danke vergeben:
    54
    Hallo,

    seit kurzem wird beim Aufruf von Kunden-, oder Bestelldetails eine Fehlermeldung am unteren Bildschirmrand angezeigt:

    Code:
    Query error: TRIGGER command denied to user 'xxxx'@'ivmiss.store.d0m.de' for table 'orders' - Invalid query: CREATE TRIGGER `hub_data_changes_orders_before_update` BEFORE UPDATE ON `orders` FOR EACH ROW BEGIN SET @`row` := ( SELECT `hub_data_changes_id` FROM `hub_data_changes` WHERE `table` = "orders" AND `row_id` = `NEW`.`orders_id` AND `action` = "update"); IF `NEW`.`payment_class` = "gambio_hub" AND @`row` IS NULL THEN INSERT INTO `hub_data_changes` SET `action` = "update", `table` = "orders", `id_column` = "orders_id", `row_id` = `NEW`.`orders_id`, `date_added` = NOW(); END IF; END;
    
    USER ERROR(256): "SQL Error"
    (der Username wurde anonymisiert).

    Alle Funktionen (User editieren, Bestellstatus ändern, etc.) scheinen aber einwandfrei zu funktionieren. Am Shop System wurden keine eigenen Änderungen in den letzten Monaten durchgeführt. Vor kuzrem wurde jedoch das letzte Security Update, sowie die Auto Updates vom Hub, sowie der Google Services durchgeführt. Bei der Installation gab es keine Fehler oder Fehlerhinweise.

    Shop System ist Version: v3.10.1.0

    Vielen Dank schon einmal für Eure Hilfe oder Tipps ....

    Holger
     
  2. Wilken (Gambio)

    Wilken (Gambio) Erfahrener Benutzer

    Registriert seit:
    7. November 2012
    Beiträge:
    18.737
    Danke erhalten:
    7.309
    Danke vergeben:
    2.208
    Da fehlt dem Datenbanknutzer ein Recht auf die Shopdatenbank, dass der HubConnector für eine Operation haben will. Der Datenbanknutzer darf keine Trigger an etwas hängen, kannst du dem das Recht besorgen?
     
  3. Anonymous

    Anonymous Mitglied

    Registriert seit:
    9. November 2018
    Beiträge:
    6
    Danke erhalten:
    1
    Hallo,

    habe seit gestern genau das gleiche Problem...
     
  4. Wilken (Gambio)

    Wilken (Gambio) Erfahrener Benutzer

    Registriert seit:
    7. November 2012
    Beiträge:
    18.737
    Danke erhalten:
    7.309
    Danke vergeben:
    2.208
    Nennt bitte mal eure Hoster.
     
  5. Anonymous

    Anonymous Mitglied

    Registriert seit:
    9. November 2018
    Beiträge:
    6
    Danke erhalten:
    1
  6. Wilken (Gambio)

    Wilken (Gambio) Erfahrener Benutzer

    Registriert seit:
    7. November 2012
    Beiträge:
    18.737
    Danke erhalten:
    7.309
    Danke vergeben:
    2.208
    Urks, da sind nicht wenige Gambio Händler.

    Es geht bei dem SQL darum Zahlunsdienstleister zu benachrichtigen, wenn Bestellungen geliefert werden. Wenn man zum Beispiel eine Wawi wie JTL hat, die immernoch direkt auf der Datenbank herumschreibt statt richtig zu handeln, wird nie der Prozess angestossen Lieferungen an Zahlungsdienstleister zu melden, die dann das Geld einziehen. Die schreibt dann geliefert in das Statusfeld, aber das prozedurale Drumrum kriegt keinen Wink. Das ist für Klarna relevant, genauso aber für Amazon Payments (Capture bei Lieferung) oder PayPal (wenn das Modul im Order statt Sale Modus ist). Ein MySQL Trigger bietet die Möglichkeit irgendwie an das Ereignis zu kommen, solange die Wawis nicht anständig (sprich: per API) mit dem Shop kommunizieren, was anderes geht für solche Fälle kaum.

    Zu blöd.

    Dieses SQL schaltet das zugehörige Hub Connector Feature bei Betroffenen ab:

    Code:
    UPDATE `configuration`
    SET `configuration_value` = "False"
    WHERE `configuration_key` = "MODULE_PAYMENT_GAMBIO_HUB_DATA_OBSERVER";
    Betroffene führen den SQL aus und nennen bitte ihren Hoster.
     
  7. Anonymous

    Anonymous Mitglied

    Registriert seit:
    9. November 2018
    Beiträge:
    6
    Danke erhalten:
    1
    ich z.B. habe JTL Wawi… heißt das, dass es an der Wawi liegt und diese das Problem verursacht?

    Habe den SQL ausgeführt, allerdings kam die Rückmeldung "0 Datensätze betroffen". Bin da leider nicht so firm drin.

    Und: wäre das Problem zu umgehen, wenn ich die Wawi entferne? Benötige sie momentan und auch in den kommenden Monaten nicht. Fand die Artikelverwaltung nur recht angenehm. Geht aber auch über Gambio selbst.
    Was müsste ich tun, wenn die Wawi gelöscht/deaktiviert wurde, damit das Problem nicht mehr auftaucht?
     
  8. Wilken (Gambio)

    Wilken (Gambio) Erfahrener Benutzer

    Registriert seit:
    7. November 2012
    Beiträge:
    18.737
    Danke erhalten:
    7.309
    Danke vergeben:
    2.208
    Ja und Nein. Ich mach mal nen Usecase auf:

    Du hast einen Shop am einen Ende ist JTL dran, am anderen zahlen Kunden mit Klarna. Klarna will erfahren wann du lieferst, weil zum Versandzeitpunkt der Geldeinzug gemacht wird. Dazu sagt der Shop Klarna "Hey, wir liefern jetzt." Der Shop muss nur wissen dass er das Klarna sagen soll, dazu muss Logik angestossen werden. JTL benutzt aber die Shoplogik nicht, die schieben hintenrum Daten an der Shoplogik vorbei in den Shop, also findet der Prozess nie statt. Das haben wir versucht zu umschiffen, in dem wir versuchen der Datenbank beizubringen dem Shop zu melden wenn sich da was tut. Und genau das geht bei dir nicht.

    Das bedeutet: Die Meldung kommt wegen etwas was wir tun. Wir tun das, um auszugleichen das was anderes blöde ist. Und der beste Weg das zu tun geht bei dir nicht, weil dein Webhoster das so nicht zulässt.

    Da hätte kommen sollen, dass 1 Datensatz geschrieben wird. Ist die Fehlermeldung danach noch da? Wenn du den gambio Updater aufrufst im Shop, meldet der 1 noch auzuführendes Update das eventuell vergessen wurde?
     
  9. Wilken (Gambio)

    Wilken (Gambio) Erfahrener Benutzer

    Registriert seit:
    7. November 2012
    Beiträge:
    18.737
    Danke erhalten:
    7.309
    Danke vergeben:
    2.208
    Wir haben vermutlich noch was gefunden, der Datenbankeintrag scheint nicht ganz zuverlässig angelegt zu werden. Dann hilft das:

    Code:
    INSERT INTO `configuration` (`configuration_key`,`configuration_value`,`configuration_group_id`,`sort_order`,`use_function`,`set_function`,`date_added`) VALUES ('MODULE_PAYMENT_GAMBIO_HUB_DATA_OBSERVER', 'False',6, 1,  '', 'gm_cfg_select_option(array(''True'', ''False''), ', NOW());
     
  10. Anonymous

    Anonymous Mitglied

    Registriert seit:
    9. November 2018
    Beiträge:
    6
    Danke erhalten:
    1
    Alles gut. Hatte heute morgen die DB zurückgespielt, noch vor meinem Update. Habe die beiden Updates nun wieder eingespielt und den Befehl erneut ausgeführt. Dann kam das Ergebnis, dass kommen sollte. Habe die Logs auch gelöscht und nun scheint es zu funktionieren. Zumindest bis jetzt keine neuen Logs.
     
  11. Anonymous

    Anonymous Mitglied

    Registriert seit:
    9. November 2018
    Beiträge:
    6
    Danke erhalten:
    1
    beim zweiten SQL kommt "Error: Duplicate entry 'MODULE_PAYMENT_GAMBIO_HUB_DATA_OBSERVER' for key 'configuration_key'"
     
  12. Wilken (Gambio)

    Wilken (Gambio) Erfahrener Benutzer

    Registriert seit:
    7. November 2012
    Beiträge:
    18.737
    Danke erhalten:
    7.309
    Danke vergeben:
    2.208
    Der zweite SQL war auch nur gedacht wenn der erste nichts liefert, was du aber nun ja behoben zu haben scheinst. Und wenn das dann jetzt doch schon da ist, wirft das eben den besagten Fehler.
     
  13. Anonymous

    Anonymous Mitglied

    Registriert seit:
    9. November 2018
    Beiträge:
    6
    Danke erhalten:
    1
    ok. Besten Dank auch und ein schönes Wochenende!
     
  14. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    16. April 2018
    Beiträge:
    105
    Danke erhalten:
    9
    Danke vergeben:
    54
    #14 Anonymous, 26. November 2018
    Zuletzt bearbeitet: 26. November 2018
    Auch bei uns ist es Strato.

    Habe den SQL Befehl

    Code:
    UPDATE `configuration`
    SET `configuration_value` = "False"
    WHERE `configuration_key` = "MODULE_PAYMENT_GAMBIO_HUB_DATA_OBSERVER";
    ausgeführt, dananch wurde die Fehlermeldung nicht mehr angezeigt!
    Besten Dank für die schnelle Lösung!

    Eine Frage hätte ich aber noch:
    Es heisst, dass der Fehler auch Auswirkungen auf das Modul PayPal hat (die von uns eingesetzt wird). Wenn ich es richtig verstehe, aber nur im Zusammenhang eines verknüpften WaWi Systems und dem Übergeben einer Statusänderung bei Versand eines Artikels - richtig ?


    Lieben Dank schon einmal im Voraus ....
     
  15. Wilken (Gambio)

    Wilken (Gambio) Erfahrener Benutzer

    Registriert seit:
    7. November 2012
    Beiträge:
    18.737
    Danke erhalten:
    7.309
    Danke vergeben:
    2.208
  16. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    16. April 2018
    Beiträge:
    105
    Danke erhalten:
    9
    Danke vergeben:
    54
    Haben sie mal angetriggert ;)
     
  17. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    16. April 2018
    Beiträge:
    105
    Danke erhalten:
    9
    Danke vergeben:
    54
    Hier also nun die Antwort von Strato:

    Ich würde mal fast davon ausgehen, dass die wenigsten (so wie wir z.B. auch) einen derartigen Server für das Hosting eines Gambio Shops verwenden.
     
  18. Anonymous

    Anonymous Erfahrener Benutzer
    Mitarbeiter

    Registriert seit:
    22. Juni 2011
    Beiträge:
    4.760
    Danke erhalten:
    1.748
    Danke vergeben:
    137
  19. gabyko

    gabyko Neues Mitglied

    Registriert seit:
    23. September 2012
    Beiträge:
    2
    Danke erhalten:
    0
    Ich habe genau die gleiche Antwort von Strato bekommen und für mich lohnt es sich ebenfalls nicht einen Server für mein Hosting zu nutzen.
     
  20. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    16. April 2018
    Beiträge:
    105
    Danke erhalten:
    9
    Danke vergeben:
    54
    Das mag wohl sein, aber nicht jeder kennt sich mit dem Verwalten und Betreiben eines VServers aus, bzw. möchte das überhaupt machen. Ihr propagiert eine "kinderleichte Installation" (was auch völlig korrekt ist), aber es sollte daher nicht davon ausgegangen werden, dass jeder Gambio Kunde sich einen VServer "zutraut" bzw. mietet, sondern eher auf eine "einfache" Hosting Lösung zurückgreift.