Question

J'ai ajouté accidentellement un nouveau filtre pour mon application GAE. Le statut de l'index est «en service» maintenant. Cependant, je n'ai pas du tout besoin de cet index et j'aimerais le supprimer. Comment puis-je faire cela?

Était-ce utile?

La solution

Il est documenté ici . J'espère que ça aide.

  

Suppression des index non utilisés

     

Lorsque vous modifiez ou supprimez un index   de index.yaml, l'index d'origine est   non supprimé de App Engine   automatiquement Cela vous donne la   possibilité de laisser une ancienne version   de l'application en cours d'exécution tandis que de nouveaux index   sont en cours de construction, ou pour revenir à la   ancienne version immédiatement si un problème   est découvert avec une version plus récente.

     

Lorsque vous êtes sûr que les anciens index sont   n'est plus nécessaire, vous pouvez les supprimer   à partir de App Engine en utilisant les éléments suivants   commande:

appcfg.py vacuum_indexes myapp/
     

Cette commande supprime tous les index de l'application qui ne sont pas mentionnés dans la version locale de index.yaml.

Autres conseils

Pour GAE / Java, la documentation comprend les ces informations :

  

Suppression des index non utilisés

     

...

     

Lorsque vous êtes sûr que les anciens index ne sont plus nécessaires, vous pouvez   supprimez-les d'App Engine à l'aide de l'action vacuum_indexes:

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

Cette commande supprime tous les index de l'application qui ne sont pas mentionnés dans   les versions locales de datastore-indexes.xml et   généré / datastore-indexes-auto.xml.

Dans Windows Google AppEngine Java , nous devons utiliser la commande appcfg.cmd pour supprimer les index inutilisés de l'application déployée.

Syntaxe:

  

chemin_application-java-java \ bin \ appcfg.cmd vacuum_indexes chemin-racine du projet \ nom_projet \ guerre \

Pour gae-java, comme l'a mentionné JochenJung, les "vacuum_indexes" Cet outil fonctionnera, mais vous devrez émuler un projet Python de la manière suivante:

Notez que l’aspirateur ne semble fonctionner que s’il est dirigé vers * .appspot.com, pas le développeur local. environnement.

  • créez app.yaml pour votre application et mettez-la dans votre répertoire racine / myapp /, au minimum:

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

où " version " est la version de votre application, " myproj " le nom GAE de votre projet.

  • créez un index.yaml et mettez-le dans le même répertoire racine. Au lieu de mettre laborieusement dans ce fichier les informations d'index pour les index que vous souhaitez conserver, il s'avère que l'outil va vous donner une confirmation oui / non pour chaque index supprimé, il est donc plus simple d'indiquer que TOUT les index doivent être supprimés et utilisez la confirmation pour conserver ceux que vous souhaitez conserver.

indexes:

# AUTOGENERATED

Ensuite, exécutez la commande comme indiqué ci-dessus,


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

En février 2019, c’est maintenant:

gcloud datastore indexes cleanup index.yaml

Si vous utilisez maven mvn appengine: vacuum_indexes . Pas besoin de mvn appengine: update , la commande met à jour le serveur distant.

Liste complète des commandes maven ici .

Sous Windows utilisant Java, cette commande a fonctionné pour moi:

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

Remarque: assurez-vous de disposer d'un datastore-indexes.xml dans le dossier webapp (ces index seront épargnés).

Avec la version actuelle de gcloud, vous pouvez simplement faire:

gcloud datastore cleanup-indexes index.yaml

qui est plus intuitif que d'appeler appcfg.cmd [...].

index de nettoyage gastoud datastore /path/to/file/index.yaml

cette commande ne fonctionne plus .

Le magasin de données gcloud indexe cleanup /path/to/index.yaml

il s'agit de la nouvelle commande .

vous devez les exécuter dans la console google cloud . normalement, vous pouvez télécharger le fichier index.yaml à l'aide de la fonctionnalité upload de fichier dans google cloud console . votre fichier passe directement à un _admin directement appelé, vous pouvez cd et appeler,

Le magasin de données gcloud indexe le nettoyage index.yaml

Conseil

si vous utilisez datastore dans un projet java , vous avez datastore-indexes.xml au lieu de index.yaml . Vous pourriez avoir du mal à trouver le fichier index.yaml si vous ne savez pas où chercher.

vous pouvez simplement trouver le chemin du fichier index.yaml en consultant la console de déploiement dans votre IDE.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top