cpsearch.pl

cpsearch.pl automates the steps to set up, configure, and administer HCL Compass Search.

Synopsis

cqperl cpsearch.pl command-name [options]

Description

The cpsearch.pl script is a tool to allow Compass administrators to set up, configure, and administer HCL Compass search. All command-line options work in the same way on Windows and Linux except for paths.

Important:

The arguments to the dbset, userdb, searchhome, and solrhome are case sensitive. You must maintain the same case throughout the use of the cpsearch.pl script.

Important:

For each Compass user DB, you must deploy a separate search instance. It is recommended that you use the same searchhome and solrhome values this way, so all of your Search deployments are under a known directory.

Note:

All commands require that you pass them dbset, userdb, searchhome argument. Commands that require username and password are commands that will alter data on the Compass database, such as the master properties table, or a Search configuration file local to searchhome argument.

The searchhome and solrhome option

When you deploy Compass Search or refer to a deployment, the required command-line arguments dbset, userdb, and searchhome define where your deployment data will be located and know how to find and reference an existing depolyment. The following example shows how to create a new Compass Search deployment on the D drive in the CPSearch directory. Next, the subdirectory name is generated based on your Compass database set name and your Compass logical user database name. The subdirectory contains Search data for this deployment.

cqperl cpsearch.pl initSearch -username admin -password “” -dbset TestSearch -userdb SAMPL -searchhome D:\CPHome\Search -solrhome D:\CPHome\Solr -solrport 8984

The above command will create the directory D:\CPHome\Search\TextSearch_SAMPL and D:\CPHome\Solr\TextSearch_SAMPL. The “Search\TextSearch_SAMPL” directory will store all the Compass Search configuration data for this deployment. The “Solr\TextSearch_SAMPL” directory will store all the Apache Solr configuration data and index for this deployment.

All subsequent commands that you issue that uses the same value for the searchhome, dbset, and userdb arguments are applied to this deployment and change files in the directory of this deployment only.

To deploy Compass Search for a second Compass user database, specify the required command-line options that pertain to that second Compass user database. Additional Compass user databases will deploy Search configurations that are based on the specified searchhome arguments and the generated subdirectory structure.

Example:

cqperl cpsearch.pl initSearch -username admin -password “” -dbset TestSearch -userdb PROD -searchhome D:\CPHome\Search -solrhome D:\CPHome\Solr -solrport 8984

The above will create a second Compass Search deployment under D:\CPHome\Search\TextSearch_PROD and D:\CPHome\Solr\TextSearch_PROD.

It is recommended that you use this consistent pattern value for searchhome and solrhome arguments for all of your Compass Search deployment. Doing so will allow you to keep the data for all of your deployments on a commonplace.

Commands and arguments

The cpsearch.pl script has required command-line arguments and optional command-line arguments. You must provide the required command-line options every time you run the cpsearch.pl script. If any of the parameters to the required arguments are incorrect, the tool fails with an error message. For commands that change Compass database or Search configuration, it will first authenticate the user against the Compass database before it acts.

Available commands

archiveSearch
Syntax
cqperl cpsearch.pl clearState -dbset <dbset> -userdb <userdb> -searchhome <path>
Summary

Archives a Compass Search deployment. It disables the active Search deployment for the given Compass logical user database name, but preserves all configuration data and the index. You can use this option to start over with a new configuration and refer to your old configuration.

Usage

Use this command-line option to start a new deployment or if you no longer require the Search feature of a deployment. This command-line option stops Search services and archives all relevant resources such as services and files. You can refer to the deployment after you archive it.

Before using this command, you must make sure Search is stopped.

stopped here
Effect

This command-line option disables Search. The deployment data under searchHome and solrHome remains intact, but is renamed to dbset_userdb.Archived-time-stamp.

Stateful status

This option is not stateful. If the command fails during one of its execution points, you might have to complete the archiving manually. A progress report and an error message instruct you how to recover from the error.

Example

Shows how to archive a deployment:

cqperl cpsearch.pl archiveSearch -dbset TextSearch -userdb SAMPL -searchhome D:\CPHome\Search

After you run this command, the archived Search deployment is called D:\CPSearch\Search\TextSearch_SAMPL.Archived-time-stamp.

clearState
Syntax
cqperl cpsearch.pl clearState -dbset <dbset> -userdb <userdb> -searchhome <path>
Summary

