Known Problems


Installation

Internet Information Server V4.0 and authfilt.dll

If you installed SEARCH'97 Information Server V3.6 with Microsoft's Internet Information Server V4.0, and you then uninstall SEARCH'97 Information Server V3.6, the Verity ISAPI filter, authfilt.dll, is not removed from Internet Information Server.

To remove unwanted instances of authfilt.dll in Internet Information Server, do the following:

1. Launch the Microsoft Management Console by clicking, in order, the following (this assumes default installation locations):

Start, Programs, NT Option Pack, Internet Information Server, Internet Service Manager

2. Double-click the Internet Information Server snap-in.

3. Right click on the host name. For example, *manta.

4. In the Master Properties dialog box, click Edit.

5. In the WWW Service Master Properties for host dialog box, click the ISAPI filters tab.

6. Click Verity Authfilt, and then click Remove.

NOTE: If, after uninstalling Information Server V3.6, you reinstall it, you will have two instances of the Verity Authfilt ISAPI filter. Only remove the instance from your previous installation.

Install Paths with Spaces

Verity advises against installing Information Server V3.6 to a destination for which the path contains any spaces. Problems are intermittent and difficult to diagnose when the Information Server path contains any spaces.

Microsoft Internet Information Server

When you install Information Server V3.6 to Microsoft's Internet Information Server, you should be aware of the following:

Information Server can be installed to the default web server instance only. If you want to have Information Server working with any other instance, you must manually create the required Information Server virtual directories for the new target server instance.

The NT Challenge Response authentication scheme is not supported for the Information Server virtual directories. Information Server authentication requires that Basic web server authentication be turned on for the web server with which Information Server is working.

The Information Server virtual directories have Basic Authentication and Allow Anonymous turned on, and NT Challenge Response turned off. This is in effect regardless of your global authentication settings. Only web server access on Information Server's virtual directories is affected by these settings.

By default, the authflt.dll security filter is set globally as an ISAPI filter. To limit the scope of the authflt.dll security filter, remove the ISAPI filter from the global context and apply it directly to the desired web server instance.

Collections

Deleted Documents

If a document is deleted after it was indexed into a collection, you should re-index the documents remaining in the collection so the deleted document won't appear in results lists.

NOTE: If you use -refresh in subsequent indexing jobs, the pointers to the deleted documents are removed.

Importing Collections on Network Drives

You may encounter problems when importing collections on network-mounted drives. If you have problems, such as the collection appears to be imported, yet cannot be searched, copy the collection files to a local hard drive and then import the collection.

New Collection

If you use NSAPI or ISAPI for search, when you import or create a new collection using the Index Manager, you must restart your HTTP server before you can search it. This is because the HTTP server caches the Information Server inetsrch.ini file.

If you use CGI for search, you do not need to restart your HTTP server before searching.

If you are running the Netscape Enterprise Server 2.0 on Solaris, you must also stop and restart the back-end search server. To do this, click the Stop Search Server button in the Admin Server Control section of Server Instance Options. It will restart automatically when required.

You can also directly kill the search server vhttp process from the command-line. The admin and search servers are both vhttp processes, running on different ports. By default, the search server port number is 8990. To determine your search server's port number, open the configuration file, inetsrch.ini file, located in installdir/s97is/bin, and look for:


[S97IS\Primary\RedirDefaults]
redirPort=8990
Note that your port number may be different.

Indexing

Using the -nostorage Option

The -nostorage option is being maintained for use at the discretion of Verity Technical Support only. Unauthorized use of this option can cause indexing problems and system instability.

Indexing Oracle-generated RTF Documents

The current release of the KeyView Filter Kit is unable to index RTF documents generated by Oracle applications. The Verity indexing engine skips the documents.

Verity Development is currently investigating a patch for this problem.

Using collsvc with Non-English Locales

The collection servicer utility, collsvc, has its own message databases. To run collsvc with a non-English locale, you must do two things:

1. Copy the collsvc message database files into the new locale directory.

The message database files, cllsvc10.rsd, cllsvc10.rst, cld10.rsd, and cld10.rst, are in installdir/s97is/locale/english and must be copied into installdir/s97is/locale/language, where installdir is the full path to the directory in which you installed Information Server, and language is the locale language directory name.

NOTE: The collsvc messages will be in English, regardless of the locale.

2. Use the collsvc -locale option.

The -locale option takes as its argument the full path to the locale language directory. For example:

C:\Verity\IS\s97is\locale\german

For more information on collsvc, see the Verity Spider User's Guide.

TCP/IP Required

The machine on which Information Server is running must be configured for TCP/IP, even if you only index file-system documents.

File System Indexing and Relative Paths

