2013-09-27 38 views
0

在運行bundle install試圖更新其他寶石時,思維獅身人面像從3.0.3更新到版本3.0.5。Thinking-sphinx 3.0.5破解Heroku Mysql連接

我現在得到在Heroku上出現以下錯誤:

Mysql2::Error: Can't connect to MySQL server on '127.0.0.1' (111) 

獅身人面像正常工作在本地,但導致這個錯誤在Heroku上的任何搜索。當然,在Heroku上,它不應該試圖連接到localhot,而是連接到Sphinx插件。

版本3.0.5中發生了什麼變化,我該如何解決?

另外,如何保護我的應用程序免受這些類型的東西的影響,而無需在版本3.0.3中永遠固定?

回答

0

所有這個答案要歸功於帕特艾倫,思維獅身人面像的創作者,我只是在這裏複製它在希望它能幫助別人誰遇到問題:

爲的設置給定的環境(例如從config/think_sphinx.yml)現在在Thinking Sphinx框架被配置時重新加載(以適當地重新應用任何給定的值)。然而,Flying Sphinx會將自定義連接參數設置爲紅寶石方面的設置哈希,因此這些細節將丟失,並且而不是重新應用(因爲它們不在文件中)。

The fix - at least for the moment - is as follows: 

* In your Gemfile, set flying-sphinx's require to nil (so it's not loaded initially). 
* In your config/boot.rb file, add `require 'flying_sphinx/sinatra'` just after you switch Thinking Sphinx frameworks 
+0

值得注意的是,這隻有當你設置一個新的框架(這可能只有在使用Rails以外的其他情況時纔會發生)。 – pat