summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/cache.py
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2016-07-21 17:27:35 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-07-26 08:10:34 +0100
commit09f6a56aa48f8d73d2900ab7c874258741bc054b (patch)
tree27b5f5fd3c5af2632941449113ed593c78ba1b47 /bitbake/lib/bb/cache.py
parentb2ef908be1cd6b4d705b403149e696e6c5ecc431 (diff)
downloadpoky-09f6a56aa48f8d73d2900ab7c874258741bc054b.tar.gz
bitbake: cache: Correctly handle missing extra caches
If an "extras" cache file is corrupted, the system would not notice and later fail with errors about missing entries. Add a test for this which means we can fall back to re-parsing in those cases. [YOCTO #9902] (Bitbake rev: 51843d8f2bbe2e54db7593ca61984abe70423ef6) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/cache.py')
-rw-r--r--bitbake/lib/bb/cache.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/bitbake/lib/bb/cache.py b/bitbake/lib/bb/cache.py
index afd373da9b..b90d488b99 100644
--- a/bitbake/lib/bb/cache.py
+++ b/bitbake/lib/bb/cache.py
@@ -556,6 +556,9 @@ class Cache(object):
556 if virtualfn not in self.depends_cache: 556 if virtualfn not in self.depends_cache:
557 logger.debug(2, "Cache: %s is not cached", virtualfn) 557 logger.debug(2, "Cache: %s is not cached", virtualfn)
558 invalid = True 558 invalid = True
559 elif len(self.depends_cache[virtualfn]) != len(self.caches_array):
560 logger.debug(2, "Cache: Extra caches missing for %s?" % virtualfn)
561 invalid = True
559 562
560 # If any one of the variants is not present, mark as invalid for all 563 # If any one of the variants is not present, mark as invalid for all
561 if invalid: 564 if invalid: