BIND 10 #2750: support DomainTree::remove()

BIND 10 Development do-not-reply at isc.org
Tue Oct 1 10:51:04 UTC 2013


#2750: support DomainTree::remove()
-------------------------------------+-------------------------------------
            Reporter:  jinmei        |                        Owner:  muks
                Type:  task          |                       Status:
            Priority:  medium        |  reviewing
           Component:  data source   |                    Milestone:
            Keywords:                |  Sprint-20131001
           Sensitive:  0             |                   Resolution:
         Sub-Project:  DNS           |                 CVSS Scoring:
Estimated Difficulty:  7             |              Defect Severity:  N/A
         Total Hours:  0             |  Feature Depending on Ticket:
                                     |  shared memory data source
                                     |          Add Hours to Ticket:  0
                                     |                    Internal?:  0
-------------------------------------+-------------------------------------
Changes (by vorner):

 * owner:  vorner => muks


Comment:

 Hello

 Replying to [comment:21 muks]:
 > Definitely `lower` may not be direct child of `root_ptr` (`root_ptr`
 > points to the root of the whole forest). In `connectChild()`, if the
 > initial `lower->getParent()` returns `NULL`, it means that the other
 > node (`this` in `exchange()`) being exchanged with `lower` was the root
 > node, and now, `lower` must become the new root node.

 Hmm. Probably I'm just confused. The tests are there, so it must work
 O:-).

 > Do you see the difference between:
 >
 > {{{#!c++
 > // The full absolute names of the nodes in the tree.
 > const char* const domain_names[] = {
 >     ".", "c", "b", "a", "x.d.e.f", "z.d.e.f", "g.h", "i.g.h",
 "o.w.y.d.e.f",
 >     "j.z.d.e.f", "p.w.y.d.e.f", "q.w.y.d.e.f", "k.g.h"
 > };
 > }}}
 >
 > and:
 >
 > {{{#!c++
 > // The full absolute names of the nodes in the tree with the addition of
 > // the explicit root node.
 > const char* const domain_names[] = {
 >     "c", "b", "a", "x.d.e.f", "z.d.e.f", "g.h", "i.g.h", "o.w.y.d.e.f",
 >     "j.z.d.e.f", "p.w.y.d.e.f", "q.w.y.d.e.f", "k.g.h"
 > };
 > }}}
 >
 > This is why I think nothing needs to be changed here.

 I see the difference. And that's exactly why I think it is confusing.
 Explicit addition into what? The list? The list does not contain it at
 all.

 What about changing it to something like „The full absolute nodes of the
 tree (the tree also contains ".", which is not included in this list)“?

 > I'll put #3172 to review individually, but if you want to check with
 > `clang++` on your workstation, please merge `trac3172` and try it.

 I can't ☹. I didn't manage to make clang++ work on my system. Every time,
 it complained about some libraries. But, well, whatever…

 I think the branch is good enough for merge.

-- 
Ticket URL: <http://bind10.isc.org/ticket/2750#comment:22>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development


More information about the bind10-tickets mailing list