How can I validate the integrity of the dtSearch indexes?
The utility ValidateDtSearchIndexes.exe (attached below) has 3 functions. Below is a description of each function and how they can be used.
Unzip the attached file somewhere on the same network as the index files. It will run faster if it’s on the same machine as the index files.
It requires the newer version of the Microsoft Visual C++ 2005 Redistributable Package that can be downloaded here.
Note: If this error below appears when running the application, please install the newer version of the Microsoft Visual C++ 2005 Redistributable Package (found above).
"Could not load file or assembly 'dtSearchNetApi2..."
Right click “ValidateDtSearchIndexes.exe” to run the program.
When the program starts up, enter a path for the field “Top Path.” It will find all dts_idx directories under that path and then run the selected option against all indexes in the dts_idx folder(s).
Select one of the options and click Start.
Function #1: “Information Only”
This gives you some basic information about each index. It will show the document count, index size, fragmentation, and obsolete record count for each index. In general, search and index performance will suffer when the fragmentation and/or obsolete count are high.
Note: This won’t verify an index, but if an index has a size of 0 MB, then it’s likely to be corrupted.
Function #2: “Validate Indexes”
This will verify that the indexes are valid. The corrupt index will generate one or more error messages in red. The error below shows the typical error that you’ll see if the index is corrupted, where there are only two files in the index directory.
Note: This may take a really long time to run for large indexes.
Function #3: “Compress Indexes”
This compresses the index for maximum performance. Indexes often have lots of deleted records (ObsoleteCount) which takes up space and impacts performance. Compressing the index removes the deleted records from the index and performs other housekeeping chores to improve performance.
Note: This will take a really long time to run for large indexes, especially for indexes on network drives that have a lot of fragmentation or obsolete records.
This tool can be useful in determining and maintaining the health of the dtSearch indexes.