Tech News

Library-scoped MTop Search

Home

The current Quick Search and Document Search are based on MTop Search Composer. Our standard implementation of the MTop-based search has changed recently to one which uses separate sets of files per library. The original implementations used a common index and set of indexing files, used by all library sites, with the search facility filtering results to the appropriate library site. We found that this configuration was limited in the number of libraries it could manage; hence the change to handle libraries separately.

Library-scoped MTop search will be the implementation for new installations, but existing, older installations, when upgraded, will retain the original configuration, as configuration files are deliberately not replaced on upgrade. Migrating from a global- to a library-scoped system isn't difficult, and an understanding of the structures and mechanism may help in this, and in identifying issues, should there be any.

Global-scoped search configuration

Folders and Files

Triaster\TriasterServer2011\
MTopSearch\
DocumentResults\
<Common document index files>
MapResults\
<Common map index files>
Docs.ini
Maps.ini
MTop Re-index.cmd

Configuration in Settings.xml


<Settings>
<ServerGeneral>
<LibraryLevelMTopINIFile>false</LibraryLevelMTopINIFile>
</ServerGeneral>
<PublicationSettings>
<Library Name="triaster sample library">
<Site Name="Live|Prelive|Sandpit">
<PostPublish>
<task1 Filename="C:\Triaster\TriasterServer2011\MTopSearch\MTop Re-index.cmd">
</task1>
</PostPublish>
<ResultsURL>../../MTopSearch/DocumentResults/searchresult.asp</ResultsURL>

Library-scoped search configuration

More recent implementations scope the search components to a library.

Folders and Files

Triaster\TriasterServer2011\
MTopSearch\
Triaster Sample Library\
DocumentResults\
<document index files>
MapResults\
<map index files>
Docs.ini
Maps.ini
MTop Re-index.cmd

Configuration in Settings.xml


<Settings>
<ServerGeneral>
<LibraryLevelMTopINIFile>true</LibraryLevelMTopINIFile>
</ServerGeneral>
<PublicationSettings>
<Library Name="process library">
<Site Name="Live|Prelive|Sandpit">
<PostPublish>
<task1 Filename="C:\Triaster\TriasterServer2011\MTopSearch\Process Library\MTop Re-index.cmd">
</task1>
</PostPublish>
<ResultsURL>../../MTopSearch/Process Library/DocumentResults/searchresult.asp
</ResultsURL>

There are two primary parts to the search mechanism:

  • Creating an index
  • Linking a library site's search facility to the appropriate index

Creating an Index

Maps and documents are indexed by a post-publish task that's defined in Settings.xml. The 'MTop Reindex.cmd' script launches sessions of MTop Search Engine Composer configured by the appropriate INI file (docs.ini or maps.ini). Amongst other things, these INI files define:

  • The folders to index
  • The output folder to which to write the index files
  • The base URLs from which to build hyperlinks to indexed items

For the global- and library-scoped search systems, some configurations will be different (for example, the output folder), so the INI files aren't interchangeable. Early versions of the 'MTop Re-index.cmd' scripts may have explicit references to the full paths of the INI files, so aren't interchangeable without modification. However, later versions should be: a common copy could be found in each of the library sub-folders of 'MTopSearch'.

Linking Search to the correct index

The maps search results page will be in either:

Triaster\TriasterServer\2011\MTopSearch\MapResults

or

Triaster\TriasterServer\2011\MTopSearch\<Library>\MapResults

depending on the <LibraryLevelMTopINIFile> setting in Settings.xml.

The documents search results page is set for each site as <ResultsURL>. This is set explicitly because it could be configured to target a webpage associated with a system other than MTop, for example, a SharePoint page.

Of course, if Search is to report results from an index generated by MTop, then the results page setting must match the output location of the indexing process. A mismatch may result in a '404 - File or directory not found' error or a set of results that doesn't reflect the current contents of the library.

More information

This article is reproduced in a little more detail in our Knowledge Base.

http://knowledgebase.triaster.co.uk/help-for-it-administrators/installation/configuring-scope-mtop-search

Register to receive product release notifications

SIGN UP FOR CONNECTOR

Sign up for Connector
Industry best practice and knowledge in our ‘best of breed’ newsletter.
Published quarterly.

Signup here