[Allegro] Update von LOG-Datei "uber interne Satznummer

Thomas Berger ThB at Gymel.com
So Aug 28 23:37:25 CEST 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Lieber Herr Allers, liebe Liste,

vermutlich sollte die Mail zwar nicht an die allegro-Liste gehen,
jedoch...

> gelernt, nämlich daß der Update-Prozeß der LOG-Datei über die INTERNE 
> SATZNUMMER läuft! Mir wurde ganz heiß ob meines Lernschrittes - ich dachte nämlich 
> immer, das liefe über den Primärschlüssel!  :-((

Ein Playback (Update -fp oder -f9) nutzt die Information aus der
Log-Datei. Das ist im Fall einer Modifikation oder Loeschung
in der Tat die interne Satznummer. Im Fall eines Neusatzes liegt
aber nur die Information "Neusatz" und "Dateinummer" vor. D.h. hier
wird unbedingt ein Neusatz angelegt und implizit ist, dass der dann
wohl die "richtige" Satznummer bekommt, auf die sich spaetere Eintraege
in der Logdatei dann evtl. beziehen.

Das bedeutet, wenn Ausgangs-Datenbank und Startpunkt der Logdatei nicht
100%ig synchron sind, dass ein Playback die wunderlichsten Effekte
haben kann: Angenommen die Datenbank hat 1001 Saetze, die Logdatei
startet jedoch zu einem Zeitpunkt, wo die Datenbank 1000 Saetze hatte,
dann erzeugt der erste Neusatz aus der Logdatei den Satz 1002, spaetere
Modifikationen betreffen aber Satz 1001.

Insbesondere darf man nie auf die Logdatei zurueckgreifen, wenn man
zwischenzeitlich mit Index -f7 die Datenbank komplett reorganisiert
hatte. Bzw. man darf natuerlich auf alles zuruekgreifen, kann jedoch
die Logdatei nicht per playback verarbeiten, sondern muss sie mit
log2alg in eine .alg-Datei verwandeln und dann mit -fm11 verarbeiten.
Schaeden (Dubletten) durch nicht-synchrone Datenbank und Logdatei
sind dann zwar nicht ausgeschlossen, aber deutlich reduziert.


> Müßte dann nicht die im Menü angebotenene Routine fürs Indexieren eine 
> entsprechende Behandlung der <dbn>.log einschließen? Aber wie gesagt, keine Sache, 

_restore.bat (von _restore.flx aufgerufen) fuehrt abschliessend ein
Playback aus.

viele Gruesse
Thomas Berger
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3-nr1 (Windows XP)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFDEi6VENVh3bB0lwMRAjlvAJ9t8jG9YMQ/fEyqOhQvEhakb5KxzQCdFiIz
fWHn7yBb/wx8s/l8SyKsyhE=
=y0/o
-----END PGP SIGNATURE-----



Mehr Informationen über die Mailingliste Allegro