Navigation

It is a light operation. It just changes a relationship between name
and the table object. It doesn't copy table and its column values.

It is a dangerous operation. You must stop all operations including
read operations while you run table_rename. If the following case
is occurred, Groonga process may be crashed:

Starts an operation (like select) that accesses the table to
be renamed by the current table name. The current table name is
called as theoldtablename in the below because the table
name is renamed.

Runs table_rename. The select is still running.

The select accesses the table to be renamed by the old table
name. But the select can't find the table by the old name
because the table has been renamed to the new table name. It may
crash the Groonga process.