summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bitbake/lib/bb/siggen.py14
1 files changed, 7 insertions, 7 deletions
diff --git a/bitbake/lib/bb/siggen.py b/bitbake/lib/bb/siggen.py
index 79f347db30..92066da00c 100644
--- a/bitbake/lib/bb/siggen.py
+++ b/bitbake/lib/bb/siggen.py
@@ -671,20 +671,20 @@ class SignatureGeneratorUniHashMixIn(object):
671 if len(query) == 0: 671 if len(query) == 0:
672 return {} 672 return {}
673 673
674 uncached_query = {} 674 query_keys = []
675 result = {} 675 result = {}
676 for key, unihash in query.items(): 676 for key, unihash in query.items():
677 if unihash in self.unihash_exists_cache: 677 if unihash in self.unihash_exists_cache:
678 result[key] = True 678 result[key] = True
679 else: 679 else:
680 uncached_query[key] = unihash 680 query_keys.append(key)
681 681
682 with self.client() as client: 682 if query_keys:
683 uncached_result = { 683 with self.client() as client:
684 key: client.unihash_exists(value) for key, value in uncached_query.items() 684 query_result = client.unihash_exists_batch(query[k] for k in query_keys)
685 }
686 685
687 for key, exists in uncached_result.items(): 686 for idx, key in enumerate(query_keys):
687 exists = query_result[idx]
688 if exists: 688 if exists:
689 self.unihash_exists_cache.add(query[key]) 689 self.unihash_exists_cache.add(query[key])
690 result[key] = exists 690 result[key] = exists