Index Server G8 User manual (Version 3.0.0)  
 

3 The index server program

The index server program (“indexsrv”) indexes file content and metadata. It is started by the HELIOS Service Controller (“srvsrv”; see HELIOS Base manual) or, for administrative purposes, it can be called manually as a program, e.g. to recreate or update the index database (re-indexing).

Usage:

indexsrv -r <dir> [options]     (re-index a directory)
indexsrv -c <file>              (re-index a single file)
indexsrv -O <volume> [options]  (optimizes index database)
indexsrv -b <volume> <cmd ...>  (locks volume for backup)
indexsrv -h                     (help info)

3.1 Options

Note:

The directory <dir> or file <file> must be part of a HELIOS volume for which indexing is activated.

-r <dir>

Update index database for all files in the specified directory and its subdirectories. Without specifying the -f option, files are only re-indexed if they have been modified since the last indexing process (compare -s option).

-c <file>

Update index data base for a file <file>. The file is re-indexed irrespective of the modification date.

-O <volume>

Optimizes the internal data structures of the index database for <volume>. This needs to be done from time to time or the database may grow unlimited. <volume> may be * to optimize all indexed volumes. Depending on the shell, you probably need to enclose it in ticks ('*') to protect it from shell expansion.

-b <volume> <command [args ...]>

Stops updates to the index database for <volume> and executes a command or script. When the script exits, normal index database operation is resumed. This mode is useful to backup index databases.

Similiar to the UNIX “xargs” program, a {} pattern in the arguments is replaced with the path of the index database file.

The following options can be used in combination with the -r option:
-f

Delete all existing index data before re-indexing. Forces a complete rebuild of the index database.

This is mandatory after issuing the rebuild -f command because the file IDs may have changed.

-s <suffixes>

List of comma-separated suffixes. Re-index all files with these suffixes, irrespective of the modification date. This option is useful if the indexing plug-in for a content type has been updated.

-p <number>

Sets the maximum number of simultaneous re-indexing processes. This option overrides the MaxProc preference.

-n

Non-interactive mode. Errors create syslogs and the exit code is not 0.

-v

List the directories that are currently being parsed.

-V

List the files and directories that are currently being indexed.

-R

Set the indexing plug-in run time-out (in seconds). This option overrides the RunTime preference.

-T

Set the indexing plug-in term time (in seconds). This option overrides the TermTime preference.

Example 1
 (Re-index a volume):
# /usr/local/helios/sbin/indexsrv -r /demovol
Example 2
 (Rebuild the index):

This is mandatory after issuing the rebuild -f command because the file IDs may have changed.

# /usr/local/helios/sbin/indexsrv -f -r /demovol
Example 3
 (Index new files):

Restrict CPU load by allowing only two simultaneously running indexing processes.

# /usr/local/helios/sbin/indexsrv -p 2 -r /demovol
Example 4
 (Update the index for all JPEG images):
# /usr/local/helios/sbin/indexsrv -v -s jpg -r /demovol
Example 5
 (Back up the index server database):

Back up index server database without stopping the server. The integrity of the index server database is preserved.

# indexsrv -b /demovol cp {} /Backups/DB/Index_DB

3.2 Indexing modules

Different file types need different handling for meaningful database index data.

So they are processed by specific HELIOS indexing modules: “oiindexer”, “txtindexer”, “annotationindexer”, “pdfindexer”, “officeindexer”, “mediaindexer”, “zipindexer”, and “indesignindexer”. Some attributes (file name, modification date and finder comment) are indexed for all files and folders.

Third-parties can create custom modules using the HELIOS SDK. For details see www.helios.de/web/EN/support/sdk.html

3.2.1 oiindexer

The “oiindexer” module (“HELIOSDIR/lib/oiindexer.so”) is used for all image files that are supported by HELIOS. It parses the EXIF, IPTC and XMP metadata in image files and sets the corresponding attributes in the database.

3.2.2 txtindexer

The “txtindexer” module (“HELIOSDIR/lib/txtindexer.so”) stores a full-text index of text documents in the database. By default, “txtindexer” is used for “.txt”, “.c” and “.h” files. This can be controlled with the Suffixes preference. “txtindexer” can be configured to omit a list of “skip words” from the index, see the FilterDB preference.

3.2.3 annotationindexer

The “annotationindexer” module (“HELIOSDIR/lib/annotationindexer.so”) is used for parsing files with an “.annotation” suffix. These files are created by the HELIOS WebShare annotation feature. It evaluates author, project title, file status and due date information.

3.2.4 pdfindexer

The “pdfindexer”1 module (“HELIOSDIR/lib/pdfindexer.so”) stores a full-text and form field index of PDF documents in the database.

Note:

If PDF HandShake is installed during full-text indexing, indexing quality and speed are improved.

3.2.5 officeindexer

The “officeindexer”1 module (“HELIOSDIR/lib/officeindexer.so”) is used to generate a full-text index of Office and OpenOffice documents. It also imports a limited number of document metadata. It is also used for a number of other documents that are not natively supported at this time.

3.2.6 mediaindexer

The “mediaindexer” module (“HELIOSDIR/lib/mediaindexer.so”) is used to parse “mp3”, “wma”, “wmv”, “m4p”, “m4a”, “aax”, and “mov” metadata in media files and sets the corresponding attributes in the database.

3.2.7 indesignindexer

The “indesignindexer” module (“HELIOSDIR/lib/indesignindexer.so”) is used to generate an index of XMP metadata in InDesign documents.

3.2.8 zipindexer

The “zipindexer” module (“HELIOSDIR/lib/zipindexer.so”) collects all names of the files contained in the Zip archive in the full-text database.

3.3 Index Server suffix map

The file “HELIOSDIR/​var/​conf/​indexsuffixmap” can be used to assign a content type and an item kind for files for which no suitable indexing module is available. Each line of this text file has the structure

suffix, kMDItemContentType, kMDItemKind

and comment lines (starting with #) are ignored.

Example:
# Index Server suffix map
html, public.html, HTML document
ps, com.adobe.postscript, PostScript


HELIOS Website © 2020 HELIOS Software GmbH  
HELIOS Manuals September 10, 2020