Yes, its resource leaks. The 122 errors was from another logging.xml then the one supplied in my example (it had an async appender in root, with a file and console appender under it), with the example I sent it is actually 22 errors (see below). The invalid free is most likely something to do with gcc and can be ignored, but the others look to me like things I expect LogManager::shutdown() to clean up by looking at the code.

These are the errors I get:

==1019== Memcheck, a memory error detector
==1019== Copyright (C) 2002-2010, and GNU GPL'd, by Julian Seward et al.
==1019== Using Valgrind-3.6.0.SVN-Debian and LibVEX; rerun with -h for copyright info
==1019== Command: ./a.out
==1019== Parent PID: 29912
==1019==
==1019== Invalid free() / delete / delete[]
==1019==    at 0x48CAB6A: free (vg_replace_malloc.c:366)
==1019==    by 0x710E7F3: free_mem (in /lib/libc-2.11.3.so)
==1019==    by 0x710E2B9: __libc_freeres (in /lib/libc-2.11.3.so)
==1019==    by 0x48C24D3: _vgnU_freeres (vg_preloaded.c:62)
==1019==    by 0x7032067: __run_exit_handlers (exit.c:93)
==1019==    by 0x703211E: exit (exit.c:100)
==1019==    by 0x7019C9D: (below main) (libc-start.c:260)
==1019==  Address 0x4bf4498 is not stack'd, malloc'd or (recently) free'd
==1019==
==1019==
==1019== HEAP SUMMARY:
==1019==     in use at exit: 74,161 bytes in 22 blocks
==1019== total heap usage: 1,487 allocs, 1,467 frees, 119,244 bytes allocated
==1019==
==1019== 8 bytes in 1 blocks are indirectly lost in loss record 1 of 22
==1019== at 0x48CB71C: operator new(unsigned int) (vg_replace_malloc.c:255) ==1019== by 0x49B071A: std::_Rb_tree<std::string, std::pair<std::string const, std::vector<log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, std::allocator<log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > >, std::_Select1st<std::pair<std::string const, std::vector<log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, std::allocator<log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > > >, std::less<std::string>, std::allocator<std::pair<std::string const, std::vector<log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, std::allocator<log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > > > >::_M_insert_(std::_Rb_tree_node_base const*, std::_Rb_tree_node_base const*, std::pair<std::string const, std::vector<log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, std::allocator<log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > > const&) (new_allocator.h:89) ==1019== by 0x49B0A32: std::_Rb_tree<std::string, std::pair<std::string const, std::vector<log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, std::allocator<log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > >, std::_Select1st<std::pair<std::string const, std::vector<log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, std::allocator<log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > > >, std::less<std::string>, std::allocator<std::pair<std::string const, std::vector<log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, std::allocator<log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > > > >::_M_insert_unique(std::pair<std::string const, std::vector<log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, std::allocator<log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > > const&) (stl_tree.h:1177) ==1019== by 0x49AF0FD: log4cxx::Hierarchy::updateParents(log4cxx::helpers::ObjectPtrT<log4cxx::Logger>) (stl_map.h:500) ==1019== by 0x49AF6F4: log4cxx::Hierarchy::getLogger(std::string const&, log4cxx::helpers::ObjectPtrT<log4cxx::spi::LoggerFactory> const&) (hierarchy.cpp:237) ==1019== by 0x49ACB66: log4cxx::Hierarchy::getLogger(std::string const&) (hierarchy.cpp:210) ==1019== by 0x49C9094: log4cxx::LogManager::getLoggerLS(std::string const&) (logmanager.cpp:106) ==1019== by 0x49C91A6: log4cxx::LogManager::getLogger(std::string const&) (logmanager.cpp:121) ==1019== by 0x49C23B1: log4cxx::Logger::getLogger(char const*) (logger.cpp:499) ==1019== by 0x80493F3: main (in /home/peter/repos/git/v6.1/components/axis/component-tests/a.out)
==1019==
==1019== 14 bytes in 1 blocks are indirectly lost in loss record 2 of 22
==1019== at 0x48CB71C: operator new(unsigned int) (vg_replace_malloc.c:255) ==1019== by 0x6DB6795: std::string::_Rep::_S_create(unsigned int, unsigned int, std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.13)
==1019==    by 0x6DB77C3: ??? (in /usr/lib/libstdc++.so.6.0.13)
==1019== by 0x6DB7A41: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&, unsigned int, unsigned int) (in /usr/lib/libstdc++.so.6.0.13) ==1019== by 0x49AED78: log4cxx::Hierarchy::updateParents(log4cxx::helpers::ObjectPtrT<log4cxx::Logger>) (basic_string.h:2003) ==1019== by 0x49AF6F4: log4cxx::Hierarchy::getLogger(std::string const&, log4cxx::helpers::ObjectPtrT<log4cxx::spi::LoggerFactory> const&) (hierarchy.cpp:237) ==1019== by 0x49ACB66: log4cxx::Hierarchy::getLogger(std::string const&) (hierarchy.cpp:210) ==1019== by 0x49C9094: log4cxx::LogManager::getLoggerLS(std::string const&) (logmanager.cpp:106) ==1019== by 0x49C91A6: log4cxx::LogManager::getLogger(std::string const&) (logmanager.cpp:121) ==1019== by 0x49C23B1: log4cxx::Logger::getLogger(char const*) (logger.cpp:499) ==1019== by 0x80493F3: main (in /home/peter/repos/git/v6.1/components/axis/component-tests/a.out)
==1019==
==1019== 16 bytes in 1 blocks are indirectly lost in loss record 3 of 22
==1019== at 0x48CB71C: operator new(unsigned int) (vg_replace_malloc.c:255) ==1019== by 0x6DB6795: std::string::_Rep::_S_create(unsigned int, unsigned int, std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.13) ==1019== by 0x6DB7BA7: std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned int) (in /usr/lib/libstdc++.so.6.0.13) ==1019== by 0x6DB828C: std::string::reserve(unsigned int) (in /usr/lib/libstdc++.so.6.0.13) ==1019== by 0x4A1AE2E: log4cxx::helpers::Transcoder::decode(std::string const&, std::string&) (transcoder.cpp:248) ==1019== by 0x49C9197: log4cxx::LogManager::getLogger(std::string const&) (logmanager.cpp:120) ==1019== by 0x49C23B1: log4cxx::Logger::getLogger(char const*) (logger.cpp:499) ==1019== by 0x80493F3: main (in /home/peter/repos/git/v6.1/components/axis/component-tests/a.out)
==1019==
==1019== 17 bytes in 1 blocks are indirectly lost in loss record 4 of 22
==1019== at 0x48CB71C: operator new(unsigned int) (vg_replace_malloc.c:255) ==1019== by 0x6DB6795: std::string::_Rep::_S_create(unsigned int, unsigned int, std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.13)
==1019==    by 0x6DB7493: ??? (in /usr/lib/libstdc++.so.6.0.13)
==1019== by 0x6DB7685: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.13) ==1019== by 0x49F6A4A: log4cxx::spi::RootLogger::RootLogger(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::Level> const&) (rootlogger.cpp:28)
==1019==    by 0x49AD116: log4cxx::Hierarchy::Hierarchy() (hierarchy.cpp:58)
==1019== by 0x49C8A8D: log4cxx::LogManager::getLoggerRepository() (logmanager.cpp:87) ==1019== by 0x4998C5A: log4cxx::xml::DOMConfigurator::configure(std::string const&) (domconfigurator.cpp:766) ==1019== by 0x8049396: main (in /home/peter/repos/git/v6.1/components/axis/component-tests/a.out)
==1019==
==1019== 18 bytes in 1 blocks are indirectly lost in loss record 5 of 22
==1019== at 0x48CB71C: operator new(unsigned int) (vg_replace_malloc.c:255) ==1019== by 0x6DB6795: std::string::_Rep::_S_create(unsigned int, unsigned int, std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.13)
==1019==    by 0x6DB7493: ??? (in /usr/lib/libstdc++.so.6.0.13)
==1019== by 0x6DB7685: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.13)
==1019==    by 0x49B75CB: log4cxx::Level::getDebug() (level.cpp:53)
==1019== by 0x49B7D1F: log4cxx::Level::toLevelLS(std::string const&, log4cxx::helpers::ObjectPtrT<log4cxx::Level> const&) (level.cpp:190) ==1019== by 0x49DB7FD: log4cxx::helpers::OptionConverter::toLevel(std::string const&, log4cxx::helpers::ObjectPtrT<log4cxx::Level> const&) (optionconverter.cpp:261) ==1019== by 0x4991D19: log4cxx::xml::DOMConfigurator::parseLevel(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, bool) (domconfigurator.cpp:668) ==1019== by 0x499619A: log4cxx::xml::DOMConfigurator::parseChildrenOfLoggerElement(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, bool, apr_xml_doc*, std::map<std::string, log4cxx::helpers::ObjectPtrT<log4cxx::Appender>, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Appender> > > >&) (domconfigurator.cpp:495) ==1019== by 0x49968B6: log4cxx::xml::DOMConfigurator::parseRoot(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, apr_xml_doc*, std::map<std::string, log4cxx::helpers::ObjectPtrT<log4cxx::Appender>, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Appender> > > >&) (domconfigurator.cpp:449) ==1019== by 0x4997E2A: log4cxx::xml::DOMConfigurator::parse(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, apr_xml_doc*, std::map<std::string, log4cxx::helpers::ObjectPtrT<log4cxx::Appender>, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Appender> > > >&) (domconfigurator.cpp:977) ==1019== by 0x4998890: log4cxx::xml::DOMConfigurator::doConfigure(log4cxx::File const&, log4cxx::helpers::ObjectPtrT<log4cxx::spi::LoggerRepository>&) (domconfigurator.cpp:758)
==1019==
==1019== 20 bytes in 1 blocks are indirectly lost in loss record 6 of 22
==1019== at 0x48CB71C: operator new(unsigned int) (vg_replace_malloc.c:255)
==1019==    by 0x49B75D7: log4cxx::Level::getDebug() (level.cpp:53)
==1019== by 0x49B7D1F: log4cxx::Level::toLevelLS(std::string const&, log4cxx::helpers::ObjectPtrT<log4cxx::Level> const&) (level.cpp:190) ==1019== by 0x49DB7FD: log4cxx::helpers::OptionConverter::toLevel(std::string const&, log4cxx::helpers::ObjectPtrT<log4cxx::Level> const&) (optionconverter.cpp:261) ==1019== by 0x4991D19: log4cxx::xml::DOMConfigurator::parseLevel(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, bool) (domconfigurator.cpp:668) ==1019== by 0x499619A: log4cxx::xml::DOMConfigurator::parseChildrenOfLoggerElement(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, bool, apr_xml_doc*, std::map<std::string, log4cxx::helpers::ObjectPtrT<log4cxx::Appender>, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Appender> > > >&) (domconfigurator.cpp:495) ==1019== by 0x49968B6: log4cxx::xml::DOMConfigurator::parseRoot(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, apr_xml_doc*, std::map<std::string, log4cxx::helpers::ObjectPtrT<log4cxx::Appender>, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Appender> > > >&) (domconfigurator.cpp:449) ==1019== by 0x4997E2A: log4cxx::xml::DOMConfigurator::parse(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, apr_xml_doc*, std::map<std::string, log4cxx::helpers::ObjectPtrT<log4cxx::Appender>, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Appender> > > >&) (domconfigurator.cpp:977) ==1019== by 0x4998890: log4cxx::xml::DOMConfigurator::doConfigure(log4cxx::File const&, log4cxx::helpers::ObjectPtrT<log4cxx::spi::LoggerRepository>&) (domconfigurator.cpp:758) ==1019== by 0x4998C7B: log4cxx::xml::DOMConfigurator::configure(std::string const&) (domconfigurator.cpp:766) ==1019== by 0x8049396: main (in /home/peter/repos/git/v6.1/components/axis/component-tests/a.out)
==1019==
==1019== 28 bytes in 1 blocks are indirectly lost in loss record 7 of 22
==1019== at 0x48CB71C: operator new(unsigned int) (vg_replace_malloc.c:255) ==1019== by 0x49B0B34: std::_Rb_tree<std::string, std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Logger> >, std::_Select1st<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > >, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > >::_M_insert_(std::_Rb_tree_node_base const*, std::_Rb_tree_node_base const*, std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > const&) (new_allocator.h:89) ==1019== by 0x49B0DD2: std::_Rb_tree<std::string, std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Logger> >, std::_Select1st<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > >, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > >::_M_insert_unique(std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > const&) (stl_tree.h:1177) ==1019== by 0x49AF5B4: log4cxx::Hierarchy::getLogger(std::string const&, log4cxx::helpers::ObjectPtrT<log4cxx::spi::LoggerFactory> const&) (stl_map.h:500) ==1019== by 0x49ACB66: log4cxx::Hierarchy::getLogger(std::string const&) (hierarchy.cpp:210) ==1019== by 0x49C9094: log4cxx::LogManager::getLoggerLS(std::string const&) (logmanager.cpp:106) ==1019== by 0x49C91A6: log4cxx::LogManager::getLogger(std::string const&) (logmanager.cpp:121) ==1019== by 0x49C23B1: log4cxx::Logger::getLogger(char const*) (logger.cpp:499) ==1019== by 0x80493F3: main (in /home/peter/repos/git/v6.1/components/axis/component-tests/a.out)
==1019==
==1019== 32 bytes in 1 blocks are indirectly lost in loss record 8 of 22
==1019== at 0x48CB71C: operator new(unsigned int) (vg_replace_malloc.c:255) ==1019== by 0x49B06AE: std::_Rb_tree<std::string, std::pair<std::string const, std::vector<log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, std::allocator<log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > >, std::_Select1st<std::pair<std::string const, std::vector<log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, std::allocator<log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > > >, std::less<std::string>, std::allocator<std::pair<std::string const, std::vector<log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, std::allocator<log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > > > >::_M_insert_(std::_Rb_tree_node_base const*, std::_Rb_tree_node_base const*, std::pair<std::string const, std::vector<log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, std::allocator<log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > > const&) (new_allocator.h:89) ==1019== by 0x49B0A32: std::_Rb_tree<std::string, std::pair<std::string const, std::vector<log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, std::allocator<log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > >, std::_Select1st<std::pair<std::string const, std::vector<log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, std::allocator<log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > > >, std::less<std::string>, std::allocator<std::pair<std::string const, std::vector<log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, std::allocator<log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > > > >::_M_insert_unique(std::pair<std::string const, std::vector<log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, std::allocator<log4cxx::helpers::ObjectPtrT<log4cxx::Logger> > > > const&) (stl_tree.h:1177) ==1019== by 0x49AF0FD: log4cxx::Hierarchy::updateParents(log4cxx::helpers::ObjectPtrT<log4cxx::Logger>) (stl_map.h:500) ==1019== by 0x49AF6F4: log4cxx::Hierarchy::getLogger(std::string const&, log4cxx::helpers::ObjectPtrT<log4cxx::spi::LoggerFactory> const&) (hierarchy.cpp:237) ==1019== by 0x49ACB66: log4cxx::Hierarchy::getLogger(std::string const&) (hierarchy.cpp:210) ==1019== by 0x49C9094: log4cxx::LogManager::getLoggerLS(std::string const&) (logmanager.cpp:106) ==1019== by 0x49C91A6: log4cxx::LogManager::getLogger(std::string const&) (logmanager.cpp:121) ==1019== by 0x49C23B1: log4cxx::Logger::getLogger(char const*) (logger.cpp:499) ==1019== by 0x80493F3: main (in /home/peter/repos/git/v6.1/components/axis/component-tests/a.out)
==1019==
==1019== 64 bytes in 1 blocks are indirectly lost in loss record 9 of 22
==1019== at 0x48CB71C: operator new(unsigned int) (vg_replace_malloc.c:255)
==1019==    by 0x49AD0FE: log4cxx::Hierarchy::Hierarchy() (hierarchy.cpp:58)
==1019== by 0x49C8A8D: log4cxx::LogManager::getLoggerRepository() (logmanager.cpp:87) ==1019== by 0x4998C5A: log4cxx::xml::DOMConfigurator::configure(std::string const&) (domconfigurator.cpp:766) ==1019== by 0x8049396: main (in /home/peter/repos/git/v6.1/components/axis/component-tests/a.out)
==1019==
==1019== 64 bytes in 1 blocks are indirectly lost in loss record 10 of 22
==1019== at 0x48CB71C: operator new(unsigned int) (vg_replace_malloc.c:255) ==1019== by 0x498FCB8: log4cxx::DefaultLoggerFactory::makeNewLoggerInstance(log4cxx::helpers::Pool&, std::string const&) const (defaultloggerfactory.cpp:29) ==1019== by 0x49AF55B: log4cxx::Hierarchy::getLogger(std::string const&, log4cxx::helpers::ObjectPtrT<log4cxx::spi::LoggerFactory> const&) (hierarchy.cpp:226) ==1019== by 0x49ACB66: log4cxx::Hierarchy::getLogger(std::string const&) (hierarchy.cpp:210) ==1019== by 0x49C9094: log4cxx::LogManager::getLoggerLS(std::string const&) (logmanager.cpp:106) ==1019== by 0x49C91A6: log4cxx::LogManager::getLogger(std::string const&) (logmanager.cpp:121) ==1019== by 0x49C23B1: log4cxx::Logger::getLogger(char const*) (logger.cpp:499) ==1019== by 0x80493F3: main (in /home/peter/repos/git/v6.1/components/axis/component-tests/a.out)
==1019==
==1019== 78 (24 direct, 54 indirect) bytes in 1 blocks are definitely lost in loss record 11 of 22 ==1019== at 0x48CB71C: operator new(unsigned int) (vg_replace_malloc.c:255)
==1019==    by 0x49AD069: log4cxx::Hierarchy::Hierarchy() (hierarchy.cpp:55)
==1019== by 0x49C8A8D: log4cxx::LogManager::getLoggerRepository() (logmanager.cpp:87) ==1019== by 0x4998C5A: log4cxx::xml::DOMConfigurator::configure(std::string const&) (domconfigurator.cpp:766) ==1019== by 0x8049396: main (in /home/peter/repos/git/v6.1/components/axis/component-tests/a.out)
==1019==
==1019== 104 bytes in 1 blocks are still reachable in loss record 12 of 22
==1019==    at 0x48CAF50: malloc (vg_replace_malloc.c:236)
==1019==    by 0x4C3105E: apr_allocator_create (apr_pools.c:129)
==1019==    by 0x4C322BD: apr_pool_initialize (apr_pools.c:587)
==1019==    by 0x4C341A6: apr_initialize (start.c:55)
==1019== by 0x4977DFC: log4cxx::helpers::APRInitializer::APRInitializer() (aprinitializer.cpp:44) ==1019== by 0x4977F31: log4cxx::helpers::APRInitializer::getInstance() (aprinitializer.cpp:77) ==1019== by 0x49780E6: log4cxx::helpers::APRInitializer::initialize() (aprinitializer.cpp:83) ==1019== by 0x49D4F00: log4cxx::helpers::ObjectImpl::ObjectImpl() (objectimpl.cpp:30) ==1019== by 0x497F19E: log4cxx::helpers::CharsetDecoder::CharsetDecoder() (charsetdecoder.cpp:413) ==1019== by 0x497F217: log4cxx::helpers::CharsetDecoder::createDefaultDecoder() (charsetdecoder.cpp:360) ==1019== by 0x497FC06: log4cxx::helpers::CharsetDecoder::getDefaultDecoder() (charsetdecoder.cpp:435) ==1019== by 0x4A1AF35: log4cxx::helpers::Transcoder::decode(std::string const&, std::string&) (transcoder.cpp:247)
==1019==
==1019== 251 (24 direct, 227 indirect) bytes in 1 blocks are definitely lost in loss record 13 of 22 ==1019== at 0x48CB71C: operator new(unsigned int) (vg_replace_malloc.c:255)
==1019==    by 0x49AD03C: log4cxx::Hierarchy::Hierarchy() (hierarchy.cpp:55)
==1019== by 0x49C8A8D: log4cxx::LogManager::getLoggerRepository() (logmanager.cpp:87) ==1019== by 0x4998C5A: log4cxx::xml::DOMConfigurator::configure(std::string const&) (domconfigurator.cpp:766) ==1019== by 0x8049396: main (in /home/peter/repos/git/v6.1/components/axis/component-tests/a.out)
==1019==
==1019== 8,192 bytes in 1 blocks are still reachable in loss record 14 of 22
==1019==    at 0x48CAF50: malloc (vg_replace_malloc.c:236)
==1019==    by 0x4C32193: apr_pool_create_ex (apr_pools.c:349)
==1019==    by 0x49E5907: log4cxx::helpers::Pool::Pool() (pool.cpp:34)
==1019== by 0x497F22D: log4cxx::helpers::CharsetDecoder::createDefaultDecoder() (charsetdecoder.cpp:360) ==1019== by 0x497FC06: log4cxx::helpers::CharsetDecoder::getDefaultDecoder() (charsetdecoder.cpp:435) ==1019== by 0x4A1AF35: log4cxx::helpers::Transcoder::decode(std::string const&, std::string&) (transcoder.cpp:247) ==1019== by 0x49A03CF: std::string decodeLS<char>(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (file.cpp:45) ==1019== by 0x49A0410: log4cxx::File::File(std::string const&) (file.cpp:51) ==1019== by 0x4998C55: log4cxx::xml::DOMConfigurator::configure(std::string const&) (domconfigurator.cpp:765) ==1019== by 0x8049396: main (in /home/peter/repos/git/v6.1/components/axis/component-tests/a.out)
==1019==
==1019== 8,192 bytes in 1 blocks are still reachable in loss record 15 of 22
==1019==    at 0x48CAF50: malloc (vg_replace_malloc.c:236)
==1019==    by 0x4C32193: apr_pool_create_ex (apr_pools.c:349)
==1019==    by 0x49E5907: log4cxx::helpers::Pool::Pool() (pool.cpp:34)
==1019==    by 0x49ACFE5: log4cxx::Hierarchy::Hierarchy() (hierarchy.cpp:55)
==1019== by 0x49C8A8D: log4cxx::LogManager::getLoggerRepository() (logmanager.cpp:87) ==1019== by 0x4998C5A: log4cxx::xml::DOMConfigurator::configure(std::string const&) (domconfigurator.cpp:766) ==1019== by 0x8049396: main (in /home/peter/repos/git/v6.1/components/axis/component-tests/a.out)
==1019==
==1019== 8,192 bytes in 1 blocks are still reachable in loss record 16 of 22
==1019==    at 0x48CAF50: malloc (vg_replace_malloc.c:236)
==1019==    by 0x4C32193: apr_pool_create_ex (apr_pools.c:349)
==1019==    by 0x49E5907: log4cxx::helpers::Pool::Pool() (pool.cpp:34)
==1019== by 0x4998517: log4cxx::xml::DOMConfigurator::doConfigure(log4cxx::File const&, log4cxx::helpers::ObjectPtrT<log4cxx::spi::LoggerRepository>&) (domconfigurator.cpp:726) ==1019== by 0x4998C7B: log4cxx::xml::DOMConfigurator::configure(std::string const&) (domconfigurator.cpp:766) ==1019== by 0x8049396: main (in /home/peter/repos/git/v6.1/components/axis/component-tests/a.out)
==1019==
==1019== 8,192 bytes in 1 blocks are still reachable in loss record 17 of 22
==1019==    at 0x48CAF50: malloc (vg_replace_malloc.c:236)
==1019==    by 0x4C32193: apr_pool_create_ex (apr_pools.c:349)
==1019==    by 0x49E5907: log4cxx::helpers::Pool::Pool() (pool.cpp:34)
==1019== by 0x498110D: log4cxx::helpers::CharsetEncoder::createDefaultEncoder() (charsetencoder.cpp:376) ==1019== by 0x49819F6: log4cxx::helpers::CharsetEncoder::getDefaultEncoder() (charsetencoder.cpp:442) ==1019== by 0x4A1AD53: log4cxx::helpers::Transcoder::encode(std::string const&, std::string&) (transcoder.cpp:288) ==1019== by 0x4A1B1C7: log4cxx::helpers::Transcoder::encode(std::string const&, log4cxx::helpers::Pool&) (transcoder.cpp:277) ==1019== by 0x49A05AF: log4cxx::File::getPath(log4cxx::helpers::Pool&) const (file.cpp:126) ==1019== by 0x49A08B5: log4cxx::File::open(apr_file_t**, int, int, log4cxx::helpers::Pool&) const (file.cpp:133) ==1019== by 0x499853D: log4cxx::xml::DOMConfigurator::doConfigure(log4cxx::File const&, log4cxx::helpers::ObjectPtrT<log4cxx::spi::LoggerRepository>&) (domconfigurator.cpp:729) ==1019== by 0x4998C7B: log4cxx::xml::DOMConfigurator::configure(std::string const&) (domconfigurator.cpp:766) ==1019== by 0x8049396: main (in /home/peter/repos/git/v6.1/components/axis/component-tests/a.out)
==1019==
==1019== 8,192 bytes in 1 blocks are still reachable in loss record 18 of 22
==1019==    at 0x48CAF50: malloc (vg_replace_malloc.c:236)
==1019==    by 0x4C32193: apr_pool_create_ex (apr_pools.c:349)
==1019==    by 0x49E5907: log4cxx::helpers::Pool::Pool() (pool.cpp:34)
==1019== by 0x4975F07: log4cxx::AppenderSkeleton::AppenderSkeleton() (appenderskeleton.cpp:43) ==1019== by 0x4A1D59B: log4cxx::WriterAppender::WriterAppender() (writerappender.cpp:30) ==1019== by 0x49A16E7: log4cxx::FileAppender::FileAppender() (fileappender.cpp:38) ==1019== by 0x49A35E2: log4cxx::FileAppender::ClazzFileAppender::newInstance() const (fileappender.h:65) ==1019== by 0x499414A: log4cxx::xml::DOMConfigurator::parseAppender(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, apr_xml_doc*, std::map<std::string, log4cxx::helpers::ObjectPtrT<log4cxx::Appender>, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Appender> > > >&) (domconfigurator.cpp:195) ==1019== by 0x499571C: log4cxx::xml::DOMConfigurator::findAppenderByName(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, apr_xml_doc*, std::string const&, std::map<std::string, log4cxx::helpers::ObjectPtrT<log4cxx::Appender>, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Appender> > > >&) (domconfigurator.cpp:141) ==1019== by 0x49957A0: log4cxx::xml::DOMConfigurator::findAppenderByName(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, apr_xml_doc*, std::string const&, std::map<std::string, log4cxx::helpers::ObjectPtrT<log4cxx::Appender>, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Appender> > > >&) (domconfigurator.cpp:145) ==1019== by 0x4995B6B: log4cxx::xml::DOMConfigurator::findAppenderByReference(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, apr_xml_doc*, std::map<std::string, log4cxx::helpers::ObjectPtrT<log4cxx::Appender>, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Appender> > > >&) (domconfigurator.cpp:169) ==1019== by 0x4995EDD: log4cxx::xml::DOMConfigurator::parseChildrenOfLoggerElement(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, bool, apr_xml_doc*, std::map<std::string, log4cxx::helpers::ObjectPtrT<log4cxx::Appender>, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Appender> > > >&) (domconfigurator.cpp:477)
==1019==
==1019== 8,192 bytes in 1 blocks are still reachable in loss record 19 of 22
==1019==    at 0x48CAF50: malloc (vg_replace_malloc.c:236)
==1019==    by 0x4C32193: apr_pool_create_ex (apr_pools.c:349)
==1019==    by 0x49E5907: log4cxx::helpers::Pool::Pool() (pool.cpp:34)
==1019== by 0x49A5559: log4cxx::helpers::FileOutputStream::FileOutputStream(std::string const&, bool) (fileoutputstream.cpp:35) ==1019== by 0x49A1B03: log4cxx::FileAppender::setFile(std::string const&, bool, bool, unsigned int, log4cxx::helpers::Pool&) (fileappender.cpp:269) ==1019== by 0x49A2535: log4cxx::FileAppender::activateOptions(log4cxx::helpers::Pool&) (fileappender.cpp:155) ==1019== by 0x49EE836: log4cxx::config::PropertySetter::activate(log4cxx::helpers::Pool&) (propertysetter.cpp:102) ==1019== by 0x4994886: log4cxx::xml::DOMConfigurator::parseAppender(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, apr_xml_doc*, std::map<std::string, log4cxx::helpers::ObjectPtrT<log4cxx::Appender>, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Appender> > > >&) (domconfigurator.cpp:273) ==1019== by 0x499571C: log4cxx::xml::DOMConfigurator::findAppenderByName(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, apr_xml_doc*, std::string const&, std::map<std::string, log4cxx::helpers::ObjectPtrT<log4cxx::Appender>, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Appender> > > >&) (domconfigurator.cpp:141) ==1019== by 0x49957A0: log4cxx::xml::DOMConfigurator::findAppenderByName(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, apr_xml_doc*, std::string const&, std::map<std::string, log4cxx::helpers::ObjectPtrT<log4cxx::Appender>, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Appender> > > >&) (domconfigurator.cpp:145) ==1019== by 0x4995B6B: log4cxx::xml::DOMConfigurator::findAppenderByReference(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, apr_xml_doc*, std::map<std::string, log4cxx::helpers::ObjectPtrT<log4cxx::Appender>, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Appender> > > >&) (domconfigurator.cpp:169) ==1019== by 0x4995EDD: log4cxx::xml::DOMConfigurator::parseChildrenOfLoggerElement(log4cxx::helpers::Pool&, log4cxx::helpers::ObjectPtrT<log4cxx::helpers::CharsetDecoder>&, apr_xml_elem*, log4cxx::helpers::ObjectPtrT<log4cxx::Logger>, bool, apr_xml_doc*, std::map<std::string, log4cxx::helpers::ObjectPtrT<log4cxx::Appender>, std::less<std::string>, std::allocator<std::pair<std::string const, log4cxx::helpers::ObjectPtrT<log4cxx::Appender> > > >&) (domconfigurator.cpp:477)
==1019==
==1019== 8,192 bytes in 1 blocks are possibly lost in loss record 20 of 22
==1019==    at 0x48CAF50: malloc (vg_replace_malloc.c:236)
==1019==    by 0x4C32193: apr_pool_create_ex (apr_pools.c:349)
==1019==    by 0x4C322F7: apr_pool_initialize (apr_pools.c:592)
==1019==    by 0x4C341A6: apr_initialize (start.c:55)
==1019== by 0x4977DFC: log4cxx::helpers::APRInitializer::APRInitializer() (aprinitializer.cpp:44) ==1019== by 0x4977F31: log4cxx::helpers::APRInitializer::getInstance() (aprinitializer.cpp:77) ==1019== by 0x49780E6: log4cxx::helpers::APRInitializer::initialize() (aprinitializer.cpp:83) ==1019== by 0x49D4F00: log4cxx::helpers::ObjectImpl::ObjectImpl() (objectimpl.cpp:30) ==1019== by 0x497F19E: log4cxx::helpers::CharsetDecoder::CharsetDecoder() (charsetdecoder.cpp:413) ==1019== by 0x497F217: log4cxx::helpers::CharsetDecoder::createDefaultDecoder() (charsetdecoder.cpp:360) ==1019== by 0x497FC06: log4cxx::helpers::CharsetDecoder::getDefaultDecoder() (charsetdecoder.cpp:435) ==1019== by 0x4A1AF35: log4cxx::helpers::Transcoder::decode(std::string const&, std::string&) (transcoder.cpp:247)
==1019==
==1019== 8,192 bytes in 1 blocks are possibly lost in loss record 21 of 22
==1019==    at 0x48CAF50: malloc (vg_replace_malloc.c:236)
==1019==    by 0x4C32193: apr_pool_create_ex (apr_pools.c:349)
==1019==    by 0x4C341CF: apr_initialize (start.c:58)
==1019== by 0x4977DFC: log4cxx::helpers::APRInitializer::APRInitializer() (aprinitializer.cpp:44) ==1019== by 0x4977F31: log4cxx::helpers::APRInitializer::getInstance() (aprinitializer.cpp:77) ==1019== by 0x49780E6: log4cxx::helpers::APRInitializer::initialize() (aprinitializer.cpp:83) ==1019== by 0x49D4F00: log4cxx::helpers::ObjectImpl::ObjectImpl() (objectimpl.cpp:30) ==1019== by 0x497F19E: log4cxx::helpers::CharsetDecoder::CharsetDecoder() (charsetdecoder.cpp:413) ==1019== by 0x497F217: log4cxx::helpers::CharsetDecoder::createDefaultDecoder() (charsetdecoder.cpp:360) ==1019== by 0x497FC06: log4cxx::helpers::CharsetDecoder::getDefaultDecoder() (charsetdecoder.cpp:435) ==1019== by 0x4A1AF35: log4cxx::helpers::Transcoder::decode(std::string const&, std::string&) (transcoder.cpp:247) ==1019== by 0x49A03CF: std::string decodeLS<char>(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (file.cpp:45)
==1019==
==1019== 8,192 bytes in 1 blocks are possibly lost in loss record 22 of 22
==1019==    at 0x48CAF50: malloc (vg_replace_malloc.c:236)
==1019==    by 0x4C32193: apr_pool_create_ex (apr_pools.c:349)
==1019== by 0x4977E1C: log4cxx::helpers::APRInitializer::APRInitializer() (aprinitializer.cpp:45) ==1019== by 0x4977F31: log4cxx::helpers::APRInitializer::getInstance() (aprinitializer.cpp:77) ==1019== by 0x49780E6: log4cxx::helpers::APRInitializer::initialize() (aprinitializer.cpp:83) ==1019== by 0x49D4F00: log4cxx::helpers::ObjectImpl::ObjectImpl() (objectimpl.cpp:30) ==1019== by 0x497F19E: log4cxx::helpers::CharsetDecoder::CharsetDecoder() (charsetdecoder.cpp:413) ==1019== by 0x497F217: log4cxx::helpers::CharsetDecoder::createDefaultDecoder() (charsetdecoder.cpp:360) ==1019== by 0x497FC06: log4cxx::helpers::CharsetDecoder::getDefaultDecoder() (charsetdecoder.cpp:435) ==1019== by 0x4A1AF35: log4cxx::helpers::Transcoder::decode(std::string const&, std::string&) (transcoder.cpp:247) ==1019== by 0x49A03CF: std::string decodeLS<char>(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (file.cpp:45) ==1019== by 0x49A0410: log4cxx::File::File(std::string const&) (file.cpp:51)
==1019==
==1019== LEAK SUMMARY:
==1019==    definitely lost: 48 bytes in 2 blocks
==1019==    indirectly lost: 281 bytes in 10 blocks
==1019==      possibly lost: 24,576 bytes in 3 blocks
==1019==    still reachable: 49,256 bytes in 7 blocks
==1019==         suppressed: 0 bytes in 0 blocks
==1019==
==1019== For counts of detected and suppressed errors, rerun with: -v
==1019== ERROR SUMMARY: 7 errors from 6 contexts (suppressed: 35 from 6)


On 10/25/2016 02:17 PM, Thorsten Schöning wrote:
Guten Tag Peter Westman,
am Dienstag, 25. Oktober 2016 um 13:51 schrieben Sie:

I get tons of valgrind errors (112 to be exact)[...]
I don't know valgrind very well, so what kind of errors are you
talking about? If it's resource leaks, some of those are known and
accepted to fix problems with multi threading apps and such.

https://issues.apache.org/jira/browse/LOGCXX-322

Mit freundlichen Grüßen,

Thorsten Schöning


Reply via email to