You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-users@xerces.apache.org by Stutz Oliver <Ol...@cardcenter.ch> on 2011/01/26 07:36:46 UTC

release / adopt / free the memory used by xerces

We are using Xerces 2.7.0.5, i have the following Problem.
 
Our application has a bit of a memory issue, after every request it will pick up new memory and it's about the size of the XML Documents received + sent.
 
I have read that you need to call "adoptDocument", I have searched on google for this topic. The problem was that i couldn't figure out what "can" be released and what not?
 
Can i release everything which contains a ->create syntax or do i have to adopt it? If i have to adopt it, do i have to adopt the parser itself or can i doit on a document level? eg.    pDomBuilder->adoptDocument()  || pIncomming.adopDocument()
 
 
I release every "document with -> release() but it seems still to leak.
 
 
Thanks for the help,
 
Oliver
 
 
xercesc::DOMImplementation * pDomImplementation;
 
pDOMBuilder = pDOMImplementation->createDOMBuilder(xercesc::DOMImplementationLS::MODE_SYNCHRONOUS, NULL);
 
xercesc::DOMDocument * pIncomming= pDOMBuilder->parse(Wrapper4InputSource); // this will hold a Wrapper with a valid MemBufInputSource
 
 
 


Based on previous e-mail correspondence with you and/or an agreement reached with you, we consider ourselves authorized to contact you via unsecured e-mail. 
Warning: 
(a) E-mails can involve SUBSTANTIAL RISKS, e.g. lack of confidentiality, potential manipulation of contents and/or sender's address, incorrect recipient (misdirection), viruses etc. We assume no responsi-bility for any loss or damage resulting from the use of e-mails. We recommend in particular that you do NOT SEND ANY SENSITIVE INFORMATION, that you do not include details of the previous message in any reply, and that you enter e-mail address(es) manually every time you write an e-mail. 
(b) As a matter of principle, we do NOT accept any ORDERS, revocations of orders or authorizations, blocking of credit cards, etc., sent by e-mail Should such an e-mail nevertheless be received, we are not obliged to act on or respond to the e-mail. 
Please notify us immediately if you received this e-mail by mistake or if you do not wish to receive any further e-mail correspondence. If you have received this e-mail by mistake, please completely delete it (and any attachments) and do not forward it or inform any other person of its contents.