Getting rid of the 'Node in too many areas' warning.

This patch to the splitter that makes this warning MUCH more rare. With this patch, I can split the entire planet into 17219 areas with max-nodes=50000 resolution=14 without a single 'too many areas' warning among the the first 25 of 68 passes. Without this patch, a max-nodes=500000 split has dozens of such warnings. This patch can also allow larger overlaps at a cost of more passes. The fix works by reordering the list of generated tiles. The trick is that the real limit in the splitter is that a node cannot be in more than 4 distinct areas PER PASS (A limit that remains unchanged with this patch.) If a node occurs in 10 tiles, but no single pass contains more than 4 of those tiles, everything works. If there are still 'too many areas' warnings, they can be handled by reducing --max-areas. Note that my patch depends on some other bug fixes; there are several infinite recursion bugs in the current code that trigger when having the splitter generate such small tiles. Some of these were fixed in the trunk, but not all are. In addition, my fixes/cleanups try harder at getting a good split. Scott

Is there something wrong with this patch that kept it from going in? Scott On Thu, Jun 10, 2010 at 2:17 PM, Scott Crosby <scrosby06@gmail.com> wrote:
This patch to the splitter makes this warning MUCH more rare. With this patch, I can split the entire planet into 17219 areas with max-nodes=50000 resolution=14 without a single 'too many areas' warning among the the first 25 of 68 passes. Without this patch, a max-nodes=500000 split has dozens of such warnings.
This patch can also allow larger overlaps at a cost of more passes.
The fix works by reordering the list of generated tiles. The trick is that the real limit in the splitter is that a node cannot be in more than 4 distinct areas PER PASS (A limit that remains unchanged with this patch.) If a node occurs in 10 tiles, but no single pass contains more than 4 of those tiles, everything works. If there are still 'too many areas' warnings, they can be handled by reducing --max-areas.
Note that my patch depends on some other bug fixes; there are several infinite recursion bugs in the current code that trigger when having the splitter generate such small tiles. Some of these were fixed in the trunk, but not all are. In addition, my fixes/cleanups try harder at getting a good split.
Scott

Hello Scott, Not at all - in fact I thought I had already applied this one but apparently not! Sorry about that, I'll try and get it applied in the next day or so. Thanks for the heads-up. Chris
Is there something wrong with this patch that kept it from going in?
Scott
participants (2)
-
Chris Miller
-
Scott Crosby