BIND 10 #420: Unresponsive process can block msgq

BIND 10 Development do-not-reply at isc.org
Mon Jan 24 11:35:52 UTC 2011


#420: Unresponsive process can block msgq
-------------------------------------+-------------------------------------
                 Reporter:  shane    |                Owner:  zzchen_pku
                     Type:  defect   |               Status:  reviewing
                 Priority:  major    |            Milestone:  A-Team-
                Component:  msgq     |  Sprint-20110126
                 Keywords:           |           Resolution:
Estimated Number of Hours:  13.0     |            Sensitive:  0
                Billable?:  1        |  Add Hours to Ticket:  0
                Internal?:  0        |          Total Hours:  0.5
-------------------------------------+-------------------------------------
Changes (by vorner):

 * owner:  vorner => zzchen_pku


Comment:

 Replying to [comment:7 zzchen_pku]:
 >  -
 > {{{
 > def add_kqueue_socket(self, socket, add_filter = 0):
 > }}}
 >   0 doesn't make sense to me, maybe we should use enum value
 instead(select.KQ_FILTER_READ?)

 Well, I tried that and python complains. It seems the default parameter
 values are looked up before the select module is properly imported.

 However, 0 doesn't mean the KQ_FILTER_READ, it means no additional
 filters. I modified the variable name so it is more obvious what it means.
 Bit or of no flags is 0 (you see that in C all the time, 0 means default).

 I could add a bool parameter instead to say if we want writing or not, if
 it helps.

 >  - I noticed there are some commented-out code lines haven't been
 removed from source.

 But I didn't introduce them. They seem to be notes for future, mostly
 about logging and stuff like that, waiting for something to be
 implemented. Should I remove them? I wasn't sure I wouldn't delete a note
 that would be useful in future (they would be preserved in the history,
 but who looks there if not searching for something specific?).

 >  - There are some duplicate code between send_prepared_msg() and
 process_write(),is it  possible to eliminate them?

 I eliminated something, I can't find any more duplicates except for single
 line ones (which is not shortened by putting them into a function).

 And I forgot to mention a changelog entry last time:
 {{{
 [bug]
 One frozen process no longer freezes the whole b10-msgq. It caused the
 whole system
 to stop working.
 }}}

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


More information about the bind10-tickets mailing list