Discussion:
Not all files are returned when searching....
(too old to reply)
danlih
2007-08-20 13:06:03 UTC
Permalink
Hi !

I have setup an Index catalog (called Development) on a fileserver.
Filserver: Windows 2003 SP2

The catalog configuration (some of the parameters):
Location=E:\Index\Development
FilterFilesWithUnknownExtensions=1
Scope=E:\Development

I have created two files in E:\Development

CFile.c:
/* Source: CFile.c */
#include <stdio.h>
main (int argc, char *argv[])
{

printf("English: You live to work\n");
printf("Svenska: Man lever för att jobba\n");
}

TextFile.txt:
/* Source: TextFile.txt */
#include <stdio.h>
main (int argc, char *argv[])
{

printf("English: You live to work\n");
printf("Svenska: Man lever för att jobba\n");
}

The first printf is written in English and the second printf is written in
Swedish

I'm using Ole DB to make queries to the Index
OleDbConnection MyConnection = new

OleDbConnection("Provider=MSIDXS");
MyConnection.Open();

string SQLQueryString = "SELECT Rank, VPath, DocTitle, Filename,
Characterization, Write, DocAuthor FROM LOKI.Development..SCOPE('DEEP
TRAVERSAL OF \"/\"') WHERE CONTAINS('\"man lever för att jobba\"')";

OleDbCommand MyCommand = new OleDbCommand(SQLQueryString, MyConnection);

Result when I'm making the queries:

Query: CONTAINS('\"man lever för att jobba\"')
Result: Found: cfile.c

Query: CONTAINS('man OR lever OR för OR att OR jobba')
Result: Found: cfile.c and textfile.txt

Query: CONTAINS('man AND lever AND för AND att AND jobba')
Result: Found: cfile.c and textfile.txt

Query: CONTAINS('\"You live to work\"')
Result: No files where found

Query: CONTAINS('you AND live AND to AND work')
Result: No files where found

Query: CONTAINS('you OR live OR to OR work')
Result: Found: cfile.c and textfile.txt


There seems to some problem when having different language in files, but
I'm not the man to figure out what ...

How should I do to be able to search exact phrases??

Kind regards Daniel Liljebladh
dl AT fordonsdata.se
danlih
2007-09-04 19:14:03 UTC
Permalink
Hi!

Not much help here ..... I "solved" the problem ...

if English query "You live to work":
OleDbConnection("Provider=MSIDXS;Locale Identifier=1033");
Result: cfile.c and textfile.txt

if Sweidish query "Man lever för att jobba":
OleDbConnection("Provider=MSIDXS;Locale Identifier=1053");
Result: cfile.c and textfile.txt


Non-US Locales Cause Index Server Queries to Not Work
http://support.microsoft.com/kb/q231930/

Indexing with Microsoft Index Server
http://msdn2.microsoft.com/en-us/library/ms951558.aspx
Were different languages used to filter the file(s) and issue the query?
Lexical analysis is a language-dependent process. When a query is issued from
one language and the document is filtered in another, query results can be
unpredictable. The locale used to filter a document is dependent on the
filter. Some file formats, such as Microsoft Word, mark documents with a
language; this mark is used during filtering. Other formats, such as plain
text, contain no language specifier. Most filters default to the system
locale for these files. The locale for the query is specified by use of the
CiLocale variable. If CiLocale is not specified, the locale of the browser is
used (if available) or the default locale of the server.

About Language Resources
http://msdn2.microsoft.com/en-us/library/ms693179.aspx


But still I'm not sure on what language query.dll thinks cfile.c and
textfile.txt is in....?
It says in the documentation; the locale for the server, but where do I
change the locale for the whole server?

/danlih
Craig Humphrey
2007-09-09 21:58:03 UTC
Permalink
Hey Danlih,

you can set the default locale, but I'm not sure how you view it (probably
have to do it programmatically or via the registry...)

Open the control pannel on the server as an Admin level user.
Open the Regional and Language Settings.
On the Advanced tab, there's a tickbox at the bottom for forcing the default
user account to use the current settings.

Hope that helps.

Later'ish
Craig

--
Craig dot Humphrey at ChapmanTripp dot com
Post by danlih
Hi!
Not much help here ..... I "solved" the problem ...
[snip snip]
Post by danlih
But still I'm not sure on what language query.dll thinks cfile.c and
textfile.txt is in....?
It says in the documentation; the locale for the server, but where do I
change the locale for the whole server?
/danlih
Loading...