Resets the state in the cpsearch.pl tool procedure so that there is no state. In effect, whatever state the tool was in which might have been an incomplete state, is cleared.

Usage

Use this command-line option to remove the state of a command so that you can issue other commands or reissue the stateful command. The time to clear the state depends on which stateful command you plan to clear, the state that the stateful command was last in, and the error message and the provided corrective instructions.

Effect

The effect of running this command-line option depends on which stateful command was stopped and how much of the command was completed before stopping. The log and error message indicate if you can reset the state.

Stateful status

This command is not stateful. This command should never fail unless there is an I/O error.

Example

You must clear the state of a stateful action so that you can recover from an unrecoverable error, according to the error message instructions.

cqperl cqtsadmin.pl --username admin --password "" --dbset TextSearch --userdb SAMPL --ftshome D:\CQ.Search --archive_fts

copySolrSchema
Syntax
cqperl cpsearch.pl copySolrSchema -dbset <dbset> -userdb <userdb> -solrhome <path> [-overwrite <yes | no>]
Summary

Copies the raw Apache Solr schema to the solrHome destination. The schema will be customized based on your Compass schema and Search settings.

Usage

Use this command-line option to get a copy of the raw Apache Solr schema for your Compass Search deployment. The basic schema will then be customized based on your Compass logical user database schema and Compass Search settings.

Attention:
This command is performed as part of initSearch command, and you should not need to run it unless instructed by HCL Software Support.
Effect

A raw copy of Apache Solr schema will be part of your Compass Search deployment. If one already exists, the command will fail. To overwrite it, use the argument -overwrite yes.

Stateful status

This command is not stateful. This command should never fail unless there is an I/O error.

Example

HCL Software Support asks you debug a Search deployment issue or to customize a deployment.

cqperl cpsearch.pl copySolrSchema -dbset TextSearch -userdb SAMPL -solrhome D:\CPHome\Search

copySolrServer
Syntax
cqperl cpsearch.pl copySolrServer -dbset <dbset> -userdb <userdb> -solrhome <path> [-overwrite <yes | no>]
Summary

Copies the Apache Solr server to the solrHome destination. The Solr server will index and provide search services to Compass Search.

Usage

Use this command-line option to get a copy of Apache Solr server for your Compass Search deployment. Each Search deployment has its own Solr server.

Attention:
This command is performed as part of initSearch command, and you should not need to run it unless instructed by HCL Software Support.
Effect

A copy of Apache Solr server will be part of your Compass Search deployment. If one already exists, the command will fail. To overwrite it, use the argument -overwrite yes.

Stateful status

This command is not stateful. This command should never fail unless there is an I/O error.

Example

HCL Software Support asks you debug a Search deployment issue or to customize a deployment.

cqperl cpsearch.pl copySolrServer -dbset TextSearch -userdb SAMPL -searchhome D:\CPHome\Search

createEntityFile
Syntax
cqperl cpsearch.pl createEntityFile -username <user> -password <password> -dbset <dbset> -userdb <userdb> -searchhome <path> [-overwrite <yes | no>]
Summary

This command-line option generates the entity file, which contains all record types that can be submitted to the Compass database. By default, the entity file contains all record types and fields of your Compass schema, and they are candidates for Search. You can customize the file to select only the record types and associated fields that you plan to index and search. In addition, for each record type, you will select which field will be the display field by placing a & in front of the field name.

Usage

Use this command-line option to create the entity file that will be used to customize your Search deployment. Each Search deployment has its own entity file.

Attention:
This command is performed as part of initSearch command and you should not need to run it unless instructed by HCL Software Support.
Effect

A copy of Apache Solr server will be part of your Compass Search deployment. If one already exists, the command will fail. To overwrite it, use the argument -overwrite yes.

Stateful status
This option is not stateful. This command should never fail unless there is an I/O error.
Example

HCL Software Support asks you debug a Search deployment issue or to customize a deployment.

cqperl cpsearch.pl createEntityFile -username admin -password "" -dbset TextSearch -userdb SAMPL -searchhome D:\CPHome\Search

createSearchFile
Syntax
cqperl cpsearch.pl createSearchFile -username <user> -password <password> -dbset <dbset> -userdb <userdb> -searchhome <path> [-overwrite <yes | no>]
Summary

This command-line option generates Compass Search properties XML file based on your user database and entity file. This file holds information about your deployment settings, such as how often to index, the batch size, and search server information.

Usage

Use this command-line option to create the Search properties XML file that will be used to customize your Search deployment. Each Search deployment has its own Search properties XML file.

Attention:
This command is performed as part of deploySearch command and you should not need to run it unless instructed by HCL Software Support.
Effect

A Search properties XML file will be created for your Compass Search deployment. If one already exists, the command will fail. To overwrite it, use the argument -overwrite yes.

Stateful status
This option is not stateful. This command should never fail unless there is an I/O error.
Example

HCL Software Support asks you debug a Search deployment issue or to customize a deployment.

cqperl cpsearch.pl createEntityFile -username admin -password "" -dbset TextSearch -userdb SAMPL -searchhome D:\CPHome\Search

createWindowsService
Syntax
cqperl cpsearch.pl createWindowsService -dbset <dbset> -userdb <userdb> -searchhome <path>
Summary

This command-line option creates the Windows service to be used by Compass Search. The Windows Service will let you start / stop and automatically start Compass Search when Windows starts. This command is for Windows OS only.

.
Usage

Use this command-line option to create the Windows Search Service. Each Search deployment has its own Windows Search Service.

Attention:
This command is performed as part of deploySearch command and you should not need to run it unless instructed by HCL Software Support.
Effect

A Windows Search Service will be created for your Compass Search deployment. If one already exists, the command will fail.

Stateful status
This option is not stateful. This command should never fail unless there is an I/O error.
Example

HCL Software Support asks you debug a Search deployment issue or to customize a deployment.

cqperl cqtsadmin.pl --username admin --password "" --dbset TextSearch --userdb SAMPL --ftshome D:\CQ.Search --cust_fts_files

deploySearch
Syntax
cqperl cpsearch.pl deploySearch -username <user> -password <password> -dbset <dbset> -userdb <userdb> -searchhome <path> [-overwrite <yes | no>]
Summary
This command-line option is used to complete a Search deployment. The command will first create and customize the Search configuration XML file based on your entity file setting. It then will enable Compass Search and start batch indexing the Compass records that you enabled for search. Finally, it will begin to create the incremental indexer to complete your Compass Search deployment.

This command maintains its state. If an error occurs before it completes, the state is set, and you must correct the error before you can continue. The error message and the logs contain instructions on how to recover from the error. The recovery steps depend on the error and the state in which the error occurred.

Usage
Use this command to complete your Search deployment. Typically, you run this command after you customize the entity file. While this command runs, Search is enabled and is ready to use from Compass user interface (UI). Users who log in again can search. The search results are not complete until the deployment is complete.

During batch indexing, the computer you are deploying Compass Search undergoes high utilization because batch mode indexing relies heavily on the processor, I/O and memory. This is also the case for your database server.

Effect

Several files are created in your searchHome directory. The index is created. Search services are started, and your database is updated to include the Search properties XML file. If your database is not replicated, creating oplogs is enabled. Replicated user databases continue to create oplogs.

Stateful status
The command is stateful. If the command fails during one of its execution points, you should correct the issue and rerun the command. The command continues from where it left off. If a failure occurs, an error message tells you what to do. If an error occurs before the command completes, the state is set, and you must correct the error before you can continue. The error message and the logs contain instructions on how to recover from the error. The recovery steps depend on the error and the state in which the error occurred.
Example
You have run the initSearch command-line option and customized your entity file. You now have to complete the deployment.

cqperl cpsearch.pl deploySearch -username admin -password "" -dbset TextSearch -userdb SAMPL -searchhome D:\CPHome\Search

disableSearch
Syntax
cqperl cpsearch.pl disableSearch -username <user> -password <password> -dbset <dbset> -userdb <userdb> -searchhome <path>
Summary

This command-line option disables Compass Search and stops recording operation logs (oplogs) in a non-replicated Compass user database. This command-line option has no stopping oplogs creation in replicated environments.

Attention: Use this command-line option with caution. If you disable Compass Search in a non-replicated Compass user database, records that get changed or new ones that get created will not be indexed even if you enable Compass Search later on. You will have to perform a reindexing of the entire user database. Either block users from accessing Compass or permit only read-only operations until the Search capability is reenabled.
Usage

Use this command-line option to disable Compass Search.

Attention:

This command is executed as part of deploySearch command, and you should not need run it unless if instructed by HCL Software Support.

Effect
Oplog generation stops if your database is not replicated and Search is disabled.
Stateful status
This option is not stateful. This command should never fail unless there is an I/O error.
Example

HCL Software Support asks you debug a Search deployment issue or to customize a deployment.

cqperl cpsearch.pl disableSearch -username TextSearch -password "" -dbset TextSearch -userdb SAMPL -searchhome D:\CPHome\Search

enableSearch
Syntax
cqperl cpsearch.pl enableSearch -username <user> -password <password> -dbset <dbset> -userdb <userdb> -searchhome <path>
Summary

Enables Compass Search. Oplog generation is also enabled if your Compass database is not replicated and is at feature level 7. If your Compass user database is replicated, no change is made to oplog generation.

Usage

Use this command-line option to enable Compass Search.

Attention:

This command is performed as part of deploySearch command and you should not need to run it unless instructed by HCL Software Support.

Effect

Oplog generation stops if your database is not replicated and Search is disabled.

Stateful status

This option is not stateful. This command should never fail unless there is an I/O error.

Example

HCL Software Support asks you debug a Search deployment issue or to customize a deployment.

cqperl cpsearch.pl enableSearch -username TextSearch -password "" -dbset TextSearch -userdb SAMPL -searchhome D:\CPHome\Search

gatherDiagData
Syntax
cqperl cpsearch.pl gatherDiagData -username <user> -password <password> -dbset <dbset> -userdb <userdb> -searchhome <path>
Summary

Collects data that helps HCL Compass Support diagnose potential Compass Search issues. If you require support, run this diagnostic command-line option and send the data it collects to support to expedite assistance. Before you send the data, verify that it contains no confidential information. Typically, the most sensitive data are the record type names you enabled for searching and a history of search terms that your organization submitted. Passwords are converted to asterisks when output is sent to the screen or log files. They are never stored in plain text.

Usage

Use this command to gather and send diagnostic data to HCL Compass Support to help you diagnose issues with Compass Search.

Effect

None of your data or configuration settings is changed. A new directory is created with the name of your deployment and a time stamp. The cumulative size of the diagnostic data varies depending on the total sizes of logs in your deployment, which is usually in megabytes. The actual index is not part of the diagnostic data.

Stateful status
This option is not stateful. This command should never fail unless there is an I/O error.
Example

HCL Compass Support instructs you to send diagnostic data to help you resolve issues with Compass Search. The following command creates the diagnostic data and places it in a D:\CPHome\Search\TextSearch_SAMPL.Diag-time-stamp file.

cqperl cpsearch.pl gatherDiagData -username admin -password "" -dbset TextSearch -userdb SAMPL -searchhome D:\CPHome\Search

initSearch
Syntax
cqperl cpsearch.pl initSearch -username <user> -password <password> -dbset <dbset> -userdb <userdb> -searchhome <path> -solrhome <home> -solrport <port> [-typeahead <file>] [-solrArgs "args"]
Summary

Copies the Compass Search default template and then generates the default entity file. In effect, it runs both the createEntityFile, copySolrServer and copySolrSchema commands. This command is one of the first commands that you run when you deploy Compass Search. It creates a <dbset>_<userdb> directory in your searchHome directory. All default data and settings that are related to this deployment are placed in this directory. One of the key files that this option creates is the Entity-<dbset>-<userdb>.txt entity file. It is placed in your searchHome directory. When you customize your deployment, you decide whether to leave it as is or to remove record types and fields that you do not want to be searched. However, at a minimum, you will need to select which field for each record type Search will use as your display field by placing a “&” in front of the field name. Another file that is created is the compass_search_<dbset>-<userdb>.properties file.

The command will also create a <dbset>_<userdb> directory in your solrHome directory and copy into it the raw Apache Solr schema as well as the Apache Solr server binaries.

When you need to enable Search on more than one Compass user database, each Search deployment will need to use its own Solr port number. Use the next available port such as 8984, 8985, 8986, etc.

If you are also enabling the typeahead capability of Compass Search, please see the section “Configuring and customizing the type-ahead feature”.

