]> git.openstreetmap.org Git - nominatim.git/commitdiff
Merge pull request #1852 from osm-search/disable-jit-for-updates
authorSarah Hoffmann <lonvia@denofr.de>
Sun, 28 Jun 2020 20:39:44 +0000 (22:39 +0200)
committerGitHub <noreply@github.com>
Sun, 28 Jun 2020 20:39:44 +0000 (22:39 +0200)
Disable Postgresql jit and parallel processing for osm2pgsql updates

.travis.yml
utils/update.php
vagrant/install-on-travis-ci.sh

index da6dd3a5982c0a5c4a4a9c23c1077fa5b3d07819..08aa9eb48ab46c164ee58011a763a6e686b2d217 100644 (file)
@@ -35,5 +35,7 @@ script:
   - if [[ $TEST_SUITE == "monaco" ]]; then /usr/bin/env php ./utils/setup.php --osm-file ../data/monaco.osm.pbf --osm2pgsql-cache 1000 --all 2>&1 | grep -v 'ETA (seconds)'; fi
   - if [[ $TEST_SUITE == "monaco" ]]; then /usr/bin/env php ./utils/specialphrases.php --wiki-import | psql -d test_api_nominatim >/dev/null; fi
   - if [[ $TEST_SUITE == "monaco" ]]; then /usr/bin/env php ./utils/check_import_finished.php; fi
+  - if [[ $TEST_SUITE == "monaco" ]]; then /usr/bin/env php ./utils/update.php --init-updates; fi
+  - if [[ $TEST_SUITE == "monaco" ]]; then /usr/bin/env php ./utils/update.php --import-osmosis; fi
 notifications:
   email: false
index d03cbed6b8e32029bdc6ccd4be353d1bb92c9ec9..189a18255090732a4d62f08f9436caa8447b99da 100644 (file)
@@ -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,12 @@ 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'))
index 2522f05f3e9bba408ed7c024c6499c5fd2e0a020..3b8ed190460d63d781e4ef5cc3f7915dbbaac8fc 100755 (executable)
@@ -20,7 +20,7 @@ sudo apt-get install -y -qq libboost-dev libboost-system-dev \
 
 sudo apt-get install -y -qq python3-dev python3-pip php-cgi
 
-pip3 install --quiet behave nose pytidylib psycopg2-binary
+pip3 install --quiet behave nose pytidylib psycopg2-binary osmium
 
 # https://github.com/squizlabs/PHP_CodeSniffer
 composer global require "squizlabs/php_codesniffer=*"
@@ -64,5 +64,6 @@ tee settings/local.php << EOF
  @define('CONST_Website_BaseURL', '/nominatim/');
  @define('CONST_Database_DSN', 'pgsql:dbname=test_api_nominatim');
  @define('CONST_Wikipedia_Data_Path', CONST_BasePath.'/test/testdb');
+ @define('CONST_Replication_Max_Diff_size', '3');
 EOF