Autor Thema: Problem bei Suche  (Gelesen 3050 mal)

Offline JayDee

  • Senior Mitglied
  • ****
  • Beiträge: 417
Problem bei Suche
« am: 08.11.17 - 07:39:37 »
Ich habe hier ein Problem, bei dem ich partout nicht weiterkomme und nichts dazu finde. Es tritt NUR  in der produktiven Datenbank auf, nicht aber in den zugehörigen Schablonen, Testumgebungen, anderen Datenbanken etc.

Über die erweiterten Suchoptionen im Notes-GUI soll ein Textitem abgefragt  werden - ein wahrlich alltäglicher Anwendungsfall. Das Item enthält eine vierstellige Jahreszahl in Textdarstellung, z.B. "2011". Das Item war von Anbeginn vom Typ Text und nie etwas anderes. Vorbelegt wird das Item mittels @Text(@Year(@Created)). In manchen Fällen ist das Item durch den Nutzer per Dialogliste änderbar. Der Grund, warum es ein Text- und kein Zahlen-Item ist, liegt darin begründet dass die Nutzer in Einzelfällen auch einen Wert auswählen sollen, der keine Jahreszahl, sondern einen Abkürzungstext darstellt.

Fragt man dieses Item nun ab, so bietet Notes die Abfrageoptionen für Zahlenfelder an (ist gleich mit, ist größer als, ist kleiner als usw.) Für Textitems müsste aber "enthält" bzw. "enthält nicht" angeboten werden.
Dadurch laufen alle Abfragen, die dieses speziell Item beeinhalten, ins Leere und liefern nie Resultate.

Mit dem Volltextindex der Datenbank hat das Problem nichts zu tun, den habe ich bereits mehrfach neu erstellt. Lokale Clientprobleme können ebenfalls ausgeschlossen werden, da das Verhalten in allen Installationen gleich ist. Auch habe ich mehrfach fixup (sowohl mit und ohne Konsistenzcheck-Option -C) und compact mittels Kopie laufen lassen - keine Änderung. fixup bringt nie irgendwelche Warnungen oder Fehler.
compact -c bringt allerdings den Fehler:

"Field is too large (32K) or View's column & selection formulas are too large"

und bricht dann ab. Die Datenbank ist trotzdem kleiner geworden.

Diese Fehlermeldung kommt auch (auf deutsch), wenn man via Notes-Client eine Kopie der Datenbank erstellt. Diese kann man mit "Ignorieren" quittieren und das Kopieren läuft weiter. In der so erstellten Kopie ist das Problem dann verschwunden, die Suche läuft dort mit den korrekten Abfrageoptionen wie gewohnt ab und funktioniert.

Kennt jemand dieses Problem bzw. weiß Rat? Wäre hier ein compact -REPLICA angemessen (aber auch das soll ja durchaus problembehaftet sein, so dass ich es bisher vermieden habe)

Die Datenbank ist > 27.5 GByte groß und fasst derzeit ca. 88.000 Dokumente.

Ich seh nicht so recht den Zusammenhang, wie ein defektes Dokument oder eine defekte Ansicht solche Auswirkung auf die Suchfunktionalität haben kann.
MfG,
Thomas

Offline ronka

  • Senior Mitglied
  • ****
  • Beiträge: 377
  • Was macht der hier denn, muß der überall sein ?
    • das nächste DominoCamp kommt in Juni 2023
Re: Problem bei Suche
« Antwort #1 am: 08.11.17 - 11:25:09 »
Der fehler kann mehrere ursachen haben, die wahrscheinlichste ist aber das es in einen Ansicht einen spalte gibt mit einen Formel drin, diessen Formel wird beim Update task berechnet und den inhalt gespeichert in der Ansicht index.
Wenn dort dann den Fehler drin steht, weil es "zutrifft" das es einen ansichtspalte gibt mit zu viel text, dann bleibt eigentlich nur den weg den Ansicht anzupassen, und damit den Fehler ursache zu vermeiden.

Ich meine mich zu erinnern das Ben Menesi auf den EntwicklerCamp mal gezeigt hat wie ein solche fehler zu finden wäre, aber tja, ist lange her, und bin mir auch nicht sicher mit welches tool das war.
das neueste von Notes und Domino auf den DominoCamp vom 19 bis 21 Juni 2023 auf www.DominoCamp.de

Offline JayDee

  • Senior Mitglied
  • ****
  • Beiträge: 417
Re: Problem bei Suche
« Antwort #2 am: 08.11.17 - 13:54:00 »
Danke. Die ggf. defekten Dokumente bzw. Ansicht sind nicht das Hauptproblem, sondern die nicht sauber funktionierende Suchabfrage des erwähnten Textfeldes.
Ich seh da wie gesagt nicht unbedingt einen ZUsammenhang.
MfG,
Thomas

Offline jBubbleBoy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.290
  • Geschlecht: Männlich
Re: Problem bei Suche
« Antwort #3 am: 08.11.17 - 15:01:18 »
Der Zusammenhang besteht darin, das in der Ergebnisliste ein Dokument aufschlägt welches ein 32K Problem hat - und 32K Problem heißt => Fehlermeldung.
Dieses Verhalten ist korrekt, du kommst nicht drumherum das besagte Dokument zu identifizieren und das 32K Problem zu lösen. Das erstellen einer neuen Replik ist z.B. ein Lösungsansatz.
Gruss Erik :: Freelancer :: KI-Dev, Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.16 / OLI 2.0

--
Nur ein toter Bug, ist ein guter Bug!

Offline JayDee

  • Senior Mitglied
  • ****
  • Beiträge: 417
Re: Problem bei Suche
« Antwort #4 am: 08.11.17 - 15:10:32 »
OK, es ist ein Problem, das gelöst werden muss, und ich werde das mit der Replik dann auch mal testen - sofern ich Platz dafür finde  ;).
Aber kann dies tatsächlich die Ursache dafür sein, dass bei der Suchabfrage im Client auf ein Textfeld die "falschen" Operatoren im Abfragedialog erscheinen?
MfG,
Thomas

Offline jBubbleBoy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.290
  • Geschlecht: Männlich
Re: Problem bei Suche
« Antwort #5 am: 08.11.17 - 15:53:48 »
Die Suchabfrage ist ein eigenständiger Fall und hat so erstmal nichts mit dem 32K Problem zu tun.

Die Feldnamen-Liste, einer Datenbank, bildet sich aus der Summe aller Masken und aller Dokumente. Wenn ein Feld mehrfach vorkommt, z.B. in 2 Masken, dann gibt es nur einen Eintrag - dabei gehen dann Eigenschaften wie Text, Datum oder Zahl verloren bzw. es wird nur der 1. Treffer verarbeitet.

Da die DB Feldnamen-Liste nie kleiner wird sondern immer nur größer, auch alle Masken und alle Dokumente löschen hilft da nicht, wird diese Auswahl-Eigenschaften nur schwer zu ändern sein.
Gruss Erik :: Freelancer :: KI-Dev, Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.16 / OLI 2.0

--
Nur ein toter Bug, ist ein guter Bug!

Offline JayDee

  • Senior Mitglied
  • ****
  • Beiträge: 417
Re: Problem bei Suche
« Antwort #6 am: 08.11.17 - 16:23:38 »
Ich habe eine lokale Replik der DB erstellt - dieser Prozess läuft im Gegensatz zum Erstellen der Kopie ohne Unterbrechung durch Fehlermeldungen durch - aber im Replizierprotoll tauchen die drei Fehlermeldungen "...32K..." auf, aber hier mit Angabe der Note-ID. Dadurch werden die defekten Dokumente identifizierbar.
Volltextindex erstellt, Suchabfrage erscheint mit den korrekten Optionen und funktioniert!  :)

Danke für die Erklärungen  :)
MfG,
Thomas

Offline JayDee

  • Senior Mitglied
  • ****
  • Beiträge: 417
Re: Problem bei Suche
« Antwort #7 am: 15.11.17 - 09:53:26 »
Ich konnte das Problem in der Serverreplik letztlich durch ein

compact -REPLICA

lösen, selbst nachdem die drei fehlerverursachenden defekten Dokumente repariert bzw. gelöscht wurden. Bei  allen drei Dokumenten waren Probleme mit Dateianhängen die Fehlerursache.
Die REPLICA-Option beim compact hat also das AUsgangsproblem gelöst, allerdings versagt danach der Volltextindex völlig (liefert keinerlei Ergebnisse mehr) und muss neu erstellt werden. Danach funktioniert alles wieder perfekt.
MfG,
Thomas

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz