}
-// This is a pretty hard core default - the number of processors in the box - 1
-$iInstances = isset($aCMDResult['threads'])?$aCMDResult['threads']:(getProcessorCount()-1);
+// by default, use all but one processor, but never more than 15.
+$iInstances = isset($aCMDResult['threads'])
+ ? $aCMDResult['threads']
+ : (min(16, getProcessorCount()) - 1);
+
if ($iInstances < 1) {
$iInstances = 1;
warn("resetting threads to $iInstances");
if (!file_exists(CONST_ExtraDataPath.'/country_osm_grid.sql.gz')) {
echo 'Error: you need to download the country_osm_grid first:';
- echo "\n wget -O ".CONST_ExtraDataPath."/country_osm_grid.sql.gz http://www.nominatim.org/data/country_grid.sql.gz\n";
+ echo "\n wget -O ".CONST_ExtraDataPath."/country_osm_grid.sql.gz https://www.nominatim.org/data/country_grid.sql.gz\n";
exit(1);
}
fail("osm2pgsql not found in '$osm2pgsql'");
}
- if (!is_null(CONST_Osm2pgsql_Flatnode_File)) {
+ if (!is_null(CONST_Osm2pgsql_Flatnode_File) && CONST_Osm2pgsql_Flatnode_File) {
$osm2pgsql .= ' --flat-nodes '.CONST_Osm2pgsql_Flatnode_File;
}
if (CONST_Tablespace_Osm2pgsql_Data)
$sSQL .= ' FROM us_postcode WHERE postcode NOT IN';
$sSQL .= ' (SELECT postcode FROM location_postcode';
$sSQL .= " WHERE country_code = 'us')";
- } else {
- $sSQL .= 'TRUNCATE TABLE us_postcode';
+ if (!pg_query($oDB->connection, $sSQL)) fail(pg_last_error($oDB->connection));
}
- if (!pg_query($oDB->connection, $sSQL)) fail(pg_last_error($oDB->connection));
// add missing postcodes for GB (if available)
$sSQL = 'INSERT INTO location_postcode';
$bDidSomething = true;
$sTemplate = file_get_contents(CONST_BasePath.'/sql/indices.src.sql');
+ $sTemplate = str_replace('{www-user}', CONST_Database_Web_User, $sTemplate);
$sTemplate = replace_tablespace(
'{ts:address-index}',
CONST_Tablespace_Address_Index,
'import_polygon_*',
'import_status',
'place_addressline',
+ 'location_postcode',
'location_property*',
'placex',
'search_name',
'word',
'query_log',
'new_query_log',
- 'gb_postcode',
'spatial_ref_sys',
'country_name',
'place_classtype_*'
// been deleted already by CASCADE
}
- if (!is_null(CONST_Osm2pgsql_Flatnode_File)) {
+ if (!is_null(CONST_Osm2pgsql_Flatnode_File) && CONST_Osm2pgsql_Flatnode_File) {
if ($aCMDResult['verbose']) echo 'deleting '.CONST_Osm2pgsql_Flatnode_File."\n";
unlink(CONST_Osm2pgsql_Flatnode_File);
}