BIND 10 #2494: sync_udp_server (asio) gives in under heavy stress

BIND 10 Development do-not-reply at isc.org
Tue Nov 20 09:53:53 UTC 2012


#2494: sync_udp_server (asio) gives in under heavy stress
----------------------------------------+----------------------------------
                   Reporter:  jelte     |                 Owner:
                       Type:  defect    |                Status:  new
                   Priority:  medium    |             Milestone:  New Tasks
                  Component:  b10-auth  |            Resolution:
                   Keywords:            |             Sensitive:  1
            Defect Severity:  N/A       |           Sub-Project:  DNS
Feature Depending on Ticket:            |  Estimated Difficulty:  0
        Add Hours to Ticket:  0         |           Total Hours:  0
                  Internal?:  0         |
----------------------------------------+----------------------------------

Comment (by vorner):

 This really does sound like something low-level and we should handle
 these. I'm
 looking at the man page of `sendto` (which is probably used under the
 hood).
 There are many interesting errors that can happen during almost-normal
 circumstances.

 We probably should do something about write errors on TCP connections too.
 But
 I'm not sure if just ignoring the error there is the best option.

 `EACCES` seems to indicate the address is a network/broadcast one. Could
 you confirm that?:
 {{{
 EACCES (For  UNIX domain sockets, which are identified by pathname) Write
 permission is
        denied on the destination socket file, or search permission is
 denied for one of
        the directories the path prefix.  (See path_resolution(7).)

        (For  UDP sockets) An attempt was made to send to a
 network/broadcast address as
        though it was a unicast address.
 }}}

 The `EINVAL` description is far less descriptive, though.
 {{{
 EINVAL Invalid argument passed.
 }}}

 This could mean many things. Are there any addresses that are not really
 addresses, so they'd be rejected as invalid? Or, maybe, the network is
 full,
 but then, it would either say `ENOBUFS` or drop the packets silently.

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


More information about the bind10-tickets mailing list