BIND 10 trac2750, updated. 8829d940017a15fc738f2ebf6dfb3c8da61c54cc [2750] Add documentation

BIND 10 source code commits bind10-changes at lists.isc.org
Fri Aug 30 04:52:24 UTC 2013


The branch, trac2750 has been updated
       via  8829d940017a15fc738f2ebf6dfb3c8da61c54cc (commit)
      from  bf298463e636da9989a877145fee8853733f7030 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 8829d940017a15fc738f2ebf6dfb3c8da61c54cc
Author: Mukund Sivaraman <muks at isc.org>
Date:   Fri Aug 30 10:22:11 2013 +0530

    [2750] Add documentation

-----------------------------------------------------------------------

Summary of changes:
 src/lib/datasrc/memory/domaintree.h |   17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

-----------------------------------------------------------------------
diff --git a/src/lib/datasrc/memory/domaintree.h b/src/lib/datasrc/memory/domaintree.h
index de1996a..695e802 100644
--- a/src/lib/datasrc/memory/domaintree.h
+++ b/src/lib/datasrc/memory/domaintree.h
@@ -1674,6 +1674,16 @@ public:
 
     /// \brief Delete a tree node.
     ///
+    /// When a node is deleted, a process called node fusion occurs
+    /// where nodes that satisfy some conditions are combined together
+    /// into a new node, and the old nodes are deleted from the
+    /// tree. From the DomainTree user's perspective, such node fusion
+    /// will not cause any disturbance in the content of the DomainTree
+    /// itself, but any existing pointers that the user code contains to
+    /// DomainTreeNodes may be invalidated. In this case, the user code
+    /// is required to re-lookup the node using \c find() and other seek
+    /// methods.
+    ///
     /// \throw none.
     ///
     /// \param mem_sgmt The \c MemorySegment object used to insert the nodes
@@ -1762,8 +1772,11 @@ private:
                      const isc::dns::LabelSequence& new_prefix,
                      const isc::dns::LabelSequence& new_suffix);
 
-    /// Try to combine the upper node and its down node into one node,
-    /// deleting the parent in the process.
+    /// Try to replace the upper node and its down node into a single
+    /// new node, deleting the old nodes in the process. This happens
+    /// iteratively up the tree until no pair of nodes can be fused
+    /// anymore. Note that after deletion operation, a pointer to a node
+    /// may be invalid.
     void tryNodeFusion(util::MemorySegment& mem_sgmt,
                        DomainTreeNode<T>* upper_node);
 



More information about the bind10-changes mailing list