I support an application that uses full text indexes in SQL Server 2000. I'm
trying to resolve an issue where by the results of a search in the production
application do not include the expected results. I've been unable to
reproduce the scenario in my development environment.
Both the production and development environments are running the following
version of SQL Server.
Microsoft SQL Server 2000 - 8.00.2040 (Intel X86)
May 13 2005 18:33:17
Copyright (c) 1988-2003 Microsoft Corporation
Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 1)
The queries and results from the production environment are below. The
first query returns no results. However, the second query (which excludes
"M*"' from the search criteria) includes the expected results. In my
development environment both queries return the expected results. I've
verified that the noise word files match in both environments, and I've had
the full text index in the production environment deleted and rebuilt twice.
I don't know what else to check / try. Thanks for any help that can be
provided.
SELECT H.HoldEntityID, H.EntityName
FROM dbDatabase.dbo.tblLSHoldEntity H
INNER JOIN CONTAINSTABLE (
dbDatabase.dbo.tblLSHoldEntity, EntityName,
'"Knudsvig*" AND "Ronnie*" AND "M*"', 250) FT
ON H.HoldEntityID = FT.[KEY]
/* RESULTS
HoldEntityID EntityName
------------ --------------------------------------------
(0 row(s) affected)
*/
SELECT H.HoldEntityID, H.EntityName
FROM dbDatabase.dbo.tblLSHoldEntity H
INNER JOIN CONTAINSTABLE (
dbDatabase.dbo.tblLSHoldEntity, EntityName,
'"Knudsvig*" AND "Ronnie*" ', 250) FT
ON H.HoldEntityID = FT.[KEY]
/* RESULTS
HoldEntityID EntityName
------------ --------------------------------------------
891260 RONNIE M KNUDSVIG; FORREST J EAST
1132654 RONNIE M KNUDSVIG; CATHERINE A KNUDSVIG
(2 row(s) affected)
*/
Hilary Cotter - 09 Jul 2007 17:14 GMT
Can you check the application log for error messages from mssci or mssearch?

Signature
Looking for a SQL Server replication book?
http://www.nwsu.com/0974973602.html
Looking for a FAQ on Indexing Services/SQL FTS
http://www.indexserverfaq.com
>I support an application that uses full text indexes in SQL Server 2000.
>I'm
[quoted text clipped - 50 lines]
> (2 row(s) affected)
> */
Craig Stewart - 10 Jul 2007 21:46 GMT
I do not see any error messages from mssci or Microsoft Search in the
application logs.
> Can you check the application log for error messages from mssci or mssearch?
>
[quoted text clipped - 52 lines]
> > (2 row(s) affected)
> > */
Daniel Crichton - 09 Jul 2007 17:31 GMT
Craig wrote on Mon, 9 Jul 2007 08:56:03 -0700:
> I support an application that uses full text indexes in SQL Server 2000.
> I'm trying to resolve an issue where by the results of a search in the
[quoted text clipped - 11 lines]
> I don't know what else to check / try. Thanks for any help that can be
> provided.
Which noise files did you modify? Are you sure the regional settings on both
servers are the same? For instance, if your development server is set to US
English, and the production to International English, and you've only
removed M from the noise words file for the US language, then the M will
still be ignored in the production server and hence the query will fail.
Matching the noise words file is just one step - you have to check every
possible regional difference between the 2 servers.
Dan
Craig Stewart - 10 Jul 2007 22:10 GMT
The files I synchronized were:
(1) C:\WINDOWS\system32\noise.dat
(2) C:\WINDOWS\system32\noise.enu
(3) C:\Program Files\Microsoft SQL
Server\MSSQL$INSTANCE01\FTDATA\SQLServer$LOANSTAR01\Config\noise.dat
(4) C:\Program Files\Microsoft SQL
Server\MSSQL$INSTANCE01\FTDATA\SQLServer$LOANSTAR01\Config\noise.enu
When you say to verify all of the possible regional differences between the
two servers, are you referring to the "Regional and Language Options" dialog
in the Windows Control Panel and nothing more?
> Craig wrote on Mon, 9 Jul 2007 08:56:03 -0700:
>
[quoted text clipped - 23 lines]
>
> Dan
Daniel Crichton - 11 Jul 2007 08:36 GMT
As you've edit the noise.enu file (number 4 below), it may be that the
production server is set for International English instead of US English and
so is using noise.eng instead. You need to start with the FTS settings and
work down to the OS regional settings, checking what the settings are in
each case - so check the FTS locale setting, the database collation/locale,
the server default locale, and the OS locale for the account SQL Server is
running under.
Dan
Craig wrote on Tue, 10 Jul 2007 14:10:03 -0700:
> The files I synchronized were:
>
[quoted text clipped - 36 lines]
>>
>> Dan