Google App Engineのインデックスは自動で作成される。作成中のクエリはエラーになる。

データの検索や登録の度「datastore-indexes-auto.xml」にインデクスの定義が追加されたり消えたりするので、とりあえず出てきたものは「datastore-indexes.xml」にコピっておく、ちょっと面倒くさい。どうして追加されたり消えたりするのかわからないけど、今はとりあえずいいや。

かなり曖昧で同じ現象だったか定かではないのですが、GAEではインデックス作成が自動で行われます。そしてインデックス作成中にそのインデックスが必要なクエリが実行された場合にエラーになります。これマジで辛い。最近はずっと発生していないですが、新規アプリケーション作成時は発生する問題じゃないかな?あんまりblogで情報あがってないけど。

インデックスが作成中なのかは、appengineの管理画面からDatastore Indexesのリンクから画面で確認できます。今度エラーが発生したらこの画面を確認してみるといいと思います。この画面を確認して作成中でもないのにエラーだったら私の的外れだったということでごめんなさい。

私はまったくdatastore-indexes.xmlをいじらずにアプリケーションを作っていますが今のところ困ったことはないです。データ件数がまだ5000件未満だからなのかもしれませんが・・。