Fatal Error im Netzwerk

Sonstiges (nicht kategorisierbar)

Moderator: Moderatoren

Antworten
Josef

Fatal Error im Netzwerk

Beitrag von Josef »

Vorweg: Das Programm (EXE,DLL) sind lokal, die Daten liegen auf dem Server.
Solange das Programm so lief, gab es fast im 5-Minuten Takt Abstürze. Das Programm war einfach weg ohne Error-Log

Nun hab ich die Daten wieder lokal drauf und siehe da: die Abstürze haben sich auf ein Minimum reduziert.

Wie kann es sowas geben?

Hatte schon alles mögliche in Verdacht: Switch, Kabel, NW-Karten.
Nachdem aber Switch und NW-Karten bereits getauscht wurden, bleibt eigentlich nur noch die Verkabelung. Ich weiß leider nicht, welche KAT Version da installiert ist. Ich hab inzwischen eine Netzwerkprüfung vorgeschlagen.

Ach ja, im Netzbetrieb hab ich nicht mit Laufwerken gearbeitet, sondern nur mit UNC Pfad, was ja eigentlich sinnvoller ist.
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16508
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Beitrag von Martin Altmann »

Hallo Josef,
gib mal ein paar weitergehende Infos:
  • Welches Betriebssystem?
  • Welches Netzwerk (Netware, NetBEUI oder TCP/IP)?
  • Welche Xbase++-Version?
  • Weitere 3pp-Programme?
  • Alaska Tools?
  • Fehler reproduzierbar (immer im selben Programmteil/nach der gleichen Laufzeit)?
Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9356
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 101 Mal
Danksagung erhalten: 361 Mal
Kontaktdaten:

Beitrag von Tom »

Ergänzend:

Gab es wirklich keine XPPFATAL?
Energiesparmodus bei Netzwerkkarten abgeschaltet?
Mal ein Tool wie FileMon laufen lassen, um zu sehen, bei welchem Datenzugriff das Dingen abschmiert?
Herzlich,
Tom
Josef

Beitrag von Josef »

Hi Martin,
Martin Altmann hat geschrieben:
  • Welches Betriebssystem?
  • Welches Netzwerk (Netware, NetBEUI oder TCP/IP)?
  • Welche Xbase++-Version?
  • Weitere 3pp-Programme?
  • Alaska Tools?
  • Fehler reproduzierbar (immer im selben Programmteil/nach der gleichen Laufzeit)?
Martin
- Win XP Prof. / Win 2003 Server
- 1.90
- eXPress 1.9
- keine alaska tools
- vermutlich immer bei einem DCREAD
Josef

Beitrag von Josef »

Hi Tom,
Tom hat geschrieben:Ergänzend:

Gab es wirklich keine XPPFATAL?
Energiesparmodus bei Netzwerkkarten abgeschaltet?
Mal ein Tool wie FileMon laufen lassen, um zu sehen, bei welchem Datenzugriff das Dingen abschmiert?
Ja u.a. diesen hier:
FATAL ERROR LOG
Abort with Alt-C
SYS Thread-ID: 644
Module: EVM
Error Codes: EH: 11 Sub: 0(0) OS: 0 XPP: 0
Call Stack of Thread 1 (496):
NETUSE(111)
NEUINDEX(34)
MAIN(117)
Call Stack of Thread 2 (644):
File: D:\ALASKA\XPPW32\projekte\karev\KAREV.exe
TimeStamp: 20060418 19:33
End of FATAL ERROR LOG.
-----------------------------------------

Am Energiesparmodus kann es eigentlich nicht liegen, weil die Fehler z.T. sehr kurzfristig hintereinander auftreten.

FileMon kenn ich gar nicht, wo gibts denn das? Shareware, Freeware ?
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16508
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Beitrag von Martin Altmann »

