@@ -543,9 +543,9 @@ searchByType (IndexName indexName)
543543 (MappingName mappingName) = bindM2 dispatchSearch url . return
544544 where url = joinPath [indexName, mappingName, "_search"]
545545
546−scanSearch' :: MonadBH m => Search -> m (Maybe ScrollId)
547−scanSearch' search = do
548− let url = joinPath ["_search"]
546+scanSearch' :: MonadBH m => IndexName -> MappingName -> Search -> m (Maybe ScrollId)
547+scanSearch' (IndexName indexName) (MappingName mappingName) search = do
548+ let url = joinPath [indexName, mappingName, "_search"]
549549 search' = search { searchType = SearchTypeScan }
550550 resp' <- bindM2 dispatchSearch url (return search')
551551 let msr = decode' $ responseBody resp' :: Maybe (SearchResult ())
@@ -570,9 +570,11 @@ simpleAccumilator oldHits (newHits, msid) = do
570570 (newHits', msid') <- scroll' msid
571571 simpleAccumilator (oldHits ++ newHits) (newHits', msid')
572572
573−scanSearch :: (FromJSON a, MonadBH m) => Search -> m [Hit a]
574−scanSearch search = do
575− msid <- scanSearch' search
573+-- | 'scanSearch' uses the 'scan&scroll' API of elastic,
574+-- for a given 'IndexName' and 'MappingName',
575+scanSearch :: (FromJSON a, MonadBH m) => IndexName -> MappingName -> Search -> m [Hit a]
576+scanSearch indexName mappingName search = do
577+ msid <- scanSearch' indexName mappingName search
576578 (hits, msid') <- scroll' msid
577579 (totalHits, _) <- simpleAccumilator [] (hits, msid')
578580 return totalHits