The command line argument -solrArgs is optional. It allows you to add arguments that cpsearch.pl will pass down to Apache Solr. An example of this is when you deploy Compass Search on Linux using the root account, Solr will not start. To instruct Solr to start as root, pass it “-force” like so: -solrArgs “-force”. Take notice of how you need to quote the argument you are passing to Solr.

Usage

Use this command to preconfigure your Compass Search deployment. It creates your searchHome directory, copies the default files to it, and sets default values. Before you complete your deployment, you typically customize the entity file.

Effect

This command creates a new searchHome and solrHome directory if it does not exist and copies the default data and settings for your deployment into it.

Stateful status
This option is not stateful. This command should never fail unless there is an I/O error.
Example

You want to start a new Compass Search deployment for one of your user databases. Run this command to preconfigure your deployment.

cqperl cpsearch.pl initSearch -username admin -password "" -dbset TextSearch -userdb SAMPL -searchhome D:\CPHome\Search -solrhome D:\CPHome\Solr -solrport 8984

Edit this deployment’s entity file to remove record types or fields that users should not be able to search. Also, add an ampersand (&) in front of a field for the record type you want to be used as the display field in the hit results for Compass Search.

D:\CPHome\Search\TextSerch_SAMPL\Entity-TextSearch-SAMPL.txt

Complete your deployment by running this command:

cqperl cpsearch.pl deploySearch -username admin -password "" -dbset TextSearch -userdb SAMPL -searchhome D:\CPHome\Search

pingSolrServer
Syntax
cqperl cpsearch.pl pingSolrServer -dbset <dbset> -userdb <userdb> -searchhome <path>
Summary

Issues a ping request to Apache Solr to see if it is reachable and running. If Solr is not reachable, the command will report a failure, otherwise a success.

Usage

Use this command to find out if Apache Solr is reachable and running.

Effect

This command does not affect your Search deployment.

Stateful status
This option is not stateful. This command should never fail unless there is an I/O error.
Example
You want to check to see if Apache Solr is reachable and running. To do so, issue this command:

cqperl cpsearch.pl pingSolrServer -dbset TextSearch -userdb SAMPL -searchhome D:\CPHome\Search

querySolr
Syntax
cqperl cpsearch.pl querySolr -dbset <dbset> -userdb <userdb> -searchhome <path> [-querytext <text>] [-page <page>] [-size <size>] [-timeallowed, <value>]
Summary

Issues a raw query against Apache Solr and returns the raw results from Solr server. The optional command line arguments let you control the search and response you will get back from Solr.

-querytext
This is the text string to send to Solr. If the text consists of multiple words, you will need to quote it. To issue a phrase search, you need to quote and escape the quotes, like: \”to be or not to be\”.
-page
Is the page offset the hits to return for. The offset starts at page 1 (there is no page 0).
-size
Is the number of hits to return on the page.
-timeallowed

This is a value in milliseconds that instructs Solr how much time to spend executing the query.

If you leave out all the command line arguments, it is the same as if executing the search with the values of -querytext * -page 1 -size 10.

Usage
Use this command to execute raw queries against Apache Solr and get back the raw results. You can use this command to see and simulate the raw interaction with Solr and help diagnose issues.
Effect
This command does not affect your Search deployment.
Stateful status
This option is not stateful. This command should never fail unless if there is an I/O error.
Example

You want to test or is instructed by HLC Software Support to debug Compass Search issues. To do so, issue this command:

cqperl cpsearch.pl querySolr -dbset TextSearch -userdb SAMPL -searchhome D:\CPHome\Search -querytext \"to be or not to be\"

searchCompass
Syntax
cqperl cpsearch.pl searchCompass -username <user> -password <password> -dbset <dbset> -userdb <userdb> -searchhome <path> [-searchtext <text>] [-page <page>] [-size <size>] [-timeallowed, <value>]
Summary

Issues a Search using the Compass API as if a user has run it from the UI. This command is similar to the querySolr command except that the search processes though the layers of Compass as any Search setting and user security context that may be in place are applied and what field’s value to show in the result set. The optional command line arguments let you control the search and response you will get back from Compass.

-querytext

This is the text string to send to Compass. If the text consists of multiple words, you will need to quote it. To issue a phrase search, you need to quote and escape the quotes, like: \”to be or not to be\”.

