BIND 10 #2856: memory manager initialization

BIND 10 Development do-not-reply at isc.org
Wed May 1 21:21:32 UTC 2013


#2856: memory manager initialization
-------------------------------------+-------------------------------------
            Reporter:  jinmei        |                        Owner:
                Type:  task          |                       Status:  new
            Priority:  medium        |                    Milestone:
           Component:  shmem         |                   Resolution:
  manager                            |                 CVSS Scoring:
            Keywords:                |              Defect Severity:  N/A
           Sensitive:  0             |  Feature Depending on Ticket:
         Sub-Project:  DNS           |  shared memory data source
Estimated Difficulty:  4             |          Add Hours to Ticket:  0
         Total Hours:  0             |                    Internal?:  0
-------------------------------------+-------------------------------------
Description changed by jinmei:

Old description:

> Subtask of #2830.  Depend on #2854 and #2855.
>
> On top of the minimal framework (#2854), extend memmgr so that it will
> actually create two copies of mapped file for all "mapped" type of
> segments in the `SegmentInfo` list.
>
> It would look like:
>
> {{{
> for datasrc in datasrces:
>     if datasrc.segment_type != "mapped":
>         continue
>     client_list.reset_memory_segment(datasrc.datasrc_name, "CREATE",
>                                      {"mapped-file":
> datasrc.map_file_base +
>                                       str(datasrc.current_file_id)})
>     for zone_name in datasrc.cached_zones:
>         writer = client_list.get_cache_zone_writer(zone_name)
>         writer.load()
>         writer.install()
>         writer.cleanup()
> }}}
>
> We could repeat the same procedure for the copy version, or we could
> simply copy the file (which would be much faster).

New description:

 Subtask of #2830.  Depend on #2854 and #2855.

 On top of the minimal framework (#2854), extend memmgr so that it will
 actually create two copies of mapped file for all "mapped" type of
 segments in the `SegmentInfo` list.

 It would look like:

 {{{#!python
 for datasrc in datasrces:
     if datasrc.segment_type != "mapped":
         continue
     client_list.reset_memory_segment(datasrc.datasrc_name, "CREATE",
                                      {"mapped-file": datasrc.map_file_base
 +
                                       str(datasrc.current_file_id)})
     ztable = client_list.get_zone_table_accessor(datasrc.datasrc_name,
 true)
     for zone_spec in ztable:
         writer = client_list.get_cache_zone_writer(zone_spec.origin)
         writer.load()
         writer.install()
         writer.cleanup()
 }}}

 We could repeat the same procedure for the copy version, or we could
 simply copy the file (which would be much faster).

--

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


More information about the bind10-tickets mailing list