MEDIUM: ebtree: only consider the branches matching the scope in lookups

Now when looking up a node via eb32sc_first(), eb32sc_next(), and
eb32sc_lookup_ge(), we only focus on the branches matching the requested
scope. The code must be careful to miss no branch. It changes a little
bit from the previous one because the scope stored on the intermediary
nodes is not exact (since we don't propagate upwards during deletion),
so in case a lookup fails, we have to walk up and pick the next matching
entry.
This commit is contained in:
Willy Tarreau 2017-11-05 14:33:01 +01:00
parent ef8d0dcefd
commit d1d55ac619
2 changed files with 89 additions and 46 deletions