diff --git a/objectstore/Helpers.cpp b/objectstore/Helpers.cpp
index f66237dc701c0a1b094a69a9996320b8eef0b2c6..242274acd28300be4ff25c336147fcb45164e62d 100644
--- a/objectstore/Helpers.cpp
+++ b/objectstore/Helpers.cpp
@@ -101,7 +101,6 @@ void Helpers::getLockedAndFetchedQueue<ArchiveQueue>(ArchiveQueue& archiveQueue,
       // We also need to make sure the lock on the queue is released (it is in
       // an object and hence not scoped).
       if (archiveQueueLock.isLocked()) archiveQueueLock.release();
-      archiveQueue.resetAddress();
       log::ScopedParamContainer params(lc);
       params.add("attemptNb", i+1)
             .add("exceptionMessage", ex.getMessageValue())
@@ -115,6 +114,7 @@ void Helpers::getLockedAndFetchedQueue<ArchiveQueue>(ArchiveQueue& archiveQueue,
             .add("queueLockTime", queueLockTime)
             .add("queueFetchTime", queueFetchTime);
       lc.log(log::ERR, "In Helpers::getLockedAndFetchedQueue<ArchiveQueue>(): failed to fetch an existing queue. Retrying.");
+      archiveQueue.resetAddress();
       continue;
     } catch (...) {
       // Also release the lock if needed here.