-page
This is the page offset for the hits to return. The offset starts at page 1 (there is no page 0).
-size
Is the number of hits to return on the page.
-timeallowed

This is a value in milliseconds that instructs Solr how much time to spend running the query.

If you leave out all the command line arguments, it is the same as if executing the search with the values of -querytext * -page 1 -size 10.

Usage

Use this command to run searches against Compass using Compass Search and get back Search results the way the UI would see it. You can use this command to see and simulate Search capability without having to use the UI.

Effect

This command does not affect your Search deployment.

Stateful status
This option is not stateful. This command should never fail unless there is an I/O error.
Example

You want to test or are instructed by HLC Software Support to debug Compass Search issues. To do so, issue this command:

cqperl cpsearch.pl searchCompass -dbset TextSearch -userdb SAMPL -searchhome D:\CPHome\Search -querytext \"to be or not to be\"

setProperties
Syntax
cqperl cpsearch.pl setProperties -username <user> -password <password> -dbset <dbset> -userdb <userdb> -searchhome <path> [-CPIndexer.IndexWorkspace <true | false>] [-CPSolr.MaxHeapSize <val>] [-CPSolr.RetryAttempts <val>] [-CPSolr.RetryAttemptsPause <val>] [-CPTool.IncrIndexMaxHeapSize <val>] [-CPTool.FullIndexMaxHeapSize <val>] [-CPTool.ProcRetryAttempts <val>] [-CPTool.ProcRetryAttemptsPause <val>]
Summary

Allows you to set and update search properties value to let you customize Compass Search. After making a change, you will need to restart Compass Search for the change to take effect.

-CPIndexer.IndexWorkspace

Set to ‘true’ to enable workspace indexing. The default value is ‘false’.

-CPSolr.MaxHeapSize

Set the Java heap size for Apache Solr in megabytes. the default value is 4096.

-CPSolr.RetryAttempts
Set the retry attempt when Compass Search communicates with Apache Solr before reporting an error. the default value is 3.
-CPSolr.RetryAttemptsPause

Set the in-between retry attempt pause value in milliseconds when Compass Search is communicating with Apache Solr before reporting an error. The default value is 1000.

-CPTool.IncrIndexMaxHeapSize

Set the Compass Search incremental indexer Java heap size in megabytes. The default value is 4096.

-CPTool.FullIndexMaxHeapSize
Set the Compass Search full indexer Java heap size in megabytes. The default value is 4096.
-CPTool.ProcRetryAttempts
Set the retry attempt when Compass Search indexer, both incremental and full is communicate with Compass database. The default value is 3.
-CPTool.ProcRetryAttemptsPause
Set the in-between retry attempt pause value in milliseconds when Compass Search indexer, both incremental and commicates with Compass database. The default value is 1000.
Usage
Use this command to fine-tune your Compass Search deployment to meet your organization's need and use case. In most cases, you will only need to fine-tune the Java heap size.
Effect
This command does not affect your Search deployment.
Stateful status
This option is not stateful. This command should never fail unless there is an I/O error.
Example

You need to change the amount of Java heap size. To do so, issue this command:

cqperl cpsearch.pl setProperties -username admin -password "" -dbset TextSearch -userdb SAMPL -searchhome D:\CPHome\Search -CPSolr.MaxHeapSize 2048-CPTool.IncrIndexMaxHeapSize 2048 -CPTool.FullIndexMaxHeapSize 6144

showProperties
Syntax
cqperl cpsearch.pl showProperties -dbset <dbset> -userdb <userdb> -searchhome <path>
Summary

Allows you to see the current Compass Search properties in use. You can then use setProperties to change any of the values.

Usage
Use this command to find out the current Search properties in use.
Effect

This command does not affect your Search deployment.

Stateful status
This option is not stateful. This command should never fail unless there is an I/O error.
Example
You need to find out the current Search properties in use. To do so, issue this command:

cqperl cpsearch.pl showProperties -dbset TextSearch -userdb SAMPL -searchhome D:\CPHome\Search

startFullIndex
Syntax
cqperl cpsearch.pl startFullIndex -username <user> -password <password> -dbset <dbset> -userdb <userdb> -searchhome <path> [-overwrite <yes | no>]
Summary
Starts the full indexer of records and their fields that you enabled for Compass Search in the entity file. This command is performed when you issue the deploySearch command. However, if for, some reason you need to reindex all of your records, you can do so using this command. To fully force a full reindexing, you must set -overwrite to “yes”. If full indexing fails and you want to continue indexing from the failure point, set -overwrite to “no” or don’t set it.
Usage

