Fehler | BVA-System

Archive for the ‘Fehler’ Category

Der gefürchtete Fehlerfall

Dienstag, Oktober 12th, 2010

Eine sehr unangenehme Seite der Softwareentwicklung ist, das es quasi unmöglich ist, ein fehlerfreies Programm zu schreiben. Mit diesem Wissen im Hinterkopf muss man auch daran denken, wie man mit Fehlern umgehen wird. Im BVASystem gibt es zum Beispiel eigentlich ab der ersten Version, die es hier zum Download gab,  eine  Trace-Funktionalität.

Startet man die Anwendung mit dem Parameter „-trace“, werden die einzelnen Funktionsaufrufe, die das Programm ausführt, in eine Datei protokolliert.  Die Trace-Datei „bvatrace.log“ findet man dann im Anwendungsverzeichnis des BVASystems. Im Fehlerfall kann mir diese Datei dann zugeschickt, oder im Bugtracker hochgeladen werden.

Neu in der nächsten Version ist, das es einen aussagekräftigen Dialog gibt, wenn ein unerwarteter Fehlerfall auftritt. In den bisherigen Versionen war es so, das dort der Anwender ein schlichtes „Es ist ein unbekannter Fehler aufgetreten.“ angezeigt bekommen hat. Auch wenn der Anwender mit der Fehlermeldung nicht wirklich etwas anfangen kann, so wird er trotzdem nicht gänzlich ohne Informationen im Regen stehen gelassen. Ab sofort wird der Dialog wie folgt aussehen:

Nullpointer-Exception Dialog

Nullpointer-Exception Dialog

Eigentlich habe ich den Dialog bisher immer mit einer Division durch 0 getestet. Aber extra für Lord-Fake, der die Homepage http://www.nullpointer.at betreibt, hab ich die Testroutine nochmals angepasst. Bitte Fake :-D

MySQL server has gone away.

Montag, August 2nd, 2010

Gestern abend wollte ich zum ersten mal ein Bild mit dem neuen BVASystem in einer MySQL-Datenbank abspeichern. Eigentlich dachte ich, das dies mittlerweile keine allzu große Hürde sein sollte. Aber ich wurde eines besseren belehrt. Der Server beantwortete mein SQL-Query mit:

MySQL server has gone away.
MySQL Fehler

Zuerst grübelte ich einen Moment darüber nach, wohin mein MySQL Server am Sonntag abend so gehen könnte. Da ich zu keinem Ergebnis kam, fragte ich Google nach der Bedeutung der Fehlermeldung. Ursache für die Fehlermeldung war, das die maximal erlaubte Größe des Querys überschritten gewesen ist.

Zur Behebung des Fehlers musste ich einfach in der Einstellungsdatei „my.ini“ meines MySQL Servers, den Wert von max_allowed_packet vergrößern. Einmal noch schnell den Server neugestartet und schon war der Server zurück von seinem Sonntagsausflug.