Seltsames Verhalten Version 817

Hier können die Unterschiede, Fehler und Probleme zwischen den Versionen bzw. bei der Migration besprochen werden

Moderator: Moderatoren

Antworten
ramses
1000 working lines a day
1000 working lines a day
Beiträge: 898
Registriert: Mi, 28. Jul 2010 17:16

Seltsames Verhalten Version 817

Beitrag von ramses » Di, 15. Aug 2017 23:59

Hallo zusammen

seit einigen Wochen kämpfe ich mit sporadischen Fehlern... siehe andere Beiträge.
Heute war der Versuch "Update auf 817" an der Reihe. Ich möchte euch dies nicht vorenthalten.
Das Testobjekt-Programm ist ein Reorgprogramm welches in einem CRT-Fenster Datenbanken überprüft.
Vorgehen: Version 817 installiert.
Alle Objs und EXE gelöscht.
Neu compiliert, EXE und Runtime DLL's auf Arbeitsmaschine kopiert. Gestartet.
Speicherbelegung zum Startzeitpunkt 6'000K
PRO SEKUNDE steigt der Arbeitsspeicherverbrauch um über 1'000K an.

nach ca. 5 Minuten sind es dann 616'644 K weitere Sekunden später beendet sich die EXE ohne Errorlog oder Fatal.
616m.jpg
616m.jpg (121.57 KiB) 1384 mal betrachtet

Unter der 807 läuft das selbe Programm stundenlang fehlerfrei unter 817 ist nach 5 Minut Schluss.

Mir fehlen echt die Worte.


Gruss Carlo

Benutzeravatar
Roland Gentner
Programmier-Gott
Programmier-Gott
Beiträge: 1225
Registriert: Fr, 24. Nov 2006 8:30
Wohnort: Neresheim
Kontaktdaten:

Re: Seltsames Verhalten Version 817

Beitrag von Roland Gentner » Mi, 16. Aug 2017 1:06

Hallo Carlo

da hift vermutlich nur das Einkreisen des Bereiches wo der Fehler passiert bzw. der Speicher verbraucht wird. In den 5 Minuten bis zum Absturz sollte es möglich sein den Speicherfresse zu finden.
Egal ob es vor 817 gelaufen ist - nur Du kannst herausfinden wo das in Deinem Programm passiert.

Anders wird es vermutlich vorerst nicht gehen - zumindest bis weitere ähnliche Probleme gemeldet werden.

Viel Erfolg!
Gruß
Roland

ramses
1000 working lines a day
1000 working lines a day
Beiträge: 898
Registriert: Mi, 28. Jul 2010 17:16

Re: Seltsames Verhalten Version 817

Beitrag von ramses » Mi, 16. Aug 2017 7:44

Hallo Roland

danke für deine Worte.

Es ist genau so wie du schreibst und auch das was ich die letzte Zeit mit sehr grossem Aufwand und einsatz aller verfügbaren Zeit auch versuche.

Das Zwischenresultat: 616 M Speicherverbrauch hat mir dann einfach Srache verschlagen.

Nur ist es leider nicht ganz so einfach. .... und wenn ich mir die vielen zum Prozess gehörenden DLL's anschaue vielleicht nicht mal unbedingt ein xbase Problem .....



Gruss Carlo

Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 12806
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Kontaktdaten:

Re: Seltsames Verhalten Version 817

Beitrag von Jan » Mi, 16. Aug 2017 8:11

Hallo Carlo,

vielleicht wäre es einen Versuch wert, das mal mit memwatch zu überprüfen?

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
Koverhage
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2042
Registriert: Fr, 23. Dez 2005 8:00
Wohnort: Aalen
Kontaktdaten:

Re: Seltsames Verhalten Version 817

Beitrag von Koverhage » Mi, 16. Aug 2017 9:16

Jan,
memwatch bringt nicht wirklich viel, eher wie int der c't 16 und 17/2017 beschrieben

Windows analysieren mit dem Process Monitor
Gruß
Klaus

ramses
1000 working lines a day
1000 working lines a day
Beiträge: 898
Registriert: Mi, 28. Jul 2010 17:16

Re: Seltsames Verhalten Version 817

Beitrag von ramses » Mi, 16. Aug 2017 15:09

