]> git.openstreetmap.org Git - nominatim.git/blobdiff - docs/admin/Faq.md
prepare for 3.3.0 release
[nominatim.git] / docs / admin / Faq.md
index 5fb0d9aeba4a7cece5bb90e7b766744ef9a8c610..db5e101c83dbfafc579ad03ea693b029343fdb66 100644 (file)
@@ -1,33 +1,6 @@
-# Running Your Own Instance
+# Troubleshooting Nominatim Installations
 
-### Can I import multiple countries and keep them up to date?
-
-You should use the extracts and updates from https://download.geofabrik.de.
-For the initial import, download the countries you need and merge them.
-See [OSM Help](https://help.openstreetmap.org/questions/48843/merging-two-or-more-geographical-areas-to-import-two-or-more-osm-files-in-nominatim)
-for examples how to do that. Use the resulting single osm file when
-running `setup.php`.
-
-For updates you need to download the change files for each country
-once per day and apply them **separately** using
-
-    ./utils/update.php --import-diff <filename> --index
-    
-See [this issue](https://github.com/openstreetmap/Nominatim/issues/60#issuecomment-18679446)
-for a script that runs the updates using osmosis.
-
-### Can I import negative OSM ids into Nominatim?
-
-See [https://help.openstreetmap.org/questions/64662/nominatim-flatnode-with-negative-id]()
-
-### Missing XML or text declaration
-
-The website might show: `XML Parsing Error: XML or text declaration not at start of entity Location.`
-
-Make sure there are no spaces at the beginning of your `settings/local.php` file.
-
-
-# Installation
+## Installation Issues
 
 ### Can a stopped/killed import process be resumed?
 
@@ -98,6 +71,23 @@ and recompile (`cmake .. && make`).
 Reinstall the nominatim functions with `setup.php --create--functions`
 and check for any errors, e.g. a missing `nominatim.so` file.
 
+### I see the error: "ERROR: mmap (remap) failed"
+
+This may be a simple out-of-memory error. Try reducing the memory used
+for `--osm2pgsql-cache`. Also make sure that overcommitting memory is
+allowed: `cat /proc/sys/vm/overcommit_memory` should print 0 or 1.
+
+If you are using a flatnode file, then it may also be that the underlying
+filesystem does not fully support 'mmap'. A notable candidate is virtualbox's
+vboxfs.
+
+### nominatim UPDATE failed: ERROR: buffer 179261 is not owned by resource owner Portal
+
+Several users [reported this](https://github.com/openstreetmap/Nominatim/issues/1168) during the initial import of the database. It's 
+something Postgresql internal Nominatim doesn't control. And Postgresql forums
+suggest it's threading related but definitely some kind of crash of a process.
+Users reported either rebooting the server, different hardware or just trying
+the import again worked. 
 
 ### The website shows: "Could not get word tokens"
 
@@ -112,7 +102,7 @@ to get the full error message.
 On CentOS v7 the PostgreSQL server is started with `systemd`.
 Check if `/usr/lib/systemd/system/httpd.service` contains a line `PrivateTmp=true`.
 If so then Apache cannot see the `/tmp/.s.PGSQL.5432` file. It's a good security feature,
-so use the [[#PostgreSQL_UNIX_Socket_Location_on_CentOS|preferred solution]]
+so use the [preferred solution](../appendix/Install-on-Centos-7/#adding-selinux-security-settings).
 
 However, you can solve this the quick and dirty way by commenting out that line and then run
 
@@ -120,6 +110,11 @@ However, you can solve this the quick and dirty way by commenting out that line
     sudo systemctl restart httpd
 
 
+### "must be an array or an object that implements Countable" warning in /usr/share/pear/DB.php
+
+The warning started with PHP 7.2. Make sure you have at least [version 1.9.3 of PEAR DB](https://github.com/pear/DB/releases)
+installed.
+
 ### Website reports "DB Error: insufficient permissions"
 
 The user the webserver, e.g. Apache, runs under needs to have access to the Nominatim database. You can find the user like [this](https://serverfault.com/questions/125865/finding-out-what-user-apache-is-running-as), for default Ubuntu operating system for example it's `www-data`.
@@ -145,9 +140,9 @@ Example error message
    CONTEXT: PL/pgSQL function make_standard_name(text) line 5 at assignment]
 ```
 
-The user the webserver, e.g. Apache, runs under needs to have access to that file. Same for the user the Postgres runs as. You can find the user like [this](https://serverfault.com/questions/125865/finding-out-what-user-apache-is-running-as), for default Ubuntu operating system for example it's `www-data`.
+The Postgresql database, i.e. user postgres, needs to have access to that file.
 
-The permission need to be read&executable by everybody, e.g.
+The permission need to be read & executable by everybody, e.g.
 
 ```
    -rwxr-xr-x 1 nominatim nominatim 297984 build/module/nominatim.so
@@ -155,6 +150,9 @@ The permission need to be read&executable by everybody, e.g.
 
 Try `chmod a+r nominatim.so; chmod a+x nominatim.so`.
 
+When running SELinux, make sure that the
+[context is set up correctly](../appendix/Install-on-Centos-7/#adding-selinux-security-settings).
+
 ### Setup.php fails with "DB Error: extension not found"
 
 Make sure you have the Postgres extensions hstore and postgis installed.
@@ -177,3 +175,33 @@ That's fine. For each import the flatnodes file get overwritten.
 See [https://help.openstreetmap.org/questions/52419/nominatim-flatnode-storage]()
 for more information.
 
+
+## Running your own instance
+
+### Can I import multiple countries and keep them up to date?
+
+You should use the extracts and updates from https://download.geofabrik.de.
+For the initial import, download the countries you need and merge them.
+See [OSM Help](https://help.openstreetmap.org/questions/48843/merging-two-or-more-geographical-areas-to-import-two-or-more-osm-files-in-nominatim)
+for examples how to do that. Use the resulting single osm file when
+running `setup.php`.
+
+For updates you need to download the change files for each country
+once per day and apply them **separately** using
+
+    ./utils/update.php --import-diff <filename> --index
+    
+See [this issue](https://github.com/openstreetmap/Nominatim/issues/60#issuecomment-18679446)
+for a script that runs the updates using osmosis.
+
+### Can I import negative OSM ids into Nominatim?
+
+See [this question of Stackoverflow](https://help.openstreetmap.org/questions/64662/nominatim-flatnode-with-negative-id).
+
+### Missing XML or text declaration
+
+The website might show: `XML Parsing Error: XML or text declaration not at start of entity Location.`
+
+Make sure there are no spaces at the beginning of your `settings/local.php` file.
+
+