BIND 10 #1343: Bindctl doesn't remove stuff from default value of named_set

BIND 10 Development do-not-reply at isc.org
Fri Oct 21 15:47:51 UTC 2011


#1343: Bindctl doesn't remove stuff from default value of named_set
-------------------------------------+-------------------------------------
            Reporter:  vorner        |                        Owner:
                Type:  defect        |                       Status:  new
            Priority:  major         |                    Milestone:  Next-
           Component:  bind-ctl      |  Sprint-Proposed
           Sensitive:  0             |                     Keywords:
         Sub-Project:  Core          |              Defect Severity:  N/A
Estimated Difficulty:  0             |  Feature Depending on Ticket:
         Total Hours:  0             |          Add Hours to Ticket:  0
                                     |                    Internal?:  0
-------------------------------------+-------------------------------------
 When there's a named_set and it has a default value from the spec file,
 one can't delete elements from it until it's modified in a different way.
 Better shown in an example (this happens with virgin configuration):

 {{{
 > config remove Boss/components b10-xfrin
 > config diff
 {}
 > config add Boss/components new
 > config diff
 {'Boss': {'components': {'b10-xfrin': {'address': 'Xfrin'}, 'b10-cmdctl':
 {'kind': 'needed', 'special': 'cmdctl'}, 'b10-xfrout': {'address':
 'Xfrout'}, 'b10-auth': {'kind': 'needed', 'special': 'auth'},
 'b10-zonemgr': {'address': 'Zonemgr'}, 'b10-stats': {'address': 'Stats'},
 'new': {}, 'b10-stats-httpd': {'address': 'StatsHttpd'}}}}
 > config remove Boss/components b10-xfrin
 > config diff
 {'Boss': {'components': {'b10-cmdctl': {'kind': 'needed', 'special':
 'cmdctl'}, 'b10-xfrout': {'address': 'Xfrout'}, 'b10-auth': {'kind':
 'needed', 'special': 'auth'}, 'b10-zonemgr': {'address': 'Zonemgr'},
 'b10-stats': {'address': 'Stats'}, 'new': {}, 'b10-stats-httpd':
 {'address': 'StatsHttpd'}}}}
 > config remove Boss/components new
 > config diff
 {'Boss': {'components': {'b10-cmdctl': {'kind': 'needed', 'special':
 'cmdctl'}, 'b10-xfrout': {'address': 'Xfrout'}, 'b10-auth': {'kind':
 'needed', 'special': 'auth'}, 'b10-zonemgr': {'address': 'Zonemgr'},
 'b10-stats': {'address': 'Stats'}, 'b10-stats-httpd': {'address':
 'StatsHttpd'}}}}
 }}}

 Notice the empty diff after first remove (if you look at the content
 before changing config anyhow, the b10-xfrin is there).

 After it's forced to create non-empty diff, it happily removes things from
 there.

 The example expects being descendant of #213 (nothing in current master
 uses the named_set yet, let aside with non-trivial default value).

-- 
Ticket URL: <http://bind10.isc.org/ticket/1343>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development


More information about the bind10-tickets mailing list