Access97, Datenbank Absturz während der Berechnung
Eine 8 Jahre alte Datenbank funktioniert plötzlich nicht mehr richtig!
Hallo,
Diese Schnittstellendatenbank stellt Daten aus einem ERP-System an weitere Access97 Datenbanken bei. Die Datenbank existiert bereits seit 8 Jahre, und die Berechnung wird jede Nacht ausgeführt.
Seit einer Woche stürtz die Datenbank mitten in der Berechnung ab, ohne Fehlermeldung (alle Funktionen sind aber mit Fehlerroutinen versehen)
Die Berechnung ist in 6 Makros unterteilt.
Der Absturz passiert in Makro 2 (nachdem Makro 1 ausgeführt wurde)
Wenn jedoch Makro 2 separat gestartet wird, lauft es durch!
Daher vermute ich nun, das der belegte Speicher eine bestimmte Grenze nicht erreicht darf (sichtbar unter dem Prozess MSACCESS.EXE im Task-Manager von Windows).
Beim Absturz ist die Speicherbelegung für MSACCESS.EXE ca 31.500 KB.
Gibt es hier eine Grenze????
Die Datenbank wurde auch in den letzten Wochen nicht geändert. Die Datenmenge ist jedoch angewachsen. Daher auch einige Feld-Variablen, die automatisch mit REDIM erhöht werden, wenn die Anzahl der Datensätze höher wird. Daher auch höhere Speicherbelegung.
Hat jemand schon ähnliche Erfahrungen gemacht?
Was gibt es für möglichkeiten, die Speicherbelegung in Grenzen zu halten.
-- habe bereits bei allen Function alle Tabellen und Datenbankvariablen mit NOTHING beendet
-- bringt es was, Feldvariablen (ZB MeinFeld(100)) am Ende der Funktion mit REDIM MeinFeld(1) zu überschreiben? Oder hift hier auch ein SET NOTHING?
Danke für Feedback.
mfG
Claude
PS habe nachträglich den Bereich geändert, da es doch eher ein Windows (Server) Problem ist.
Nachtrag 27.12.2007: Da es hier kein Feedback mehr gibt (Schade...), wird der Beitrag geschlossen.
Hallo,
Diese Schnittstellendatenbank stellt Daten aus einem ERP-System an weitere Access97 Datenbanken bei. Die Datenbank existiert bereits seit 8 Jahre, und die Berechnung wird jede Nacht ausgeführt.
Seit einer Woche stürtz die Datenbank mitten in der Berechnung ab, ohne Fehlermeldung (alle Funktionen sind aber mit Fehlerroutinen versehen)
Die Berechnung ist in 6 Makros unterteilt.
Der Absturz passiert in Makro 2 (nachdem Makro 1 ausgeführt wurde)
Wenn jedoch Makro 2 separat gestartet wird, lauft es durch!
Daher vermute ich nun, das der belegte Speicher eine bestimmte Grenze nicht erreicht darf (sichtbar unter dem Prozess MSACCESS.EXE im Task-Manager von Windows).
Beim Absturz ist die Speicherbelegung für MSACCESS.EXE ca 31.500 KB.
Gibt es hier eine Grenze????
Die Datenbank wurde auch in den letzten Wochen nicht geändert. Die Datenmenge ist jedoch angewachsen. Daher auch einige Feld-Variablen, die automatisch mit REDIM erhöht werden, wenn die Anzahl der Datensätze höher wird. Daher auch höhere Speicherbelegung.
Hat jemand schon ähnliche Erfahrungen gemacht?
Was gibt es für möglichkeiten, die Speicherbelegung in Grenzen zu halten.
-- habe bereits bei allen Function alle Tabellen und Datenbankvariablen mit NOTHING beendet
-- bringt es was, Feldvariablen (ZB MeinFeld(100)) am Ende der Funktion mit REDIM MeinFeld(1) zu überschreiben? Oder hift hier auch ein SET NOTHING?
Danke für Feedback.
mfG
Claude
PS habe nachträglich den Bereich geändert, da es doch eher ein Windows (Server) Problem ist.
Nachtrag 27.12.2007: Da es hier kein Feedback mehr gibt (Schade...), wird der Beitrag geschlossen.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 69322
Url: https://administrator.de/forum/access97-datenbank-absturz-waehrend-der-berechnung-69322.html
Ausgedruckt am: 23.12.2024 um 18:12 Uhr
4 Kommentare
Neuester Kommentar
Moin Claude,
auch wenn Du Dir schon viel Mühe gegeben hast, den Fehler zu beschreiben und einzugrenzen, ein paar Details sind mir noch nicht klar (genug) geworden:
Grüße
Biber
auch wenn Du Dir schon viel Mühe gegeben hast, den Fehler zu beschreiben und einzugrenzen, ein paar Details sind mir noch nicht klar (genug) geworden:
- in Makro1 (der durchläuft) und Makro2 (der vermutlich auf eine Speicheradresse springt, die hinterm Nirwana gleich rechts liegt) -- dort wird "nur" berechnet oder auch schon aus verschiedenen *-mdb-Quellen gelesen?
- wenn mehrere *.mdbs beteiligt: sind alle mal formal "gewartet" worden (Reorganisiert/Repariert)?
- auf die Makros selbst, den Sourcecode hast Du offensichtlich uneingeschränkten Zugriff - kannst Du die ganze Klamotte auf Access 2000 (oder höher) migrieren? Denn für Access 97 findest Du doch wirklich nur noch Hilfe in solchen Foren wie hier... wenn es an Access97-Alt-Bugs liegt steckst Du unnötig Zeit rein.
- sind weitere Clients beteiligt/können unterschiedliche Jet-Engine-Stände die Fehlerquelle sein? Oder unterschiedliche Bibliotheksverweise aus VBA heraus?? Fehlt auf dem Server eine Referenz - wird die falsche Lib referenziert?
Grüße
Biber