From: Sarah Hoffmann Date: Wed, 22 Dec 2021 07:59:31 +0000 (+0100) Subject: disable JIT and parallel workers on search frontend X-Git-Tag: v4.1.0~103^2 X-Git-Url: https://git.openstreetmap.org./nominatim.git/commitdiff_plain/042df4198a11da8456a3c192d3fe3f4726041612 disable JIT and parallel workers on search frontend Bad query planning now also interferes with queries for search and reverse. --- diff --git a/lib-php/DB.php b/lib-php/DB.php index 03ee6f1b..8e307b19 100644 --- a/lib-php/DB.php +++ b/lib-php/DB.php @@ -38,6 +38,9 @@ class DB $conn->exec("SET DateStyle TO 'sql,european'"); $conn->exec("SET client_encoding TO 'utf-8'"); + // Disable JIT and parallel workers. They interfere badly with search SQL. + $conn->exec("UPDATE pg_settings SET setting = -1 WHERE name = 'jit_above_cost'"); + $conn->exec("UPDATE pg_settings SET setting = 0 WHERE name = 'max_parallel_workers_per_gather'"); $iMaxExecution = ini_get('max_execution_time'); if ($iMaxExecution > 0) { $conn->setAttribute(\PDO::ATTR_TIMEOUT, $iMaxExecution); // seconds