BIND 10 #2208: Revise InMemoryClient and ConfigurableClientList::configure() using ZoneTableSegment
BIND 10 Development
do-not-reply at isc.org
Mon Oct 22 02:06:51 UTC 2012
#2208: Revise InMemoryClient and ConfigurableClientList::configure() using
ZoneTableSegment
-------------------------------------+-------------------------------------
Reporter: | Owner: jelte
jinmei | Status: reviewing
Type: task | Milestone:
Priority: | Sprint-20121023
medium | Resolution:
Component: data | Sensitive: 0
source | Sub-Project: DNS
Keywords: | Estimated Difficulty: 5
Defect Severity: N/A | Total Hours: 0
Feature Depending on Ticket: |
background zone loading |
Add Hours to Ticket: 0 |
Internal?: 0 |
-------------------------------------+-------------------------------------
Changes (by muks):
* owner: muks => jelte
Comment:
Hi Jelte
Replying to [comment:6 jelte]:
> Could you please provide a few hints for the reviewer next time? For
instance, why is RRClass now a member of ZoneTable instead of passing it
from the client like before?
Ouch, that commit log message is inadequate. Basically, `RRClass` has to
be a property of `ZoneTable`, which is used by it during its destruction.
We do the pass-by-caller trick to avoid bloating some objects, but it
doesn't apply to `ZoneTable` as there aren't many of them. In this branch,
this change was introduced as otherwise, other classes such as
`ZoneTableSegment` would have to manage the `RRClass` (and such code
doesn't belong there).
> Isn't that hardcoded RRClass::IN() going to present a problem (given
that the 'static' datasource also uses in-memory)?
I am assuming you mean the hardcoding inside `ZoneTableSegment`'s factory
method. We have to decide upon config syntax for it. The factory would
construct the appropriate `ZoneTableSegment` based on the passed memory
model, RRClass, etc. in config.
Also, currently the static datasrc doesn't use the new in-memory code. But
we have to address this issue when we decide upon config.
> I think it would be a bit more clean to consistently call arguments and
members ztable_segment (a few of them are now named the more general
'segment' in client_list)
Done. :)
> on a smaller note, you have a number of cases where you use
*somesharedptr.get() which can be written with just *somesharedptr (at
least in client_list.cc:96 and client_list_unittest.cc:260), but maybe
more
Done. :)
--
Ticket URL: <https://bind10.isc.org/ticket/2208#comment:9>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list