/**
* Perform a scan and scroll through the results, bulk deleting by result ids
*
* @param ClassMetadata $class
* @param object $scanQuery
* @param string $index
*/
private function deleteByScanScroll(ClassMetadata $class, $scanQuery, $index)
{
$type = $this->getIndex($index)->getType($class->type);
$query = Query::create($scanQuery);
$results = $this->scan($query, array($class));
foreach ($results as $collection) {
$resultIds = array();
foreach ($collection->getResults() as $result) {
$resultIds[] = $result->getId();
}
$this->client->deleteIds($resultIds, $index, $type);
}
}