BIND 10 #2106: allow RBTree::find to take LabelSequence

BIND 10 Development do-not-reply at isc.org
Fri Jul 27 07:04:24 UTC 2012


#2106: allow RBTree::find to take LabelSequence
-------------------------------------+-------------------------------------
                   Reporter:         |                 Owner:  jinmei
  jinmei                             |                Status:  reviewing
                       Type:  task   |             Milestone:
                   Priority:         |  Sprint-20120731
  medium                             |            Resolution:
                  Component:  data   |             Sensitive:  0
  source                             |           Sub-Project:  DNS
                   Keywords:         |  Estimated Difficulty:  3
            Defect Severity:  N/A    |           Total Hours:  0
Feature Depending on Ticket:         |
  scalable inmemory                  |
        Add Hours to Ticket:  0      |
                  Internal?:  0      |
-------------------------------------+-------------------------------------

Comment (by jinmei):

 It's basically okay for merge (once #2091 is merged).

 I've made some updates to the documentation with some trivial style
 fixes, including
 - explanation of why we use label sequence in the most detailed
   version of find()
 - restore the removed note that this version is intended for in-memory
   data source implementation.  I didn't see any reason for removing it
   due to the change of this branch
 - assuming we'll soon merge #2092 and #2093, updated the doc about
   parent tree chaining.

 A couple of more minor things:
 - I'd omit defining a variable `result`:
 {{{
     //const LabelSequence ls(name); => ls is only used here
     const DomainTree::Result result =
         domains_.find(LabelSequence(name), &node, node_path, cutCallback,
                       &state);
 }}}
   but that may be a matter of taste.
 - it seems callbackName and callbackLabelSequence can be merged:
 {{{
 TEST_F(RBTreeTest, callback) {
     const Name n1("sub.callback.example");
     const Name n2("callback.example");
     const LabelSequence ls1(n1);
     const LabelSequence ls2(n2);

     performCallbackTest(rbtree, mem_sgmt_, n1, n2); // with Names
     performCallbackTest(rbtree, mem_sgmt_, ls1, ls2); // with
 LabelSequences
 }
 }}}
  but I'd leave it to you, too.

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


More information about the bind10-tickets mailing list