Closed jwest75674 closed 3 years ago
Wow, this is really slow. Try to increase the timeout value in the areas.osm3s script: https://github.com/drolbr/Overpass-API/blob/master/src/rules/areas.osm3s#L2
Thank you, I've increased it now and will see how it goes in a day or so!
This is an older server (2013?), multithreaded processes are reasonably quick due to having so many cores, but I suspect that this is running on a single thread, as such, slow makes sense!
Yes, it's all single threaded. Slow IO probably kills your performance as well.
Makes sense. Personal / Hobby project, so I am not in a rush anyways. haha. Thanks again for your help. Will pop back in a day or so either close this issue or ask for guidance.
Update here, I ended up deleting my db
and diff
folders, re-cloning, and otherwise resetting this up. As well, I increased ./dispatcher --size
by a few orders of magnitude, which appears to help a ton.
Overall, I am a 10 minutes into the areas portion of this, and rules_loop.sh
is already showing that this is
running significantly faster.
Sep 02 15:49:22 nominatim rules_loop.sh[20256]: After 0h10m22s: in "recurse", part 0, on line 26. Stack: 0 of 0 3070 of 0 0 of 0
Sep 02 15:49:40 nominatim rules_loop.sh[20256]: After 0h10m40s: in "recurse", part 0, on line 26. Stack: 0 of 0 3188 of 0 0 of 0
Sep 02 15:49:55 nominatim rules_loop.sh[20256]: After 0h10m55s: in "recurse", part 0, on line 26. Stack: 0 of 0 3311 of 0 0 of 0
Sep 02 15:50:10 nominatim rules_loop.sh[20256]: After 0h11m10s: in "recurse", part 0, on line 26. Stack: 0 of 0 3417 of 0 0 of 0
I imagine this will be wrapping up well below a 24 hour threshold now, but admit I am not 100% which portion of this effort has things so greatly improved.
Either way, will leave this issue open for another day or two to be safe, but things seem to be on-track to work. :)
Edit: One question:
Should the areas
dispatcher
and rules_loop.sh
be set to run at boot, or are those one time steps? It was unclear to me when reading through the installation instructions at the wiki.
Yeah, this is waaaaay faster now.
Sep 02 21:52:40 nominatim rules_loop.sh[20256]: runtime remark: make-area: Node 1713049598 is contained in an odd number of ways.
Sep 02 21:52:44 nominatim rules_loop.sh[20256]: runtime remark: make-area: Node 2604084727 is contained in an odd number of ways.
Sep 02 21:52:52 nominatim rules_loop.sh[20256]: After 6h13m52s: in "recurse", part 0, on line 27. Stack: 0 of 0 628670 of 0 0 of 0
Sep 02 21:53:07 nominatim rules_loop.sh[20256]: After 6h14m7s: in "recurse", part 0, on line 27. Stack: 0 of 0 628890 of 0 0 of 0
Sep 02 21:53:22 nominatim rules_loop.sh[20256]: After 6h14m22s: in "recurse", part 0, on line 26. Stack: 0 of 0 629275 of 0 0 of 0
Sep 02 21:53:37 nominatim rules_loop.sh[20256]: After 6h14m37s: in "recurse", part 0, on line 27. Stack: 0 of 0 629634 of 0 0 of 0
Sep 02 21:53:52 nominatim rules_loop.sh[20256]: After 6h14m52s: in "recurse", part 0, on line 27. Stack: 0 of 0 630076 of 0 0 of 0
Sep 02 21:53:53 nominatim rules_loop.sh[20256]: runtime remark: make-area: Node 6128380201 is contained in an odd number of ways.
Sep 02 21:54:07 nominatim rules_loop.sh[20256]: After 6h15m7s: in "recurse", part 0, on line 27. Stack: 0 of 0 630316 of 0 0 of 0
Sep 02 21:54:22 nominatim rules_loop.sh[20256]: After 6h15m22s: in "make-area", part 0, on line 29. Stack: 0 of 0 630644 of 0
Edit: This would have taken literally the better part of two years to get to where I am, at that old rate. I see what you meant about slow. wow.
Sep 03 21:31:16 nominatim rules_loop.sh[20256]: runtime remark: make-area: Node 2255178509 is contained in an odd number of ways.
Sep 03 21:31:21 nominatim rules_loop.sh[20256]: runtime remark: make-area: Node 353285703 is contained in an odd number of ways.
Sep 03 21:31:21 nominatim rules_loop.sh[20256]: runtime remark: make-area: Node 1771990361 is contained in an odd number of ways.
Sep 03 21:31:21 nominatim rules_loop.sh[20256]: runtime remark: make-area: Node 112686793 is contained in an odd number of ways.
Sep 03 21:31:24 nominatim rules_loop.sh[20256]: runtime remark: make-area: Node 6621069117 is contained in an odd number of ways.
Sep 03 21:31:25 nominatim rules_loop.sh[20256]: After 29h52m25s: in "make-area", part 0, on line 257. Stack: 0 of 0 2800237 of 0
Thank you!
Firstly, I've set dispatcher to a very large time allottment, like --time=864000000000
See:
This Overpass API instance is running for personal use on a server in my home network (96 threads, 700GB Memory)
However, even after increasing the timeout as above, there appears to be a 24 hour limit being met when trying to calculate the areas during initial setup. See the
tail -n
of thenohup
... >> rules_loop.out here:Is there a different method to be used for setting timeouts? Or an alternate method to calculate the areas? What is missing here?
Edit: rules_loop.sh is properly calling the --rules flag for osm3s_query too: