nominatim: adapt updates to current load
authorSarah Hoffmann <lonvia@denofr.de>
Sat, 27 May 2017 13:49:33 +0000 (15:49 +0200)
committerSarah Hoffmann <lonvia@denofr.de>
Sat, 27 May 2017 13:49:33 +0000 (15:49 +0200)
cookbooks/nominatim/templates/default/updater.erb

index bf9a001..8345205 100644 (file)
@@ -5,13 +5,25 @@
 # Change to Nominatim directory
 cd <%= @bindir %>
 
+num_cpus=`cat /proc/cpuinfo | grep -c processor`
+num_cpus=(($num_cpus - 2))
+
 while [ ! -f "<%= @update_stop_file %>" ]
 do
     # Send output to the log (logrotatable)
     exec >> <%= @logfile %> 2>&1
     starttime=`date +%s`
 
-    ./utils/update.php --no-npi --import-osmosis
+    current_load=`cat /proc/loadavg | cut -f 2 -d ' ' | sed 's:\..*::'`
+
+    if [[ $current_load -lt $num_cpus ]]
+    then
+        INST=2
+    else
+        INST=1
+    fi
+
+    ./utils/update.php --no-npi --import-osmosis --index-instances $INST
 
 <% if node[:nominatim][:enable_git_updates] -%>
     pushd <%= @srcdir %>