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