BIND 10 #2160: b10-auth should clear Message at the end of request handling

BIND 10 Development do-not-reply at isc.org
Fri Jul 27 16:51:21 UTC 2012


#2160: b10-auth should clear Message at the end of request handling
-------------------------------------+-------------------------------------
                   Reporter:         |                 Owner:
  jinmei                             |                Status:  new
                       Type:         |             Milestone:  Next-Sprint-
  defect                             |  Proposed
                   Priority:         |            Resolution:
  medium                             |             Sensitive:  0
                  Component:         |           Sub-Project:  DNS
  b10-auth                           |  Estimated Difficulty:  0
                   Keywords:         |           Total Hours:  0
            Defect Severity:  N/A    |
Feature Depending on Ticket:         |
        Add Hours to Ticket:  0      |
                  Internal?:  0      |
-------------------------------------+-------------------------------------
Description changed by jinmei:

Old description:

> In the current code, the `Message` object keeps all `RRsets` stored
> in the response, and they are cleared at the beginning of next request
> handling.
>
> With the revised version of in-memory data source this is not good
> because the `RRsets` would have a reference to internal data structures
> of the data source (tree node, `RdataSet` object, etc), and if the
> in-memory image is replaced due to like reload between the two
> requests, the `Message` clear operation will lead to some undesirable
> behavior.
>
> We should revise the code so that the `Message` is always cleared
> at the end of request handling (note: it shouldn't affect sending the
> response data once rendering is completed).  We'd probably extend
> the existing `RendererHolder` helper class to support both the
> renderer and the message.
>
> When this is done, I believe we can remove the workaround in
> ~AuthSrvText().

New description:

 In the current code, the `Message` object keeps all `RRsets` stored
 in the response, and they are cleared at the beginning of next request
 handling.

 With the revised version of in-memory data source this is not good
 because the `RRsets` would have a reference to internal data structures
 of the data source (tree node, `RdataSet` object, etc), and if the
 in-memory image is replaced due to like reload between the two
 requests, the `Message` clear operation will lead to some undesirable
 behavior.

 We should revise the code so that the `Message` is always cleared
 at the end of request handling (note: it shouldn't affect sending the
 response data once rendering is completed).  We'd probably extend
 the existing `RendererHolder` helper class to support both the
 renderer and the message.

 When this is done, I believe we can remove the workaround in
 `~AuthSrvText()`.

--

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


More information about the bind10-tickets mailing list