Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieser Artikel hilft Ihnen, das Problem zu beheben, das auftritt, wenn Sie große Dokumente mithilfe der integrierten Volltextsuche in SQL Server indizieren.
Ursprüngliche Produktversion: SQL Server
Ursprüngliche KB-Nummer: 2270849
Problembeschreibung
Wenn Sie große oder komplexe Dokumente mithilfe der integrierten Volltextsuche in Microsoft SQL Server indizieren, erhalten Sie möglicherweise Timeoutfehler, die der folgenden Meldung ähneln:
2010-06-07 15:02:44.64 spid10s Fehler '0x80040e97' während der Volltextindexgesamtheit für die Tabellen- oder indizierte Ansicht '[db1]. [dbo]. [Images]' (Tabellen- oder indizierte Ansichts-ID '622625261', Datenbank-ID '171'), Volltextschlüsselwert '2375057'. Eine Neuindizierung wird versucht.
Darüber hinaus kann SQL Server den FDHOST.exe Prozess neu starten.
Ursache
Dieses Problem tritt auf, wenn es länger als 60 Sekunden dauert, bis der FDHOST.exe Prozess die XML-Daten lesen und verarbeiten kann.
Lösung
Um dieses Problem zu beheben, erhöhen Sie den Timeoutwert für die Volltextindizierung. Rufen Sie dazu die sp_fulltext_service
gespeicherte Prozedur mit dem 'ft_timeout'
Parameter auf. Der folgende Code erhöht z. B. das Timeout für die Volltextindizierung für jedes Dokument auf 20 Minuten:
EXEC sp_fulltext_service 'ft_timeout', 1200000
Notiz
Der zweite Parameter ist ein Timeout in Vollindizierung in Millisekunden.The second parameter is full-indexing time-out in Millisekunden.
Wichtig
Starten Sie Ihren SQL Server neu, damit die neue Einstellung wirksam wird.
Weitere Informationen
Wenn SQL Server Datentypen wie varbinary, varbinary (max), image oder xml indiziert, sendet SQL Server Daten an den Filterdaemonprozess (FDHOST.exe). Sql Server wartet zu einem beliebigen Zeitpunkt während des Indizierungsprozesses nicht mehr als 60 Sekunden, bis der FDHOST.exe Prozess reagiert.
Bei umfangreichen XML-Dokumenten liest der XML-Filter, der vom FDHOST.exe-Prozess gehostet wird, in allen Daten aus SQL Server und speichert die Daten in einer temporären Datei. Anschließend verarbeitet FDHOST.exe den XML-Inhalt zum Filtern und Wortbruch. Wenn dieser Vorgang mehr als 60 Sekunden dauert, beendet SQL Server den Batch und ruft den Vorgang mithilfe einer kleineren Batchgröße erneut ab. Wenn ein XML-Dokument groß ist und der FDHOST.exe Prozess mehr als 60 Sekunden dauert, um die Wörter zu filtern und zu unterbrechen, können Sie fehler auftreten, der im Abschnitt "Symptome" erwähnt wird.
Notiz
Das Problem kann bei jedem iFilter auftreten, der Daten in eine temporäre Datei schreibt.
Fehler 0x80040e97 können auch aus anderen Gründen angezeigt werden. Beispielsweise wird möglicherweise derselbe Fehlercode angezeigt, wenn SQL Server Probleme beim Laden eines iFilters hat. Das Erhöhen des Timeoutwerts in diesen Fällen kann den Fehler maskieren und eine effektive Problembehandlung verhindern. Daher wird empfohlen, die Größe des Dokuments zu überprüfen und zu bestätigen, dass die Größe des fehlerhaften Dokuments außergewöhnlich groß ist, bevor Sie den Timeoutwert erhöhen.