BIND 10 #1698: log initialization causes real fiasco for MacOS 10.7

BIND 10 Development do-not-reply at isc.org
Mon Mar 5 19:24:43 UTC 2012


#1698: log initialization causes real fiasco for MacOS 10.7
-------------------------------------+-------------------------------------
                   Reporter:         |                 Owner:
  jinmei                             |                Status:  new
                       Type:         |             Milestone:  Next-Sprint-
  defect                             |  Proposed
                   Priority:  major  |            Resolution:
                  Component:         |             Sensitive:  0
  logging                            |           Sub-Project:  Core
                   Keywords:         |  Estimated Difficulty:  0
            Defect Severity:  N/A    |           Total Hours:  0
Feature Depending on Ticket:         |
        Add Hours to Ticket:  0      |
                  Internal?:  0      |
-------------------------------------+-------------------------------------

Comment (by jinmei):

 Replying to [comment:1 stephen]:

 > Does replacing:
 > {{{
 > std::string name_;
 > }}}
 > with something like
 > {{{
 > char name_[16];
 > }}}
 > ... and copyying the name with which the logger is instantiated to name_
 in the constructor solve the problem?

 Not tested this time, but probably not because MessageInitializer
 (also statically initialized) involves more complicated things that
 require memory allocation:
 {{{#!c++
     MessageDictionary& global = MessageDictionary::globalDictionary();
     // load() also needs a lot of memory allocation
     std::vector<std::string> repeats = global.load(values);

     // Append the IDs in the list just loaded (the "repeats") to the
 global list
     // of duplicate IDs.
     if (!repeats.empty()) {
         std::vector<std::string>& duplicates = getDuplicates();
         duplicates.insert(duplicates.end(), repeats.begin(),
 repeats.end());
     }
 }}}

 In fact, when I first hit this I tried to just use a proxy for the
 "logger" object, and then find it crashed in the MessageInitializer
 initializer.

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


More information about the bind10-tickets mailing list