None signifie : pas de délégation, il faut continuer à interroger les autres index.
IISet() vide : pas de résultat lors de la délégation, on peut arrêter la recherche.
'''
- indexes = set(plan).intersection(set(self.zcat.delegatedIndexes))
+ indexes = set(query.keys()).intersection(set(self.zcat.delegatedIndexes))
if not indexes :
return None
delegatedQuery = {}
for i in indexes :
delegatedQuery[i] = query.pop(i)
- plan.remove(i)
+ try : plan.remove(i)
+ except ValueError : pass
c = SolrConnection(self.zcat.solr_url)
q =' AND '.join(['%s:"%s"' % item for item in delegatedQuery.items()])
resp = c.query(q, fields='id', rows=len(self))