diff --git a/src/components/submission/list.vue b/src/components/submission/list.vue
index cc27bbfd4..22ef1e103 100644
--- a/src/components/submission/list.vue
+++ b/src/components/submission/list.vue
@@ -266,11 +266,8 @@ export default {
           }
         ),
         clear: clear && !refresh,
-        patch: (loaded > 0 && !clear) || (loaded > 0 && refresh)
-          ? (response) => {
-            if (clear && refresh) this.odata.removeData();
-            this.odata.addChunk(response.data);
-          }
+        patch: loaded > 0 && !clear && !refresh
+          ? (response) => this.odata.addChunk(response.data)
           : null
       })
         .finally(() => { this.refreshing = false; })
diff --git a/src/request-data/submissions.js b/src/request-data/submissions.js
index 802a7e741..bec678ac9 100644
--- a/src/request-data/submissions.js
+++ b/src/request-data/submissions.js
@@ -32,9 +32,6 @@ export default () => {
         nextLink: data['@odata.nextLink']
       });
     },
-    removeData() {
-      odata.value.splice(0, odata.value.length);
-    },
     addChunk(chunk) {
       for (const submission of chunk.value) {
         odata.value.push(submission);
diff --git a/test/components/submission/list.spec.js b/test/components/submission/list.spec.js
index 4907d38f9..dd6b907a8 100644
--- a/test/components/submission/list.spec.js
+++ b/test/components/submission/list.spec.js
@@ -112,6 +112,24 @@ describe('SubmissionList', () => {
           })
           .respondWithData(testData.submissionOData);
       });
+
+      it('should show correct row number after refresh', () => {
+        testData.extendedSubmissions.createPast(1);
+        return loadSubmissionList()
+          .complete()
+          .request(component =>
+            component.get('#submission-list-refresh-button').trigger('click'))
+          .beforeEachResponse(component => {
+            testData.extendedSubmissions.createPast(1);
+            component.get('#odata-loading-message').should.be.hidden();
+          })
+          .respondWithData(testData.submissionOData)
+          .afterResponse(component => {
+            component.findAllComponents(SubmissionMetadataRow).forEach((r, i) => {
+              r.props().rowNumber.should.be.equal(2 - i);
+            });
+          });
+      });
     });
 
     describe('load by chunk', () => {