Frequently Asked Questions

Feb 20, 2024 - 11:20pm

 [F] Frequently Asked Questions  / Operational Questions  / The Web Crossing Database  /

Optimizing Search in Versions 6.X+

Rate This FAQ
 (Not yet rated)

Created On: 21 May 2009 2:24 pm
Last Edited: 22 May 2009 12:45 pm

Question Printer Friendly

Search results appear inconsistently or not at all.

or

What options are there for tuning and optimizing search?

Answer

You must be logged in as sysop to set these parameters.

For best search results, the first thing to do is to turn on the two tagging options in the general control panel:

Enable the tagging engine
Enable access controls in the tagging engine

The tagging build will take a very long time on large databases, as it is a low impact on the server. Once you start the building you can enable its usage as it builds if you wish, by clicking the link that will appear saying "(Rebuilding. Mark as ready while rebuilding)". When it eventually says "Ready for use" next to "Enable tagging engine", that means it's done.

You'll also find that in the Search section of the general CP a new option that defaults to OFF: Enable searching for exact phrases (can cause slow performance, not recommended for busy sites).

It's your choice whether to turn that on or off. Exact phrase searching is CPU intensive.

The search index is also different in 6.0 versus earlier versions. If you upgraded you may need to rebuild the search index.

6.x also has a number of built in defaults to prevent server lockups due to people searching the entirety of a large database and consuming CPU.

There is now a default limit of 3 seconds to any search operation. There are two ways to override this:

1. Add a maxSecs parameter to the search form/request. maxSecs=0 means "no limit".

2. Add a file flag srchDfltMaxSecs containing an integer. If the integer is 0 search times will not be limited.

3. And finally, there also a maximum wall-clock time for checking exact phrases in a search. If this is exceeded, then any remaining possible results are ignored. This limit is set to 15 seconds by default, and can be overridden by a file-based switch. If a file named srchPhraseLimit is present and contains a single line with an integer number of seconds in it, then this value is used. Set this value to 0 for no limit.

File flags are files put into the root directory of Web Crossing where the binary lives, and are case sensitive. Be sure they are exactly as written...no file extensions.

You may need to restart the server for these to be picked up.