BIND 10 #135: shutdown command not honored nor sent to all

BIND 10 Development do-not-reply at isc.org
Tue Apr 6 14:11:47 UTC 2010


#135: shutdown command not honored nor sent to all
--------------------------+-------------------------------------------------
 Reporter:  jreed         |       Owner:     
     Type:  defect        |      Status:  new
 Priority:  major         |   Milestone:     
Component:  Unclassified  |    Keywords:     
Sensitive:  0             |  
--------------------------+-------------------------------------------------
 bind10 is supposed to send shutdown over msgq command channel to its
 children to ask them to exit cleanly.

 {{{
 ^CReceived SIGINT.
 Stopping the server.
 Sent shutdown message on command channel.
 Process msgq (PID 19115) died.
 Process b10-xfrin (PID 24150) died.
 Process b10-auth (PID 21778) died.
 Sending SIGTERM to b10-xfrout (PID 4672).
 Sending SIGTERM to b10-cfgmgr (PID 20450).
 Process b10-cmdctl (PID 22397) died.
 Process b10-cfgmgr (PID 20450) died.
 Sending SIGKILL to b10-xfrout (PID 4672).
 Process b10-xfrout (PID 4672) died.
 All processes ended, server done.
 }}}

 (Ignore the sigkill issue -- that is ticket #121.)

 See above that msgq, xfrin, and auth all died and no SIGTERM is sent to
 them. A SIGTERM is sent to  xfrout, cfgmgr, and cmdctl.

 bind10 has: (The verbose output is my custom addition)
 {{{
     def stop_all_processes(self):
         """Stop all processes."""
         cmd = { "command": ['shutdown']}
         self.cc_session.group_sendmsg(cmd, 'Boss', 'Cmd-Ctrld')
         self.cc_session.group_sendmsg(cmd, "Boss", "ConfigManager")
         self.cc_session.group_sendmsg(cmd, "Boss", "Auth")
         if self.verbose:
             sys.stdout.write("Sent shutdown message on command
 channel.\n")

 }}}

 I don't understand why xfrin and msgq died. What told them to die? I don't
 understand why cfgmgr did not die (before SIGTERM). And I don't understand
 why the cmdctl died after other processes were sent a SIGTERM. Is it not
 waiting long enough?

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


More information about the bind10-tickets mailing list