BIND 10 #2690: use select instead of poll/kqueue in msgq

BIND 10 Development do-not-reply at isc.org
Wed Aug 14 11:40:58 UTC 2013


#2690: use select instead of poll/kqueue in msgq
-------------------------------------+-------------------------------------
            Reporter:  jinmei        |                        Owner:  muks
                Type:  task          |                       Status:
            Priority:  medium        |  reviewing
           Component:  msgq          |                    Milestone:
            Keywords:                |  Sprint-20130820
           Sensitive:  0             |                   Resolution:
         Sub-Project:  Core          |                 CVSS Scoring:
Estimated Difficulty:  4             |              Defect Severity:  N/A
         Total Hours:  0             |  Feature Depending on Ticket:
                                     |          Add Hours to Ticket:  0
                                     |                    Internal?:  0
-------------------------------------+-------------------------------------
Changes (by vorner):

 * owner:  vorner => muks


Comment:

 Hello

 Replying to [comment:13 muks]:
 > * What is the purpose of this statement:
 > {{{
 >     write_ready = set(write_ready)
 > }}}
 >
 > I follow what it does, but did something make you write that statement?

 Well, the select.select returns a list. And I do `fd in write_ready` and
 `write_ready.remove`. They are linear-time operations on list, while
 expected constant time on sets. I know the optimisation isn't important
 probably, but it felt wrong to put such suboptimal code that would get to
 quadratic running time if the fix was so easy.

 > * Can this use the code in `isc.server_common.bind10_server`?

 In theory, yes. However, the bind10_server does much more than what is
 needed here (and I don't think it can be told not to). So it would need
 somewhat larger refactoring of the code that is not topic of this ticket.

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


More information about the bind10-tickets mailing list