REBUILD SEARCH INDEX

Rebuilds a search index for DSE Search.

Rebuilds the search index. Re-constructs the index after changes to the index schema, such as adding or removing fields, adding a copy field or changing field settings. Queries using the solr_query option may return no results, partial, or old data while the index is rebuilding.
Restriction: Command available only on DSE Search nodes. Running search index management commands on a large datasets may 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 } ]
Legend
Syntax conventions Description
UPPERCASE Literal keyword.
Lowercase Not literal.
Italics 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.
<datatype1,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 };