From ff1be13d0e72d8f86258ea864b872987afcc8e0e Mon Sep 17 00:00:00 2001 From: Sarah Hoffmann Date: Sun, 28 Jun 2020 18:06:06 +0200 Subject: [PATCH] disable JIT and parallel processing for osm2pgsql in updates This is known to cause issues because of bad indexing statistics. --- utils/update.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/utils/update.php b/utils/update.php index d03cbed6..9bb3388a 100644 --- a/utils/update.php +++ b/utils/update.php @@ -55,6 +55,7 @@ date_default_timezone_set('Etc/UTC'); $oDB = new Nominatim\DB(); $oDB->connect(); +$fPostgresVersion = $oDB->getPostgresVersion(); $aDSNInfo = Nominatim\DB::parseDSN(CONST_Database_DSN); if (!isset($aDSNInfo['port']) || !$aDSNInfo['port']) $aDSNInfo['port'] = 5432; @@ -90,6 +91,10 @@ if (isset($aDSNInfo['password']) && $aDSNInfo['password']) { if (!is_null(CONST_Osm2pgsql_Flatnode_File) && CONST_Osm2pgsql_Flatnode_File) { $oOsm2pgsqlCmd->addParams('--flat-nodes', CONST_Osm2pgsql_Flatnode_File); } +if ($fPostgresVersion >= 11.0) { + $oOsm2pgsqlCmd->addEnvPair('PGOPTIONS', + '-c jit=off -c max_parallel_workers_per_gather=0'); +} $oIndexCmd = (new \Nominatim\Shell(CONST_BasePath.'/nominatim/nominatim.py')) -- 2.39.5