Rebuild index data within a backend based on the Berkeley DB Java Edition. Note that this tool uses different approaches to rebuilding indexes based on whether it is running in online mode (as a task) rather than with the server offline. Running in offline mode will often provide significantly better performance and require significantly less database cleaning, particularly for indexes containing keys that match a large number of entries and have high index entry limit and exploded index entry threshold values. Also note that rebuilding an index with the server online will prevent the server from using that index while the rebuild is in progress, so some searches may behave differently while a rebuild is active than when it is not.
An index must be rebuilt if the database already contains data when the index is configured. The backend containing the provided base DN must be a local DB backend. The types of indexes that can be rebuilt include system indexes, attribute indexes, VLV indexes, and JSON field indexes.
This tool features both an offline mode of operation as well as the ability to schedule an operation to run within the Directory Server's process. To schedule an operation supply LDAP connection options that allow this tool to communicate with the server through its task interface. Tasks can be scheduled to run immediately or at a later time (see Task Scheduling Options below). Once scheduled, tasks can be managed using the manage-tasks tool.
rebuild-index --baseDN dc=example,dc=com --index sn --index vlv.example
rebuild-index --task --hostname directory.example.com --port 389 \ --bindDN uid=admin,dc=example,dc=com --bindPassword password \ --baseDN dc=example,dc=com --index cn
-V
--version
Description | Display Directory Server version information |
-H
--help
Description | Display general usage information |
--help-ldap
Description | Display help for using LDAP options |
--help-sasl
Description | Display help for using SASL options |
--help-debug
Description | Display help for using debug options |
Advanced | Yes |
-Z
--useSSL
Description | Use SSL for secure communication with the server |
-q
--useStartTLS
Description | Use StartTLS to secure communication with the server |
--useNoSecurity
Description | Use no security when communicating with the server |
-h {host}
--hostname {host}
Description | Directory Server hostname or IP address |
Default Value | localhost |
Required | No |
Multi-Valued | No |
-p {port}
--port {port}
Description | Directory Server port number |
Default Value | 389 |
Required | No |
Multi-Valued | No |
-D {bindDN}
--bindDN {bindDN}
Description | DN used to bind to the server |
Default Value | cn=Directory Manager |
Required | No |
Multi-Valued | No |
-w {bindPassword}
--bindPassword {bindPassword}
Description | Password used to bind to the server |
Required | No |
Multi-Valued | No |
-j {bindPasswordFile}
--bindPasswordFile {bindPasswordFile}
Description | Bind password file |
Required | No |
Multi-Valued | No |
-o {name=value}
--saslOption {name=value}
Description | SASL bind options |
Required | No |
Multi-Valued | Yes |
-X
--trustAll
Description | Trust all server SSL certificates |
-P {truststorePath}
--trustStorePath {truststorePath}
Description | Certificate truststore path |
Default Value | /home/centos/workspace/Core-Release/build/package/PingDirectory/config/truststore |
Required | No |
Multi-Valued | No |
-T {truststorePassword}
--trustStorePassword {truststorePassword}
Description | Certificate truststore PIN |
Required | No |
Multi-Valued | No |
-U {path}
--trustStorePasswordFile {path}
Description | Certificate truststore PIN file |
Required | No |
Multi-Valued | No |
-K {keystorePath}
--keyStorePath {keystorePath}
Description | Certificate keystore path |
Required | No |
Multi-Valued | No |
-W {keystorePassword}
--keyStorePassword {keystorePassword}
Description | Certificate keystore PIN |
Required | No |
Multi-Valued | No |
-u {keystorePasswordFile}
--keyStorePasswordFile {keystorePasswordFile}
Description | Certificate keystore PIN file |
Required | No |
Multi-Valued | No |
-N {nickname}
--certNickname {nickname}
Description | Nickname of the certificate for SSL client authentication |
Required | No |
Multi-Valued | No |
--useAdministrativeSession
Description | Attempt to use an administrative session to have operations processed on a dedicated pool of worker threads. This may be useful when trying to diagnose problems in a server that is unresponsive because all normal worker threads are busy processing other requests |
--propertiesFilePath {propertiesFilePath}
Description | Path to the file that contains default property values used for command-line arguments |
Required | No |
Multi-Valued | No |
--usePropertiesFile
Description | Specify that a properties file will be used to get default command-line argument values |
--script-friendly
Description | Use script-friendly mode |
--task
Description | Indicates that this tool should be invoked as a task which runs inside the Directory Server rather than as a separate process. At present, this argument is optional, but in a future release it may be required for running as a task |
-t {startTime}
--start {startTime}
Description | Indicates the date/time, expressed in format 'YYYYMMDDhhmmss', when the operation starts when scheduled as a server task. A value of '0' causes the task to be scheduled for immediate execution. When this option is specified, the operation is scheduled to start at the specified time, after which this utility will exit immediately |
Required | No |
Multi-Valued | No |
--startAlert
Description | Generate an administrative alert when the task starts running |
--successAlert
Description | Generate an administrative alert when the task completes successfully |
--errorAlert
Description | Generate an administrative alert when the task fails to complete successfully |
--startNotify {emailAddress}
Description | Email address of a recipient to be notified when this task starts running |
Required | No |
Multi-Valued | Yes |
--completionNotify {emailAddress}
Description | Email address of a recipient to be notified when the task completes, regardless of whether it succeeded or failed |
Required | No |
Multi-Valued | Yes |
--successNotify {emailAddress}
Description | Email address of a recipient to be notified when this task completes successfully |
Required | No |
Multi-Valued | Yes |
--errorNotify {emailAddress}
Description | Email address of a recipient to be notified if an error occurs when this task executes |
Required | No |
Multi-Valued | Yes |
--dependency {taskID}
Description | ID of a task upon which this task depends. A task will not start execution until all its dependencies have completed execution |
Required | No |
Multi-Valued | Yes |
--failedDependencyAction {action}
Description | Action this task will take should one of its dependent tasks fail. The value must be one of the following: PROCESS,CANCEL,DISABLE. If not specified, the default value is CANCEL |
Required | No |
Multi-Valued | Yes |
-Q
--quiet
Description | Use quiet mode |
-b {baseDN}
--baseDN {baseDN}
Description | Base DN of a backend supporting indexing. Rebuild is performed on indexes within the scope of the given base DN |
Required | Yes |
Multi-Valued | No |
-i {index}
--index {index}
Description | Name of index(es) to rebuild. For an attribute index, this is simply an attribute name. At least one index must be specified for rebuild |
Required | No |
Multi-Valued | Yes |
--bulkRebuild {all|new|untrusted|trusted}
Description | Allows bulk rebuilding of all indexes or bulk rebuilding of all indexes in the specified state. Cannot be used remotely on another server, as a task, or while server is online |
Required | No |
Multi-Valued | Yes |
--maxThreads {numThreads}
Description | The number of concurrent threads that should be used when rebuilding indexes. If this is not specified, then it will be automatically determined based on the number of available CPUs |
Lower Bound | 1 |
Required | No |
Multi-Valued | No |
--logFilePath {logFilePath}
Description | Echo the console output to the specified log file, instead of the default ' |
Required | No |
Multi-Valued | No |