Xantiva
Sehr aktives Mitglied
Hallo JTL,
wir haben Last-Tests durchgeführt und dabei ist folgendes, sehr unschönes Verhalten sichtbar geworden.
Wenn beim Aufruf des Shops die Datenbank Verbindung nicht hergestellt werden kann, dann gibt der Shop lediglich die SQL Fehlermeldung aus, aber ohne den HTTP Statuscode auf einen Fehlercode zu setzen. Der Shop liefert immer noch den #200 Ok aus:
Ich habe mir erst mal so beholfen, dass ich im Konstructor der NiceDB Klasse in der Datei /classes/core/class.core.NiceDB.php einen Try Catch Block um das new PDO setze und dann einen Fehler-Statuscode ausgebe:
Bitte überarbeitet das Fehlerhandling so, dass bei solch kapitalen Fehlern der Shop auch einen entsprechenden HTTP-Statuscode ausgibt.
wir haben Last-Tests durchgeführt und dabei ist folgendes, sehr unschönes Verhalten sichtbar geworden.
Wenn beim Aufruf des Shops die Datenbank Verbindung nicht hergestellt werden kann, dann gibt der Shop lediglich die SQL Fehlermeldung aus, aber ohne den HTTP Statuscode auf einen Fehlercode zu setzen. Der Shop liefert immer noch den #200 Ok aus:
Ich habe mir erst mal so beholfen, dass ich im Konstructor der NiceDB Klasse in der Datei /classes/core/class.core.NiceDB.php einen Try Catch Block um das new PDO setze und dann einen Fehler-Statuscode ausgebe:
PHP:
try
{
$this->pdo = new PDO($dsn, $dbUser, $dbPass, $options);
}
catch (PDOException $e)
{
header("HTTP/1.0 503 Service Unavailable ");
throw $e;
}
Bitte überarbeitet das Fehlerhandling so, dass bei solch kapitalen Fehlern der Shop auch einen entsprechenden HTTP-Statuscode ausgibt.