Hallo Josef,
diese XPPFATAL.LOG, die Du gepostet hast, kam dadurch, dass Dein Programm durch Drücken von ALT-C beendet wurde!
Wenn Du dies abfangen willst, mußt Du SetCancel( .F. ) benutzen!

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9356
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 101 Mal
Danksagung erhalten: 361 Mal
Kontaktdaten:

Beitrag von Tom »

Hallo, Josef.

Wie Martin schrub - da hat jemand schlicht ALT-C gedrückt. :?

Filemon ist ein Tool, das alle Dateizugriffe einer Applikation überwacht. Du findest es hier:

http://www.sysinternals.com/utilities/filemon.html

Beachte, daß Du es auf Deine Applikation einschränken mußt, sonst hast Du in Nullkommanichts ein mehrere Megabytes großes Logfile. Aber Du kannst ansonsten sehr genau sehen, auf welche Dateien Deine Applikation zuzugreifen versucht - und wobei es möglicherweise scheitert.
Herzlich,
Tom
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Beitrag von AUGE_OHR »

Josef hat geschrieben:Hi Martin,
- Win XP Prof. / Win 2003 Server
hast du "Opportunistic locking" disable = 0 ?

auf dem Server :

\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters EnableOplocks REG_DWORD = 0

gruss by OHR
Jimmy
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

Hallo Josef,

versuche mal von mehreren Stationen große Dateien durchs Netz zu schicken. Xcopy meldet Fehler wenn was schief geht. Treten auch hier Probleme auf ist eine Netzüberlastung oder Fehler in der Hardware wahrscheinlich.

Eventuell solltest du den Speicherpart in ein simples Testprogramm packen und automatisch speichern lassen (also Netzlast erzeugen). Eventuell kannst du dabei den Fehler eingrenzen.

PS: ALT+C sollte bei einer Arbeitsversion abgeschaltet sein.
Gruß
Hubert
Josef

Beitrag von Josef »

Jetzt hab ich wieder eine aktuelle Fatalerror.log Datei:
Immer ist diese Modul "EVM" dabei. Ich Laie kenn mich hier nicht aus, was dies zu bedeuten hat.

FATAL ERROR LOG
System-Error
SYS Thread-ID: 996
Module: EVM
Error Codes: EH: 4 Sub: 6(6) OS: 6 XPP: 40
Call Stack of Thread 1 (492):
STANDARDEH(98)
(B)ERRORSYS@0000(51)
DC_KILLMAGICHELP(4356)
@DC_GETLIST@I@EVENTLOOP(4338)
@DC_GETLIST@I@READGUI(3323)
DC_READGUI(223)
RESER(422)
RESERON(788)
(B)haupt(594)
HAUPT(687)
TAGWAHL(85)
MENUE(318)
HAUPT(707)
TAGWAHL(85)
MENUE(318)
HAUPT(707)
TAGWAHL(85)
MENUE(318)
HAUPT(707)
TAGWAHL(85)
MENUE(318)
HAUPT(707)
TAGWAHL(85)
MENUE(318)
HAUPT(707)
TAGWAHL(85)
MENUE(318)
HAUPT(707)
TAGWAHL(85)
MENUE(318)
HAUPT(707)
TAGWAHL(85)
MENUE(318)
HAUPT(707)
TAGWAHL(85)
MENUE(318)
HAUPT(707)
TAGWAHL(85)
MENUE(318)
HAUPT(707)
TAGWAHL(85)
MENUE(318)
HAUPT(707)
TAGWAHL(85)
MENUE(318)
HAUPT(707)
TAGWAHL(85)
MENUE(318)
HAUPT(707)
TAGWAHL(85)
MENUE(318)
HAUPT(707)
TAGWAHL(85)
MENUE(318)
MAIN(254)
Call Stack of Thread 2 (640):
Call Stack of Thread 3 (996):
File: D:\Programme\KAREV\KAREV.exe
TimeStamp: 20060426 11:30
End of FATAL ERROR LOG.
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

Hallo Sepp,

