Overpass-API icon indicating copy to clipboard operation
Overpass-API copied to clipboard

Areas Creation fails after about 7hrs

Open andi-lr opened this issue 7 years ago • 8 comments

I followed the guide on http://wiki.openstreetmap.org/w/index.php?title=Overpass_API/Installation and the normal dispatcher works fine.

nohup $EXEC_DIR/bin/rules_loop.sh $DB_DIR & Creating areas fails after about 7hrs into the process. This is the nohup.out file: ... After 6h56m43s: in "make-area", part 0, on line 29. Stack: 803498 of 803539 After 6h57m32s: in "query", part 1, on line 32. Stack: 0 of 0 After 6h57m47s: in "query", part 4, on line 32. Stack: 0 of 0 After 6h58m2s: in "query", part 4, on line 32. Stack: 0 of 0 After 6h58m17s: in "query", part 4, on line 32. Stack: 0 of 0 After 6h58m32s: in "query", part 4, on line 32. Stack: 0 of 0 After 6h58m47s: in "query", part 4, on line 32. Stack: 0 of 0 After 6h59m2s: in "query", part 4, on line 32. Stack: 0 of 0 After 6h59m17s: in "query", part 4, on line 32. Stack: 0 of 0 After 6h59m32s: in "query", part 4, on line 32. Stack: 0 of 0 After 6h59m47s: in "query", part 4, on line 32. Stack: 0 of 0 After 7h0m2s: in "query", part 4, on line 32. Stack: 0 of 0 After 7h0m17s: in "query", part 4, on line 32. Stack: 0 of 0 After 7h0m32s: in "query", part 4, on line 32. Stack: 0 of 0 After 7h0m47s: in "query", part 4, on line 32. Stack: 0 of 0 After 7h1m2s: in "query", part 4, on line 32. Stack: 0 of 0 After 7h1m17s: in "query", part 4, on line 32. Stack: 0 of 0 /home/x/overpass/osm-3s_v0.7.53//bin/rules_loop.sh: line 44: 20156 Killed ./osm3s_query --progress --rules < $DB_DIR/rules/areas.osm3s File_Error 17 File exists /home/x/overpass/osm-3s_v0.7.53/db/areas_shadow.lock write_start:1

I tried it multiple times but this is always what i get. I dont know where to start fixing this Problem and I dont know what causes osm3s_query to be killed.

andi-lr avatar Jul 15 '17 20:07 andi-lr

Honestly, I do not have a compelling idea either. The line

20156 Killed ./osm3s_query

suggest that the process has been killed by an external event. If it is reproducible then this is most likely that the process hits a memory or time limit set by the operating system. Could you tell us please the operating system and available RAM? Could you please run "ps -ef" shrotly before the process is killed to get an idea whether it is using unusually much memory or runtime?

drolbr avatar Aug 24 '17 17:08 drolbr

I have the same problem:

terminate called after throwing an instance of 'std::runtime_error' what(): LZ4_decompress_safe failed /Overpass-API/src/bin/rules_loop.sh: line 44: 113 Aborted ./osm3s_query --progress --rules < ${DB_DIR}/rules/areas.osm3s File_Error 17 File exists /overpass_DB/areas_shadow.lock write_start:1

maybe this log will help you

Caledfwlch1 avatar Oct 15 '19 18:10 Caledfwlch1

You seem to be using some kind of outdated Docker image. Maybe you should try https://github.com/wiktorn/Overpass-API first, which only uses official Overpass releases. Note that we generally don't support Docker images at this time and cannot provide any hints or guidance. Please address any Docker related issues to the maintainer of the respective image.

mmd-osm avatar Oct 15 '19 18:10 mmd-osm

Thanks for your answer, yes, this server is in a Docker container. I needed to fix some files to run it. In addition, I would like to ask if you could move the state files (osm3s_v0.7.55_areas, osm3s_v0.7.55_osm_base, area_shadow.lock) and logs to other directories? For example, the state files to / tmp and logs to / var / log /. This will allow different server instances to access the shared database. Thanks.

Caledfwlch1 avatar Oct 17 '19 10:10 Caledfwlch1

This will allow different server instances to access the shared database.

I'm afraid, this use case is not supported by Overpass API.

mmd-osm avatar Oct 17 '19 11:10 mmd-osm

I tried this in this configuration: NFS server with a common database. 1 master has read-write access to the database. 2 slave has read-only access to the database. The system works fine (if you move the status files).

Caledfwlch1 avatar Oct 17 '19 11:10 Caledfwlch1

Every access to the database has to go through one single dispatcher process via unix domain socket. Running the slave with an own separate dispatcher is 100% unsupported. Don't try this. Overpass API does not support any kind of master slave setup.

mmd-osm avatar Oct 17 '19 11:10 mmd-osm

Ok, thank you very much!

Caledfwlch1 avatar Oct 17 '19 11:10 Caledfwlch1