BIND 10 #1288: Update XFROUT to use new interface

BIND 10 Development do-not-reply at isc.org
Mon Nov 14 19:06:56 UTC 2011


#1288: Update XFROUT to use new interface
-------------------------------------+-------------------------------------
                   Reporter:         |                 Owner:  jinmei
  jinmei                             |                Status:  reviewing
                       Type:  task   |             Milestone:
                   Priority:  major  |  Sprint-20111122
                  Component:         |            Resolution:
  xfrout                             |             Sensitive:  0
                   Keywords:         |           Sub-Project:  DNS
            Defect Severity:  N/A    |  Estimated Difficulty:  5
Feature Depending on Ticket:         |           Total Hours:  0
        Add Hours to Ticket:  0      |
                  Internal?:  0      |
-------------------------------------+-------------------------------------

Comment (by jinmei):

 Replying to [comment:17 vorner]:

 > > Okay, I did it, but to make it workable I needed to merge this branch
 > > with master, which caused a lot of conflicts.  One of them is non
 trivial
 > > (the conflict resolution change in bind10_src.py.in at commit
 a6fd03e),
 > > so please carefully check that.
 >
 > Hmm, I did expect it to be much easier. But taking most of it were the
 conflicts, it would have need to be done anyway.
 >
 > Regarding the change, I've few notes:
 >  * You added the class for XfrOut, but not to the dict at the bottom of
 the special_component.py. This way the installed program can't be started.
 >  * The name 'Xfrout' is inconsistent with the rest in the bob.spec (all
 others are all lover case).

 Ah, okay, the original update was quite buggy.  Unfortunately it's
 difficult to catch bugs around these things via unittests.  I believe
 I've fixed them at commit bdde86c and 8a5b3e3.  I've confirmed that by
 installing the system and starting it by hand.

 BTW, I've noticed via this bug that the current component
 implementation can cause infinite recursive calls (which subsequently
 lead to stack overflow and crash) if `Component._start_internal`
 raises an exception:
 start->_start_internal->(exception)->failed->start->...

 Maybe this will be automatically resolved as we implement delayed
 restart, but if we cannot expect it to be very soon we should probably
 need some intermediate workaround to avoid such catastrophic behavior.

 (In any case this will be beyond the scope of this ticket)

 >  * As xfrout shouldn't be started by start_simple any more, it should be
 removed from the test version of start_simple.

 This one is fixed b5553ef.

 >  * More to the workaround itself, we now have two with the same
 workaround, with more to expect, probably? Would it be better to just pass
 the environment variable to anything started? Other things shouldn't be
 hurt by it anyway and it would remove two specials, making it easier for
 the user. Or, should we try talking about it tomorrow at the call?

 Apparently #1292 was resolved (I've not closely checked the solution
 though).  So we can probably just merge and then cleanup the
 intermediate hacks for xfrin/out (but I'd defer the cleanup task to a
 separate ticket as this ticket could be a blocker for the IXFR-out
 support; I'd rather merge this branch first).

 > Anyway, normal tests pass, but now a distcheck fails:
 [...]
 > I guess a test file is missing from some variable of Makefile.am.

 Ah, I see xfrin test's Makefile has a workaround.  I've done the same
 thing for the notify test (commit 275d091).  That doesn't happen on my
 system, so could you recheck it fixes the issue?

 (Note: we may also be able to clean up this workaround with #1292).

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


More information about the bind10-tickets mailing list