Heroku: 1'den fazla Serbest boyutlu dinozor çalıştırılamaz


82

Koşmaya çalışıyordum

heroku run rake db:migrate

Ve hatayı alıyordu

1'den fazla Serbest boyutlu dinozor çalıştırılamaz.

Nasıl düzeltileceği için aşağıya bakın ...

Yanıtlar:


119

En Etkili

konsol çalıştırmada:

heroku ps

sonuç şuna benzer:

run.4859 (Free): up 2016/01/12 21:28:41 (~ 7m ago): rails c

Dolayısıyla, 4859 sayıları açık olan ve kapatılması gereken oturumu temsil eder. Hatayı düzeltmek için çalıştırmanız gereken (Açıkça, 4859 sayısını elde edilen sayı ile değiştirin):

heroku ps:stop run.4859

Çok basit bir çözüm.


Bu bana yardımcı oldu. Ve bu cevap, kabul edilen cevaptan daha açıklayıcıdır.
Barun

127

Cevap, herhangi bir açık heroku oturumunu aramaktır (aşağıda john'un işaret ettiği gibi 'heroku ps' kullanabilirsiniz), benim durumumda zaten 30 dakika önce bir heroku konsolu oturumu başlattım ve bunu unuttum. Bu nedenle, "1'den fazla Serbest boyutlu dinozor çalıştırılamaz" hatasını görürseniz, mevcut konsolu veya açtığınız diğer heroku oturumlarını kapatın.

Umarım bu, aklım başıma gelmemin on dakikasını kurtarır.


29
Bunu yoluyla heroku psve sonra heroku ps:stop <DYNO>işlemi durdurmak için yaparsınız .
John Beynon

14
@JohnBeynon Bunu doğru cevap olarak beğendim. Kıçımı kurtardım! Bilginize: Diğerleri için ilk komut ( heroku ps) linux "netstat" gibidir. Size çalışan süreçleri gösterecek. Benim durumumda benziyordu run.5656 (Free): up 2016/01/12 21:28:41 (~ 7m ago): rails c. Gördüğünüz gibi yanlışlıkla rails konsolunu açık bıraktım. Yani tek yapmam gereken koşmaktı heroku ps:stop run.5656. Easy Peasy :) Teşekkürler John!
B. Bulpett

2
Alternatif olarak, şunu deneyin: heroku ps:stop run.9121 --app my-app-nameBash numaram 9121. Sizinkiniheroku ps
multigoodverse

1
On dakika oldukça iyi, 14 saate ihtiyacım vardı ;-) - Bunun bir kodlama sorunu olduğunu düşündüm (bkz. Stackoverflow.com/questions/37683102/… )
OBu

2
Başkalarının benzer konulara göz atmasına yardımcı olduğu için kendi cevabınızı "çözüm" olarak işaretlemeniz iyi olur.
OBu

6

Aynı sorunu yaşadım ve bu sayfaya geldi. Okuduktan sonra neler olduğunu anladım ama aşağıdakileri eklemek istiyorum.

sadece koş

heroku kill DYNO --app your_app_name

Bundan sonra tüm açık konsolları kapatın.

Daha sonra db migrate komutunu çalıştırın, çalışacaktır.


1

Benim durumumda, tüm dinozorları heroku ps:restartyeniden başlatmak için koştum ve komut tekrar çalıştı.heroku run *

Örnekler

Heroku için yalnızca bir Git uzaktan kumandanız varsa, şunu kullanın:

heroku ps:restart && heroku run *

Eğer varsa birden Git uzaktan kumandalarını Heroku için şunu kullanın:

heroku ps:restart --remote your-remote-name && heroku run * --remote your-remote-name

VEYA

heroku ps:restart --app your-heroku-app-name && heroku run * --app your-heroku-app-name

*Komutunuzla değiştirin , örneğin consoleRails konsolu için.


Ne demek your-heroku-app-nameburada Heroku uygulaması için alt etki alanıdır. Örneğin, uygulama URL'niz ise https://cute-cat.herokuapp.com, bu şu anlama gelir your-heroku-app-name:cute-cat .

Emin değilseniz / Heroku için Git uzak adınızın ne olduğunu unuttuysanız, git remote -v bu konuda size yardımcı olabilir.

Misal:

$ git remote -v
this-is-the-remote-name      https://git.heroku.com/xxx.git (fetch)
this-is-the-remote-name      https://git.heroku.com/xxx.git (push)
this-is-another-remote-name  https://git.heroku.com/yyy.git (fetch)
this-is-another-remote-name  https://git.heroku.com/yyy.git (push)
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.