function drush_search_api_grouping_clean_tracking_table in Search API Grouping 7.2
Cleans the index table and ensures there are no orphaned ids.
File
- ./
search_api_grouping.drush.inc, line 99 - Drush commands for search api denormalized entity
Code
function drush_search_api_grouping_clean_tracking_table($index_id = NULL) {
if (search_api_drush_static(__FUNCTION__)) {
return;
}
$indexes = search_api_drush_get_index($index_id);
if (empty($indexes)) {
drush_log(dt('No indexes found', array()), 'warning');
return;
}
foreach ($indexes as $index) {
if ($index
->datasource() instanceof SearchApiDenormalizedEntityDataSourceController) {
drush_log(dt('!index: start cleaning.', array(
'!index' => $index->machine_name,
)), 'ok');
$deleted_ids = $index
->datasource()
->cleanTable();
drush_log(dt('!index: cleaning done. !amount orphaned items deleted.', array(
'!index' => $index->machine_name,
'!amount' => $deleted_ids,
)), 'ok');
}
else {
drush_log(dt('!index has no denormalized datasource - skipped', array(
'!index' => $index->machine_name,
)), 'notice');
}
}
}