X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/cf39e07dba72373302e2d1a48de3083339d0decb..cfed4bc204e172dd48054b001abea04b9fc8675a:/utils/setup.php diff --git a/utils/setup.php b/utils/setup.php index cb544f4c..dcce1ead 100755 --- a/utils/setup.php +++ b/utils/setup.php @@ -94,8 +94,9 @@ if ($aCMDResult['create-db'] || $aCMDResult['all']) { if ($aCMDResult['setup-db'] || $aCMDResult['all']) { echo "Setup DB\n"; $bDidSomething = true; - // TODO: path detection, detection memory, etc. + // TODO: path detection, detection memory, etc. + // $oDB =& getDB(); $fPostgresVersion = getPostgresVersion($oDB); @@ -197,18 +198,36 @@ if ($aCMDResult['create-tables'] || $aCMDResult['all']) { echo "Tables\n"; $sTemplate = file_get_contents(CONST_BasePath.'/sql/tables.sql'); $sTemplate = str_replace('{www-user}', CONST_Database_Web_User, $sTemplate); - $sTemplate = replace_tablespace('{ts:address-data}', - CONST_Tablespace_Address_Data, $sTemplate); - $sTemplate = replace_tablespace('{ts:address-index}', - CONST_Tablespace_Address_Index, $sTemplate); - $sTemplate = replace_tablespace('{ts:search-data}', - CONST_Tablespace_Search_Data, $sTemplate); - $sTemplate = replace_tablespace('{ts:search-index}', - CONST_Tablespace_Search_Index, $sTemplate); - $sTemplate = replace_tablespace('{ts:aux-data}', - CONST_Tablespace_Aux_Data, $sTemplate); - $sTemplate = replace_tablespace('{ts:aux-index}', - CONST_Tablespace_Aux_Index, $sTemplate); + $sTemplate = replace_tablespace( + '{ts:address-data}', + CONST_Tablespace_Address_Data, + $sTemplate + ); + $sTemplate = replace_tablespace( + '{ts:address-index}', + CONST_Tablespace_Address_Index, + $sTemplate + ); + $sTemplate = replace_tablespace( + '{ts:search-data}', + CONST_Tablespace_Search_Data, + $sTemplate + ); + $sTemplate = replace_tablespace( + '{ts:search-index}', + CONST_Tablespace_Search_Index, + $sTemplate + ); + $sTemplate = replace_tablespace( + '{ts:aux-data}', + CONST_Tablespace_Aux_Data, + $sTemplate + ); + $sTemplate = replace_tablespace( + '{ts:aux-index}', + CONST_Tablespace_Aux_Index, + $sTemplate + ); pgsqlRunScript($sTemplate, false); // re-run the functions @@ -221,18 +240,36 @@ if ($aCMDResult['create-partition-tables'] || $aCMDResult['all']) { $bDidSomething = true; $sTemplate = file_get_contents(CONST_BasePath.'/sql/partition-tables.src.sql'); - $sTemplate = replace_tablespace('{ts:address-data}', - CONST_Tablespace_Address_Data, $sTemplate); - $sTemplate = replace_tablespace('{ts:address-index}', - CONST_Tablespace_Address_Index, $sTemplate); - $sTemplate = replace_tablespace('{ts:search-data}', - CONST_Tablespace_Search_Data, $sTemplate); - $sTemplate = replace_tablespace('{ts:search-index}', - CONST_Tablespace_Search_Index, $sTemplate); - $sTemplate = replace_tablespace('{ts:aux-data}', - CONST_Tablespace_Aux_Data, $sTemplate); - $sTemplate = replace_tablespace('{ts:aux-index}', - CONST_Tablespace_Aux_Index, $sTemplate); + $sTemplate = replace_tablespace( + '{ts:address-data}', + CONST_Tablespace_Address_Data, + $sTemplate + ); + $sTemplate = replace_tablespace( + '{ts:address-index}', + CONST_Tablespace_Address_Index, + $sTemplate + ); + $sTemplate = replace_tablespace( + '{ts:search-data}', + CONST_Tablespace_Search_Data, + $sTemplate + ); + $sTemplate = replace_tablespace( + '{ts:search-index}', + CONST_Tablespace_Search_Index, + $sTemplate + ); + $sTemplate = replace_tablespace( + '{ts:aux-data}', + CONST_Tablespace_Aux_Data, + $sTemplate + ); + $sTemplate = replace_tablespace( + '{ts:aux-index}', + CONST_Tablespace_Aux_Index, + $sTemplate + ); pgsqlRunPartitionScript($sTemplate); } @@ -351,10 +388,16 @@ if ($aCMDResult['import-tiger-data']) { $sTemplate = file_get_contents(CONST_BasePath.'/sql/tiger_import_start.sql'); $sTemplate = str_replace('{www-user}', CONST_Database_Web_User, $sTemplate); - $sTemplate = replace_tablespace('{ts:aux-data}', - CONST_Tablespace_Aux_Data, $sTemplate); - $sTemplate = replace_tablespace('{ts:aux-index}', - CONST_Tablespace_Aux_Index, $sTemplate); + $sTemplate = replace_tablespace( + '{ts:aux-data}', + CONST_Tablespace_Aux_Data, + $sTemplate + ); + $sTemplate = replace_tablespace( + '{ts:aux-index}', + CONST_Tablespace_Aux_Index, + $sTemplate + ); pgsqlRunScript($sTemplate, false); $aDBInstances = array(); @@ -401,10 +444,16 @@ if ($aCMDResult['import-tiger-data']) { echo "Creating indexes\n"; $sTemplate = file_get_contents(CONST_BasePath.'/sql/tiger_import_finish.sql'); $sTemplate = str_replace('{www-user}', CONST_Database_Web_User, $sTemplate); - $sTemplate = replace_tablespace('{ts:aux-data}', - CONST_Tablespace_Aux_Data, $sTemplate); - $sTemplate = replace_tablespace('{ts:aux-index}', - CONST_Tablespace_Aux_Index, $sTemplate); + $sTemplate = replace_tablespace( + '{ts:aux-data}', + CONST_Tablespace_Aux_Data, + $sTemplate + ); + $sTemplate = replace_tablespace( + '{ts:aux-index}', + CONST_Tablespace_Aux_Index, + $sTemplate + ); pgsqlRunScript($sTemplate, false); } @@ -522,12 +571,21 @@ if ($aCMDResult['create-search-indices'] || $aCMDResult['all']) { $bDidSomething = true; $sTemplate = file_get_contents(CONST_BasePath.'/sql/indices.src.sql'); - $sTemplate = replace_tablespace('{ts:address-index}', - CONST_Tablespace_Address_Index, $sTemplate); - $sTemplate = replace_tablespace('{ts:search-index}', - CONST_Tablespace_Search_Index, $sTemplate); - $sTemplate = replace_tablespace('{ts:aux-index}', - CONST_Tablespace_Aux_Index, $sTemplate); + $sTemplate = replace_tablespace( + '{ts:address-index}', + CONST_Tablespace_Address_Index, + $sTemplate + ); + $sTemplate = replace_tablespace( + '{ts:search-index}', + CONST_Tablespace_Search_Index, + $sTemplate + ); + $sTemplate = replace_tablespace( + '{ts:aux-index}', + CONST_Tablespace_Aux_Index, + $sTemplate + ); pgsqlRunScript($sTemplate); } @@ -592,6 +650,7 @@ if (!$bDidSomething) { echo "Setup finished.\n"; } + function pgsqlRunScriptFile($sFilename) { if (!file_exists($sFilename)) fail('unable to find '.$sFilename); @@ -641,7 +700,6 @@ function pgsqlRunScriptFile($sFilename) fclose($ahGzipPipes[1]); proc_close($hGzipProcess); } - } function pgsqlRunScript($sScript, $bfatal = true) @@ -655,7 +713,7 @@ function pgsqlRunScript($sScript, $bfatal = true) $sCMD .= ' -v ON_ERROR_STOP=1'; $aDescriptors = array( 0 => array('pipe', 'r'), - 1 => STDOUT, + 1 => STDOUT, 2 => STDERR ); $ahPipes = null; @@ -759,8 +817,7 @@ function passthruCheckReturn($cmd) function replace_tablespace($sTemplate, $sTablespace, $sSql) { if ($sTablespace) { - $sSql = str_replace($sTemplate, 'TABLESPACE "'.$sTablespace.'"', - $sSql); + $sSql = str_replace($sTemplate, 'TABLESPACE "'.$sTablespace.'"', $sSql); } else { $sSql = str_replace($sTemplate, '', $sSql); } @@ -788,6 +845,4 @@ function create_sql_functions($aCMDResult) $sTemplate = str_replace('-- %NOAUXDATA% ', '', $sTemplate); } pgsqlRunScript($sTemplate); - } -