BIND 10 #2935: the "checkin" callback for asiodns server classes should be removed

BIND 10 Development do-not-reply at isc.org
Mon Apr 29 23:19:26 UTC 2013


#2935: the "checkin" callback for asiodns server classes should be removed
----------------------------------------+----------------------------------
                   Reporter:  jinmei    |                 Owner:
                       Type:  defect    |                Status:  new
                   Priority:  medium    |             Milestone:  New Tasks
                  Component:  b10-auth  |              Keywords:
               CVSS Scoring:            |             Sensitive:  0
            Defect Severity:  N/A       |           Sub-Project:  DNS
Feature Depending on Ticket:            |  Estimated Difficulty:  0
        Add Hours to Ticket:  0         |           Total Hours:  0
                  Internal?:  0         |
----------------------------------------+----------------------------------
 The "checkin" callbacks passed to `asiodns::UDP/TCPServer` class
 are meaningless.  I don't know why they were introduced, but at least
 currently the only purpose of them is to check whether any incoming
 command (including config update) is delivered to a CC channel.

 First, this is meaningless, because `ModuleCCSession` watches the
 channel (on top of the same asio::io_service) asynchronously itself.
 Secondly, it's not effective because if that were the only way to get
 commands, an idle server (one that is not receiving queries) could never
 get commands.  Third, it's performance bottleneck because this is
 basically a polling invoked for every incoming query.

 For these reasons, I'm going to remove it from the `SyncUDPServer`
 class in #2903.  The performance reason is the strongest reason
 because that's the main reason why we introduce `SyncUDPServer` in the
 first place.  For other classes, it does not do any harm other than
 being a useless bottleneck, but when we have time it's better to clean
 it up if only for clarity.

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


More information about the bind10-tickets mailing list