2011-01-10 2 views
1

J'ai un projet django avec une commande de gestion de longue durée (~ 3 heures) dans mon environnement de production (apache mod_wsgi) ce processus échoue avec un tuyau cassé (32) à la fin, en essayant de mettre à jour la base de données.django long processus de connexion à la base de données

merci

+0

Vous ne devriez pas exécuter ces longues commandes exécutées dans le contexte des processus Web que pour certains processus configurations Apache pourraient être tués hors et remis en marche à tout moment. Vous devez exécuter ces commandes à partir du processus appelé séparément qui s'exécute en arrière-plan et qui est dissocié des processus Web. Si c'est fait sur un horaire régulier par exemple, alors déclenchez-le à partir de cron. –

+0

oui, c'est fait avec cron, il interagit via le système django via manage.py Mercury

Répondre

1

Le tuyau cassé signifie la plupart du temps qu'une prise dans le canal de transmission a été fermé sans en avertir l'autre, dans votre cas, je pense que cela signifie que la connexion de base de données que vous avez déterminé ont fermé de la partie base de données, donc quand vous codez essayer de l'utiliser, il soulève l'exception.

Habituellement, la connexion de base de données a un temps qui « habituellement », vous pouvez configurer en le rendant plus grand pour résoudre ce genre de problème, consultez la documentation de votre base de données pour voir comment. N.B: vous ne nous donnez pas beaucoup de détails, donc j'essaie juste de faire des suppositions ici.

Espérons que cela peut aider.

Questions connexes