diff --git a/Library/Homebrew/formula.rb b/Library/Homebrew/formula.rb
index 5434d87c2e7728a9aee0502e2296d46bb7c759a6..84c2fb7a73b18218f9725fa0d1cad10bd92f1a85 100644
--- a/Library/Homebrew/formula.rb
+++ b/Library/Homebrew/formula.rb
@@ -1337,10 +1337,14 @@ class Formula
     end
   end
 
-  # Clear caches of .racks and .installed.
-  # @private
-  def self.clear_cache
+  # Clear cache of .racks
+  def self.clear_racks_cache
     @racks = nil
+  end
+
+  # Clear caches of .racks and .installed.
+  def self.clear_installed_formulae_cache
+    clear_racks_cache
     @installed = nil
   end
 
diff --git a/Library/Homebrew/tab.rb b/Library/Homebrew/tab.rb
index 6b274b1438c0eefef3d4faa719ae03cffb7459df..3bb7d8b624cf0ac92291bc556a7d5da20da4900d 100644
--- a/Library/Homebrew/tab.rb
+++ b/Library/Homebrew/tab.rb
@@ -319,7 +319,7 @@ class Tab < OpenStruct
   def write
     # If this is a new installation, the cache of installed formulae
     # will no longer be valid.
-    Formula.clear_cache unless tabfile.exist?
+    Formula.clear_installed_formulae_cache unless tabfile.exist?
 
     CACHE[tabfile] = self
     tabfile.atomic_write(to_json)