2012-05-20 28 views
3

這個問題已經在其他地方問過了,但問題似乎已經回來了,而且以前的解決方案不再有效。「時區位移超出範圍」for heroku db:push,無法用ruby解決1.9.2

Saving session to push_201205201307.dat.. 
!!! Caught Server Exception 
HTTP CODE: 500 
Taps Server Error: PGError: ERROR: time zone displacement out of range: "2012-05-09 12:00:00.000000+5894536800" 

我在Ubuntu 12.04上運行的PostgreSQL 9.1,並使用Heroku上雪松:到

異常輸出類似。

其他問題,如Error when pushing data to Heroku: time zone displacement out of range建議使用rvm切換到1.9.2-p290將匹配在heroku上運行的版本,並避免該問題對我無效。

排除表中的值允許我推送數據,但我正在尋找不止一次的解決方法。

pgbackups似乎它會工作,但我寧願不建立另一個完整的過程來解決使用db:push。

有什麼建議嗎?這實際上是一個輕拍問題?這裏的人似乎有不一致的結果:https://github.com/ricardochimal/taps/issues/92

回答

0

只是改變紅寶石版本沒有爲我工作。當使用舊的英雄寶石時,我可以運行「heroku db:push」。我基本上爲此創建了一個新的gemset,並確保它使用了heroku(不是toolbelt)的寶石版本,並且一切都運行良好。希望heroku能很快解決這個問題,因爲我很喜歡db:push/pull for development。

1

經過幾個小時的沮喪纔剛剛工作。我很失望,jfeust沒有給他爲他工作的寶石標籤。

我有一個PG數據庫,以便:

$rvm requirements

(他們造成麻煩你之前安裝的依賴和庫,你不知道爲什麼)備案

$rvm install 1.9.2-p318 
$gem install heroku -v '2.2.8' --no-ri --no-rdoc 
$gem install taps pg --no-ri --no-rdoc` 

我水龍頭是(0.3.24)和pg(0.14.1)

$rvm use 1.9.2-p318 

這是什麼對我有效。

$~/.rvm/gems/ruby-1.9.2-p318/gems/heroku-2.2.8/bin/heroku db:push