BIND 10 #2292: eliminate const_cast from domaintree.h
BIND 10 Development
do-not-reply at isc.org
Tue Oct 9 23:36:51 UTC 2012
#2292: eliminate const_cast from domaintree.h
-------------------------------------+-------------------------------------
Reporter: | Owner: jinmei
jinmei | Status: reviewing
Type: | Milestone:
defect | Sprint-20121023
Priority: | Resolution:
medium | Sensitive: 0
Component: data | Sub-Project: DNS
source | Estimated Difficulty: 4
Keywords: | Total Hours: 0
Defect Severity: N/A |
Feature Depending on Ticket: |
Add Hours to Ticket: 0 |
Internal?: 0 |
-------------------------------------+-------------------------------------
Comment (by jinmei):
Replying to [comment:12 vorner]:
> I fixed the three small issues.
These look okay.
> But about this one, I have a problem understanding how you mean it.
> > I'm afraid we cannot simply remove all of these tests. Things like
> > loadRRSIGsRdataMixedCoveredTypes() or addOutOfZoneThrows() still seem
> > to be necessary (or at least they cannot be removed due to this
> > ticket). Also, we need *some* interface to add a particular RRset to
> > an existing zone anyway in order to support incremental updates after
> > ixfr or DDNS.
> >
> > #2268 revised the load/add interface quite substantially, so maybe we
> > merge this branch with #2268, and update some of these tests using the
> > revised add interface while keeping the constness of the domain tree
> > interface?
>
> Keeping the `add()` method seems to be a mutually exclusive requirement
for the
> find to return immutable nodes, at least without cheating. If we have
immutable
> node, we get only immutable ZoneData and therefore can't modify it to
add
> another RRset.
Right, so we'll still think about the interface for getting mutable
zone data from the zone table (eventually).
> Also, I thought the incremental updates would happen inside the memory
manager
> thing, which probably will look at the data in a different way.
Therefore it
> might be premature to do some cheating because of add() that we may not
need in
> the end.
Hmm, unless we switch to the shared segment version soon and
completely drop the local segment mode, I guess we still need to
handle this operation.
Having said that,
> Maybe the tests could be reconstructed without using add at all, just by
> providing the right iterator, or something.
Looking into the latest status of #2268 and the test cases, it looks
like we can address this concern without `InMemoryClient::add()`. So,
I'd suggest just leaving these tests with '#if 0' and merge this
branch. I'll make sure it will be addressed at the final step of #2268.
--
Ticket URL: <http://bind10.isc.org/ticket/2292#comment:13>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list