When you index a filesystem, you will not be able to view documents when the relative path (from the collection's parent directory to the file that was indexed) passes through the root of the filesystem. This is not a problem with documents indexed via HTTP.

For example, from /users/user1/spiderfile to /export/home/ns-home/docs7000/html with the relative path ../../../export/home/ns-home/docs7000/html.

Log File Size

The .LOG files in installdir/s97is/locale/language/system are never deleted. You may wish to periodically shut down the SEARCH'97 Admin server and delete them manually. Note that the numbered log files, such as 2.log, correspond to indexing jobs and contain the job's error and status messages. You may want to back up these files to another location for reviewing at a later time.

To stop the admin server on UNIX, do the following:

1. On the Welcome page, click the Host Manager button.

2. Click the Primary link, and then click the Admin Server Control icon or hyperlink.

3. Click the Stop Admin Server button.

4. Delete the log files. The admin server will automatically restart when it is needed.

To stop the admin server on Windows NT, do the following:

1. Click the Start button, and then click Settings.

2. Click Control Panel and then double-click the Services applet.

3. Click on the Search97 IS Admin service, and then click Stop.

4. Delete the log files, and then repeat steps 1-3, this time clicking Start for the Search97 IS Admin service.

Temporary Files

If the GUI Spider run from Indexing Manager crashes, temporary files are left in the cache directories of collections to which the job was indexing. You may want to delete these files manually. These files are in the collname/cache directory, where collname is the same as the collname.clm file name.

GUI Spider (Indexing Manager) Crash Protection

Unlike with the command-line Verity Spider, a GUI Spider indexing task will likely crash when a corrupt document is encountered. You will have to rerun the indexing task, with possible exclusion criteria to avoid the questionable documents.

The GUI Spider creates five-collections-in-one meta collections, where each internal collection contains a single document type. The command-line Verity Spider V3.6, on the other hand, builds a single, universal collection containing all document types. This greatly increases the performance of indexing.

Pauses During Indexing

If you index a site with many links to hosts with distinct names, you may notice that the spider occasionally pauses for 30 seconds or so. This is due to DNS time-outs. On pages with many links to unresolvable hosts, the indexer can seem to stall for a long period of time. This time-out cannot be set at the user level. As a work-around, you can try running the Verity Spider with the -timeout option, using a value less than 10 seconds. Keep in mind, however, that reducing the timeout value may cause you to miss sites which just take awhile to get to.

Search and View

Viewing Results from the inetstd.hts Template

Internet-Style queries can create results URLs which are longer than 1k. Therefore, a workaround involving JavaScript has been implemented in the results template, inetstd.hts, so users can view results. For an explanation of the JavaScript workaround, see "SearchURL Can Encounter 1k Limit" below.

NOTE: Due to the fact that the result link uses JavaScript, you cannot open the link in a new window to view a document. Simply click a link to view a result document in the same browser window.

Using HLNumber in a View Template

To use HLNumber to find out how many highlights are in a document, you must first stream the document using HTMLBodyPrint or HTMLBodyPrintPre. HLNumber is a property of the document object valid only in a view template, and is not set until a document is streamed. Calling HLNumber before using either HTMLBodyPrint or HTMLBodyPrintPre will not return a value.

SearchURL Can Encounter 1k Limit

When using the GET method in forms, URLs are limited to 1 kilobyte in size. Because of the way it generates URLs, the URL_HTML variable can, under certain circumstances, create an URL longer than 1K. This can happen when your query text is longer than 80 characters, or when your search form contains more than four fields. This can create problems on results lists and document view pages. The solution is to disable SearchURL. The only practical effect this will have is to disable the Go Back to Results link on the view page, and require users to use the back button instead.

To disable SearchURL, do the following:

1. Add the entry SupportSearchURL = no to the inetsrch.ini file. Put it in the search defaults section for the SEARCH'97 Information Server instance on which you want to disable SearchURL.

For example:


[S97IS\Primary\Server\SearchDefaults]:
SupportSearchURL = no
2. Remove the blocks of SEARCHScript code that refer to SearchURL and the Go Back to Results link from your view templates.

With this fix, you can get approximately 300 characters in a search. If you need longer queries, you can use JavaScript to create a function which stores the long query.

Following is an example template with the necessary JavaScript:


<html><head><title>SEARCH'97 Information Server - Default Template</title></head>
<body bgcolor="#ffffff" text="#000000" link="#0000ee" vlink="551a8b" alink="ff0000">
<img src="/search97img/rbanner.gif"><br>
<% if Count( result.documents ) > 0 %>
Your search matched <b>$$DocsFound</b> of <b>$$DocsSearched</b> documents.<br>
<b>$$DocsCount</b> are presented, ranked by relevance.</br>
<% if Count( result.pageurls ) > 1 %>
<% for i = 1 to Count( result.pageurls ) %>
<% if i != pagenumber %>
<script language="javascript">
function PageURL<% i %>()
{ document.fPageURL<% i %>.submit() }
</script>
<form method="POST" action="$$web.scriptname"
name="fPageURL<% i %>">
<% result.GetPageUrlKeys(i) %>
</form>
<% endif %>
<% endfor %>
<hr><center><% if pageNumber > 1 then %>
<A HREF="javascript:PageURL<% pageNumber - 1 %>()">[Prev]</A>
<% endif %>
<% for i = 1 to Count( result.pageurls ) %>
<% if i != pagenumber %>
<A HREF="javascript:PageURL<% i %>()">$$i</A>
<% else %>
$$i
<% endif %>
<% endfor %>
<% if pageNumber < Count( result.pageUrls ) then %>
<A HREF="javascript:PageURL<% pagenumber + 1 %>()">[Next]</A>
<% endif %></center>
<% endif %><hr>
<table>
<tr><th>Rank</th><th>Score</th>
<th align=left>Title/Information</th></tr>
<% j = 1 %>
<% foreach doc in result.documents %>
<tr><td valign=top align=center>$$doc.Rank</td>
<td valign=top align=center>$$doc.Score</td>
<td><% if !IsEmpty(doc.GetUrlKeys()) then %>
<script language="javascript">
function DocURL<% j %>()
{ document.fDocURL<% j %>.submit() }
</script>
<form method="POST" action="$$web.scriptname" name="fDocURL<% j%>">
<% doc.GetUrlKeys() %>
</form>
<A HREF="javascript:DocURL<% j%>()">
<strong>$$doc.Title</strong></A>
<% else %>
<A HREF="$$doc.URL_HTML"><strong>$$doc.Title</strong></A>
<% endif %>
<i><font size=-1><% Left(doc.snippet,240) %>...</font></i>
</td></tr>
<% j = j + 1 %>
<% endfor %>
</table>
<% if Count( result.PageURLS ) > 1 then %>
<hr><center><% if pageNumber > 1 then %>
<A HREF="javascript:PageURL<% pageNumber - 1 %>()">[Prev]</A>
<% endif %>
<% for i = 1 to Count( result.pageurls ) %>
<% if i != pagenumber %>
<A HREF="javascript:PageURL<% i %>()">$$i</A>
<% else %>
$$i
<% endif %>
<% endfor %>
<% if pageNumber < Count( result.pageUrls ) then %>
<A HREF="javascript:PageURL<% pagenumber + 1 %>()">[Next]</A>
<% endif %></center>
<% endif %><hr>
<% else %>
<center><b>No documents matched your query.</b></center>
<% endif %></body></html>

Other

Header and Cookie-related Methods and Content Under UNIX

The SetCookie, AddHeader, and SetContentType Web object methods in SEARCHScript only work if they are processed before any content is sent to the browser. If there are carriage-return, linefeed ("CR-LF") pairs in the SEARCHScript where these methods are used, the linefeed may not be processed properly in UNIX and will therefore be sent as content to the browser. These methods will then not work.

To avoid this, make sure there are no CR-LF pairs in the lines which preceed the header and cookie-related methods. Also, if you edit SEARCHScript under Windows NT, make sure you are using a text editor that understands the UNIX convention (LF) for end-of-line.

SEARCHScript Support for Xdate

There is currently no support for the Xdate operator in the following SEARCHScript functions:

Documentation

Incorrect Directory Name

On page 3-11 of the SEARCH'97 Information Server User's Guide V3.6, the following section contains an incorrect directory name, highlighted here in bold.

"%changepw ../../user_db/verity.pwf admin set <newpassword>

where ../../user_db/verity.pwf is the path and filename of the password file, and newpassord is the new password which will go into effect for the next browser session you start."

The correct name for the directory is userdb.

Incomplete Information Regarding Date Formats

On page C-5 of the SEARCH'97 Information Server User's Guide V3.6, the Numeric-only Date Formats section is misleading.

The MM YY format is invalid and should not be used.

The MDY, DMY, YMD and YDM formats are not in and of themselves date formats expected by Information Server. Rather, they are used to specify parsing rules for numeric-only dates.

The default value for English is MDY and is set in the ImpDateFmt field under the [Common] section of the configuration file, inetsrch.ini.


[Common]
ImpDatefmt=MDY
For more information on how to use the MDY, DMY, YMD and YDM formats (parsing rules), see the datefmt option in Appendix A of the Verity Collection Building Guide V2.4.





Copyright © 1998, Verity, Inc. All rights reserved.