スケーラブルデータベースサーバ HiRDB Version 8 コマンドリファレンス(UNIX(R)用)

[目次][索引][前へ][次へ]

10.5 リバランス中のSQL実行可否

リバランス中のSQL実行可否を次の表に示します。

表10-10 リバランス中のSQL実行可否

SQL文 リバランス処理中 リバランス途中,及びリバランス停止中
共用モード 占有モード
SELECT文 ×
UPDATE文 ※1 × ※1
INSERT文 ※2 × ※2
DELETE文 ×
LOCK文 ×
PURGE TABLE文※3 × ×
DROP TABLE ×※4 ×
CREATE INDEX ×※4 ×
DROP INDEX ×※4 ×
ALTER TABLE ×※4 × ×

(凡例)
○:実行できます。
×:実行できません。

注※1
ユニークキーインデクスを構成する列の更新はできません(エラーとなります)。

注※2
リバランス対象表にユニークキーインデクスが定義されている場合は実行できません(エラーとなります)。

注※3
RDエリア追加後,pdrbal実行前にPURGE TABLE文又はRDエリアの再初期化をした場合,リバランス初期化処理がされていないため,追加したRDエリアに対する格納処理は実行されません。
また,pdrbalがリターンコード0で終了する前に,PURGE TABLE文又はRDエリアの再初期化をした場合,リバランス完了処理がされていないため,FIXハッシュ分割表のSQL検索性能が劣化したままとなります。このような場合には,PURGE TABLE文又はRDエリアの再初期化をした後の状態で,pdrbalを実行してください。これによって,リバランス初期化処理,又はリバランス完了処理が実行されます。

注※4
回復不要FESを適用している場合,pdrbal実行中に定義系SQLやPURGE TABLE文が実行できてしまうことがあります(回復不要FESを適用していない場合は,不当に定義系SQLやPURGE TABLE文が実行されないように,フロントエンドサーバが排他資源を確保して防いでいます)。このため,pdrbal実行中は定義系SQLやPURGE TABLE文を実行しないでください。なお,占有モードでpdrbalを実行する場合は,バックエンドサーバで表に排他制御が掛かっているため,定義系SQLは排他待ちとなります。