MSSQLCity.Com - All about MS SQL
     
About Us  
SSWUG Articles  
Articles  
Administering  
Comparison  
General  
Know How  
Replication  
Tuning  
Undocumented  
UDF  
SQL 6.5  
FAQ  
Scripts  
Tips  
Test Exams  
Advertise  
Download  
History  
Search  
Traffic  
Related Links  
     
Your button logo
Add to Favorites
 
     
 

How to troubleshoot full-text search problems

Alexander Chigrik
chigrik@mssqlcity.com


Should you have problems with full-text search, review this troubleshooting checklist to find potential solutions.

*****

1. Check the hardware requirements.

For SQL Server 7.0, you should have:

  • Alpha AXP, Intel or compatible platform
  • Pentium 166 MHz or higher
  • 64MB RAM or more (recommended)
  • 180MB hard disk space


  • For SQL Server 2000, you should have:

  • Intel or compatible platform
  • Pentium 166 MHz or higher
  • 64MB RAM or more (recommended)
  • 250MB hard disk space


  • *****

    2. Check the software requirements.

    To install full-text search, you should have the following operation systems:

    • Windows NT Server version 4.0 (with Service Pack 4 or later for SQL Server 7.0 and Service Pack 5 or later for SQL Server 2000)
    • Windows NT Server Enterprise Edition version 4.0 (with Service Pack 4 or later for SQL Server 7.0 and Service Pack 5 or later for SQL Server 2000)
    • Windows 2000 Server
    • Windows 2000 Advanced Server
    • Windows 2000 DataCenter


    The full-text search supported under the following SQL Server editions:

    • SQL Server 7.0 Standard Edition
    • SQL Server 7.0 Enterprise Edition
    • SQL Server 2000 Personal Edition (except on Windows 9x)
    • SQL Server 2000 Standard Edition
    • SQL Server 2000 Developer Edition
    • SQL Server 2000 Enterprise Edition
    • SQL Server 2000 Enterprise Evaluation Edition


    *****

    3. If you have problems installing the Full-text Search (MSSearch) service, check the Mssearch.log in the \Temp directory to see if any problems occurred.

    *****

    4. Verify that both the MSSQLServer and MSSearch services are running.

    The full-text search runs as a service named Microsoft Search Service (MSSearch service). So, if this service was not started, the full-text search cannot work.

    *****

    5. If a full-text catalog population or query fails, check that there is no mismatch of user account information between the MSSQLServer and MSSearch services.

    Change the password for the MSSQLServer service using the SQL Server Enterprise Manager (do not use Services in Control Panel to change user account information). Changing the password for the MSSQLServer service results in update the account the MSSearch service runs under.

    *****

    6. Verify that MSSearch service runs under the local system account.

    The Microsoft Search service is assigned to the local system account during full-text search installation. Do not change the MSSearch service account information after the installation. Otherwise, it cannot keep track of the MSSQLServer service account.

    *****

    7. Verify whether you have a UNC path specification in your PATH variable.

    Having the UNC path specification(s) in the SYSTEM or USER PATH variables can result in full-text query fail with the message that full-text catalog is not yet ready for queries. To work around this, you should replace the UNC path(s) with remapped drive(s) or add the location \%SYSTEMDRIVE%\Program Files\Common Files\SYSTEM\ContentIndex in front of any UNC path specification in the SYSTEM path.

    *****

    8. If you encountered error indicating that insufficient memory available, set the virtual memory setting to an amount equal to 3 times the physical memory and set the SQL Server 'max server memory' server configuration option to 1.5 times the physical memory.

    Because working with full-text search is very resource expensive, you should have enough physical and virtual memory. Set the virtual memory size to at least 3 times the physical memory installed in the computer, and set the SQL Server 'max server memory' server configuration option to half the virtual memory size setting (1.5 times the physical memory).

    *****

    9. If you encountered error indicating that full-text query contain only ignored words try to rewrite this query to a phrase-based query, removing the noise words.

    You will get the error indicating that full-text query contains ignored words when CONTAINS predicate is used with words such 'OR', 'AND' and 'BETWEEN' as searchable phrase.
    For example, this select statement returns error:

    SELECT ProductName FROM Products WHERE CONTAINS(ProductName, 'and OR between')

    *****

    10. Rewrite the English Query's questions, so that these questions will not require a full-text search on a table with a uniqueidentifier key.

    Asking the English Query's questions that require a full-text search on a table with a uniqueidentifier key may cause English Query to stop responding.

    *****

    11. If you decide to install the full-text search by using the BackOffice 4.5 custom setup, after a successful installation of SQL Server 7.0 (without installing full-text search), you should run Setupsql.exe from the BackOffice CD-ROM(2)
    (\SQL70\Machine_platform\Setup\Setupsql.exe)


    You are not allowed to do it by using the BackOffice 4.5 setup, because the BackOffice Custom Installation dialog box falsely indicate that the full-text search has been installed already.

    *****

    12. If you encountered error indicating that the full-text query is timed out try to reduce the size of the result set, or increase the 'remote query timeout' setting, or insert the full-text query result set into a temporary table instead of streaming the results directly to the client.

    *****

    13. Make a single column unique index for the table you want will be used in a full-text query.

    The full-text indexing cannot work on a table that has a unique index on multiple columns. If the table you want will be used in a full-text query does not currently have a single column unique index, add an IDENTITY column with a UNIQUE index or constraint.

    *****

    14. Upgrade to SQL Server 2000, if you need to work with full-text search in clustered environment.

    The full text search is not available in SQL Server 7.0 clustered environment.

    *****


     

     
    Visit The SQL Server Worldwide User's Group for all the latest news and information about SQL Server, Oracle, DB2 and XML for developers and administrators.

    (c) 1997, 2005 Bits on the Wire, Inc