diff --git a/lib/reducers/master-reducer.js b/lib/reducers/master-reducer.js
--- a/lib/reducers/master-reducer.js
+++ b/lib/reducers/master-reducer.js
@@ -29,6 +29,10 @@
   keyserverRegisterActionTypes,
   logInActionTypes,
 } from '../actions/user-actions.js';
+import {
+  keyserverStoreOpsHandlers,
+  type ReplaceKeyserverOperation,
+} from '../ops/keyserver-store-ops.js';
 import { isStaff } from '../shared/staff-utils.js';
 import type { BaseNavInfo } from '../types/nav-types.js';
 import type { BaseAppState, BaseAction } from '../types/redux-types.js';
@@ -87,6 +91,7 @@
     action.type !== siweAuthActionTypes.success &&
     action.type !== addKeyserverActionType
   ) {
+    const replaceOperations: ReplaceKeyserverOperation[] = [];
     for (const keyserverID in keyserverStore.keyserverInfos) {
       if (
         keyserverStore.keyserverInfos[keyserverID].connection.status ===
@@ -111,15 +116,29 @@
         keyserverStore.keyserverInfos[keyserverID].updatesCurrentAsOf !==
           state.keyserverStore.keyserverInfos[keyserverID].updatesCurrentAsOf
       ) {
-        const keyserverInfos = { ...keyserverStore.keyserverInfos };
-        keyserverInfos[keyserverID] = {
-          ...keyserverInfos[keyserverID],
-          updatesCurrentAsOf:
-            state.keyserverStore.keyserverInfos[keyserverID].updatesCurrentAsOf,
-        };
-        keyserverStore = { ...keyserverStore, keyserverInfos };
+        replaceOperations.push({
+          type: 'replace_keyserver',
+          payload: {
+            id: keyserverID,
+            keyserverInfo: {
+              ...keyserverStore.keyserverInfos[keyserverID],
+              updatesCurrentAsOf:
+                state.keyserverStore.keyserverInfos[keyserverID]
+                  .updatesCurrentAsOf,
+            },
+          },
+        });
       }
     }
+    if (replaceOperations.length > 0) {
+      keyserverStore = {
+        ...keyserverStore,
+        keyserverInfos: keyserverStoreOpsHandlers.processStoreOperations(
+          keyserverStore.keyserverInfos,
+          replaceOperations,
+        ),
+      };
+    }
   }
 
   const { draftStore, draftStoreOperations } = reduceDraftStore(