Hallo Python-User,
habe folgends Problem:
Seit einem Datenbankcrash sehe ich in den Log-Files des Servers folgende Fehlermeldung:
Traceback (most recent call last):".
File ".....py", line 676, in handleConnection".
error: (11, "Resource temporarily unavailable")".
socket connection <ip-Adresse> failed.
Es sind nur 2 Clients betroffen. Mit 11 Clients funktioniert die Kommunikation einwandfrei.
Kann dies daran liegen dass zum Zeitpunkt des Crashes die 2 Clients gerade am senden waren und dies einen Datenschrott verursacht hat?
Danke für eure Hilfe.
Gruss
Goki
Socket connection failed
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Hallo Goki, willkommen im Forum.
Um dein Probelm nachvollziehen zu können (oder auch nur verstehen) fehlen da einige Inforationen. Zum Beispeil: Was ist das für eine Datenbank? MS SQL, MySQL, PostgreSQL, SAP DB, Oracle, DB2, ZODB (ZEO)? Zweitens: was sind das für Clients?
Um dein Probelm nachvollziehen zu können (oder auch nur verstehen) fehlen da einige Inforationen. Zum Beispeil: Was ist das für eine Datenbank? MS SQL, MySQL, PostgreSQL, SAP DB, Oracle, DB2, ZODB (ZEO)? Zweitens: was sind das für Clients?
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Und falls die Verbindung die da fehlschlägt, zur Datenbank ist (was aus dem Posting IMHO nicht ganz klar wird), dann wäre es interessant zu wissen ob man von der selben Maschine "per Hand" eine Verbindung zur DB hinbekommt.
Ansonsten, so ganz allgemein kommt diese Ausnahme unter anderem, wenn man versucht etwas von einem nicht-blockierenden Socket zu lesen wo es aber (noch) nichts zu lesen gibt.
Ansonsten, so ganz allgemein kommt diese Ausnahme unter anderem, wenn man versucht etwas von einem nicht-blockierenden Socket zu lesen wo es aber (noch) nichts zu lesen gibt.
Es handelt sich um eine oracle datenbank. Die Clients sind auf Selbstbedienungsgeräten installiert und sammeln dort Ereignnisse und statistische Daten. Diese Informationen werden über das Netzwerk an den Server weitergegeben. Das heisst jeder Client sendet verschiedene Daten an verschiedene Proxys des Servers. Die 2 betroffenen Clients senden auch noch alle Daten korrekt - nur eine Datenart ist betroffen.
"Ansonsten, so ganz allgemein kommt diese Ausnahme unter anderem, wenn man versucht etwas von einem nicht-blockierenden Socket zu lesen wo es aber (noch) nichts zu lesen gibt. "
--> überdieses Problem bin ich beim googeln auch gestossen. Könnte dieses Problem auch durch einen Datenbankcrash ausgelöst worden sein. Vielleicht waren die beiden betroffenen Clients gerade am senden?
Hoffe das Problem ist deutlicher geworden.
Danke für eure Hilfe
Goki
"Ansonsten, so ganz allgemein kommt diese Ausnahme unter anderem, wenn man versucht etwas von einem nicht-blockierenden Socket zu lesen wo es aber (noch) nichts zu lesen gibt. "
--> überdieses Problem bin ich beim googeln auch gestossen. Könnte dieses Problem auch durch einen Datenbankcrash ausgelöst worden sein. Vielleicht waren die beiden betroffenen Clients gerade am senden?
Hoffe das Problem ist deutlicher geworden.
Danke für eure Hilfe
Goki
Es könnte am Datenbankcrash liegen oder an der Mondphase. Es sind einfach zu wenig Informationen um da etwas sagen zu können.
An welcher Stelle sollte das denn Auswirkungen haben, falls die beiden Clients gerade etwas gesendet haben? Wird irgendwo in der Datenbank Zustandsinformation über bestehende Verbindungen hinterlegt, die jetzt inkonsistent sein kann?
Was heisst "Datenart"? Kannst Du so eine Anfrage per Hand erzeugen und den Weg durch das System verfolgen?
An welcher Stelle sollte das denn Auswirkungen haben, falls die beiden Clients gerade etwas gesendet haben? Wird irgendwo in der Datenbank Zustandsinformation über bestehende Verbindungen hinterlegt, die jetzt inkonsistent sein kann?
Was heisst "Datenart"? Kannst Du so eine Anfrage per Hand erzeugen und den Weg durch das System verfolgen?
Sorry, kann nicht mehr Infos geben. Habe das Programm nicht selbst geschrieben und habe auch keine speziellen Python Kenntnisse.
Vielleicht könnt ihr mir ja einfach noch was zu der Fehlermeldung sagen?
Was ist die wahrscheinlichste Ursache. Was sind mögliche Ursachen etc.
Vielleicht kann ich das Problem dann besser eingrenzen.
Danke
Vielleicht könnt ihr mir ja einfach noch was zu der Fehlermeldung sagen?
Was ist die wahrscheinlichste Ursache. Was sind mögliche Ursachen etc.
Vielleicht kann ich das Problem dann besser eingrenzen.
Danke
Die häufigste Ursache wird wohl der Versuch sein, von einem nicht-blockierenden Socket zu lesen, ohne vorher sichergestellt zu haben, dass da auch wirklich Daten "anliegen".
In welcher Komponente/Modul passiert das denn? Wenn es im Datenbankmodul passiert, dann könntest Du mal schauen ob es da eine speziellere Mailingliste gibt und dort nachfragen ob die eine Idee haben, oder ob das Problem eventuell sogar schon bekannt ist.
In welcher Komponente/Modul passiert das denn? Wenn es im Datenbankmodul passiert, dann könntest Du mal schauen ob es da eine speziellere Mailingliste gibt und dort nachfragen ob die eine Idee haben, oder ob das Problem eventuell sogar schon bekannt ist.