2011年2月17日

[ruby-list:47896] Re: rails3, mysql2, twitterで落ちる

杉森です。

誤解を招いたかもしれませんが、最初のメールで示したコードは、
コマンドラインから実行すると問題なく実行できます。
また、ご呈示いただいた2つのコードも問題なく実行できます。

頂いたコメントを読んで、net/httpsだけで再現することがわかりました。(twitterは無関係)

以下で問題が再現します。
0. rails new app でアプリを作成
1. Gemfile に gem 'mysql2' を追加
2. 以下のコントローラーを作成
---- RAILS_ROOT/app/controllers/net_controller.rb ----
require 'open-uri'
require 'net/https'
class NetController < ApplicationController
def fetch
open('https://twitter.com/'){|io| io.read }
render :text => :test
end
end
-------------
3. (適切にルーティングした上で)上記コントローラーにアクセスすると落ちる


以上

2011/2/17 Shota Fukumori (sora_h) <sorah@xxxxx>:
> ふむ。
>
> 最初に提示された動くコードというのは、「再現するコード」ですか? (coreを吐いてクラッシュするという意味の再現です)
>
> その場合、以下の2つのコードでは再現するかどうか確認してもらってもよろしいでしょうか。
> --ここから--
> require 'twitter'
>
> # twitter
> Twitter.configure do |config|
> config.consumer_key = 'xxxx'
> config.consumer_secret = 'xxxx'
> config.oauth_token = 'xxxx'
> config.oauth_token_secret = 'xxxx'
> end
>
> c = Twitter.client
> p c.home_timeline
> --ここまで--
>
> --ここから--
> require 'open-uri'
> require 'net/https'
>
> open('https://twitter.com/'){|io| io.read }
> --ここまで--
>
> 2011/2/17 daisuke sugimori <daixque@xxxxx>:
>> sora_hさん
>> 杉森です。
>>
>>> また、どのようにビルドしたrubyですか? rvmやmacportsや自力か、などといった。
>> rvm 1.1.0 でビルド・インストールしました。
>>
>> クラッシュログを以下に貼付けます。
>
>
> --
> Shota Fukumori a.k.a. @sora_h - http://codnote.net/
>
>


投稿者 xml-rpc : 2011年2月17日 13:44
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/102064
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。