BIND 10 #2470: use MasterLoader in memory::ZoneDataLoader
BIND 10 Development
do-not-reply at isc.org
Fri Dec 14 11:33:14 UTC 2012
#2470: use MasterLoader in memory::ZoneDataLoader
-------------------------------------+-------------------------------------
Reporter: jinmei | Owner:
Type: task | jinmei
Priority: medium | Status:
Component: data source | reviewing
Keywords: | Milestone:
Sensitive: 0 | Sprint-20121218
Sub-Project: DNS | Resolution:
Estimated Difficulty: 3 | CVSS Scoring:
Total Hours: 0 | Defect Severity: N/A
| Feature Depending on Ticket:
| loadzone-ng
| Add Hours to Ticket: 0
| Internal?: 0
-------------------------------------+-------------------------------------
Changes (by vorner):
* owner: vorner => jinmei
Comment:
Hello
Replying to [comment:13 jinmei]:
> I can think of a couple of possibilities, but I'm afraid these are not
> a trivial task. Among them I guess the least ugly approach is to have
> `MasterLoader` detect it and issue the corresponding callback. This
> will require `MasterLoader` to maintain another set of states, which
> reduces the main advantage of separating the collator, but any other
> approach requires some way to pass the information of the source name
> and line from `MasterLoader` to its caller, which will make the API
> dirtier and the implementation more complicated.
I really dislike that approach ‒ as you mention, that beats the purpose of
separating the collator and clutters code.
An option could be to add methods `reportError` and `reportWarning` to the
MasterLoader that would take only the text. The MasterLoader would add the
current file and line and call the callbacks.
Then this method could be passed to the collator or whatever else could
want to
keep checking things on the fly as they are being loaded (which includes
any
possible future analyzers or other tools).
> Meanwhile, #2429 resulted in maintaining some kind of state of what's
> the most recently used TTL, and I suspect #2427 will introduce a
> similar state for the owner name. So it won't be that trickier to
> detect the TTL change for RRs of the same RRset in `MasterLoader` once
> we complete both tasks.
It won't. But it doesn't belong to the MasterLoader. As with the SOA, I'm
reluctant adding it there.
> To this end, my suggestion is to remove the additional callback from
> the collator, and create a ticket to this extension.
ACK, but I think we want to discuss the approach how it should be solved.
But can you keep a LOG_WARN at least in the collator instead, for the
meantime?
Because, seriously, I'm not sure the new ticket will be handled right
away.
--
Ticket URL: <http://bind10.isc.org/ticket/2470#comment:15>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list