BIND 10 #2234: staged zone reloading to in-memory
BIND 10 Development
do-not-reply at isc.org
Tue Sep 4 06:22:24 UTC 2012
#2234: staged zone reloading to in-memory
-------------------------------------+-------------------------------------
Reporter: jinmei | Owner:
Type: task | Status: new
Priority: medium | Milestone: Next-
Component: data source | Sprint-Proposed
Sensitive: 0 | Keywords:
Sub-Project: DNS | Defect Severity: N/A
Estimated Difficulty: 0 | Feature Depending on Ticket:
Total Hours: 0 | background zone loading
| Add Hours to Ticket: 0
| Internal?: 0
-------------------------------------+-------------------------------------
A subtask of #2201, should be basically independent from other tasks.
This is a simpler version of extensions to zone reloading to
in-memory. It doesn't rely on higher abstraction but directly
updates the `ConfigurableClientList` class in an ad hoc but
straightforward way.
{{{#!cpp
class ConfigurableClientList {
// load zone(s) content in memory. This can take long time.
// It identifies the specified zone from the list, and load the new
// version of zone into memory. It doesn't yet link the new memory
// image with the zone table.
//
// For simplicity, it doesn't allow multiple zones to be loaded in
// parallel.
void reloadCache(const isc::dns::Name& zone_name);
// This method is expected to be called after a successful completion
// of reloadCache, and updates the zone table so that it points to
// the memory image for the new version of the zone. It keeps the
pointer
// to the old zone image for the later call to cleanupCache.
//
// This method should be completed without "blocking" query
processing.
//
// Again, for simplicity, this method doesn't allow a duplicate call.
void reinstallCache();
// This method is expected to be called after reinstallCache(). It
// releases resources for the old version of zone (remembered
somewhere
// in the class object by reinstallCache()). It can take time.
// It must be exception free.
void cleanupCache();
};
}}}
--
Ticket URL: <http://bind10.isc.org/ticket/2234>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list