Following is some general information about the Indexing Mechanism of QPS :
- There is a single queue for preview/thumbnail generation for all types of assets.
- The queue is serviced by multiple Indexing Threads (from a thread pool) the number of which is configurable in conf\Indexing.properties file or at runtime via JConsole. This allows some degree of parallel processing of assets pending in the queue. By default 2 threads are present in the pool for handling indexing requests.
- A new indexing request (created during a new check-in, revision created, Geometry change, or Index Again operation) adds the asset at the end of queue. So if large numbers of assets are already pending, a new request for article/project would be processed only after all previous assets have been indexed.
- As part of processing the requests, the indexing thread selects the correct filter to be used based on file type of asset. For images, the ImageMagick-based filter is used. QuarkXPress projects and QuarkCopyDesk articles are processed using a QuarkXPress Server based filter. The JAWS filter is used for PDF, EPS and AI files.
- If you are indexing a particular asset, it may take more time than the maximum value specified for its filter. If this occurs, its indexing is aborted and its Indexing Status attribute is set to FAILED.
- JConsole may be used to monitor and configure indexing queue. The count of threads used for indexing, the number of assets pending in queue, and the maximum timeout value for each filter are all displayed in JConsole and can be configured via JConsole at runtime. Changes made via JConsole are valid only until the server process is running. Permanent configuration can be made by setting the corresponding values in Indexing.properties file. Filter timeout values are specified in the .properties file of corresponding filter, for example. IMFilterServiceConfig.properties, QxpsFilterServiceConfig.properties, JawsFilterServiceConfig.properties, or POIFilterServiceConfig.properties.