私は 誤って追加 私のGAEアプリケーションに新しいフィルターを追加しました。インデックスのステータスは現在「配信中」ですが、そのインデックスはまったく必要ないため、削除したいと思います。どうやってやるの?
文書化されています ここ 。お役に立てば幸いです。
未使用のインデックスの削除
Index.yamlからインデックスを変更または削除しても、元のインデックスはApp Engineから自動的に削除されません。これにより、新しいインデックスの作成中に古いバージョンのアプリを実行したままにするか、新しいバージョンで問題が発見された場合はすぐに古いバージョンに戻すことができます。
古いインデックスが不要になったことが確認できたら、次のコマンドを使用してApp Engineから削除できます。
appcfg.py vacuum_indexes myapp/
このコマンドは、ローカルバージョンのindex.yamlに記載されていないアプリのすべてのインデックスを削除します。
GAE/Javaの場合、ドキュメントには この情報 が含まれます:
未使用のインデックスの削除
...
古いインデックスが不要であることが確実な場合は、vacuum_indexesアクションを使用してApp Engineから削除できます。
./appengine-Java-sdk/bin/appcfg.sh vacuum_indexes myapp/war
このコマンドは、ローカルバージョンのdatastore-indexes.xmlおよびgenerated/datastore-indexes-auto.xmlに記載されていないアプリのすべてのインデックスを削除します。
に Windows Google AppEngine Java、使用する必要があります appcfg.cmd へのコマンド 未使用のインデックスを削除する デプロイされたアプリケーションの。
構文:
appengine-Java-sdk-path\bin\appcfg.cmd vacuum_indexes project-root-path\poject-name\war \
2019年2月現在、次のとおりです。
gcloud datastore indexes cleanup index.yaml
Gae-Javaの場合、JochenJungが述べたように、「vacuum_indexes」ツールは機能しますが、pythonプロジェクトを次のようにエミュレートする必要があります。
真空ツールは、*。appspot.comをポイントしたときにのみ機能するように見え、ローカル開発者では機能しないことに注意してください。環境。
application: myproj
version: 4
runtime: python
api_version: 1
ここで、「version」はアプリのバージョン、「myproj」はプロジェクトのGAE名です。
indexes:
# AUTOGENERATED
次に、上記のコマンドを実行します。
/appcfg.py vacuum_indexes /path/to/myproj/
mavenを使用している場合mvn appengine:vacuum_indexes
。する必要がない mvn appengine:update
、コマンドはリモートサーバーを更新します。
Mavenコマンドの完全なリスト here 。
Javaを使用するWindowsでは、このコマンドは私にとってはうまくいきました:
appcfg.cmd vacuum_indexes C:\Users\Name\AndroidStudioProjects\Project\backend\src\main\webapp\
注:datastore-indexes.xml
はwebapp
フォルダにあります(これらのインデックスは使用されません)。
現在のバージョンのgcloudでは、次のように簡単に実行できます。
gcloud datastore cleanup-indexes index.yaml
これは、appcfg.cmd [...]を呼び出すよりも直感的です。
gcloud datastore cleanup-indexes /path/to/file/index.yaml
このコマンド機能しなくなりました。
gcloud datastore indexes cleanup /path/to/index.yaml
これは新しいコマンドです。
google cloud console
で実行する必要があります。通常、index.yaml
のfile upload
機能を使用してgoogle cloud console
ファイルをアップロードできます。あなたのファイルは直接呼び出された_admin
に行き、そこにcd
して呼び出し、
gcloud datastore indexes cleanup index.yaml
Javaプロジェクトでdatastore
を使用している場合は、datastore-indexes.xml
ではなくindex.yaml
になります。どこを見ればよいのかわからない場合、index.yaml
ファイルを見つけるのに問題が発生する可能性があります。
iDEでindex.yaml
を見るだけで、deploy console
ファイルのパスを見つけることができます。