diff options
author | 2016-07-21 17:27:35 +0100 | |
---|---|---|
committer | 2016-07-26 08:10:34 +0100 | |
commit | 09f6a56aa48f8d73d2900ab7c874258741bc054b (patch) | |
tree | 27b5f5fd3c5af2632941449113ed593c78ba1b47 /bitbake/lib/bb/cache.py | |
parent | b2ef908be1cd6b4d705b403149e696e6c5ecc431 (diff) | |
download | openembedded-core-contrib-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.py | 3 |
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): if virtualfn not in self.depends_cache: logger.debug(2, "Cache: %s is not cached", virtualfn) invalid = True + elif len(self.depends_cache[virtualfn]) != len(self.caches_array): + logger.debug(2, "Cache: Extra caches missing for %s?" % virtualfn) + invalid = True # If any one of the variants is not present, mark as invalid for all if invalid: |