Use this command-line option to reindex your Compass database for Compass Search. You should only need to use this command when you are instructed by HCL Software Support.

Effect
This command does not affect your Search deployment.
Stateful status
This option is not stateful. This command should never fail unless there is an I/O error.
Example
You need to fully reindex your Compass database for Compass Search. To do so, issue this command:

cqperl cpssearch.pl startFullIndex -username admin -password "" -dbset TestSearch -userdb SAMPL -searchhome D:\CPHome\Search -overwrite yes

startIncrIndex
Syntax
cqperl cpsearch.pl startIncrIndex -dbset <dbset> -userdb <userdb> -searchhome <path> -startas <continues | once> [-overwrite <yes | no>]
Summary

Starts the incremental indexer of records and their fields enabled for Compass Search in the entity file. This command is executed when you issue the deploySearch command. However, if for, some reason you need to reindex all of your newly added or updated records, you can do so using this command. To force the incremental re indexing to start from the existing oplogs, you must set -overwrite to “yes”. If incremental indexing fails and you want to continue indexing from the failure point, set -overwrite to “no” or don’t set it.

Usage
Use this command-line option to reindex your Compass database of updated or added records recorded in the oplogs table. You should only need to use this command when you are instructed by HCL Software Support.
Effect
This command does not affect your Search deployment.
Stateful status
This option is not stateful. This command should never fail unless there is an I/O error.
Example

If you need to re index your Compass database for Compass Search issue this command:

cqperl cpssearch.pl startIncrIndex -username admin -password "" -dbset TestSearch -userdb SAMPL -searchhome D:\CPHome\Search -overwrite yes

startSearchServer
Syntax
cqperl cpsearch.pl startSearchServer -dbset <dbset> -userdb <userdb> -searchhome <path>
Summary

Starts Compass Search server. The Apache Solr and Compass Incremental indexer will start. The Apache Solr will provide both searching and indexing capability. The Compass Incremental indexer will provide Compass database monitoring for changes to sync with Solr index.

Usage
Use this command-line option to start the Compass Search server.
Attention: Windows should not be need this command. Instead, use the Windows services to start Compass Search. On Linux, you will need to add this command to your startup script; otherwise, Compass Search will not start when the OS is rebooted.
Effect

This command does not affect your Search deployment.

Stateful status
This option is not stateful. This command should never fail unless there is an I/O error.
Example
You need to start the Compass Search server. Issue this command:

cqperl cpssearch.pl startSearchServer -dbset TestSearch -userdb SAMPL -searchhome D:\CPHome\Search

startSolrServer
Syntax
cqperl cpsearch.pl startSolrServer -dbset <dbset> -userdb <userdb> -searchhome <path>
Summary

Starts Apache Solr server. Apache Solr will provide both searching and indexing capability, which must be running at all times otherwise Compass Search functionality would fail.

Usage

Use this command-line option to start Apache Solr server. You do not need to use this command unless instructed by HCL Software Support to do so.

Effect
This command does not affect your Search deployment.
Stateful status
This option is not stateful. This command should never fail unless there is an I/O error.
Example
You are instructed by HCL Software Support to start Apache Solr server. To do so, issue this command:

cqperl cpssearch.pl startSolrServer -dbset TestSearch -userdb SAMPL -searchhome D:\CPHome\Search

stopSolrServer destination
Syntax
cqperl cpsearch.pl stopSolrServer -dbset <dbset> -userdb <userdb> -searchhome <path>
Summary
Stops Apache Solr server. Apache Solr will provide both searching and indexing capability, which must be running at all times otherwise, Compass Search functionality would fail.
Usage

Use this command-line option to stop Apache Solr server. You do not need to use this command unless instructed by HCL Software Support to do so.

Effect
This command does not affect your Search deployment.
Stateful status
This option is not stateful. This command should never fail unless an I/O error occurs.
Example
You are instructed by HCL Software Support to stop Apache Solr server. To do so, issue this command:

cqperl cpssearch.pl startSolrServer -dbset TestSearch -userdb SAMPL -searchhome D:\CPHome\Search