読者です 読者をやめる 読者になる 読者になる

Ruby 1.9.0 on Ubuntu 9.04でtokyotyrant.rbを一応動かす

Ruby Tokyo Tyrant

使用したRubyクライアントは以下
http://tokyocabinet.sourceforge.net/tyrantrubypkg/tokyotyrant-ruby-1.5.tar.gz

動作テストのためのコードは以下を使用させていただいた
TokyoCabinet/TokyoTyrant を Rails で使う - なんとなく日記

Ruby 1.8系では動くのにRuby 1.9.0では動かなかった。どうやら文字コード判定部分でエラーを吐いているようだったので、思い切ってコメントアウトをしてみた。

tokyotyrant.rbの991、992行目。

    def _retstr(str)
      if str.respond_to?(:force_encoding)
        if @enc
          str.force_encoding(@enc)
#        elsif Encoding.default_internal
#          str.force_encoding(Encoding.default_internal)
        else
          str.force_encoding("UTF-8")
        end
      end
      return str
    end


動いた。