Hallo Zusammen


Ich konnte die Probleme nach ersten Tests scheinbar beseitigtigen.

Geändert habe ich:

Update ot4xb.dll auf 1.6.4.32
Update Open-SSL DLL's auf 1.0.2.12

Nicht benötigte Drucker-Geräte wie Fax usw. entfernt.
Druckertreiber durch Version von MS ersetzt

Verwenden von Excel aus den Programm
bezw. das Schreiben von Daten in Excel Tabellen via:

oExcel := CreateObject( "Excel.Application" )
......
oExcel:quit()
oExcel:destroy()

entfernt.

*******************************

Kennt jemand einen Weg xls Tabellen ohne die Verwendung von Excel zu erstellen?


Gruss Carlo

Benutzeravatar
HaPe
Foren-Moderator
Foren-Moderator
Beiträge: 432
Registriert: So, 15. Nov 2015 17:44
Wohnort: 71665 Vaihingen-Enz

Re: Seltsames Verhalten Version 817

Beitrag von HaPe » Mi, 16. Aug 2017 15:38

Kennt jemand einen Weg xls Tabellen ohne die Verwendung von Excel zu erstellen?
http://foxyxls.codeplex.com/
--
Hans-Peter

Organisator der XUG Stuttgart
Beisitzer des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 12806
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Kontaktdaten:

Re: Seltsames Verhalten Version 817

Beitrag von Jan » Mi, 16. Aug 2017 15:58

Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 11172
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: Seltsames Verhalten Version 817

Beitrag von AUGE_OHR » Mi, 16. Aug 2017 19:21

ramses hat geschrieben:
Mi, 16. Aug 2017 15:09
Verwenden von Excel aus den Programm bezw. das Schreiben von Daten in Excel Tabellen via:

oExcel := CreateObject( "Excel.Application" )
......
oExcel:quit()
oExcel:destroy()

entfernt.
hast du noch andere COM/ActiveX wo du ähnliches mit der 817 beobachten konntest ?
gruss by OHR
Jimmy

ramses
1000 working lines a day
1000 working lines a day
Beiträge: 898
Registriert: Mi, 28. Jul 2010 17:16

Re: Seltsames Verhalten Version 817

Beitrag von ramses » Mi, 16. Aug 2017 20:54

Hallo Jimmy

Ich habe/hatte glücklicherweise nur 2 Object-Schnittstellen, zu Outlook und Excel.

Aber ich jage eigentlich noch immer den Str() Fehlerteufel......

Gruss Carlo

Benutzeravatar
Roland Gentner
Programmier-Gott
Programmier-Gott
Beiträge: 1225
Registriert: Fr, 24. Nov 2006 8:30
Wohnort: Neresheim
Kontaktdaten:

Re: Seltsames Verhalten Version 817

Beitrag von Roland Gentner » Mi, 16. Aug 2017 21:39

ramses hat geschrieben:
Mi, 16. Aug 2017 20:54
Aber ich jage eigentlich noch immer den Str() Fehlerteufel......
Hall Carlo

hast Du denn den Vorschlag "mach Drei aus einer Zeile" schon ausprobiert?
viewtopic.php?f=20&t=9904&p=114856&hilit=str#p114856
Wenn dann der Fehler immer noch bei Str(...) passiert sind die anderen Vorgänge raus aus der Sache.
Dann würde ich das auch nicht mehr in eine Zeile schreiben - biss Du weißt woher das kommt...
Gruß
Roland

ramses
1000 working lines a day
1000 working lines a day
Beiträge: 898
Registriert: Mi, 28. Jul 2010 17:16

Re: Seltsames Verhalten Version 817

Beitrag von ramses » Mi, 16. Aug 2017 22:20

Hallo Roland

ja der kommt auch. Immer wenn der Ursprung ein Nummerisches DBF Feld (aus ADS) ist mit diesem gerechnet und das Ergebniss dann in Str() reinkommt.

Gruss Carlo

Benutzeravatar
Roland Gentner
Programmier-Gott
Programmier-Gott
Beiträge: 1225
Registriert: Fr, 24. Nov 2006 8:30
Wohnort: Neresheim
Kontaktdaten:

Re: Seltsames Verhalten Version 817

