Frage

Ich habe versehentlich hinzugefügt ein neuer Filter auf meine GAE Anwendung. Der Status des Index ‚dienen‘ jetzt - aber ich brauche nicht diesen Index überhaupt und ich würde entfernen möchten. Wie kann ich das tun?

War es hilfreich?

Lösung

Es ist dokumentiert, hier . Hoffe, das hilft.

  

Löschen nicht verwendeten Indizes

     

Wenn Sie einen Index ändern oder löschen   von index.yaml, ist der ursprüngliche Index   nicht von App Engine gelöscht   automatisch. Dies gibt Ihnen die   Möglichkeit eine ältere Version zu verlassen   der App läuft, während neue Indizes   werden an den eingebauten oder zurückkehren   ältere Version sofort, wenn ein Problem   mit einer neueren Version entdeckt wird.

     

Wenn Sie sicher sind, dass alte Indizes   nicht mehr benötigt werden, können Sie sie löschen   von App Engine unter Verwendung der folgenden   Befehl:

appcfg.py vacuum_indexes myapp/
     

Dieser Befehl löscht alle Indizes für die Anwendung, die in der lokalen Version von index.yaml nicht erwähnt werden.

Andere Tipps

Für GAE / Java, enthält die Dokumentation dieser Informationen :

  

Löschen nicht verwendeten Indizes

     

...

     

Wenn Sie sicher sind, dass alte Indizes nicht mehr benötigt werden, können Sie   löschen Sie sie aus App Engine mit der vacuum_indexes Aktion:

./appengine-java-sdk/bin/appcfg.sh vacuum_indexes myapp/war
     

Dieser Befehl löscht alle Indizes für die App, die nicht erwähnt werden   die lokalen Versionen von Datenspeicher-indexes.xml und   erzeugt / Datenspeicher-Indizes-auto.xml.

Windows-Google App Engine Java , müssen wir mit appcfg.cmd Befehl Löschen nicht verwendeter Indizes der bereitgestellten Anwendung.

Syntax:

  

appengine-java-sdk-Pfad \ bin \ appcfg.cmd vacuum_indexes Projekt-root-Pfad \ poject-name \ Krieg \

Für gae-java, wie JochenJung erwähnt, sind die „vacuum_indexes“ Werkzeug funktioniert, aber Sie werden ein Python-Projekt in der folgenden Art und Weise emulieren müssen:

Beachten Sie, dass das Vakuumwerkzeug nur scheint zu funktionieren, wenn an * .appspot.com, nicht den lokalen Entwicklern gerichtet. Umwelt.

  • app.yaml für Ihre Anwendung erstellen und dies in Ihrem / myapp / root-Verzeichnis, minimal:

    application: myproj
    version: 4
    runtime: python
    api_version: 1

, wobei "Version" ist die App-Version "myproj" der GAE Name Ihres Projektes.

  • Geben Sie eine index.yaml erstellen und es in der gleichen Wurzel dir setzen. Statt mühsam die Indexinformationen für die Indizes Sie behalten möchten, stellt sich heraus in die Datei des Setzens, dass das Werkzeug, um Ihnen einen ja wird / keine Bestätigung für jeden Index löscht, so ist es einfacher, nur, dass ALLE, um anzuzeigen, Indizes fallen gelassen werden sollte, und verwenden Sie die Bestätigung diejenigen bewahren Sie behalten möchten.

indexes:

# AUTOGENERATED

Dann den Befehl ausführen, wie oben gezeigt,


  /appcfg.py vacuum_indexes /path/to/myproj/

Ab Februar 2019 ist es jetzt:

gcloud datastore indexes cleanup index.yaml

Wenn Sie mit Maven mvn appengine:vacuum_indexes. Keine Notwendigkeit, mvn appengine:update, der Befehl aktualisiert den Remote-Server.

Eine vollständige Liste der Maven-Befehle hier .

Unter Windows mit Hilfe von Java, dieser Befehl funktionierte für mich:

appcfg.cmd vacuum_indexes C:\Users\Name\AndroidStudioProjects\Project\backend\src\main\webapp\

. Hinweis: Vergewissern Sie sich ein datastore-indexes.xml im webapp Ordner haben (diese Indizes werden geschont werden)

Mit der aktuellen Version von gcloud, können Sie einfach tun:

gcloud datastore cleanup-indexes index.yaml

, die intuitiver als Aufruf appcfg.cmd ist [...].

gcloud datastore cleanup-indexes /path/to/file/index.yaml

Mit diesem Befehl nicht mehr funktioniert .

gcloud datastore indexes cleanup /path/to/index.yaml

Dies ist der neue Befehl .

Sie sollten sie in google cloud console laufen. normalerweise können Sie die Datei mit index.yaml file upload Funktion in google cloud console hochladen. Ihre Datei zu einem direkt aufgerufen _admin geht, kann man dort cd und ruft,

gcloud datastore indexes cleanup index.yaml

Tipp

, wenn Sie mit datastore in einem Java-Projekt , Sie haben statt datastore-indexes.xml index.yaml. Vielleicht haben Sie einige Probleme haben die index.yaml Datei zu finden, wenn Sie nicht wissen, wo sie suchen müssen.

Sie können einfach den Pfad der index.yaml Datei finden Sie in der deploy console in Ihrem IDE suchen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top