Full Text Search : Full-text catalog has been lost. Use sp_fulltext_catalog to rebuild and to repopulate this full-text catalog

Microsoft.SQLServer.2000.Full_Text_Search___Full_text_catalog_has_been_lost__Use_spfulltextcatalog_to_rebuild_and_to_repopulate_this_full_text_catalog (Rule)

Knowledge Base article:

Causes

Either:

Resolutions

Try these actions in order. If any step succeeds, skip the remaining steps.

For a default instance:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Search\1.0\Gather\SQLServer

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Search\1.0\Gathering Manager\Applications\SQLServer\Projects

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Search\1.0\Indexer\SQLServer

For a named instance:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Search\1.0\Gather\SQLServer$InstanceName

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Search\1.0\Gathering Manager\Applications\SQLServer$InstanceName\Projects

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Search\1.0\Indexer\SQLServer$InstanceName

Execute sp_fulltext_catalog with @action = 'rebuild' for the catalog listed in the message. If this does not resolve your error, try the remaining steps and, if necessary, retry this step.

Drop any full-text indexes associated with the specified catalog. Then drop the full-text catalog using sp_fulltext_catalog with @action = 'drop' for the catalog listed in the message. Then add back first the catalog and indexes, in that order. If this does not resolve your error, try the remaining steps, and then, if necessary, retry this step.

Execute sp_fulltext_service with the clean_up parameter. If this does not resolve your error, try the remaining steps and, if necessary, retry this step.

Verify that the following registry keys do not have a subkey with the same name as the full-text catalog specified in the message.

WARNING: If you use Registry Editor incorrectly, you may cause serious problems requiring you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.

Do not follow these next steps unless you are completely removing the specified catalog:

Backup your registry.

If the path specified in the keys exists, then delete the last folder from the hard drive. For example, if the keys under the SQL0000500005 keys point to C:\Program Files\Microsoft SQL Server\MSSQL$Instance1\FTDATA\SQL0000500005, then delete just the SQL0000500005 subdirectory.

Delete all of the registry keys that have the same name as the full-text catalog.

Element properties:

TargetMicrosoft.SQLServer.2000.DBEngine
CategoryEventCollection
EnabledTrue
Event Source$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
Full Text Search : Full-text catalog has been lost. Use sp_fulltext_catalog to rebuild and to repopulate this full-text catalog
{0}
Event LogApplication
CommentMom2005ID='{C2E6C553-200D-432E-B180-BE519507BFDF}'

Member Modules:

ID Module Type TypeId RunAs 
EventDS DataSource Microsoft.Windows.EventProvider Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SQLServer.2000.Full_Text_Search___Full_text_catalog_has_been_lost__Use_spfulltextcatalog_to_rebuild_and_to_repopulate_this_full_text_catalog" Target="SQL2000Core!Microsoft.SQLServer.2000.DBEngine" Enabled="true" Comment="Mom2005ID='{C2E6C553-200D-432E-B180-BE519507BFDF}'" Remotable="true">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="EventDS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesMOM2005RegularExpression</Operator>
<Pattern>^(17052|17055)$</Pattern>
</RegExExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDescription</XPathQuery>
</ValueExpression>
<Operator>MatchesMOM2005BooleanRegularExpression</Operator>
<Pattern>((^.*7605 and (not ^.*\n.*7605)) or (^.*7605.*\n.*7605)) AND (NOT ^.*[0-9]+.*7605) AND (NOT ^.*7605[0-9]+)</Pattern>
</RegExExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertOwner>$Data/PublisherName$</AlertOwner>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2000.Full_Text_Search___Full_text_catalog_has_been_lost__Use_spfulltextcatalog_to_rebuild_and_to_repopulate_this_full_text_catalog.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>