diff --git a/lib/bb/cache.py b/lib/bb/cache.py
index f5b527ba6a..3fc097241a 100644
--- a/lib/bb/cache.py
+++ b/lib/bb/cache.py
@@ -311,7 +311,7 @@ class SiggenRecipeInfo(RecipeInfoCommon):
             cls.restore_map[pid] = {}
             cls.restore_count[pid] = 1
         map = cls.restore_map[pid]
-        for fs, dep, mapnum in deps:
+        for dep, fs, mapnum in deps:
             if mapnum:
                 ret[dep] = map[mapnum]
             else:
@@ -759,6 +759,7 @@ class MulticonfigCache(Mapping):
         loaded = 0
 
         for c in self.__caches.values():
+            SiggenRecipeInfo.reset()
             loaded += c.prepare_cache(progress)
             previous_progress = current_progress
 
diff --git a/lib/bb/cooker.py b/lib/bb/cooker.py
index 88c97c5e4a..14440f1647 100644
--- a/lib/bb/cooker.py
+++ b/lib/bb/cooker.py
@@ -2240,6 +2240,7 @@ class CookerParser(object):
 
         def sync_caches():
             for c in self.bb_caches.values():
+                bb.cache.SiggenRecipeInfo.reset()
                 c.sync()
 
         self.syncthread = threading.Thread(target=sync_caches, name="SyncThread")
