REBUILD SEARCH INDEX

Rebuilds the search index. Reconstructs the index after changes to the index schema, such as:

  • Adding or removing fields

  • Adding a copy field

  • Changing field settings

Queries using the solr_query option may return no results, partial results, or old data while the index is rebuilding. You can verify an index’s status by using the dsetool core_indexing_status command. See Verifying indexing status.

Perform index reloads or rebuilds on each Datacenter (DC). It’s only necessary to run the command on one node per DC. After modifying a search index schema or configuration, or uploading custom resources such as a synonym file, use RELOAD SEARCH INDEX to reload and activate the search index. By default, any uploaded resources are distributed across the cluster. For options to reload resources on the current node only, see Reloading the search index.

Restriction: Command available only on DSE Search nodes. Running search index management commands on large datasets can take longer than the CQLSH default timeout of 10 minutes. Increase the CQLSH client timeout as required.

Synopsis

REBUILD SEARCH INDEX ON <keyspace_name>.]<table_name>
  [ WITH OPTIONS { deleteAll : ( true | false ) } ] ;
Syntax legend
Legend
Syntax conventions Description

UPPERCASE

Literal keyword.

Lowercase

Not literal.

< >

Variable value. Replace with a user-defined value.

[]

Optional. Square brackets ([]) surround optional command arguments. Do not type the square brackets.

( )

Group. Parentheses ( ( ) ) identify a group to choose from. Do not type the parentheses.

|

Or. A vertical bar (|) separates alternative elements. Type any one of the elements. Do not type the vertical bar.

...

Repeatable. An ellipsis ( ... ) indicates that you can repeat the syntax element as often as required.

'<Literal string>'

Single quotation (') marks must surround literal strings in CQL statements. Use single quotation marks to preserve upper case.

{ <key> : <value> }

Map collection. Braces ({ }) enclose map collections or key value pairs. A colon separates the key and the value.

<datatype2

Set, list, map, or tuple. Angle brackets ( < > ) enclose data types in a set, list, map, or tuple. Separate the data types with a comma.

<cql_statement>;

End CQL statement. A semicolon (;) terminates all CQL statements.

[--]

Separate the command line options from the command arguments with two hyphens ( -- ). This syntax is useful when arguments might be mistaken for command line options.

' <<schema\> ... </schema\>> '

Search CQL only: Single quotation marks (') surround an entire XML schema declaration.

@<xml_entity>='<xml_entity_type>'

Search CQL only: Identify the entity and literal value to overwrite the XML element in the schema and solrConfig files.

OPTIONS

The request option configures the entire request to specify whether to delete the existing index:

deleteAll
  • true Completely replaces the existing index. Use when changes to the schema affect the way that data is physically stored, such as changes to the field type analyzer, a column data type, etc.

  • false (Default.) Keeps existing search index data. Reindexing happens in-place; search results will return partially incorrect results while the index is updating. Keep the current index (accepting reads) while you build the new one, then swap over to the new index after it’s ready. Use when table columns are removed or added to the index.

EBNF

EBNF syntax:

rebuildSearchIndex  ::= 'REBUILD' 'SEARCH' 'INDEX'
                        'ON' tableName
                        ('WITH' 'OPTIONS' optionMap)?
tableName           ::= (keyspace '.')? table
optionMap           ::= '{' (key ':' value (',' key ':' value)*)? '}'

Railroad diagram:

rebuildSearchIndex
Image shows a railroad diagram for the REBUILD SEARCH INDEX search CQL command
tableName
Image shows a railroad diagram of tableName
optionMap
Image shows a railroad diagram of optionMap

Examples

The search index is rebuilt for the wiki.solr keyspace and table.

REBUILD SEARCH INDEX ON wiki.solr WITH OPTIONS { deleteAll:true };

Was this helpful?

Give Feedback

How can we improve the documentation?

© 2024 DataStax | Privacy policy | Terms of use

Apache, Apache Cassandra, Cassandra, Apache Tomcat, Tomcat, Apache Lucene, Apache Solr, Apache Hadoop, Hadoop, Apache Pulsar, Pulsar, Apache Spark, Spark, Apache TinkerPop, TinkerPop, Apache Kafka and Kafka are either registered trademarks or trademarks of the Apache Software Foundation or its subsidiaries in Canada, the United States and/or other countries. Kubernetes is the registered trademark of the Linux Foundation.

General Inquiries: +1 (650) 389-6000, info@datastax.com