fail on error

- stop indexing if there is any other error than deadlock from the DB
- stop import if osm2pgsql or indexing fails
This commit is contained in:
Sarah Hoffmann 2012-07-31 00:31:38 +02:00
parent fe7137990b
commit b11718699e
2 changed files with 12 additions and 6 deletions

View File

@ -369,8 +369,7 @@ void *nominatim_indexThread(void * thread_data_in)
{
fprintf(stderr, "index_placex: UPDATE failed: %s", PQerrorMessage(thread_data->conn));
PQclear(res);
sleep(rand() % 10);
// exit(EXIT_FAILURE);
exit(EXIT_FAILURE);
}
}
}

View File

@ -129,7 +129,7 @@
$osm2pgsql .= ' -lsc -O gazetteer --hstore';
$osm2pgsql .= ' -C '.$iCacheMemory;
$osm2pgsql .= ' -d '.$aDSNInfo['database'].' '.$aCMDResult['osm-file'];
passthru($osm2pgsql);
passthruCheckReturn($osm2pgsql);
$oDB =& getDB();
$x = $oDB->getRow('select * from place limit 1');
@ -457,11 +457,11 @@
$sOutputFile = '';
if (isset($aCMDResult['index-output'])) $sOutputFile = ' -F '.$aCMDResult['index-output'];
$sBaseCmd = CONST_BasePath.'/nominatim/nominatim -i -d '.$aDSNInfo['database'].' -t '.$iInstances.$sOutputFile;
passthru($sBaseCmd.' -R 4');
passthruCheckReturn($sBaseCmd.' -R 4');
if (!$aCMDResult['index-noanalyse']) pgsqlRunScript('ANALYSE');
passthru($sBaseCmd.' -r 5 -R 25');
passthruCheckReturn($sBaseCmd.' -r 5 -R 25');
if (!$aCMDResult['index-noanalyse']) pgsqlRunScript('ANALYSE');
passthru($sBaseCmd.' -r 26');
passthruCheckReturn($sBaseCmd.' -r 26');
}
if ($aCMDResult['create-search-indices'] || $aCMDResult['all'])
@ -625,3 +625,10 @@
proc_close($hProcess);
}
function passthruCheckReturn($cmd)
{
$result = -1;
passthru($cmd, $result);
if ($result != 0) fail('Error executing external command: '.$cmd);
}