pgsqlRunScript('ALTER FUNCTION ST_Distance_Spheroid(geometry, geometry, spheroid) RENAME TO ST_DistanceSpheroid');
}
+ 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";
+ exit(1);
+ }
+
pgsqlRunScriptFile(CONST_BasePath.'/data/country_name.sql');
pgsqlRunScriptFile(CONST_BasePath.'/data/country_naturalearthdata.sql');
- pgsqlRunScriptFile(CONST_BasePath.'/data/country_osm_grid.sql');
+ pgsqlRunScriptFile(CONST_BasePath.'/data/country_osm_grid.sql.gz');
pgsqlRunScriptFile(CONST_BasePath.'/data/gb_postcode_table.sql');
if (file_exists(CONST_BasePath.'/data/gb_postcode_data.sql.gz')) {
pgsqlRunScriptFile(CONST_BasePath.'/data/gb_postcode_data.sql.gz');
}
echo "Load Data\n";
+ $sColumns = 'osm_type, osm_id, class, type, name, admin_level, address, extratags, geometry';
+
$aDBInstances = array();
$iLoadThreads = max(1, $iInstances - 1);
for ($i = 0; $i < $iLoadThreads; $i++) {
$aDBInstances[$i] =& getDB(true);
- $sSQL = 'insert into placex (osm_type, osm_id, class, type, name, admin_level, ';
- $sSQL .= ' address, extratags, geometry) ';
- $sSQL .= 'select * from place where osm_id % '.$iLoadThreads.' = '.$i;
+ $sSQL = "INSERT INTO placex ($sColumns) SELECT $sColumns FROM place WHERE osm_id % $iLoadThreads = $i";
$sSQL .= " and not (class='place' and type='houses' and osm_type='W'";
$sSQL .= " and ST_GeometryType(geometry) = 'ST_LineString')";
$sSQL .= " and ST_IsValid(geometry)";