Für Quellcode und solche Fehlermeldungen solltest du den [ CODE ] Schalter (TAG) oben nutzen, sonst kommt es vor dass aus ( 98 ) (98) wird.

Zum Lesen selbst, was du unten siehst ist ein CallStack, d.h. die Module mit Zeilennummer sind hier in der Reihenfolge des Aufrufs von unten nach oben gespeichert:

Code: Alles auswählen

1. MAIN(254)    ruft in Zeile 254 ->
2. MENUE(318) ruft in Zeile 318 ->
3. TAGWAHL(85) ...
so kannst du sehen ob eventuell der Fehler immer im gleichen Modul auftaucht und im Quellcode hocharbeiten. Allerdings muß der Fehler keinesfalls bei der letzten Nummer entstanden sein, dort ist das Problem nur so groß geworden, dass es nicht mehr weiter ging.

Code: Alles auswählen

DC_KILLMAGICHELP(4356)   hier wird in die Fehlerbehandlung gesprungen
(B)ERRORSYS@0000(51)      Codeblock der Fehlerbehandlung
STANDARDEH(98)       ist hier eventuell ein 2. Problem ?
                                 normalerweise erzeugt der eine XPPERROR.LOG !
Was jetzt bei DC_KILLMAGICHELP schief gelaufen ist ????

Sende doch mal die Fehlermeldungen und den Quellcode zum eXpress Support ...
Zuletzt geändert von brandelh am Mi, 26. Apr 2006 23:57, insgesamt 1-mal geändert.
Gruß
Hubert
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Beitrag von AUGE_OHR »

hi,
Josef hat geschrieben: HAUPT(707)
TAGWAHL(85)
MENUE(318)
HAUPT(707)
TAGWAHL(85)
MENUE(318)
MAIN(254)
wenn ich mir das so ansehen, bin ich der Meinung dass der "BUG"
schon "vorher" ist und sich erst bei DC_GT "bemerkbar" macht.
(Stack überlauf)

es scheint mir "zuviel" : MENUE(318) -> TAGWAHL(85) -> HAUPT(707)
->MENUE(318) ... aufzutauchen (recursive ?)

gruss by OHR
Jimmy
Benutzeravatar
Lewi
1000 working lines a day
1000 working lines a day
Beiträge: 830
Registriert: Di, 07. Feb 2006 14:10
Wohnort: Hamburg
Danksagung erhalten: 2 Mal

Beitrag von Lewi »

Ich schließe mich der Auffassung von Jimmy an: Der Stack läuft aufgrund eines rekursiven Aufrufes über.

Gruß, Olaf
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9356
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 101 Mal
Danksagung erhalten: 361 Mal
Kontaktdaten:

Beitrag von Tom »

Ein Stack Overflow würde auch als solcher ausgewiesen werden. Ich tippe auf einen Fehler im Fehlersystem (FUNCTION STANDARDEH in der ErrorSys.PRG), und zwar in Zeile 98. Das kann man nicht so gut erkennen, weil die Forensoftware aus einer acht und einer nachfolgenden Klammer diesen hier: 8) macht.
Herzlich,
Tom
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Beitrag von AUGE_OHR »

hi,
Tom hat geschrieben:Ein Stack Overflow würde auch als solcher ausgewiesen werden. Ich tippe auf einen Fehler im Fehlersystem (FUNCTION STANDARDEH in der ErrorSys.PRG), und zwar in Zeile 98.
nope dort ist der Fehler nicht, sondern :
FATAL ERROR LOG
System-Error
SYS Thread-ID: 996
der Error ist in Thread 3 Zeile (996) und hat was mit eXpress++
zu tun.
Module: EVM
Error Codes: EH: 4 Sub: 6(6) OS: 6 XPP: 40
Der Fehler wurde durch den "Event Manager" (EVM) erzeugt.
Dieses wiederrum ruft den "Standard Error Handler" auf der
aber nicht mehr "eingreifen" kann weil ja inzwischen die
XppFatal.log erzeugt wurde (und das Programm beendet wurde)
bevor der "Standard Error Handler" einsetzten konnte. (Zeile 98)
@DC_GETLIST@I@EVENTLOOP(4338)
dieses wird warscheinlich der "2st BUG" sein, der dadurch auftritt
wenn ein Thread im falsch "Queue" landet. (Tooltip ???)

