Re: Review patches regarding memory leaks in pgadmin fat client - Mailing list pgadmin-hackers

From Akshay Joshi
Subject Re: Review patches regarding memory leaks in pgadmin fat client
Date
Msg-id CANxoLDdwSo8kFmzuCrX1X_cK68Mbx0BxPMrqwhCwZsEF+_oSHA@mail.gmail.com
Whole thread Raw
In response to Re: Review patches regarding memory leaks in pgadmin fat client  (Akshay Joshi <akshay.joshi@enterprisedb.com>)
Responses Re: Review patches regarding memory leaks in pgadmin fat client  (Dave Page <dpage@pgadmin.org>)
List pgadmin-hackers
Hi Sanket

Patch looks good to me. Please remove the comment "//GQB-TODO: delete restrictions" from gqbModel.cpp as you have already deleted the restrictions object.

On Mon, Jan 5, 2015 at 3:29 PM, Akshay Joshi <akshay.joshi@enterprisedb.com> wrote:
Sorry Dave, 

I think I missed this email, I have reviewed the first patch. Will do it right now.

On Mon, Jan 5, 2015 at 3:19 PM, Dave Page <dpage@pgadmin.org> wrote:
Akshay, did you get a chance to review this?

On Wed, Dec 24, 2014 at 2:38 PM, Sanket Mehta
<sanket.mehta@enterprisedb.com> wrote:
> Hi Akshay,
>
> PFA the patch for memory leaks found in pgadmin desktop client.
>
> Below are the files modified and scenario in which this memory leak will
> occur.
>
> 1.pgadmin/frm/frmQuery.cpp:
> 2.pgadmin/gqb/gqbModel.cpp:
> 3.pgadmin/gqb/gqbView.cpp
> Scenario:
> After closing the graphic query builder dialog, memory leak occurred.
>
> 4.pgadmin/ogl/canvas.cpp:
> Scenario:
>
> This memory leak was found in OGL module as m_shapeDiagram was not being
> deleted in destructor  of canvas class.
>
> Please review this patch and let me know in case anything is missing.
>
>
> Regards,
> Sanket Mehta
> Sr Software engineer
> Enterprisedb
>
> On Thu, Dec 18, 2014 at 7:02 PM, Sanket Mehta
> <sanket.mehta@enterprisedb.com> wrote:
>>
>> Hi Akshay,
>>
>> PFA the patch to resolve memory leaks in pgadmin desktop client.
>>
>> Below are the files modified and scenario in which this memory leak will
>> occur.
>>
>> 1. pgadmin/dlg/dlgProperty.cpp:
>> scenario 1:
>>  In table property dialog, memory leak occurs while filling the owner's
>> combo box in properties tab as in  dlgProperty::FillComboBox() function set
>> was not being deleted.
>>
>>
>> scenario 2:
>> in Database property window, memory leak occurred while filling owner's
>> combo box in properties tab as in dlgDefaultSecurityProperty::AddUsers()
>> function set was not being deleted.
>>
>> 2. pgadmin/dlg/dlgSelectDatabase.cpp:
>> scenario 1:
>> in step dialog, while selecting database output string using selection
>> button, memory leak occurred as in dlgSelectDatabase::Initialize() function
>> pgSet* res was not being deleted.
>>
>> scenario 2:
>> in step dialog, while selecting the database output string using selection
>> button, when trying to connect to any database, memory leak occurred as in
>> dlgSelectDatabase::OnSelActivate() function pgSet* res was not being
>> deleted.
>>
>> 3. pgadmin/frm/frmEditGrid.cpp:
>> scenario:
>> While opening table data in grid view, memory leak occurred in sqlTable
>> constructor as allColsSet was not being deleted
>>
>> 4.pgadmin/utils/registry.cpp:
>> scenario:
>> while reading the registery at the start of the client, pBuf buffer was
>> not being deleted after reading the registry value inside
>> pgRegKey::QueryValue() function.
>>
>> 5.pgadmin/utils/sysSettings.cpp:
>> scenario:
>> wxFileConfig* defaultSetting was not being deleted at the time of closing
>> pgadmin.
>>
>> 6.pgadmin/schema/pgTypes.cpp:
>> Scenario:
>> while expanding type node of composite type in object browser, memory leak
>> occurred because pgSet* set was not deleted in pgType::ShowTreeDetails()
>> function.
>>
>> 7.pgadmin/schema/pgTrigger.cpp:
>> scenario:
>> while expanding trigger node in object browser, memory leak occurred
>> because pgSet* res was not deleted in pgTrigger::ReadColumnDetails()
>> function.
>>
>> 8. pgadmin/schema/pgIndex.cpp:
>> scenario:
>> while expanding Index node in object browser, memory leak occurred because
>> pgSet* res was not deleted in pgIndexBase::ReadColumnDetails() function.
>>
>> 9.pgadmin/schema/pgAggregate.cpp:
>> Scenario:
>> While creating new aggregate function memory leak occurred because pgSet*
>> types was not deleted in pgAggregateFactory::CreateObjects() function.
>>
>> 10.pgadmin/debugger/debugger.cpp:
>> scenario 1:
>> while starting to debug a sql function in pgadmin, memory leak occurred
>> because in debuggerFactory::startDialog() function pgSet* res was not
>> deleted before any return statement
>>
>> scenario 2:
>> While setting a break point in a sql function in pgadmin, memory leak
>> occurred because in breakpointFactory::startDialog() function pgSet* res was
>> not deleted before any return statement
>>
>> 11.pgadmin/schema/gpExtTable.cpp:
>> Scenario:
>> At the time of getting the sql while creating/modifying/deleting the
>> greenplum external Table memory leak occurred in function
>> gpExtTable::GetSql() as pgSet* extTable was not being deleted before return
>> statement.
>>
>> 12.pgadmin/dd/ddmodel/ddDbReverseEngineering.cpp
>> Scenario 1:
>> While reverse engineering wizard is open, memory was occurred when moving
>> from select table page as in function ddImportDBUtils::getTable() pgSet*
>> inhtables was not deleted.and another memory leak was there as in functions
>> ddImportDBUtils::getAllRelationships() and
>> ddImportDBUtils::isModelSameDbFk()  pgSet* foreignKeys was not deleted
>> before return statement.
>>
>> Please review it and let me know if anything is missing.
>> I will also send further patches in case i find more memory leaks.
>>
>> Regards,
>> Sanket Mehta
>> Sr Software engineer
>> Enterprisedb
>
>
>
>
> --
> Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgadmin-hackers
>



--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company



--
Akshay Joshi
Principal Software Engineer 


Phone: +91 20-3058-9517
Mobile: +91 976-788-8246



--
Akshay Joshi
Principal Software Engineer 


Phone: +91 20-3058-9517
Mobile: +91 976-788-8246

pgadmin-hackers by date:

Previous
From: Akshay Joshi
Date:
Subject: Re: Review patches regarding memory leaks in pgadmin fat client
Next
From: Dave Page
Date:
Subject: Re: Review patches regarding memory leaks in pgadmin fat client