diff --git a/nominatim-3.1/start.sh b/nominatim-3.1/start.sh index 171d6f2f9510b16e5aaa7847f37d95505445d8bd..76983177b30a69a5abbb0614b301b6e35136b2a1 100755 --- a/nominatim-3.1/start.sh +++ b/nominatim-3.1/start.sh @@ -4,29 +4,38 @@ service postgresql start ## Set up nominatim updates ### -#sudo -u nominatim ./src/build/utils/update.php --init-updates -#sudo -u nominatim ./src/build/utils/update.php --import-osmosis-all & - while true; do - starttime=$(date +%s) + result=`sudo -u nominatim ./src/build/utils/update.php --check-for-updates` + + if [ "$result" = "Database up to date." ]; then + sleepy=300 + echo "The Nominatim database in already up to date. Sleeping for ${sleepy}s..." + sleep $sleepy + else - sudo -u nominatim ./src/build/utils/update.php --init-updates - #sudo -u nominatim ./src/build/utils/update.php --check-for-updates - sudo -u nominatim ./src/build/utils/update.php --import-osmosis --no-index + curl http://photon:2322/api + isPhotonAlive=$? - curl http://photon:2322/nominatim-update + if [ $isPhotonAlive -ne 0 ]; then + sleepy=300 + echo "Photon is not available. Sleeping for ${sleepy}s, in order to let Photon wake up..." + sleep $sleepy + continue + fi - #sudo -u nominatim ./src/build/utils/update.php --index + sudo -u nominatim ./src/build/utils/update.php --init-updates + sudo -u nominatim ./src/build/utils/update.php --import-osmosis --no-index + curl -v http://photon:2322/nominatim-update # this line triggers the Photon update following the Nominatim update - # sleep a bit if updates take less than 5 minutes - endtime=$(date +%s) - elapsed=$((endtime - starttime)) - if [[ $elapsed -lt 300 ]]; then - sleepy=$((300 - $elapsed)) - echo "Sleeping for ${sleepy}s..." + sleepy=1800 + echo "Sleeping for ${sleepy}s, in order to let Photon update..." sleep $sleepy + + sudo -u nominatim ./src/build/utils/update.php --index + fi + done