Allegro-Grenzen?

Thomas Fischer fischer at mail.sub.uni-goettingen.de
Do Apr 29 14:53:57 CEST 2004


Liebe KollegInnen,

ich habe Probleme bei der Indexierung einer Datenbank, nachdem ich versucht habe, durch Indizierung von Wortpaaren eine Art Phrasensuche zu ermöglichen. Die Indizierung bricht mit einem DOS-Fehler in Windows ab ("Die NTVDM-CPU hat einen ungültigen Befehl entdeckt...") oder hört ohne Meldung mit der Indizierung auf, z.B. die letzte Zeile in Protok:
        1656 Schlüssel werden vorsortiert, ii238 (AAC_1.GLD)
        1629 Sc

Ich würde gerne herausfinden, ob das System sich an einem besonders sperrigen Datensatz verschluckt oder sich irgendwie oder -wo Variablen ansammeln, die den Speicherplatz verzehren. Gibt es Hinweise, wie ich das herausfinden kann? Oder gibt es Grenzen der zu einem Datensatz zulässigen Indexeintragsgröße (?), die ich hier überschreite?

Meine Speichereinstellung ist derzeit
mr10000     aktivieren, wenn man genügend Speicher hat
            (Reduktion auf 1000 bringt 60K !)
mk2500      Arbeitssp. Anzahl Kategorien (Standard 2500)
mK48000  	Größe des Aufnahmespeichers in Byte
		(10000 reicht, wenn keine extrem großen Sätze. 
md1500      Anzahl Kategorie-Deskriptoren (Standard 800)
mb1000      Hintergr.Sp. Anzahl Kategorien
mB32000     Größe (in Byte, 5000 reicht meist)
mP5000      Phrasenspeichergröße (auch für Zwischenteile nötig!)
mX64000     Export-Parameterspeicher

Vielleicht lässt sich da auch noch etwas verbessern?

Der fragliche Programmteil ist
(mit #udx = '|2' und den zu suchenden Sätzen in #usv):

#-t
#udx
#usv e' '
#usv b' ' f32 =sv
#usv e' ' p' '
#t{8}
#usv +t c' ' e0 
#udx ddx dsv e0

Wenn er aktiv ist, werden immer nur (etwa?) 2209 Datensätze indiziert, ohne ihn alle. Es scheinen immer dieselben Datensätze nicht erfasst zu werden, obwohl die Zahl der bis zum Abbruch entstehenden Zwischendateien von den Speichereinstellungen in der *.cfg-Datei abhängt.


Mit freundlichen Grüßen und für jeden Hinweis dankbar
Thomas Fischer 





Mehr Informationen über die Mailingliste Allegro