Generieren Sie den Textindex für einen einzelnen Datensatz erneut

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 2 Minuten Lesedauer
  • Aktualisieren Sie den Textsuchindex für einen einzelnen Datensatz. Verwenden Sie diesen Ansatz, um schnell zu überprüfen, ob die Textindizierung die Ursache eines Suchproblems 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

    Die identifizierte Tabelle muss bereits für die Indizierung und Suche konfiguriert sein. Details zu diesem Konfigurationsprozess finden Sie unter Konfigurieren Sie eine Tabelle für die Indizierung und Suche.

    Erforderliche Rolle: Administrator
    Hinweis:
    Wenn glide.script_processor.adminDer Wert der Systemeigenschaft wurde vom Standardwert geändert. Sie benötigen die von diesem Eigenschaftswert angegebene Rolle. Details 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 Zeit, als den Textindex für alle Datensätze in einer Tabelle neu zu erstellen.

    Sie können diese Methode verwenden, um schnell zu bestimmen, ob die Textindizierung die Ursache eines Suchproblems ist. Dadurch wird die Verzögerung vermieden, 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 auswählen Kopieren Sie die sys_ID Aus dem Kontextmenü.
    2. Navigieren zu Alle > Systemdefinition > Skripts – Hintergrundan.
      Hinweis:
      Wenn glide.script_processor.adminDer Wert der Systemeigenschaft ist auf Security_admin festgelegt. Sie müssen auf diese privilegierte Rolle erhöhen, um auf dieses Modul zuzugreifen. Weitere Informationen zur Erhöhung von Berechtigungen finden Sie unter Elevated privilege roles.
    3. In Skript ausführen (auf Server ausgeführtes JavaScript) Textfeld: Geben Sie das folgende Skript ein und ersetzen Sie es TABELLENNAME Mit dem Namen der Tabelle, die den identifizierten Datensatz und enthält SYS_ID Mit der sys_ID des Datensatzes, die Sie in Schritt kopiert haben 1:
      var gr = new GlideRecord('TABLE_NAME');
      gr.get('SYS_ID');
      gs.eventQueue("text_index", gr, '[TABLE_NAME]','update','text_index');
    4. Wählen Sie Aus Skript ausführen .
      Das Skript erstellt ein Text_index-Update-Ereignis für die angegebene Tabelle in der Text_index-Warteschlange.
    5. Navigieren zu Alle > Systemrichtlinie > Ereignisse > Ereignisprotokoll Und warten Sie, bis der Status des neuen Text_index-Update-Ereignisses in geändert wird Verarbeitet .
      Um das neue Ereignis zu finden, können Sie anwenden [Name][enthält][Text_index] Filtern und sortieren Sie die Ereignislistenansicht nach Erstellt Datum/Uhrzeit in absteigender Reihenfolge (z bis A).

    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 den Textindex für die gesamte Tabelle aktualisieren, die diesen Datensatz enthält. Details finden Sie unter Generieren Sie einen Textindex für eine Tabelle erneut.