BIND 10 #2834: update ConfigurableClientList::getCachedZoneWriter with new interface

BIND 10 Development do-not-reply at isc.org
Tue Apr 23 18:06:15 UTC 2013


#2834: update ConfigurableClientList::getCachedZoneWriter with new interface
-------------------------------------+-------------------------------------
            Reporter:  jinmei        |                        Owner:
                Type:  task          |  jinmei
            Priority:  medium        |                       Status:
           Component:  Unclassified  |  reviewing
            Keywords:                |                    Milestone:
           Sensitive:  0             |  Sprint-20130423
         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
-------------------------------------+-------------------------------------

Comment (by jinmei):

 Thanks for the review.

 Replying to [comment:6 vorner]:

 > First, the code itself looks almost OK. But I don't see how it fits into
 the whole picture. What does the ticket do/why is it needed? Or is it just
 cleanup/refactoring ticket? It seems there are too many layers around to
 see what each one of them actually does.

 The changes of this branch is mainly for cleanup, keeping in mind
 subsequent updates for the shared memory feature and with the hope of
 making the later work easier.  Specific goals of the cleanups are:

 - consolidate configuration details of in-memory cache in the
   `CacheConfig` class, and as a result of it:
 - make `ClientList` more agnostic about such details as whether the
   zone data come from a zone file (the `MasterFiles` type) or from
   other generic data sources;
 - make `InMemoryClient` more like an accessor that doesn't hold the
   configuration or data itself but only refer to it.

 > Also, several files now contain tabs.

 Oh, good catch.  I'm not sure how these were introduced (my editor
 setting should normally prevent tabs from being inserted in BIND 10
 C++ files), but anyway I've untabified all tabs contained in the diff
 of this branch.  BTW, I could only find one file, not "several":
 client_list.h.  If there are several such files I guess those had been
 there before this branch started - I don't mind cleaning them up
 within this branch, but please tell me specifically which files they
 are.

 > I guess the files
 `src/lib/datasrc/tests/zone_finder_context_unittest.cc` and
 `src/lib/datasrc/tests/zone_loader_unittest.cc` could benefit from using
 the `loadZoneIntoTable` function.

 True, but my choice at that point was to keep it memory/ tests
 specific as in the case of these two files the common pattern is
 consolidated.  I simply thought it wouldn't be worth duplicate build
 (or making it a library).  But I don't mind using it in datasrc/tests
 (in addition to under memory/) too if you think it's better.  For now
 I didn't touch it.

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


More information about the bind10-tickets mailing list