AppEngine::Memcacheで日本語のキーが使えない
こんにちは。那由多屋の加藤です。
相変わらずGAE/JRubyと戯れる日々ですが、またmemcacheの不具合に遭遇。memcacheで日本語のキーが使えないようです。いつものようにモンキーパッチで対処。
# 「memcacheで日本語キーが使用できない不具合」を修正するモンキーパッチ # 対象はappengine-apis-0.0.12 module AppEngine class Memcache def memcache_key(obj) key = obj key = java.lang.String.new(key.to_s) if key key end class KeyMap def <<(key) @orig_keys << key string_key = if key key.to_s else key end @map[string_key] = key if string_key java.lang.String.new(string_key) else string_key end end def java_keys @map.keys.collect do |key| if key java.lang.String.new(key) else key end end end end end end