Thursday, April 19, 2007

Status Report for Date 04/06/2007 to Date 04/19/2007

I installed the search components at server.
To support functionality of search, a http server is needed. So I installed apache in gridfarm001 and it listens at port 1983.
Program ftpsearch.exe is a CGI program that is used to handle the search request from clients. I configured the cgi-bin directory used by apache and put ftpsearch.exe into that directory.
Configuration file for ftpsearch.exe: bingle.conf. The format of this file is described on http://zhenhua-guo.blogspot.com/2006/11/search-engine-in-maze.html

One xml file needed by ftpsearch.exe: xmlresult.xml.
<?xml version="1.0" encoding="GB2312"?>
<TianwangSearch>
<Word></Word>
<ElapseTime></ElapseTime><
ResultNum></ResultNum><
FirstResultID></FirstResultID>
<LastResultID></LastResultID>
<SortType></SortType>
<ResultList></ResultList>
<Copyright></Copyright>
</TianwangSearch>
Then Inexer was run manually to build index for collection of directory information of clients.
IndexSvr provides search functionality in fact and it is used by ftpsearch.exe to get result.
Detailed description:
http://zhenhua-guo.blogspot.com/2006/11/memorandum-for-maze.html
Note: after running Indexer, three new files tmpcontent.dat, tmpdisplay.dat, tmpindex.dat are generated at the basepathn directory. And these files need to be renamed to content.dat display.dat and index.dat respectively.

So far, I successfully installed all server components in Gridfarm001.

Maze client program:
I checked every source file and resource file to see whether there are Chinese characters in these files. I translated all Chinese characters into English. However, it is not so simple.
For example, to translate a Chinese word "目录" which means directory into English, I can use "Directory", "directory", "dir", "Dir", etc. In English there is lower case and upper case, which is different from Chinese. I must be careful, or else it may incur strange behaviors of Maze client.

For example:
Original Program:
string str="收集目录";
string str2=str;
//losts of source code here
if( str2=="收集目录" )
do something; //this expression should be executed at run time

Wrong translation:
string str="Collect Directory";
string str2=str;
//lots of source code here
if( str2=="collect directory" )
do something;

These kind of associations are hard to discover because it is possible that two expressions are interralted through several intermediate expressions.
To avoid possible errors, I keep the translation consistent, including upper/lower case. Although I am very careful during translation, it is still possible that some indetectable flaws appear.

So, in next step, test for Maze Client is necessary to guarantee the correctness.

1 comment:

Geoffrey Fox said...

Good report. Thank you