]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
dns: changing onelevel search for wildcard to subtree
authorAaron Haslett <aaronhaslett@catalyst.net.nz>
Wed, 9 Jan 2019 03:22:40 +0000 (16:22 +1300)
committerKarolin Seeger <kseeger@samba.org>
Mon, 14 Jan 2019 09:20:19 +0000 (10:20 +0100)
SCOPE_ONELEVEL is used on wildcard dns searches, but onelevel searches
currently have a performance problem related to GUID indexing, so this
patch changes the search scope to SCOPE_SUBTREE.
In this case, as the onelevel and subtree sets of records are roughly
the same, and the query is matching against the DN itself, we don't
believe there's any benefit in using SCOPE_ONELEVEL over SCOPE_SUBTREE.

The onelevel performance problem will be fixed separately later, but in
the meantime this solves the DNS performance problem.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=13738

Signed-off-by: Aaron Haslett <aaronhaslett@catalyst.net.nz>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
(cherry picked from commit ef379880037c10589ceeab7f985e3245817908a4)

source4/dns_server/dnsserver_common.c

index 0dedf689cef1dda0ac1d40f13dac77199c40fd69..04f8eeab7bf2f687c332cfd5d8faf5663b2741c6 100644 (file)
@@ -481,7 +481,7 @@ static int dns_wildcard_lookup(struct ldb_context *samdb,
                                      samdb,
                                      frame,
                                      parent,
-                                     LDB_SCOPE_ONELEVEL,
+                                     LDB_SCOPE_SUBTREE,
                                      query,
                                      attrs,
                                      NULL,