Generieren Sie das Textverzeichnis für einen einzelnen Datensatz erneut

  • Freigeben Version: Xanadu
  • Aktualisiert 10. August 2024
  • 2 Minuten Lesedauer
  • Aktualisiert den Textsuchindex für einen einzelnen Datensatz. Verwenden Sie diesen Ansatz, um schnell zu überprüfen, ob die Textindizierung die Ursache für ein Suchproblem ist, ohne den Volltextindex für eine ganze Tabelle neu zu erstellen.

    Vorbereitungen

    Identifizieren Sie Folgendes:
    • Ein Suchbegriff, der nicht die erwarteten Ergebnisse zurückgibt
    • Ein Datensatz, der den identifizierten Suchbegriff enthält, der bei der Suche nach dem Begriff nicht zurückgegeben wird
    • Die Tabelle, die den identifizierten Datensatz enthält

    Für die identifizierte Tabelle muss bereits eine Textindizierung aktiviert sein.

    Erforderliche Rolle: admin
    Hinweis:
    Wenn der Wert der Systemeigenschaft glide.script_processor.admin vom Standardwert geändert wurde, benötigen Sie die durch diesen Eigenschaftswert angegebene Rolle. Einzelheiten zu diesem Eigenschaftswert und seinen Auswirkungen finden Sie unter Restrict access to background script [Updated in Security Center 1.3 and 2.0].

    Warum und wann dieser Vorgang ausgeführt wird

    Diese Neuindizierungsmethode erstellt den Textsuchindex für einen einzelnen Datensatz neu. Es dauert weniger lange, als das Textverzeichnis für alle Datensätze in einer Tabelle neu zu erstellen.

    Mit dieser Methode können Sie schnell feststellen, ob die Textindizierung die Ursache für ein Suchproblem ist. Auf diese Weise vermeiden Sie die Verzögerung, die mit der Neuerstellung des Textsuchindex der gesamten Tabelle verbunden ist.

    Prozedur

    1. Kopieren Sie die sys_id für den identifizierten Datensatz, indem Sie im Kontextmenü sys_id kopieren wählen.
    2. Navigieren zu Alle > Systemdefinition > Skripts – Hintergrundan.
      Hinweis:
      Wenn der Wert der Systemeigenschaft glide.script_processor.admin auf security_admin festgelegt ist, müssen Sie auf diese privilegierte Rolle hochstufen, um auf dieses Modul zugreifen zu können. Weitere Informationen zum Erhöhen von Berechtigungen finden Sie unter Elevated privilege roles.
    3. Geben Sie im Textfeld Skript ausführen (JavaScript auf dem Server ausgeführt) das folgende Skript ein, wobei Sie TABLE_NAME durch den Namen der Tabelle mit dem identifizierten Datensatz und SYS_ID durch die sys_id des Datensatzes ersetzen, die Sie in Schritt 1kopiert haben:
      var gr = new GlideRecord('TABLE_NAME');
      gr.get('SYS_ID');
      gs.eventQueue("text_index", gr, '[TABLE_NAME]','update','text_index');
    4. Wählen Sie Skript ausführen aus.
      Das Skript erstellt ein text_index-Aktualisierungsereignis für die angegebene Tabelle in der text_index-Warteschlange.
    5. Navigieren zu Alle > Systemrichtlinie > Ereignisse > Ereignisprotokoll und warten, bis sich der Status des neuen text_index-Aktualisierungsereignisses in „ Verarbeitet“ ändert.
      Um das neue Ereignis zu finden, können Sie den Filter [Name][contains][text_index] anwenden und die Ereignislistenansicht nach Erstellungsdatum/ -uhrzeit in absteigender Reihenfolge (z bis a) sortieren.

    Ergebnisse

    Das System aktualisiert den Textindex für den angegebenen Datensatz in der angegebenen Tabelle.

    Nächste Maßnahme

    Wiederholen Sie Ihre Beispielsuche. Wenn diese Suche den identifizierten Datensatz zurückgibt, möchten Sie möglicherweise das Textverzeichnis für die gesamte Tabelle aktualisieren, die diesen Datensatz enthält. Details finden Sie unter Textverzeichnis für eine Tabelle neu generieren.