2 votes

Perte de données incohérentes de Java Google App Engine après le redémarrage du serveur de développement

J'utilise Java GAE. Jusqu'à présent, je n'ai fait qu'échafauder mes objets de données et j'ai rencontré un problème intéressant.

  • Les enregistrements avec lesquels je joue sont mis à jour correctement tant que mon serveur de développement fonctionne. A la seconde où mon serveur de développement est redémarré, je perds toutes mes modifications.
  • Ce ne serait pas alarmant si je perdais tous mes enregistrements, mais, à un moment donné, mes données ont persisté pendant le redémarrage du serveur. Je crains de perdre des données de production si je lance le serveur sans corriger ce bogue potentiel.

Une idée de l'endroit où je dois chercher ?

1voto

Nick Johnson Points 79909

Le datastore est persisté entre les instances comme décrit ici . Le SDK Java n'a pas de fonctionnalité pour effacer le datastore pour vous, donc vous, ou quelque chose travaillant en votre nom (par exemple, votre processus de construction) doit le supprimer.

1voto

user310954 Points 11

Cela ressemble à un problème d'environnement de développement local. Vérifiez l'emplacement de local_db.bin et assurez-vous que votre processus de construction ne touche pas le fichier de base de données. Peut-être le redémarrage se produit-il avant que les données aient été persistées ? Le datastore de développement local n'est pas stable comme les bases de données relationnelles locales. Par exemple, après la mise à jour des versions du sdk d'appengine, l'ancien datastore local peut ne plus fonctionner du tout.

0voto

Cuga Points 6286

Comment démarrez-vous le serveur de développement ? Assurez-vous que vous ne fournissez pas "c" ou "clear" comme indicateur, ce qui efface toutes les données persistantes.

0voto

kierans Points 430

Combien de temps s'écoule-t-il avant que le serveur de développement ne persiste les données sur le disque. Voyez-vous les messages du journal lorsque les données sont persistantes ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X