Datenimport auf Postgresql Server läuft sich tot

Installation und Anwendung von Datenbankschnittstellen wie SQLite, PostgreSQL, MariaDB/MySQL, der DB-API 2.0 und sonstigen Datenbanksystemen.
Antworten
burli
User
Beiträge: 1156
Registriert: Dienstag 9. März 2004, 18:22

Hi, ausnahmsweise habe ich mal nicht das übliche Problem "Zuhause hat es funktioniert" sondern umgekehrt. Ich programmiere eine Webseite mit Flask und nutze hier zu Hause den integrierten Entwicklungsserver (Eventuell müsse das Thema auch in das Webframework Forum). Für den Datenimport habe ich eine Funktion geschrieben, die Daten aus einem XML File liest und auf dem Server einspielt. Diese Funktion macht Ärger.

Bei meinem Provider (Apache, Python2.6, Postgresql oder MySQL) funktioniert die Funktion. Bei mir zu Hause (Python2.6 oder 2.7, je nach Rechner) funktioniert sie mit einem MySQL Server. Wenn ich aber einen Postgresql Server verwendet passiert einfach gar nichts. Der Browser versucht beliebig lange, die Seite zu laden, andere Seiten lassen sich nicht mehr aufrufen und ich muss den Python Server mit STRG+c abbrechen und neu starten, um weiter arbeiten zu können. Es gibt keine Fehlermeldung, es gibt keine CPU Auslastung, nichts. Der Server steht einfach.

Ach ja, normalerweise rufe ich die Funktion über eine URL auf. Wenn ich die gleiche Funktion von einen extra Script von der Konsole starte funktioniert es. Es scheint also mit dem Python Entwicklunsserver zu tun haben. Leider hab ich keinen funktionierenden Apache Server hier.

Was kann das sein?
Das schwierigste beim Programmieren ist, sinnvolle Variablen- und Funktionsnamen zu finden :lol:
burli
User
Beiträge: 1156
Registriert: Dienstag 9. März 2004, 18:22

Ich kann das ganze noch etwas eingrenzen. Wenn ich den Python Server starte und als erste URL die Funktion zum Datenimport aufrufe, dann funktioniert es. Sobald ich eine andere URL aufgerufen habe, geht es nicht mehr.

Aber das Problem taucht wie gesagt nur in der Kombination Python Webserver und Postgresql auf, und zwar nachvollziehbar auf zwei unterschiedlichen Rechnern (Ubuntu 10.10, Python 2.6 und Ubuntu 11.04, Python 2.7). Mit Apache oder MySQL treten keine Probleme auf.

Hier noch etwas Code http://paste.pocoo.org/show/322106/

Der erste Schnipsel ist der Aufruf aus der Konsole, der zweite ist die Funktion in dem View von Flask


EDIT
Noch eine Info. Das Script bleibt bei drop_all() hängen. Es sieht immer mehr nach einem Bug im Python Server oder so aus. Ich kann mir jedenfalls nicht erklären, wo das noch an meinem Script hängen soll
Das schwierigste beim Programmieren ist, sinnvolle Variablen- und Funktionsnamen zu finden :lol:
Antworten