DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://nagoya.apache.org/bugzilla/show_bug.cgi?id=22031>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=22031 memory leak when terminate Xalan ------- Additional Comments From [EMAIL PROTECTED] 2003-07-31 20:43 ------- I just debug it again, and found that in the terminate function , it call for- each to delete the static table. The memory leak is reported on Solaris. you can find it through dbx tool and purify. There are several Xalan memory leak.the following is some of them: MLK: 248 bytes leaked at 0x10071c2c8 * This memory was allocated from: " malloc [rtlib.o]" " c2n6Fl_Pv___1 [libCrun.so.1]" " void*operator new(unsigned long) [rtlib.o]" " XalanEXSLTFunctionObjectType*XalanEXSLTFunctionObjectType::clone()const [XalanEXSLTCommonImpl.hpp:160]" " void XPathEnvSupportDefault::updateFunctionTable (std::map<XalanDOMString,std::map<XalanDOMString,const Function*,std::less<XalanDOMString>,std::allocator<std::pair<const XalanDOMString,const Function*> > >,std::less<XalanDOMString>,std::allocator<std:... [XPathEnvSupportDefault.cpp:182]" " void XPathEnvSupportDefault::installExternalFunctionGlobal(const XalanDOMString&,const XalanDOMString&,const Function&) [XPathEnvSupportDefault.cpp:218]" " void XalanExtensionsInstaller::doInstallGlobal(const unsigned short*,const XalanExtensionsInstaller::FunctionTableEntry*) [XalanExtensions.cpp:314]" " void XalanEXSLTCommonFunctionsInstaller::installGlobal() [XalanEXSLTCommon.cpp:296]" " void XalanTransformer::initialize() [XalanTransformer.cpp:208]" MLK: 48 bytes leaked at 0x10067d718 * This memory was allocated from: " malloc [rtlib.o]" " c2n6Fl_Pv___1 [libCrun.so.1]" " void*operator new(unsigned long) [rtlib.o]" " XalanEXSLTFunctionPadding*XalanEXSLTFunctionPadding::clone()const [XalanEXSLTStringImpl.hpp:211]" " void XPathEnvSupportDefault::updateFunctionTable (std::map<XalanDOMString,std::map<XalanDOMString,const Function*,std::less<XalanDOMString>,std::allocator<std::pair<const XalanDOMString,const Function*> > >,std::less<XalanDOMString>,std::allocator<std:... [XPathEnvSupportDefault.cpp:182]" " void XPathEnvSupportDefault::installExternalFunctionGlobal(const XalanDOMString&,const XalanDOMString&,const Function&) [XPathEnvSupportDefault.cpp:218]" " void XalanExtensionsInstaller::doInstallGlobal(const unsigned short*,const XalanExtensionsInstaller::FunctionTableEntry*) [XalanExtensions.cpp:314]" " void XalanEXSLTStringFunctionsInstaller::installGlobal() [XalanEXSLTString.cpp:410]" " void XalanTransformer::initialize() [XalanTransformer.cpp:211]" MLK: 32 bytes leaked in 2 blocks * This memory was allocated from: " malloc [rtlib.o]" " c2n6Fl_Pv___1 [libCrun.so.1]" " void*operator new(unsigned long) [rtlib.o]" " FunctionNodeSet*FunctionNodeSet::clone()const [FunctionNodeSet.cpp:191]" " void XPathEnvSupportDefault::updateFunctionTable (std::map<XalanDOMString,std::map<XalanDOMString,const Function*,std::less<XalanDOMString>,std::allocator<std::pair<const XalanDOMString,const Function*> > >,std::less<XalanDOMString>,std::allocator<std:... [XPathEnvSupportDefault.cpp:182]" " void XPathEnvSupportDefault::installExternalFunctionGlobal(const XalanDOMString&,const XalanDOMString&,const Function&) [XPathEnvSupportDefault.cpp:218]" " void XalanExtensionsInstaller::doInstallGlobal(const unsigned short*,const XalanExtensionsInstaller::FunctionTableEntry*) [XalanExtensions.cpp:314]" " void XalanExtensionsInstaller::installGlobal() [XalanExtensions.cpp:254]" " void XalanTransformer::initialize() [XalanTransformer.cpp:207]" MLK: 18 bytes leaked at 0x1006058b8 * This memory was allocated from: " malloc [rtlib.o]" " c2n6Fl_Pv___1 [libCrun.so.1]" " void*operator new(unsigned long) [rtlib.o]" " void*std::allocator<unsigned short>::allocate(unsigned long,void*) [libxalan-c1_4_0.so]" " unsigned short*std::allocator_interface<std::allocator<unsigned short>,unsigned short>::allocate(unsigned long,unsigned short*) [libxalan- c1_4_0.so]" " void std::vector<unsigned short,std::allocator<unsigned short> >::reserve(unsigned long) [libxalan-c1_4_0.so]" " XalanDOMString&XalanDOMString::append(const unsigned short*,unsigned long) [XalanDOMString.cpp:335]" " XalanDOMString&XalanDOMString::append(const XalanDOMString&,unsigned long,unsigned long) [libxalan-c1_4_0.so]" " XalanDOMString::XalanDOMString(const XalanDOMString&,unsigned long,unsigned long) [XalanDOMString.cpp:99]" " XalanEXSLTFunctionObjectType::XalanEXSLTFunctionObjectType(const XalanEXSLTFunctionObjectType&) [libxalan-c1_4_0.so]" " XalanEXSLTFunctionObjectType*XalanEXSLTFunctionObjectType::clone()const [XalanEXSLTCommonImpl.hpp:160]" " void XPathEnvSupportDefault::updateFunctionTable (std::map<XalanDOMString,std::map<XalanDOMString,const Function*,std::less<XalanDOMString>,std::allocator<std::pair<const XalanDOMString,const Function*> > >,std::less<XalanDOMString>,std::allocator<std:... [XPathEnvSupportDefault.cpp:182]" " void XPathEnvSupportDefault::installExternalFunctionGlobal(const XalanDOMString&,const XalanDOMString&,const Function&) [XPathEnvSupportDefault.cpp:218]" " void XalanExtensionsInstaller::doInstallGlobal(const unsigned short*,const XalanExtensionsInstaller::FunctionTableEntry*) [XalanExtensions.cpp:314]" " void XalanEXSLTCommonFunctionsInstaller::installGlobal() [XalanEXSLTCommon.cpp:296]" " void XalanTransformer::initialize() [XalanTransformer.cpp:208]" MLK: 18 bytes leaked at 0x100605c38 * This memory was allocated from: " malloc [rtlib.o]" " c2n6Fl_Pv___1 [libCrun.so.1]" " void*operator new(unsigned long) [rtlib.o]" " void*std::allocator<unsigned short>::allocate(unsigned long,void*) [libxalan-c1_4_0.so]" " unsigned short*std::allocator_interface<std::allocator<unsigned short>,unsigned short>::allocate(unsigned long,unsigned short*) [libxalan- c1_4_0.so]" " void std::vector<unsigned short,std::allocator<unsigned short> >::reserve(unsigned long) [libxalan-c1_4_0.so]" " XalanDOMString&XalanDOMString::append(const unsigned short*,unsigned long) [XalanDOMString.cpp:335]" " XalanDOMString&XalanDOMString::append(const XalanDOMString&,unsigned long,unsigned long) [libxalan-c1_4_0.so]" " XalanDOMString::XalanDOMString(const XalanDOMString&,unsigned long,unsigned long) [XalanDOMString.cpp:99]" " XalanEXSLTFunctionObjectType::XalanEXSLTFunctionObjectType(const XalanEXSLTFunctionObjectType&) [libxalan-c1_4_0.so]" " XalanEXSLTFunctionObjectType*XalanEXSLTFunctionObjectType::clone()const [XalanEXSLTCommonImpl.hpp:160]" " void XPathEnvSupportDefault::updateFunctionTable (std::map<XalanDOMString,std::map<XalanDOMString,const Function*,std::less<XalanDOMString>,std::allocator<std::pair<const XalanDOMString,const Function*> > >,std::less<XalanDOMString>,std::allocator<std:... [XPathEnvSupportDefault.cpp:182]" " void XPathEnvSupportDefault::installExternalFunctionGlobal(const XalanDOMString&,const XalanDOMString&,const Function&) [XPathEnvSupportDefault.cpp:218]" " void XalanExtensionsInstaller::doInstallGlobal(const unsigned short*,const XalanExtensionsInstaller::FunctionTableEntry*) [XalanExtensions.cpp:314]" " void XalanEXSLTCommonFunctionsInstaller::installGlobal() [XalanEXSLTCommon.cpp:296]" " void XalanTransformer::initialize() [XalanTransformer.cpp:208]"
