From 7f20bb995aa34c6c6869543209595ff811e9dbc3 Mon Sep 17 00:00:00 2001 From: Jon Leighton Date: Fri, 16 Dec 2011 13:07:10 +0000 Subject: Don't store defaults in the schema cache --- activerecord/lib/active_record/attribute_methods/primary_key.rb | 4 ++-- activerecord/lib/active_record/connection_adapters/schema_cache.rb | 5 ++--- 2 files changed, 4 insertions(+), 5 deletions(-) (limited to 'activerecord/lib/active_record') diff --git a/activerecord/lib/active_record/attribute_methods/primary_key.rb b/activerecord/lib/active_record/attribute_methods/primary_key.rb index e3c7344f59..f575b26d04 100644 --- a/activerecord/lib/active_record/attribute_methods/primary_key.rb +++ b/activerecord/lib/active_record/attribute_methods/primary_key.rb @@ -72,8 +72,8 @@ module ActiveRecord when :table_name_with_underscore base_name.foreign_key else - if ActiveRecord::Base != self && connection.schema_cache.table_exists?(table_name) - connection.primary_key(table_name) + if ActiveRecord::Base != self && table_name + connection.schema_cache.primary_keys[table_name] else 'id' end diff --git a/activerecord/lib/active_record/connection_adapters/schema_cache.rb b/activerecord/lib/active_record/connection_adapters/schema_cache.rb index a8f7fd3648..da507fd3ae 100644 --- a/activerecord/lib/active_record/connection_adapters/schema_cache.rb +++ b/activerecord/lib/active_record/connection_adapters/schema_cache.rb @@ -8,7 +8,7 @@ module ActiveRecord @connection = conn @tables = {} - @columns = Hash.new do |h, table_name| + @columns = Hash.new do |h, table_name| h[table_name] = conn.columns(table_name, "#{table_name} Columns") end @@ -19,8 +19,7 @@ module ActiveRecord end @primary_keys = Hash.new do |h, table_name| - h[table_name] = table_exists?(table_name) ? - conn.primary_key(table_name) : 'id' + h[table_name] = table_exists?(table_name) ? conn.primary_key(table_name) : nil end end -- cgit v1.2.3