Beitrag von Roland Gentner » Mi, 16. Aug 2017 23:06

ramses hat geschrieben:
Mi, 16. Aug 2017 22:20
Immer wenn der Ursprung ein Nummerisches DBF Feld (aus ADS) ist mit diesem gerechnet und das Ergebniss dann in Str() reinkommt.
Ich habe den ADS seit mind. 15 Jahren bei mir und Kunden im EInsatz.
In vielen INDEX ON steht ein Str(...), z.B:

Code: Alles auswählen

Index On Str( LFDNR , 10 , 0 ) + Str( LFDPOS , 10 , 0 ) + Str( NSTULFD , 5 , 0 ) + Str( NSTULEV , 3 , 0 ) + xtG1IndAr( AR_NR ) To ( MEMVAR->DB_ABML2 )
Um das mit den drei Zeilen statt einer zu testen musst Du ja eine Funktion verwenden, z.B.

Code: Alles auswählen

Function Berechne
Local a := field->skontober / 100
Local b := field->skontoabz / a
Return( b )
Index On Str( Berechne() , 10 , 1 ) To "c:\temp\test.ntx"
oder gleich

Code: Alles auswählen

Function Berechne
Local a := field->skontober / 100
Local b := field->skontoabz / a
Local c := str( b , 10 , 1 )
Return( c )
Index On Berechne() To "c:\temp\test.ntx"
Das sollte doch möglich sein wenn irgendwann nicht eine andere Fehlermeldung kommt oder sogar der Fehler nichtmehr im Index On auftritt.
Gruß
Roland

ramses
1000 working lines a day
1000 working lines a day
Beiträge: 898
Registriert: Mi, 28. Jul 2010 17:16

Re: Seltsames Verhalten Version 817

Beitrag von ramses » Mi, 16. Aug 2017 23:53

Hallo Roland

du hast da was falsch verstanden.

Die rückgabe von Str() wird z.B. zur Anzeige, Drucken zusammstellen eines Strings uva. verwendet.
NICHT zum Aufbau eines Index.
Also z.b. ? str() oder @ 10,10 say alltrim(str())+ .....

Ich habe nur auf ADS verwiesen damit ersichtlich ist dass der Wert aus der ADSDBE kommt. Diese hat doch schon öfters ein wenig Eigenheten gehabt. Die erste ADS Version hatten wir in den 90er Jahren noch unter Novell Netware ....... als M$ noch nicht wusste dass es Netzwerke gibt .......

Gruss Carlo

Benutzeravatar
Roland Gentner
Programmier-Gott
Programmier-Gott
Beiträge: 1225
Registriert: Fr, 24. Nov 2006 8:30
Wohnort: Neresheim
Kontaktdaten:

Re: Seltsames Verhalten Version 817

Beitrag von Roland Gentner » Do, 17. Aug 2017 0:14

OK - keine Ahnung wie ich da jetzt auf Index komme...
Wir sollten aber in dem dazu passenden Thema hierzu weitermachen, sonst kommt noch mehr durcheinander :-)
https://xbaseforum.de/viewtopic.php?f=2 ... &hilit=str
Gruß
Roland

Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 12806
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Kontaktdaten:

Re: Seltsames Verhalten Version 817

Beitrag von Jan » Do, 17. Aug 2017 8:13

Carlo,

hast Du das mal mit Alaska besprochen? Wenn Du eindeutig nachvollziehen kannst, das sich da etwas zum Negativen geändert hat, dann sollten die das erfahren. Und das prüfen.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.

ramses
1000 working lines a day
1000 working lines a day
Beiträge: 898
Registriert: Mi, 28. Jul 2010 17:16

Re: Seltsames Verhalten Version 817

Beitrag von ramses » Do, 17. Aug 2017 11:32

Hallo Jan

das Speicherfressen konnte ich durch obige Anpassungen beseitgen.
Aufgefallen ist es jetzt besonders weil der Scan diesmal massenhaft Logeinträge in die Exceltabelle erstellen musste beim letzten Druchlauf unter (807 Version) vielen gar keine Logeinträge an.
Es ist also nicht ein 807->817 Problem. Eher mal wieder eine bestätigung die Finger von Object-Schnittstellen zu lassen.

Gruss Carlo

Antworten