BIND 10 #2851: extensions to ConfigurableClientList::getCachedZoneWriter

BIND 10 Development do-not-reply at isc.org
Tue May 7 14:57:50 UTC 2013


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

 * owner:  vorner => jinmei


Comment:

 Hello

 Few comments to the code. I didn't find a test testing reload after the
 zone was missing and then later it was added to the underlying data
 source. There's test checking it does not fail, but I don't think I
 noticed one that would try to add the zone and load it later.

 I believe this is either wrongly indented or tabs are present:
 {{{#!diff
          boost::shared_ptr<memory::ZoneTableSegment> ztable_segment_;
          std::string name_;

 +        // cache_conf_ can be accessed only from this read-only getter,
 +9// to protect its integrity as much as possible.
          const internal::CacheConfig* getCacheConfig() const {
              return (cache_conf_.get());
 }}}

 {{{#!diff
 -    ZoneWriterPair getCachedZoneWriter(const dns::Name& zone);
 +    ZoneWriterPair getCachedZoneWriter(const dns::Name& zone,
 +9999       const std::string& datasrc_name = "");
 }}}

 If the segment (cache) is not writable now, will it ever become writable
 by auth server? I believe it'll be written by the zone manager and never
 by auth.
 {{{#!c++
         CACHE_NOT_WRITABLE, ///< The cache is not (yet) writable (and
 zones
                             ///  zones can't be loaded
 }}}

 This looks confused. The `DATASRC_NOT_FOUND` is not when the zone is
 missing in the named data source, but when the data source of the given
 name is not there.
 {{{#!c++
     /// that data source is placed.  Even if the given name of zone
 doesn't
     /// exist in the data source, other data sources are not searched and
     /// this method simply returns DATASRC_NOT_FOUND in the first element
     /// of the pair.
 }}}

 The docs for datasrc_name parameter is empty.

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


More information about the bind10-tickets mailing list