PGA memory leak detected
Hi all,
I using Database version 9.0.2.1 on Windows.
In Udump\.....trace file have a message:
*** 2004-04-11 13:28:58.000
*** SESSION ID:(4.1) 2004-04-11 13:28:57.000
******** ERROR: PGA memory leak detected 10340 > 6004 ********
HEAP DUMP heap name="pga heap" desc=001CDF10 ....
and then about 1-2 hours, my database is down (not connect) (error: ORA=3113: end of file communicational...)
I think, cause is PGA memory too large, may be ? I set value of PGA = 80-100 MB.
My server has 1.5GB RAM, (SGA = 900, Shared Mem=500, Buffer mem= 150..). It's correct ?
Please help me to resolve this problem.!!!!!
Thanks
[email protected]
Hi ER,
It seems that you need to Update Patch - 9.2.0.6 which will solve this PGA Memory Leak!
Check this Doc ID: Note:283897.1 in Metalink!
Ravi Prakash
Similar Messages
-
PGA memory Leak issue along with TNS: listener could not hand off client connection
Hi,
We have two Oracle Database instances in a 32 bit Standard Edition Windows OS machine with 3 GB RAM : 1) 1525 MB (SGA+PGA) 2) 515 MB (SGA+PGA)
Recently we upgraded the RAM from 3 GB to 4 GB. Subsequently we upgraded the SGA + PGA of the 2nd instance to 771 MB.
This has resulted into PGA memory leak issue reported in the alert log file and trace file.
Reverting back the SGA+PGA size to 515 MB solved the issue.
Is this issue related to Address Windowing Extension (AWE)?
Is the reason related to Total memory for all the cumulative Oracle instance should be < 2GB.
How to solve this?
Mon Jul 15 08:21:25 2013
ORACLE V10.2.0.4.0 - Production vsnsta=0
vsnsql=14 vsnxtr=3
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Windows Server 2003 Version V5.2 Service Pack 2
CPU : 4 - type 586, 4 Physical Cores
Process Affinity : 0x00000000
Memory (Avail/Total): Ph:1068M/4023M, Ph+PgF:4985M/7933M, VA:18M/2047M
Instance name: dp3
Redo thread mounted by this instance: 0 <none>
Oracle process number: 0
Windows thread id: 4484, image: ORACLE.EXE (SHAD)
*** 2013-07-15 08:21:25.133
*** ACTION NAME:() 2013-07-15 08:21:25.133
*** MODULE NAME:() 2013-07-15 08:21:25.133
*** SERVICE NAME:() 2013-07-15 08:21:25.133
*** SESSION ID:(90.829) 2013-07-15 08:21:25.133
******** ERROR: PGA memory leak detected 6302928 > 30176 ********
HEAP DUMP heap name="pga heap" desc=6C98A800
extent sz=0x206c alt=92 het=32767 rec=0 flg=3 opc=3
parent=00000000 owner=00000000 nex=00000000 xsz=0x0
EXTENT 0 addr=7FC10008
Chunk 7fc10010 sz= 64996 free " "
Chunk 7fc1fdf4 sz= 2097676 freeable "krfrbAllocate: "
Dump of memory from 0x7FC1FDF4 to 0x7FE20000
7FC1FDF0 1020020D 7FC10010 03871E90 [.. .........]
7FC1FE00 00000000 00000000 00000000 00000000 [................]
Repeat 131103 times
EXTENT 1 addr=7FA00008
Chunk 7fa00010 sz= 64996 free " "
Chunk 7fa0fdf4 sz= 2097676 freeable "krfrbAllocate: "
Dump of memory from 0x7FA0FDF4 to 0x7FC10000
7FA0FDF0 1020020D 7FA00010 03871E90 [.. .........]
7FA0FE00 00000000 00000000 00000000 00000000 [................]
Repeat 131103 times
EXTENT 2 addr=7F7F0008
Chunk 7f7f0010 sz= 64996 free " "
Chunk 7f7ffdf4 sz= 2097676 freeable "krfrbAllocate: "
Dump of memory from 0x7F7FFDF4 to 0x7FA00000
7F7FFDF0 1020020D 7F7F0010 03871E90 [.. .........]
7F7FFE00 00000000 00000000 00000000 00000000 [................]
Repeat 131103 times
EXTENT 3 addr=70A50008There may be something fixed in the patch that gives the error rather than mysterious hangs. I would prefer that, myself. There may be something in the patch that changes how Oracle allocates user, system and program areas.
At some point you spend more trying to limp things along in a growing environment than simply upgrading. 32 bit environments these days is an indicator that management is figuring some false economies. But that's their prerogative.
The PGA can be affected by many things, not least of which is how the application uses it. Much has been written about it, my own experience has been more is used than most people say. But that is probably just my app. Note there are different ways to set it, and a parameter with "target" in it might not be a hard limit. Different execution plans for the same code may use different amounts of memory - there can even be situations where forcing some code to use a sort area instead, or even forcing more operations to disk, can free up more pga for everyone else. It depends. But that's why I look at multi-pass operations in dbconsole. -
Oracle 9.2 and memory leak detection
Hi All.
I have found the following error in trace file
after shutdown database.
=================================================================
/.../udump/cpaw_ora_4427.trc
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, Oracle Label Security, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production
ORACLE_HOME = /.../product/9.2.0
System name: Linux
Node name: host.com
Release: 2.4.18-10bigmem
Version: #1 SMP Wed Aug 7 10:26:52 EDT 2002
Machine: i686
Instance name: orcl
Redo thread mounted by this instance: 0 <none>
Oracle process number: 10
Unix process pid: 4427, image: [email protected] (TNS V1-V3)
*** SESSION ID:(9.3) 2002-10-10 14:17:14.265
Archiving is disabled
Archiving is disabled
******** ERROR: SGA memory leak detected 16 ********
KGH Latch Directory Information
ldir state: 2 next slot: 39
Slot [ 1] Latch: 0x50005be8 Index: 1 Flags: 3 State: 2 next: (nil)
<...>
=====================================================================
Linux RedHat 7.3 (db works in archivelog mode).
How can I correct this?
Thanks in advance.
Best regards,
Andrey Demchenko.Thanks for the answers. The oci8.dll is uncommented naturally. Otherwise it would start up just fine, but I couldn't use the database functions.
I got it working by installing 5.1.6, but replacing the oci8.dll with the one from the 5.1.0 -version. It's a very... desperate... solution, but at least it works.
I'm gonna have to try to sell the idea of using the 10g client to our DBA. I don't think though, that he'll be very enthusiastic to set it up on our production servers. We'll see. -
Hi all,
I am getting the following error in the database alert log.
ORA-00600: internal error code, arguments: [729], [2216], [space leak], [], [], [], [], []
when checked the trace file in which the details are dumped. The error line says
*** 2004-01-07 18:09:00.002
*** SESSION ID:(123.21632) 2004-01-07 18:08:59.981
******** ERROR: UGA memory leak detected 2216 ********
HEAP DUMP heap name="session heap" desc=0x80000001000b10f0
extent sz=0x10a8 alt=32767 het=32767 rec=0 flg=3 opc=3
parent=8000000100007450 owner=c00000003785c750 nex=0 xsz=0x4098
EXTENT 0
Can anyone help me in this issue.
Thanks in advance.
Regards
ShoyebGenerally error ORA-00600 is very complex to understand and in almost all cases that error is tried with Oracle Support. http://metalink.oracle.com . You have to have an account to open an iTAR and so on.
Joel P�rez -
Effective tool for GDI memory leaks detection
Hello!
Would you advice me some effective tool for GDI memory leaks and run-time errors detection in VC++?
Thanks!926007 wrote:
This forum is about Java.No, this forum is about C++.
Please notice the name of the forum: "Solaris Studio *C++*", under the category "Application Development in C, C++, and Fortran".
There are other forums for Java, listed here:
https://forums.oracle.com/forums/category.jspa?categoryID=285 -
Memory leak detecting tools for Solaris 10 X86
Hi All,
Greetings!
We are experiencing a crash defect while porting our application from Sol4 to Sol10.
Stack trace :
(dbx) where
=>[1] realfree(0x81b7d60), at 0xfeac3237
[2] freeunlocked(), at 0xfeac37e9
[3] free(0x831f1a8), at 0xfeac376f
[4] tLList_Done(0x831f1a8), at 0x8074255
[5] tKeyFile_Free(0x8306c60), at 0x8075af5
[6] tKeyFile_Done(0x8306c60), at 0x8075c6c
[7] tBGA_Var_Adj_LD(0x81b5eb0, 0x8302b48, 0x0), at 0x807a5f7
[8] tGen_Var_GenLead(0x81b5eb0, 0x8302b48, 0x0, 0x1), at 0x807b6e7
[9] tBGA_Var_GenLead(0x81b5eb0, 0x8302b48, 0x0, 0x1), at 0x807a7f8
[10] tCPD_DevProc_Init_Lead(0x825e6e8, 0x8302b48, 0x0, 0x1), at 0x809b363
[11] tCPD_DevProc_Init_Data(0x825e6e8, 0x8302b48, 0x0, 0x0, 0x0, 0x0, 0x1), at 0x809b970
[12] TrayRep_Execute(0x81b1cb4), at 0x80aab45
[13] TrayRep_RunFrom(0x0, 0x0), at 0x80a997a
[14] main(0x0, 0x804770c, 0x8047710), at 0x80a946a
We suspect it to be a memory leak issue. Are there memory leak debugging tools for sol10.
we were unable to use dbx as we got the following error.
(dbx) check -memuse
dbx: Incompatible libthread.so/libthread_db.so found. Error checking disabled
See `help rtc mt' for details.
Also dbx's 'check -access' option is not supported for X86.
Waiting eagerly for any support/guidance.
Thanks in advance.
DeepakI had the same problem on Solaris 10 sparc. The problem seems to relate to symbolic links with
long names not being extracted correctly from the tar file (resulting in @LongLink files popping
up around the place). If you use the .zip source file then the build goes fine.
Philip. -
ThreadLocalObject memory leak detected (Weblogic 8 SP6)
It seems that our application server (which heavily uses Entity and Stateless session beans) constantly creates weblogic.ejb20.internal.BaseEJBObject,ThreadLocalObject's in memory. These objects keep increasing and never go down.
In a typical 90 hr run we create upto 22,000,000 instances of these objects. Could someone explain what these are used for and how to fix this issue.Before you assume you have a memory leak, go to the "Monitoring"->"Performance" page of your server config. Set the page to auto-refresh (I think you can do that in 8.1). While your application is doing its work continuously, every 30 seconds or so, push the "garbage collect" button and watch the "percent free" amount immediately after the GC completes. Keep track of that number. If that number (the one after the GC completes) is continuously going down, and eventually causes an OutOfMemory error, then you have a memory leak. If not, then you probably don't.
-
Detecting memory leaks in Managed C++
In my managed C++ application creating multiple variables dynamically using 'gcnew' and also some of the pointers being used.
Is there is any tool/mechanism to detect and avoid the memory leaks in Managed C++.
saikalyanHi saikalyan,
Is there is any tool/mechanism to detect and avoid the memory leaks in Managed C++.
You can use WinDbg tool to detect and avoid the memory leaks in Managed C++.
Please check this article:
http://www.codeproject.com/Articles/19490/Memory-Leak-Detection-in-NET
Best regards,
Shu Hu
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey. -
Memory leak when using DB_DBT_MALLOC in CDB.
Hello!
Recently when I'm using Berkeley DB CDB and set the value Dbt DB_DBT_MALLOC, I noticed that the app's memory keeps growing during the db.get while;
I found that many codes on the internet use the syntax free(value.get_data()), but when I tried to free the value.get_data(), I always got an interruption error.
It's OK when I'm using the DB_DBT_USERMEM flag. So I just get very confused about the DB_DBT_MALLOC and DB_DBT_REALLOC.
And also, I wonder why there's no memory leak problem when we use the single thread BDB. I think BDB cannot free the value.data pointer too in single thread before the app finish using it, then why our apps don't need to free the data afterwards?
Thanks a lot in advance!You should use free() to free the DBT memory allocated via DB_DBT_MALLOC. You should do that after each Db::get() operation (and of course after finishing processing/using the data), otherwise you will loose the pointer to the memory previously allocated if you happen to reuse the DBT with DB_DBT_MALLOC (the data field will point to a new memory address).
Alternatively you could use DB_DBT_REALLOC or DB_DBT_USERMEM.
Note that there are small structures that BDB creates in the environment regions that only get freed/cleaned when the environment is closed.
If you suspect that there is a memory leak inside the BDB code, make sure you rebuild Berkeley DB using the following configuration options (along with the others you use) when building: enable-debug, enable-umrw. Than, run the program under a memory leak detection utility, like Valgrind (allow the application to open and close the BDB environment) and see if there are any leaks reported.
If memory leaks are reported, then put together a small stand-alone test case program that demonstrates the leaks, and post it here.
Regards,
Andrei -
OCIServerAttach possible memory leak
Hi
For the last day I'm stuck in this case...and I'm pretty sure it is a memory leak:
I have a multithreaded application, in C++. First I create a threaded environment (OCIEnvCreate in OCI_THREADED mode) in the main application thread. Next i start multiple threads, and in each one I open a new session to the Oracle database, using OCIServerAttach and next OCIBeginSession.
I'm testing the case when the threads keep failing and they are restarted. For the tests I use an invalid schema (a dummy name that's not present in tnsnames.ora) when calling OCIServerAttach. In this case the statement fails and I call OCIServerDetach, which it should release the memory allocated in OCIServerAttach, but it seems that it doesn't do that...I watched the application with a memory leak detection tool and i keep getting memory leaks in OCIServerAttach....
I read about this exact problem in some older Oracle releases, 8i. Now I'm using Oracle 9.2 with 9.2.0.4 patch installed.
Please help me with any idea, cause i'm getting desperate...
mariusexactly :) it doesn't seem like it has leaks :) but...
i made a test where i restarted 4 threads about 2000 - 3000 times (each time executing OCIServerAttach - OCIServerDetach)...and i got about 400 leaks. it's not for each thread...i don't get it
here is the code:
- open a new session:
bool CORCLSession::beginSession(IN OCIEnv* phEnv,
IN const char* pszConnectString)
if (true == m_fConnected)
endSession();
m_phEnv = phEnv;
strcpy(m_szConnectString, pszConnectString);
char szUserName[MAX_CONNECT_STRING];
char szPassword[MAX_CONNECT_STRING];
char szSchema[MAX_CONNECT_STRING];
splitConnectString(m_szConnectString, szUserName, szPassword, szSchema);
/* allocate an error handle */
m_nRetCode = OCIHandleAlloc((dvoid *)m_phEnv,
(dvoid **)&m_phError,
OCI_HTYPE_ERROR, 0, (dvoid **) 0);
handleRetCode(CORCLException::OSES_BEGINSESSION);
/* allocate a server handle */
m_nRetCode = OCIHandleAlloc ((dvoid *)m_phEnv, (dvoid **)&m_phServer,
OCI_HTYPE_SERVER, 0, (dvoid **) 0);
handleRetCode(CORCLException::OSES_BEGINSESSION);
/* create a server context */
m_nRetCode = OCIServerAttach (m_phServer, m_phError,
(text *)szSchema, strlen(szSchema),
OCI_DEFAULT);
handleRetCode(CORCLException::OSES_BEGINSESSION);
m_fAttach = true;
/* allocate a service handle */
m_nRetCode = OCIHandleAlloc((dvoid *)m_phEnv,
(dvoid **)&m_phSvcCtx,
OCI_HTYPE_SVCCTX, 0, (dvoid **) 0);
handleRetCode(CORCLException::OSES_BEGINSESSION);
/* set the server attribute in the service context handle*/
m_nRetCode = OCIAttrSet((dvoid *)m_phSvcCtx, OCI_HTYPE_SVCCTX,
(dvoid *)m_phServer,
(ub4) 0, OCI_ATTR_SERVER, m_phError);
handleRetCode(CORCLException::OSES_BEGINSESSION);
/* allocate a user session handle */
m_nRetCode = OCIHandleAlloc((dvoid *)m_phEnv,
(dvoid **)&m_phUserSession,
OCI_HTYPE_SESSION, 0, (dvoid **) 0);
handleRetCode(CORCLException::OSES_BEGINSESSION);
/* set username attribute in user session handle */
m_nRetCode = OCIAttrSet((dvoid *)m_phUserSession, OCI_HTYPE_SESSION,
(dvoid *)szUserName, (ub4)strlen(szUserName),
OCI_ATTR_USERNAME, m_phError);
handleRetCode(CORCLException::OSES_BEGINSESSION);
/* set password attribute in user session handle */
m_nRetCode = OCIAttrSet((dvoid *)m_phUserSession, OCI_HTYPE_SESSION,
(dvoid *)szPassword, (ub4)strlen(szPassword),
OCI_ATTR_PASSWORD, m_phError);
handleRetCode(CORCLException::OSES_BEGINSESSION);
/*begin session !*/
m_nRetCode = OCISessionBegin( m_phSvcCtx, m_phError, m_phUserSession,
OCI_CRED_RDBMS, OCI_DEFAULT);
handleRetCode(CORCLException::OSES_BEGINSESSION);
/* set the user session attribute in the service context handle*/
m_nRetCode = OCIAttrSet((dvoid *)m_phSvcCtx, OCI_HTYPE_SVCCTX,
(dvoid *)m_phUserSession, (ub4) 0,
OCI_ATTR_SESSION, m_phError);
handleRetCode(CORCLException::OSES_BEGINSESSION);
m_fConnected = true;
return true;
- closing a session:
void CORCLSession::endSession()
if (m_fAttach)
// first detach the server
m_nRetCode = OCIServerDetach(m_phServer, m_phError, OCI_DEFAULT);
m_fAttach = false;
if(m_fConnected)
m_nRetCode = OCISessionEnd( m_phSvcCtx, m_phError,
m_phUserSession, OCI_DEFAULT);
m_fConnected = false;
if (m_phServer != NULL)
// now de-alloc the server handle
m_nRetCode = OCIHandleFree((dvoid*)m_phServer, OCI_HTYPE_SERVER);
m_phServer = NULL;
if (m_phError != NULL)
m_nRetCode = OCIHandleFree((dvoid*)m_phError, OCI_HTYPE_ERROR);
m_phError = NULL;
if (m_phUserSession != NULL)
m_nRetCode = OCIHandleFree((dvoid*)m_phUserSession , OCI_HTYPE_SESSION);
m_phUserSession = NULL;
if (m_phSvcCtx != NULL)
m_nRetCode = OCIHandleFree((dvoid*)m_phSvcCtx , OCI_HTYPE_SVCCTX);
m_phSvcCtx = NULL;
} -
External interface memory leak?
Hello,
I am embedding the flash player inside a Visual C++
application. My program uses the external interface extensively.
The external interface is called several times a second ( ~20 fps )
each time a ~1k XML string is passed to the flash player.
During execution the program increases its memory by ~10 Mega
each hour. I have used the Umdh tool to try to locate the problem.
It points to the line where the container program uses the external
interface to call a function inside the swf movie.
Below is a typical output of the Umdh tool:
+ 3396588 ( 3405883 - 9295) 261991 allocs BackTrace12EF
+ 261276 ( 261991 - 715) BackTrace12EF allocations
ntdll!RtlpNtMakeTemporaryKey+000074D0
ntdll!RtlInitializeSListHead+00010D08
ntdll!wcsncat+00000224
FlDbg9c!DllUnregisterServer+0010261A
FlDbg9c!DllUnregisterServer+0010263C
FlDbg9c!DllUnregisterServer+0000F1B7
myProgram!CZFlash::CallFunction+0000004D (c:\documents and
settings\amit\my documents\visual studio projects\ myProgram
\zflash\zflash.cpp, 255)
myProgram!MainDialogProc+000012A2 (c:\documents and
settings\amit\my documents\visual studio projects\ myProgram
\w32\maindlg.cpp, 2324)
USER32!GetDC+0000006D
USER32!PrivateExtractIconExW+000002B2
USER32!PrivateExtractIconExW+000000FE
USER32!DefDlgProcW+00000022
USER32!GetDC+0000006D
USER32!GetDC+0000014F
USER32!IsWindowUnicode+000000A1
USER32!CallWindowProcW+0000001B
COMCTL32!Ordinal11+00000328
COMCTL32!RemoveWindowSubclass+0000017E
COMCTL32!DefSubclassProc+00000046
COMCTL32!Ordinal389+000028DF
COMCTL32!RemoveWindowSubclass+0000017E
COMCTL32!DefSubclassProc+00000046
COMCTL32!Ordinal389+000028DF
COMCTL32!RemoveWindowSubclass+0000017E
COMCTL32!DefSubclassProc+00000046
COMCTL32!Ordinal389+000028DF
COMCTL32!RemoveWindowSubclass+0000017E
COMCTL32!DefSubclassProc+00000046
COMCTL32!Ordinal389+000028DF
COMCTL32!RemoveWindowSubclass+0000017E
COMCTL32!DefSubclassProc+00000046
COMCTL32!Ordinal389+000028DF
The System.totalMemory value of the flash player ranges from
2.2 Mbyte to 3.2. I tried using memory leak detection software like
IBM's Purify but couldn't find the problem.
I also tried to disable the BSTR caching by setting the
environment variable OANOCACHE, but the memory of my program
continues to increase.
Below is my C++ code. The m_iflash object is a pointer to the
ActiveX of the flash player.
wstring CZFlash::CallFunction(wstring call_string)
BSTR pcall_string = SysAllocString(call_string.c_str());
BSTR presponse = NULL;
HRESULT status = m_iflash->CallFunction(pcall_string,
&presponse);
SysFreeString(pcall_string);
if (status != S_OK)
if (presponse != NULL)
SysFreeString(presponse);
return L"";
wstring sresponse(presponse);
SysFreeString(presponse);
return sresponse;
Currently the swf movie contains only action script that
displays the System.totalMemory value and an empty function that
the external interface calls.
Any help will be appreciated.
Thanks in advance,
AmitHello,
Thanks for coming to National Instruments Discussion Forum.
Can you give us more details about your application? Basically, I can’t find your main VI for your User Interface. Can you also give us the different steps to do to run your application and reproduce your problem?
Generally speaking, your code on your block diagram have to be displayable in one screen.
Benjamin R.
R&D Software Development Manager
http://www.fluigent.com/ -
Finding Memory leaks in C using Visual Studio 2013
I am using Visual Studio 2013, and taking a course in C programming and we started
talking about memory bugs detaction, in particular memory leaks, and how to detect them using Valgrind on Linux.
I want to know if there is a way to detect such memory leaks using VS 2013. I tried searching online but it just leads to lots of articles and blogs and msdn posts and blogs with lots of words like dump files, and analyzing them, etc which is weird
because:
1) It sounds so complex, convoluted and unintuitive it is actually hard to comprehend it.
2) The main reason this is weird is due to the fact that VS is the most advanced IDE around and Microsoft spends so much money on in, yet from what I have read it seems that there is no simple way to use VS to detect memory leaks
- certainly no way that's as simple as Valgrind where I only have to compile the program and run the command valgrind -leaks-check=yes ProgramName
and it simply prints to me all location it thinks there is a memory leak and describes the error (like not freeing memory after allocating it with malloc hence having "dead" memory after the program finishes, or accessing memory that's out of
the array bounds)
So my question is how to use VS 2013 in order to achieve the same results and to find out First in high level if there are memory leaks in the program, and Second - to detect in a simple manner where those leaks are- preferably without involving dump files
(not that I know how to use them anyway in VS).Hi MicrosoftLaw,
Thanks for your post.
Based on your issue, if you want to check if there are memory leaks in the C program from this VS2013. I suggest you could try to find Memory Leaks Using the CRT Library, for more information:
https://msdn.microsoft.com/en-us/library/x98tx3cf.aspx?f=255&MSPPError=-2147217396
In addition, I find a similar thread about this issue, please you refer the Dusty's suggestion to check this issue.
http://stackoverflow.com/questions/45627/how-do-you-detect-avoid-memory-leaks-in-your-unmanaged-code
I did some research about this issue, I found that the Visual Leak Detector extension tool is a free, robust, open-source memory leak detection system for Visual C++. So if possible, I suggest you could try to use the Visual Leak Detector extension
tool to find the memory leak for Visual C/ C++ program.
https://visualstudiogallery.msdn.microsoft.com/7c40a5d8-dd35-4019-a2af-cb1403f5939c
However, if you have any issue about how to use this Visual Leak Detector extension tool to find the memory leak for C program. I suggest you could directly to write a review to this REVIEW tab in Visual Leak Detector site.
Best Regards,
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey. -
Detecting a memory leak in a process running on Solaris 5.7
Hi,
Iam running my application on solaris 5.7 platform.
I can see clear memory leak in that process.
Is there any tool or in-built functionality on solaris 5.7 to detect/fix that leak.
Thanks in advance,
AvvaruThanks for the reply. I already turned it off in both Safari and Spotlight preferences. However the problem persists. The process still runs, and from time to time it decides to leak all the memory as well. I really can't understand what the reason might be.
To be clear, in Safari-->Preferences-->Search-->Smart search field-->"Include Spotlight Suggestions" is un-checked. In Spotlight preferences all three "Spotlight Suggestions", "Bookmarks & History" and "Bing Web Searches" are un-checked. Process still runs under Spotlight as can be seen here:
After the last post I let it run for a while when it happened again, and below is just before i terminated it. Look at the memory usage! -
How to detect Memory Leaking Problem in Java
I have a Java multithreading program & I suspect that there is a memory leaking issue in the program. Can someone tell me how can I know how to detect where is the memory leakage in the program?
I have download a few tools like hat, jprobe, optimizeit but not sure how to use it. I am using jdk1.3.0 in HP-UX
ThksNot so true, you could have a memory leak if you accidental hold on to a resource, or maybe you have threads running that you have no reference to, and those threads hold some resources.
Optimizeit is pretty easy to use. You start you application with Optimize it, so Optimizeit is you JVM so to speak. In optimizeit you can get a list of active objects. If this list grows and grows, you probably have a problem. Let it run for a while, and see which objects are the most present, dubble-click it, and it lets you step down into you methods. This way you can maybe find you leak.
Good luck :) -
How can i detect "Memory leak" with large LabVIEW projects.
Hi,
I have a huge LabVIEW application that runs out of memory after running continuously for some time. I am not able to find out the VI that is hogging up memory. Is there any tool that dynamically detects the VI that is leaking memory.
Or, is there a tool or a way to identify the critical areas which can be potential culprits that is leaking memory.
Regards
BharathBdev wrote:
Thanks Dennis.
I think Desktop Execution toolkit should solve the problem.
Wayne Wrote
Have you tried Tools»Profile»Performance and Memory ? http://zone.ni.com/reference/en-XX/help/371361F-01/lvdialog/profile/
But this will just give me the amount of memory used by the VIs and not the amount of memory that is not getting released.
And where is the problem about that? Just try to find what VIs keep increasing in memory size. That are the culprits. If you have real memory leaks, meaning there is memory that is not managed by LabVIEW directly but for instance by a DLL somewhere and that DLL looses references to memory, so it goes really lost, then the only way to find that is by successively exclude functionality in your application until you can find the culprit.
There is no other simple way to find out about who is loosing memory references than by doing debugging by exclusion until the problem disappears. The only way to speed this up, which quite often works for me is doing an educated guess, about what components are most likely to do this misbehaviour.
Not knowing anything about your application and if you are talking about memory hogs (fairly easily identifiable by the mentioned Performance and Memory monitor) or actual memory leaks, it is hard to tell how to go about it. Memory hogs are usually the first thing I suspect escpecially with software I inherit somehow from people from whom I'm not sure they know all the ins and outs of LabVIEW programming.
If a leak seems likely the first culprit usually are custom DLLs (yes even DLLs I have written myself), then NI DLLs such as DAQmx, etc. and last there come leaks in LabVIEW itself. This last category is very seldom but it has happened to me. However before going to scream about LabVIEW having a memory leak you really, really should make sure you have very intensivly researched all the other possibilities. The chance that you run into a memory leak in LabVIEW, while not impossible, is so small compared to the other ways of causing either a memory hog or running into a leak in an external component to LabVIEW, that in 99.9% of the cases where someone screams about a LabVIEW memory leak, he is simply wrong.
Rolf Kalbermatter
CIT Engineering Netherlands
a division of Test & Measurement Solutions
Maybe you are looking for
-
Names button missing from Facbook Albums
In this video as well as the Facebook tutorial video on Apple.com it shows that when you have a Facebook album selected there should be a "Names" button on the bottom (to the left of edit.) I don't see that in iPhoto. I've tried deleting PLIST files,
-
Is there a manual way to do SERVICE to my iPhone 4s ?
Hi, I've a 4S, which I bought in April 2012 and so far it's good and worKing fine. However in recent past for the last couple of weeks, it's keep on getting hanged for few seconds on so, and then it's automatically closing the apps that were running
-
Dreamweaver 8 will not launch with Windows 8.1
I cannot get Dreamweaver 8 to launch with Windows 8.1 I have searched thru foums and attempted multiple deletes and reloads and restarts etc. I have attempted Admin run without sucess. It is my gut feeing that Adobe want s me to buy a new version.
-
TACACS + Command Logging Problems
All, Working on a problem that I'm having getting command logging setup for my switch / router infrastructure. Below is my config, authentication is working, both console & SSH. Authorization is also working. Some of my accounting features are wor
-
My mac keeps telling me i am not connected to the internet when i am.
Could it be my certain wireless router?