diff --git a/synapse/replication/resource.py b/synapse/replication/resource.py
index 84993b33b392a345d4ff57f433049044e53a93bc..0996054f6b6a29c5f6b7e00ce94d770bae731b50 100644
--- a/synapse/replication/resource.py
+++ b/synapse/replication/resource.py
@@ -390,7 +390,7 @@ class ReplicationResource(Resource):
 
         caches = request_streams.get("caches")
 
-        if caches is not None:
+        if caches is not None and current_position != caches:
             updated_caches = yield self.store.get_all_updated_caches(
                 caches, current_position, limit
             )