From c7f40e3cee2853ade0e16a90ab7a3b29b02265f9 Mon Sep 17 00:00:00 2001 From: Sarah Hoffmann Date: Fri, 26 Feb 2021 16:33:30 +0100 Subject: [PATCH] fix verbose flag for PHP wrapper scripts The flag must come after the command. --- lib-php/admin/setup.php | 15 ++++++++------- lib-php/admin/update.php | 33 +++++++++++++++++++-------------- nominatim/db/utils.py | 2 ++ 3 files changed, 29 insertions(+), 21 deletions(-) diff --git a/lib-php/admin/setup.php b/lib-php/admin/setup.php index 3aa6b828..f8e360bb 100644 --- a/lib-php/admin/setup.php +++ b/lib-php/admin/setup.php @@ -57,23 +57,24 @@ setupHTTPProxy(); $bDidSomething = false; $oNominatimCmd = new \Nominatim\Shell(getSetting('NOMINATIM_TOOL')); -if (isset($aCMDResult['quiet']) && $aCMDResult['quiet']) { - $oNominatimCmd->addParams('--quiet'); -} -if ($aCMDResult['verbose']) { - $oNominatimCmd->addParams('--verbose'); -} // by default, use all but one processor, but never more than 15. $iInstances = max(1, $aCMDResult['threads'] ?? (min(16, getProcessorCount()) - 1)); -function run($oCmd) { +function run($oCmd) +{ global $iInstances; global $aCMDResult; $oCmd->addParams('--threads', $iInstances); if ($aCMDResult['ignore-errors'] ?? false) { $oCmd->addParams('--ignore-errors'); } + if ($aCMDResult['quiet'] ?? false) { + $oCmd->addParams('--quiet'); + } + if ($aCMDResult['verbose'] ?? false) { + $oCmd->addParams('--verbose'); + } $oCmd->run(true); } diff --git a/lib-php/admin/update.php b/lib-php/admin/update.php index 4f639c8d..81e0b832 100644 --- a/lib-php/admin/update.php +++ b/lib-php/admin/update.php @@ -104,11 +104,17 @@ if ($fPostgresVersion >= 11.0) { } $oNominatimCmd = new \Nominatim\Shell(getSetting('NOMINATIM_TOOL')); -if ($aResult['quiet']) { - $oNominatimCmd->addParams('--quiet'); -} -if ($aResult['verbose']) { - $oNominatimCmd->addParams('--verbose'); + +function run($oCmd) +{ + global $aCMDResult; + if ($aCMDResult['quiet'] ?? false) { + $oCmd->addParams('--quiet'); + } + if ($aCMDResult['verbose'] ?? false) { + $oCmd->addParams('--verbose'); + } + $oCmd->run(true); } @@ -119,7 +125,7 @@ if ($aResult['init-updates']) { $oCmd->addParams('--no-update-functions'); } - $oCmd->run(); + run($oCmd); } if ($aResult['check-for-updates']) { @@ -147,7 +153,7 @@ if (isset($aResult['import-diff']) || isset($aResult['import-file'])) { } if ($aResult['calculate-postcodes']) { - (clone($oNominatimCmd))->addParams('refresh', '--postcodes')->run(); + run((clone($oNominatimCmd))->addParams('refresh', '--postcodes')); } $sTemporaryFile = CONST_InstallDir.'/osmosischange.osc'; @@ -196,22 +202,21 @@ if ($bHaveDiff) { } if ($aResult['recompute-word-counts']) { - (clone($oNominatimCmd))->addParams('refresh', '--word-counts')->run(); + run((clone($oNominatimCmd))->addParams('refresh', '--word-counts')); } if ($aResult['index']) { - (clone $oNominatimCmd) + run((clone $oNominatimCmd) ->addParams('index', '--minrank', $aResult['index-rank']) - ->addParams('--threads', $aResult['index-instances']) - ->run(); + ->addParams('--threads', $aResult['index-instances'])); } if ($aResult['update-address-levels']) { - (clone($oNominatimCmd))->addParams('refresh', '--address-levels')->run(); + run((clone($oNominatimCmd))->addParams('refresh', '--address-levels')); } if ($aResult['recompute-importance']) { - (clone($oNominatimCmd))->addParams('refresh', '--importance')->run(true); + run((clone($oNominatimCmd))->addParams('refresh', '--importance')); } if ($aResult['import-osmosis'] || $aResult['import-osmosis-all']) { @@ -227,5 +232,5 @@ if ($aResult['import-osmosis'] || $aResult['import-osmosis-all']) { $oCmd->addParams('--no-index'); } - exit($oCmd->run()); + run($oCmd); } diff --git a/nominatim/db/utils.py b/nominatim/db/utils.py index 0490bbc8..6d2eb297 100644 --- a/nominatim/db/utils.py +++ b/nominatim/db/utils.py @@ -31,6 +31,8 @@ def execute_file(dsn, fname, ignore_errors=False, pre_code=None, post_code=None) cmd = ['psql'] if not ignore_errors: cmd.extend(('-v', 'ON_ERROR_STOP=1')) + if not LOG.isEnabledFor(logging.INFO): + cmd.append('--quiet') proc = subprocess.Popen(cmd, env=get_pg_env(dsn), stdin=subprocess.PIPE) if not LOG.isEnabledFor(logging.INFO): -- 2.39.5