30 votes

heroku run console renvoie 'Error connecting to process' (erreur de connexion au processus)

J'ai déployé une application rails 3.1 sur la pile Heroku Cedar, et j'essaie d'effectuer un :

heroku run rake db:migrate

il revient :

Running console attached to terminal... 
Error connecting to process

J'essaie également de lancer simplement la console :

heroku run console

Toute commande d'exécution renvoie la même erreur.

Running console attached to terminal... 
Error connecting to process

En regardant les journaux, j'obtiens le code d'erreur :

2011-09-25T16:04:52+00:00 app[run.2]: Error R13 (Attach error) -> Failed to attach to process

Quand je heroku ps pour voir les processus en cours, je peux voir que mes tentatives sont en cours :

Process       State               Command
------------  ------------------  ------------------------------
run.2         complete for 26m    bundle exec rails console
run.3         up for 27s          bundle exec rails console
run.4         up for 3s           bundle exec rake db:create
web.1         up for 46s          bundle exec thin start -p $PORT -e..

Mais encore une fois, chacun d'entre eux soulève des exceptions :

2011-09-25T16:31:47+00:00 app[run.3]: Error R13 (Attach error) -> Failed to attach to process
2011-09-25T16:31:47+00:00 heroku[run.3]: Process exited
2011-09-25T16:31:48+00:00 heroku[run.3]: State changed from up to complete
2011-09-25T16:32:11+00:00 app[run.4]: Error R13 (Attach error) -> Failed to attach to process
2011-09-25T16:32:11+00:00 heroku[run.4]: Process exited
2011-09-25T16:32:12+00:00 heroku[run.4]: State changed from up to complete

L'administration de serveur n'est pas ma tasse de thé, d'où la décision d'utiliser Heroku.

La documentation de Heroku et la recherche sur Google ne m'ont pas conduit sur un chemin qui me donne beaucoup d'éléments.

Avez-vous des idées ? Ce n'est pas ce que j'ai constaté sur la pile Bamboo.

Mes autres erreurs sont évidemment liées à des migrations de bases de données qui ne sont pas effectuées. Jusqu'à ce que je puisse exécuter les tâches rake, je suis coincé pour avancer.

81voto

Geoff Points 711

J'ai eu le même problème, et bien que je ne l'aie pas résolu, j'ai trouvé une solution de contournement.

Au lieu d'utiliser :

heroku run rake db:migrate

Vous pouvez utiliser :

heroku run:detached rake db:migrate

Ceci exécute la commande en arrière-plan, en écrivant la sortie dans le journal. Lorsqu'elle est terminée, vous pouvez consulter le journal pour voir le résultat.

Ce n'est pas l'idéal, mais quand vous êtes sur un réseau inadéquat, cela vous sortira d'un trou :)

17voto

kch Points 25855

Ce problème est généralement dû à un problème de connectivité ou de pare-feu. Vous pouvez tester votre connexion au heroku run et heroku console en exécutant les commandes suivantes :

$ telnet rendezvous.heroku.com 5000 
$ telnet s1.runtime.heroku.com 5000

(Si vous réussissez à vous connecter, appuyez sur Ctrl+] puis tapez quit pour quitter la session telnet).

Certains utilisateurs ont réussi après avoir mis sur liste blanche ces combinaisons nom d'hôte+port dans leur pare-feu.

Heroku mentionne ce point dans la section de dépannage des processus ponctuels : http://devcenter.heroku.com/articles/oneoff-admin-ps

Une application qui prend beaucoup de temps à démarrer peut également exaspérer les problèmes de connectivité. Si le serveur ne répond pas assez rapidement, votre connexion locale sera interrompue avant que l'application puisse démarrer.

1voto

user820120 Points 229

Essayez d'installer la dernière version de la gemme heroku, puis exécutez à nouveau ces commandes "heroku run".

0voto

John Beynon Points 23163

Cela ressemble à un problème avec Heroku. J'obtiens des erreurs de connexion à la console sur mes applications fonctionnant sur Cedar. Vous ne faites certainement rien de mal avec les commandes que vous tapez.

0voto

jdcravens Points 257

Résolu - j'ai testé avec un câble 3G et j'ai reçu des réponses. Il semble que ce ne soit pas le pare-feu, mais peut-être le proxy ou le FAI.

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