[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