BIND 10 #400: Race condition in zonemgr

BIND 10 Development do-not-reply at isc.org
Fri Nov 5 12:10:18 UTC 2010


#400: Race condition in zonemgr
-------------------------------+--------------------------------------------
      Reporter:  vorner        |        Owner:  jinmei   
          Type:  defect        |       Status:  reviewing
      Priority:  major         |    Milestone:           
     Component:  Unclassified  |   Resolution:           
      Keywords:                |    Sensitive:  0        
Estimatedhours:  0.0           |        Hours:  0        
      Billable:  1             |   Totalhours:  0        
      Internal:  0             |  
-------------------------------+--------------------------------------------
Changes (by vorner):

  * owner:  vorner => jinmei


Comment:

 Well, I'm little bit nervous about leaving such false alarm there, as it
 could be hard to hunt down if it happens and could harm the zonemanager in
 severe manner (if I remember the code correctly, it would do something
 like half-shutdown, part of the functionality would stop working). Anyway,
 we are trying to solve a problem that happens only in testing conditions
 (the thread is started and shut down immediately and we check it did
 something), while the false alarm could happen in real life.

 Anyway, this solution has another problem. The socket stays readable
 forever. If it is restarted, it will terminate immediately.

 May I suggest at last try reading data from the socket in non-blocking
 way? That way if it receives spurious wakeup, it detects it and does not
 terminate and if it receives data, it reads them off the socket. Or, a
 simple solution, check self._running at the end of the cycle body?

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


More information about the bind10-tickets mailing list