das wird auch durch "OS Error: 6 (Invalid Handle) bestätigt was
oft bei multi-threaded eXpress++ Application vorkommt.
@DC_GETLIST@I@READGUI(3323)
suche mal in deinem eXpress++ source code nach ":EventLoop()"
in der "DC_GetList" class (ca. Zeile 4000) ob du da :

"if NextAppEvent(@mp1, @mp2, @oXbp) # xbeP_None"

hast. wenn ja entferne mal alle Parameter und verwende nur
NextAppEvent()

übrigens ist das PDR 5474 und sollte mit der v1.9.3x behoben sein

gruss by OHR
Jimmy
p.s. ich bin kein eXpress User aber genau die "Error Codes" wird in
der Alaska NG öfter von eXpress User genannt.
Josef

Beitrag von Josef »

Danke meine Herren, aber jetzt blick ich nicht mehr durch.
Das Programme schreiben sollte eigentlich ein Hobby sein und bleiben aber jetzt wirds mir langsam zu kompliziert.

Kann ich jemanden von Euch die betreffenden PROGS schicken, um sich die mal anzusehen?
Ich schätze mal, dass jemand von Euch beim ersten Blick auf meine Progs schon den Fehler gefunden hat.
Benutzeravatar
Lewi
1000 working lines a day
1000 working lines a day
Beiträge: 830
Registriert: Di, 07. Feb 2006 14:10
Wohnort: Hamburg
Danksagung erhalten: 2 Mal

Beitrag von Lewi »

Bin ich heute ein wenig "blond"? Welche "Progs" meinst Du?
Josef

Beitrag von Josef »

Lewi hat geschrieben:Bin ich heute ein wenig "blond"? Welche "Progs" meinst Du?
Du nicht, aber ich vielleicht :)

Ich mein den Quellcode
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Beitrag von AUGE_OHR »

hi,
Josef hat geschrieben:Danke meine Herren, aber jetzt blick ich nicht mehr durch.
Das Programme schreiben sollte eigentlich ein Hobby sein und bleiben aber jetzt wirds mir langsam zu kompliziert.
sorry wenn ich dich verwirrt haben sollte, ich hab nur deine letzte
xppfatal.log analysiert. wenn du mehr Informationen dazu brauchst
markiere/kopiere den Eintrag :

Code: Alles auswählen

Error Codes: EH: 4 Sub: 6(6) OS: 6 XPP: 40 
und suche danach in den Alaska-Newsgroup. Du wirst diverse Beiträge
finden und immer ist es ein eXpress++ multi-threaded Problem.
Kann ich jemanden von Euch die betreffenden PROGS schicken, um sich die mal anzusehen?
Ich schätze mal, dass jemand von Euch beim ersten Blick auf meine Progs schon den Fehler gefunden hat.
das Problem ist eXpress++, was ich nicht habe, und somit nicht
testen kann. frage doch mal Roger nach PDR 5474 und hole dir
evtl. von Alaska-Software den Patch für v1.82.x.

was ich mich allesdings frage ist, ob die letzte xppfatal.log was mit
deinem ürsprünglichen Problem "Netzwerk" zu tun hat oder ob es
sich um "verschiedene BUGs" handelt.

gruss by OHR
Jimmy
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

Hallo Josef,

ich habe kein Express++, also falle ich aus :wink:

Aber gerade wenn es das Hobby ist, ist doch reinknien angesagt.

PS: ich bin jetzt auch nicht mehr im Büro :D
Gruß
Hubert
Antworten