diff --git a/src/main/java/com/google/devtools/build/skyframe/BuildingState.java b/src/main/java/com/google/devtools/build/skyframe/BuildingState.java
index ad16c38..ae38e8c 100644
--- a/src/main/java/com/google/devtools/build/skyframe/BuildingState.java
+++ b/src/main/java/com/google/devtools/build/skyframe/BuildingState.java
@@ -153,6 +153,12 @@
         List<Object> getDataToConsolidate(BuildingState container) {
           return container.reverseDepsDataToConsolidate;
         }
+
+        @Override
+        public void consolidateReverseDeps(BuildingState container) {
+          // #consolidateReverseDeps is only supported for node entries, not building states.
+          throw new UnsupportedOperationException();
+        }
       };
 
   // Below are fields that are used for dirty nodes.
diff --git a/src/main/java/com/google/devtools/build/skyframe/InMemoryNodeEntry.java b/src/main/java/com/google/devtools/build/skyframe/InMemoryNodeEntry.java
index 261c836..95d23bd 100644
--- a/src/main/java/com/google/devtools/build/skyframe/InMemoryNodeEntry.java
+++ b/src/main/java/com/google/devtools/build/skyframe/InMemoryNodeEntry.java
@@ -221,8 +221,8 @@
     // Get reverse deps that need to be signaled.
     ImmutableSet<SkyKey> reverseDepsToSignal = buildingState.getReverseDepsToSignal();
     getReverseDepsUtil().addReverseDeps(this, reverseDepsToSignal);
-    // Force consistency check.
-    getReverseDepsUtil().getReverseDeps(this);
+    // Force consistency check and consolidate rdeps changes.
+    getReverseDepsUtil().consolidateReverseDeps(this);
     this.directDeps = buildingState.getFinishedDirectDeps().compress();
 
     markDone();
diff --git a/src/main/java/com/google/devtools/build/skyframe/ReverseDepsUtil.java b/src/main/java/com/google/devtools/build/skyframe/ReverseDepsUtil.java
index 219758b..52ad312 100644
--- a/src/main/java/com/google/devtools/build/skyframe/ReverseDepsUtil.java
+++ b/src/main/java/com/google/devtools/build/skyframe/ReverseDepsUtil.java
@@ -39,6 +39,8 @@
 
   void removeReverseDep(T container, SkyKey reverseDep);
 
+  void consolidateReverseDeps(T container);
+
   ImmutableSet<SkyKey> getReverseDeps(T container);
 
   String toString(T container);
diff --git a/src/main/java/com/google/devtools/build/skyframe/ReverseDepsUtilImpl.java b/src/main/java/com/google/devtools/build/skyframe/ReverseDepsUtilImpl.java
index 11af100..7eda036 100644
--- a/src/main/java/com/google/devtools/build/skyframe/ReverseDepsUtilImpl.java
+++ b/src/main/java/com/google/devtools/build/skyframe/ReverseDepsUtilImpl.java
@@ -283,6 +283,11 @@
     }
   }
 
+  @Override
+  public void consolidateReverseDeps(T container) {
+    consolidateData(container);
+  }
+
   private void consolidateData(T container) {
     List<Object> dataToConsolidate = getDataToConsolidate(container);
     if (dataToConsolidate == null) {
