BIND 10 #213: Change hard-coded process startups to configuration-driven
BIND 10 Development
do-not-reply at isc.org
Thu Nov 3 05:39:37 UTC 2011
#213: Change hard-coded process startups to configuration-driven
-------------------------------------+-------------------------------------
Reporter: shane | Owner: jinmei
Type: | Status: reviewing
enhancement | Milestone:
Priority: major | Sprint-20111108
Component: Boss | Resolution:
of BIND | Sensitive: 0
Keywords: | Sub-Project: Core
Defect Severity: N/A | Estimated Difficulty: 9
Feature Depending on Ticket: | Total Hours:
Add Hours to Ticket: |
Internal?: 0 |
-------------------------------------+-------------------------------------
Comment (by jinmei):
Replying to [comment:43 vorner]:
> > - 'boss' and 'kind' seem to be a duplicate for BaseComponent and
> > Component. For the latter we can simply refer to the
BaseComponent's
> > doc?
>
> The boss was so short it would be longer to reference the other docs.
But I did the reference for the kind, as it had the description of values.
Okay.
> > - Msgq doesn't meet the recommendation of the Component class:
> > {{{
> > directly. It is not recommended to override methods of this class
> > on one-by-one basis.
> > }}}
> > If this exceptional customization is still considered the best, I
> > think we should note more explicitly that it (intentionally) breaks
> > the recommendation and explain more detailed rationale than just
> > saying "hackish".
>
> I'm not sure it's the best possible, but I don't like to have another
copy of the common parts, when the only thing I want to do is to make it
not stop. This is reasonably short, if nothing else. O:-)
Okay.
> > - in component tests, we now don't test the Component class itself. I
> > suspect we should introduce a mock boss object and test Component
> > (that doesn't actually spawn a process or kill it, but just
> > internally emulates such operations).
>
> I added some tests for the methods that don't do the manipulation with
external world. Which isn't much, because most of the Component is the
actual manipulation, but there's something.
>
> Or you meant something else?
Not fully looked into it yet, but the test failed:
{{{
ERROR: test_component_attributes (__main__.ComponentTests)
----------------------------------------------------------------------
Traceback (most recent call last):
File
"/Users/jinmei/src/isc/git/bind10-213inc/src/lib/python/isc/bind10/tests/component_test.py",
line 469, in test_component_attributes
self.assertIsInstance(component._procinfo, TestProcInfo)
AttributeError: 'ComponentTests' object has no attribute
'assertIsInstance'
}}}
> > - I realized it's not clear from the doc string what is expected for
> > the 'info' parameter of BoB.register_process(). Right now it's a
> > ProcInfo object, but it's a short term workaround, and it will
> > eventually be a BaseComponent object. It will help if we clarify
> > that in the docstring.
>
> Actually, even now it is the BaseComponent object, just it now extracts
the ProcInfo out of it. Anyway, the doc is added.
We'll soon see this be the case as we complete #1365. The revised doc
looks okay.
--
Ticket URL: <http://bind10.isc.org/ticket/213#comment:44>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list