diff --git a/lib/reducers/db-ops-reducer.js b/lib/reducers/db-ops-reducer.js
new file mode 100644
--- /dev/null
+++ b/lib/reducers/db-ops-reducer.js
@@ -0,0 +1,18 @@
+// @flow
+
+import { opsProcessingFinishedActionType } from '../actions/db-ops-actions.js';
+import type { DBOpsStore } from '../types/db-ops-types.js';
+import type { BaseAction } from '../types/redux-types.js';
+
+function reduceDBOpsStore(store: DBOpsStore, action: BaseAction): DBOpsStore {
+  if (action.type === opsProcessingFinishedActionType) {
+    const [, ...rest] = store.queuedOps;
+    return {
+      ...store,
+      queuedOps: rest,
+    };
+  }
+  return store;
+}
+
+export { reduceDBOpsStore };
diff --git a/lib/reducers/db-ops-reducer.test.js b/lib/reducers/db-ops-reducer.test.js
new file mode 100644
--- /dev/null
+++ b/lib/reducers/db-ops-reducer.test.js
@@ -0,0 +1,34 @@
+// @flow
+
+import { reduceDBOpsStore } from './db-ops-reducer.js';
+import { opsProcessingFinishedActionType } from '../actions/db-ops-actions.js';
+import type { DBOpsStore } from '../types/db-ops-types.js';
+
+const emptyOps = {
+  draftStoreOperations: [],
+  threadStoreOperations: [],
+  messageStoreOperations: [],
+  reportStoreOperations: [],
+  userStoreOperations: [],
+  keyserverStoreOperations: [],
+  communityStoreOperations: [],
+  integrityStoreOperations: [],
+};
+
+describe('DB ops reducer', () => {
+  const store: DBOpsStore = {
+    queuedOps: [
+      { ops: emptyOps, messageID: '5' },
+      { ops: emptyOps },
+      { ops: null, messageID: '7' },
+    ],
+  };
+
+  it('should remove the first entry', () => {
+    const newState = reduceDBOpsStore(store, {
+      type: opsProcessingFinishedActionType,
+    });
+    expect(newState.queuedOps.length).toEqual(2);
+    expect(newState.queuedOps[1].messageID).toEqual('7');
+  });
+});
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
@@ -4,6 +4,7 @@
 import { reduceCommunityStore } from './community-reducer.js';
 import reduceCustomerServer from './custom-server-reducer.js';
 import reduceDataLoaded from './data-loaded-reducer.js';
+import { reduceDBOpsStore } from './db-ops-reducer.js';
 import { reduceDraftStore } from './draft-reducer.js';
 import reduceEnabledApps from './enabled-apps-reducer.js';
 import { reduceEntryInfos } from './entry-reducer.js';
@@ -209,6 +210,7 @@
       globalThemeInfo: reduceGlobalThemeInfo(state.globalThemeInfo, action),
       customServer: reduceCustomerServer(state.customServer, action),
       communityStore,
+      dbOpsStore: reduceDBOpsStore(state.dbOpsStore, action),
     },
     storeOperations: {
       draftStoreOperations,