X-Git-Url: https://git.openstreetmap.org/nominatim.git/blobdiff_plain/b5c984544854ab1af5826b93d79290d9f4b90e60..2338d04e9f0cd8f0ca294a1f6664d641d1522b25:/utils/setup.php?ds=inline diff --git a/utils/setup.php b/utils/setup.php index 97a9f301..eff7b71b 100755 --- a/utils/setup.php +++ b/utils/setup.php @@ -39,7 +39,7 @@ array('index-output', '', 0, 1, 1, 1, 'string', 'File to dump index information to'), array('create-search-indices', '', 0, 1, 0, 0, 'bool', 'Create additional indices required for search and update'), array('create-website', '', 0, 1, 1, 1, 'realpath', 'Create symlinks to setup web directory'), - array('drop', '', 0, 1, 0, 0, 'bool', 'Drop tables needed for updates, making the database readonly'), + array('drop', '', 0, 1, 0, 0, 'bool', 'Drop tables needed for updates, making the database readonly (EXPERIMENTAL)'), ); getCmdOpt($_SERVER['argv'], $aCMDOptions, $aCMDResult, true, true); @@ -134,7 +134,7 @@ pgsqlRunScriptFile(CONST_Path_Postgresql_Postgis.'/postgis.sql'); pgsqlRunScriptFile(CONST_Path_Postgresql_Postgis.'/spatial_ref_sys.sql'); } else { - pgsqlRunScript('CREATE EXTENSION postgis'); + pgsqlRunScript('CREATE EXTENSION IF NOT EXISTS postgis'); } if ($fPostgisVersion < 2.1) { // Function was renamed in 2.1 and throws an annoying deprecation warning @@ -730,8 +730,12 @@ } } - if (isset($aCMDResult['drop'])) + if ($aCMDResult['drop']) { + // The implementation is potentially a bit dangerous because it uses + // a positive selection of tables to keep, and deletes everything else. + // Including any tables that the unsuspecting user might have manually + // created. USE AT YOUR OWN PERIL. $bDidSomething = true; // tables we want to keep. everything else goes. @@ -748,7 +752,9 @@ "query_log", "new_query_log", "gb_postcode", - "spatial_ref_sys" + "spatial_ref_sys", + "country_name", + "place_classtype_*" ); $oDB =& getDB();