X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/2419066aabea73f78c4f21420b26bc0c633998e7..b3f1f45f97ebbe378be8e9e3b09f90aa5e22c0e1:/utils/check_import_finished.php diff --git a/utils/check_import_finished.php b/utils/check_import_finished.php index 7828f5cf..c6ccb67b 100755 --- a/utils/check_import_finished.php +++ b/utils/check_import_finished.php @@ -130,6 +130,32 @@ END; } } +echo 'Checking search indices are valid ... '; +$sSQL = <<< END + SELECT relname + FROM pg_class, pg_index + WHERE pg_index.indisvalid = false + AND pg_index.indexrelid = pg_class.oid; +END; +$aInvalid = $oDB->getCol($sSQL); +if (empty($aInvalid)) { + $print_success(); +} else { + $print_fail(); + echo <<< END + At least one index is invalid. That can happen, e.g. when index creation was + disrupted and later restarted. You should delete the affected indices and + run the index stage of setup again. + See the question 'Can a stopped/killed import process be resumed?' in the + troubleshooting guide. + Affected indices: +END; + echo join(', ', $aInvalid) . "\n"; + exit(1); +} + + + if (CONST_Use_US_Tiger_Data) { echo 'Checking TIGER table exists ... '; if ($oDB->tableExists('location_property_tiger')) {