提交 7ace0a65 编写于 作者: J Jeremy Kemper

Match Fixnum and Float in particular. Rescue dup error and return result.

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7420 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
上级 28948879
...@@ -48,9 +48,8 @@ def delete(sql, name = nil) ...@@ -48,9 +48,8 @@ def delete(sql, name = nil)
clear_query_cache clear_query_cache
@connection.delete(sql, name) @connection.delete(sql, name)
end end
private private
def cache(sql) def cache(sql)
result = if @query_cache.has_key?(sql) result = if @query_cache.has_key?(sql)
log_info(sql, "CACHE", 0.0) log_info(sql, "CACHE", 0.0)
...@@ -62,13 +61,15 @@ def cache(sql) ...@@ -62,13 +61,15 @@ def cache(sql)
case result case result
when Array when Array
result.collect { |row| row.dup } result.collect { |row| row.dup }
when Fixnum, NilClass, FalseClass when nil, Fixnum, Float, true, false
result result
else else
result.dup result.dup
end end
rescue TypeError
result
end end
def method_missing(method, *arguments, &proc) def method_missing(method, *arguments, &proc)
@connection.send(method, *arguments, &proc) @connection.send(method, *arguments, &proc)
end end
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册