BIND 10 #1748: define AbstractRRset::isSameKind() and implement the default version

BIND 10 Development do-not-reply at isc.org
Sat Mar 3 06:36:04 UTC 2012


#1748: define AbstractRRset::isSameKind() and implement the default version
-------------------------------------+-------------------------------------
                   Reporter:         |                 Owner:  UnAssigned
  jinmei                             |                Status:  new
                       Type:  task   |             Milestone:  Next-Sprint-
                   Priority:         |  Proposed
  critical                           |            Resolution:
                  Component:         |             Sensitive:  0
  libdns++                           |           Sub-Project:  DNS
                   Keywords:         |  Estimated Difficulty:  0
            Defect Severity:  N/A    |           Total Hours:  0
Feature Depending on Ticket:  auth   |
  performance                        |
        Add Hours to Ticket:  0      |
                  Internal?:  0      |
-------------------------------------+-------------------------------------
Description changed by jinmei:

Old description:

> For #1688, we need to detect whether two RRsets are of the "same
> kind", i.e., if the name, RR type, and RR class are the same (in
> the context of #1688 other fields and RDATAs would also be expected to
> be the same, but the "same kind" itself wouldn't necessarily mean
> that).
>
> This condition can be easily implemented, but it would involve
> relatively expensive name comparison, and I think we'll like to
> optimize that for the specialized in-memory RRset.
>
> So I propose adding a new method to the base (Abstract)RRset class for
> the interface of this and provide the straightforward default
> implementation.
>
> isSameKind() is a tentative name; it doesn't have to be so if there's
> a better name.
>
> {{{#!c++
> // return true iff this and other are of the same kind
> bool AbstractRRset(const AbstractRRset& other);
> }}}
>
> The specialized in-memory version will go to a separate ticket.
>
> This task has no dependency.

New description:

 For #1688, we need to detect whether two RRsets are of the "same
 kind", i.e., if the name, RR type, and RR class are the same (in
 the context of #1688 other fields and RDATAs would also be expected to
 be the same, but the "same kind" itself wouldn't necessarily mean
 that).

 This condition can be easily implemented, but it would involve
 relatively expensive name comparison, and I think we'll like to
 optimize that for the specialized in-memory RRset.

 So I propose adding a new method to the base (Abstract)RRset class for
 the interface of this and provide the straightforward default
 implementation.

 isSameKind() is a tentative name; it doesn't have to be so if there's
 a better name.

 {{{#!c++
 // return true iff this and other are of the same kind
 bool AbstractRRset::isSameKind(const AbstractRRset& other);
 }}}

 The specialized in-memory version will go to a separate ticket.

 This task has no dependency.

--

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


More information about the bind10-tickets mailing list