bugfix.
[Plinn.git] / catalog.py
index d353d6d..1f08a83 100644 (file)
@@ -117,13 +117,14 @@ class DelegatedCatalog(Catalog) :
         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.
         '''
         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)
         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))
         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))