[groonga-dev,03904] Re: PGRNファイルが開けない?

Back to archive index

Kouhei Sutou kou****@clear*****
2016年 2月 3日 (水) 23:52:01 JST


須藤です。

In <20160****@orega*****>
  "[groonga-dev,03903] Re: PGRNファイルが開けない?" on Wed, 03 Feb 2016 14:46:56 +0900,
  高見 直輝 <takam****@orega*****> wrote:

> CREATE INDEXの時点ではOIDを使っているように見えるのですが、どうなのでしょ
> うか?
> てっきり、XXXの値がrelfilenodeの値に切り替わったのが原因ではないかと思っ
> たのですが・・・。

CREATE INDEX直後はOIDもrelfilenodeも同じ値なんです。

> CREATE INDEX時にOIDがセットされている場合、REINDEXをしていない(relfilenode
> の値に切り替わっていない)インデックスが消えてしまいませんか?

REINDEXをしていないインデックスは絶対消えないようになってい
ます。

> 次回アップデート時に既存インデックスの再作成が必要かどうか教えて下さい。

必要ありません。
VACUUM/ANALYZE後のロジックが間違っているだけなので、アップデー
トすれば直るのです。

>> つまり、電源断をしなくても以下で再現します。
>> 
>>   CREATE INDEX ...;
>>   REINDEX INDEX ...;
>>   ANALYZE;
>>   SELECT ...;
> 
> 当方の環境ではREINDEXの前にpgrnファイルを削除しないと再現しないようなの
> ですが、理由は分かりますでしょうか?

たぶん、SELECTのときにシーケンシャルサーチになっているんだと
思います。最後のSELECTをINSERTに変えるとエラーメッセージがで
ると思います。

> ファイル削除をやっていない環境であればアップデート時にインデックス再作成
> が不要になる、となってくれると色々と助かるのですが・・・。

はい、インデックス再作成は不要です。


-- 
須藤 功平 <kou****@clear*****>
株式会社クリアコード <http://www.clear-code.com/>

Groongaベースの全文検索システムを総合サポート:
  http://groonga.org/ja/support/
パッチ採用 - プログラミングが楽しい人向けの採用プロセス:
  http://www.clear-code.com/recruitment/
リーダブルコードワークショップ:
  http://www.clear-code.com/services/code-reader/readable-code-workshop.html




groonga-dev メーリングリストの案内
Back to archive index