[gdal-dev] OGR: memory leak in OCI driver

SIMON Nicolas nicolas.simon at spw.wallonie.be
Fri Aug 1 07:49:35 PDT 2014


Hi list,

                We tested the suggestion of Ivan and it's better.
                Fortunately, my problem to create ticket was solved
The ticket is  http://trac.osgeo.org/gdal/ticket/5599 with a patch file.

Best regards

Nicolas

De : Ivan Lucena [mailto:lucena_ivan at hotmail.com]
Envoyé : mardi 6 mai 2014 17:48
À : SIMON Nicolas; gdal-dev at lists.osgeo.org
Cc : SANDRI Christophe; NGUYEN Thi Xuan Truc
Objet : RE: [gdal-dev] OGR: memory leak in OCI driver

Hi Nicolas,

I received that report a month ago:

"we have found the OGROCISession is never released, causing a large memory leak whenever a connection is closed.
As workaround, we added in OGROCISession::~OGROCISession()

    if( hEnv )
           OCIHandleFree((dvoid *) hEnv, (ub4) OCI_HTYPE_ENV);"

But they also mention some other memory leaks without an specific location on the code.

Can you try to see if that fix the problem?

Thanks,

Ivan

________________________________
From: nicolas.simon at spw.wallonie.be<mailto:nicolas.simon at spw.wallonie.be>
To: gdal-dev at lists.osgeo.org<mailto:gdal-dev at lists.osgeo.org>
Date: Tue, 6 May 2014 15:32:09 +0000
CC: christophe.sandri at spw.wallonie.be<mailto:christophe.sandri at spw.wallonie.be>; xuan.nguyen at spw.wallonie.be<mailto:xuan.nguyen at spw.wallonie.be>
Subject: [gdal-dev] OGR: memory leak in OCI driver
Dear developers,

                I suspect that there is a memory leak in OCI driver for OGR

                My simplified test case is :

...
// point A
OGRRegisterAll();

// point B
pDS = OGRSFDriverRegistrar::Open("OCI:USER/PWD at INSTANCE:TABLE", true);
if(pDS)
     {
          OGRDataSource::DestroyDataSource(pDS);
          pDS = NULL;
     }
     else
     {
          fprintf(fOut,"Erreur Open\n");
     }
     // point C

OGRCleanupAll();
// point D

It appears that I lose memory between points B and C, and between point A and D

                B = A + 4 MB
                C = A + 20 MB ( 16 MB lost)
               D = A +19 MB ( 3 more MB lost)

Test was done with GDAL 1.9 under windows (with Oracle 11g)

Can some one have an idea to find and fix this ?

Thank you

By the way,  I received « TICKET_CREATE privileges are required to perform this operation » when I tried to make a ticket (UID nicsim)

Nicolas



_______________________________________________ gdal-dev mailing list gdal-dev at lists.osgeo.org<mailto:gdal-dev at lists.osgeo.org> http://lists.osgeo.org/mailman/listinfo/gdal-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/gdal-dev/attachments/20140801/64b51a99/attachment-0001.html>


More information about the gdal-dev mailing list