[Allegro] index.exe hat ein Problem festgestellt...
Thomas Berger
ThB at Gymel.com
Mi Nov 30 11:03:33 CET 2011
Am 30.11.2011 10:50, schrieb Anando Eger:
> Hallo Herr Fischer,
>
> in verschiedenen Datenbanken musste ich bei der Umstellung auf die
> 32bit-Version der index.exe die Verwendung von Variablen in der .?pi
> ändern oder im Extremfall ganz vermeiden, damit überhaipt richtige
> Indizes aufgebaut wurden.
>
> Verschiedentlich wurden mit Indexparametern, die schon über 10 Jahre
> funktionierten, "Geistereinträge" im Index erzeugt - d.h. Einträge,
> deren Herkunft nicht mit der a99-Indexvorschau reproduziert werden
> konnten.
>
> Leider konnte ich noch keinen reprozuzierbaren Testfall konstruieren,
> da mir dazu bisher schlicht die Zeit fehlte.
Die neueren index.exe scheitern nicht mehr (so schnell) an "zu vielen"
Schluesseln, der beschriebene Absturz deutet allerdings auf einen
Ueberlauf des Hintergrundspeichers hin, typische Ursachen sind
* immer weiter anwachsende Anwendervariable (evtl. Loeschung der
Variablen im Primaerabschnitt, der aber nur bei index - at 1 ausgefuehrt
wird und nicht bei index - at 2)
* Speicherkorruption in Grenzfaellen: Es gab/gibt Situationen, wo
bei leer gewordenem Arbeitstext die Verarbeitung der aktuellen
Anweisung fortgesetzt wird und dann unbestimmbare Resultate
ergibt, gleichzeitig wird das Programm als solches instabil.
Einerseits sind neuere index.exe in dieser Beziehung verbessert
worden (Ordnungsgemaesser Abbruch erfolgt, das ist dann allerdings
ein abweichendes Verhalten im Vergleich zu aelteren INDEX.EXE),
andererseits sind die aelteren INDEX.EXE gefuehlt weniger
allergisch gegen solche Probleme (die sich manchmal auch erst
nach Ende aeussern: "COMMAND.COM angehalten" oder qrix scheiterte
einmalig aus unklarem Grund, liess sich aber neu aufstarten)
Oft hilft es, die .api in eine .apr umzuwandeln und das Ergebnis
zu untersuchen, sehr hilfreich ist es natuerlich, wenn sich das
Phaenomen bereits bei Abarbeitung einer einzigen / der ersten
.ald-Datei reproduzieren laesst.
viele Gruesse
Thomas Berger
Mehr Informationen über die Mailingliste Allegro