10.5 Whether or not SQL is executable during a rebalance operation

The table below shows whether SQL statements can be executed while a rebalancing operation is underway.

Table 10-10 Whether or not SQL is executable during a rebalance operation

SQL statementRebalance operationWhile rebalance operation is underway or stopped
Shared modeExclusive mode
SELECT statementY--Y
UPDATE statementY#1--Y#1
INSERT statementY#2--Y#2
DELETE statementY--Y
LOCK statementY--Y
PURGE TABLE statement#3--#4--Y
DROP TABLE--#4--Y
CREATE INDEX--#4--Y
DROP INDEX--#4--Y
ALTER TABLE--#4----
Y: Executable.
--: Not executable.
#1: A column constituting a unique key index cannot be updated (updating such a column results in an error).
#2: The SQL statement is not executable if a unique key index is defined for the table that is to be rebalanced (executing the SQL statement results in an error).
#3: If you add an RDAREA and then execute the PURGE TABLE statement or reinitialize the RDAREA before executing pdrbal, storage processing does not take place on the added RDAREA because rebalance initialization processing has not been executed. If you execute the PURGE TABLE statement or reinitialize the RDAREA before pdrbal terminates with return code 0, SQL search performance on a FIX hash-partitioned table remains low because rebalance completion processing has not been executed. In this case, execute pdrbal immediately after executing the PURGE TABLE statement or reinitializing the RDAREA. This results in the execution of rebalancing initialization or completion processing.
#4: If a recovery-unnecessary front-end server is used, a definition SQL or PURGE TABLE statement may be executed during execution of pdrbal (if a recovery-unnecessary front-end server is not used, the front-end server prevents a definition SQL or PURGE TABLE statement from being executed illegally by allocating the locked resources). Therefore, make sure that neither a definition SQL nor a PURGE TABLE statement is executed during execution of pdrbal. If you execute pdrbal in the exclusive mode, a definition SQL statement is placed on lock-release wait because the table is locked by the back-end server.