BIND 10 #1330: Extend DatabaseAccessor to support reading diffs

BIND 10 Development do-not-reply at isc.org
Wed Nov 9 14:16:28 UTC 2011


#1330: Extend DatabaseAccessor to support reading diffs
-------------------------------------+-------------------------------------
                   Reporter:         |                 Owner:  stephen
  jinmei                             |                Status:  reviewing
                       Type:  task   |             Milestone:
                   Priority:  major  |  Sprint-20111122
                  Component:  data   |            Resolution:
  source                             |             Sensitive:  0
                   Keywords:         |           Sub-Project:  DNS
            Defect Severity:  N/A    |  Estimated Difficulty:  5
Feature Depending on Ticket:         |           Total Hours:  0
        Add Hours to Ticket:         |
                  Internal?:  0      |
-------------------------------------+-------------------------------------
Changes (by jelte):

 * owner:  jelte => stephen


Comment:

 side note1: i made a couple of minor style adjustments, see
 4ca71b858671d112fade23b449f2a59f14d1d300

 side note2: Seeing this interface also reminded me that I wanted to
 propose defining a class for serial numbers (with overloaded comparison
 operators), instead of passing around plain utin32_t values. Added a
 comment to #1278.


 I'm not sure I'm comfortable with the exception approach we are taking
 here; (defining a number of them in sqlite3_accessor.h and simply
 saying on the database.h level it can throw 'any'). Perhaps I'm
 overthinking this, but if we want to differentiate between different
 errors on our calling side (i.e. in our modules that use these
 datasources), then we'd be better off defining a number of 'standard'
 exceptions for modules to use. Of course we'd still need to catch
 'all' with a generic catch clause, but reporting for 'normal' failures
 would probably be more specific then. Not saying that these new errors
 would not fall under 'other' that way, but simply saying 'any error
 can be raised', while true, might be cutting it a bit short.

 The code looks ok, and if you disagree with the above, it can be
 merged; only one small code issue in sqlite3_accessor.cc; int rc is
 declared twice in getSingleValue(). Compiles fine, but not so nice :)

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


More information about the bind10-tickets mailing list