[Allegro] Globale Ersetzung in Indexparametern gestoert?

Thomas Berger ThB at Gymel.com
Mi Jul 8 08:57:56 CEST 2015


Lieber Herr Eversberg,

>> Dies fuehrt u.U. dazu, dass in *keinem* Satz mehr Kategorien #541 oder
>> #700 sichtbar sind.
> Nicht mehr "sichtbar"? Also einfach weg?

Es gibt keine Indexate dazu. F7 in a99 hingegen zeigt sie alle.

Es fiel an dem weniger drastischen Fall sowohl mir als auch
einem Anwender auf: Die Kategorienstatistik hatte ein Loch
zwischen irgendwo #54... und #70... und ein Teilindex in einem
anderen Register, der sich nur aus #541 gewisser Saetze speiste,
existierte nicht. Wie drastisch die Kategorien fehlen, ist damit
nicht unbedingt gesagt, fuer ak-Statements jedenfalls sind sie
unsichtbar.

Im drastischeren Fall sieht man nur durch Auszaehlen der Schluessel
in den ii-Dateien, dass nur 608.000 statt 686.000 Schluessel
gebildet worden waren, in einem Teilindex der Erscheinungsorte
aus #410 gibt es nur Eintraege zu den Saetzen mit den internen
Nummern 1-25, zu #425 nur von Satz #1, entsprechend auch in der
Kategorienstatistik (die ist dann nicht ganz leer, daher faellt
es nicht so auf)


>> Der Fehler bleibt unveraendert, wenn ich den Ersetzungsbefehl auf
>>
>> *#806x_; _^P_
>>
>> aendere, wobei ich ueberprueft habe, dass #806x in der Datenbank
>> in keinem Datensatz vorkommt: Bereits der (stets erfolglose) Test
>> auf die Anwendbarkeit der Ersetzung ist also problematisch.
> Aha!

Fand ich auch!


>> mir scheint an einer Stelle in den Suchbegriff im Phrasenspeicher
>> eine ASCII 0 hineingeschrieben zu werden,
> An welcher? In cmd_y()m wo steht
>       a[j]=NL;
> ?
> Das wäre nur bedenklich, wenn man einen oder zwei _ in dem Befehl
> vergessen hätte, was hier nicht der Fall ist. Gleichwohl sollten wir
> diese Stelle mal absichern. (Da wird in der Tat in den Phrasenspeicher
> direkt geschrieben, was aber bei Vorhandensein von 3x '_' egal ist,
> also auch im vorliegenden Fall.)

aber wird nicht im naechsten Satz wieder nach "_", "," oder (27)
gesucht? Aber im Prinzip haben Sie Recht, es muss etwas index-
Spezifisches sein und das Fehlerbild deutet eher darauf hin, als
sei die Liste der erlaubten Kategorien waehrend der Laufzeit
beeintraechtigt worden. ("zerschiessen" des Parameterspeichers
sollte m.E. viel drastischere Effekte haben)


>> Mit der Demo-Datenbank zu $A.CFG kann ich das Verhalten leider nicht
>> reproduzieren, aber vielleicht gibt Ihnen das Fehlerbild eine
>> Idee, wenn Sie als Kundiger auf den Code gucken?
>>
> Bis jetzt noch nicht wirklich.

Dann versuche ich einmal, das Problem auf die HANS-Demo-Datenbank
umzutopfen, die ist wenigstens deutlich kleiner.

viele Gruesse
Thomas Berger




Mehr Informationen über die Mailingliste Allegro