Weblogic not releasing threads or memory

 

Actually, making Weblogic do a thread dump helped us find the issue,
our application did not close its LDAP connection threads in all cases, so
that was why its number of threads kept going up. The thread dump option
is a very useful tool for troubleshooting.
Mark Griffith wrote:
>
This is not normal behavior.
This is "unintended object retention", ie a java version of a memory
leak.
So you have a couple of options.
1. Profile your application and after running your test which reproduces
the problem, and running GC see who is holding refs to objects.
2. Do the same as 1.
3. Do the same as 1.
I suggest Jprobe 2.5.
Cheers
Mark G.
In article <[email protected]>, [email protected]
says...
We are runing Weblogic 4.5.1 on SunOS 5.6, with Solaris_JDK 1.2.1_04 and
we have allocated 512 Meg to the heap. We set the ThreadCount to 90.
The threadcount showing in the TOP utility is growing higher and higher,
it never decreases. It is up to 200 at this point. The resident memory
also seems to keep growing and growing, it is at 445M now.
So it looks like resources do not get released. Does anyone know the
solution to this?
Or is this normal behavior?
Joop Kaashoek
==================================================
NewsGroup Rant
==================================================
Rant 1.
The less info you provide about your problem means
the less we can help you. Try to look at the
problem from an external perspective and provide
all the data necessary to put your problem in
perspective.

Similar Messages

  • Weblogic not release memory

    Weblogic server does not release the memory after shutdown the weblogic server.

    A bit late to the party here but this issue is still live and I can't find anything else on the forum similar to it (apologies if there is).
    Photoshop does not seem to re-use memory it just keep allocating new right up to the limit before the prog crashes (same applies to Fireworks) so any batch/script processing of more than a handful of files is impossible.
    I am Photoshop via Creative Cloud (so I am always updated to your latest release), Windows 7 64k with 8Mb memory and am using Norton Intenet Security 20.3.1.22 which is updated daily.

  • Memory not released on disconnections

    Hi,
    We are developing a pro*C++ application to connect to an Oracle 8i database running in Windows 2000 . The application will run in HP-UX. When the application try to connect to the database, either the connection fails or successes, a memory segment is allocated to the connection, and even when we do a rollback release before the disconnection, the resources allocated are not released, so the memory allocated to the application grows without a limit (every 60 connections it takes 128 kb).
    We´ve tried with a rollback/commit release before every disconnection (depending on the failure or success of the associated processes), analising the tnsnames parameters to avoid any waiting time, increasing the timer period between connection tests, but the memory is not being released after disconnections... any idea about what is happening? why even when the connection with the database is not possible there is any memory allocated to it? how could we release it? do you know how to test that the database/listener are alive so the connection is possible, other than try to connect and examine the possible error messagges?
    Thanks a lot!
    Ana

    Jim,
    I don't think this is ID directly causing a problem, but some other interaction. I'm using 5.0.3 on XP pro SP2 and the exe disappears from processes about 2 or 3 seconds after close.
    What version of Windows are you running?
    Peter

  • Full garbage collection issue, not releasing/flagging memory

    I have the following problem running on a multi-cpu windows server with Java 1.4.2_05 using WebLogic 8.1:
    During a lifecyle of the web application (under load, but not to heavy) memory usage seems ok and garbage collection is called regularly. Suddenly, the used heap starts to rize very fast and after a while, even a full garbage collection cylce, does not release any memory anymore.
    I am sure that, from our coding, we release memory ok, and normally we should only use about 5 to 10 mb for each user max (with0 normal defnew garbage collections).
    I tried changing the garbage collection parameters, but this does not solve the problem. Best scenario was with the concurrent collector and I got this output at +/- the end:
    [GC 100202K->93511K(115628K), 0.0091472 secs]
    [GC 148480K->139612K(163808K), 0.0225914 secs]
    [Full GC[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor289]
    [Unloading class sun.reflect.GeneratedSerializationConstructorAccessor290]
    [Unloading class sun.reflect.GeneratedSerializationConstructorAccessor273]
    153750K->133006K(164064K), 1.2434402 secs]
    [GC 148939K->137948K(203264K), 0.0223085 secs]
    [GC 188789K->177116K(203264K), 0.0180729 secs]
    [Full GC[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor312]
    [Unloading class sun.reflect.GeneratedSerializationConstructorAccessor322]
    [Unloading class sun.reflect.GeneratedSerializationConstructorAccessor309]
    189788K->170264K(203264K), 1.1851945 secs]
    [Full GC 203228K->203227K(203264K), 1.2876122 secs]
    [Full GC 203263K->203233K(203264K), 1.3354548 secs]
    [Full GC 203263K->203258K(203264K), 1.2873518 secs]
    <Jan 17, 2007 9:40:40 AM EST> <Error> <HTTP> <BEA-101017> <[ServletContext(id=33114655,name=console,context-path=/console)] Root cause of ServletException.
    java.lang.OutOfMemoryError
    >
    [Full GC 203263K->203233K(203264K), 1.2814516 secs]
    [Full GC 203233K->203231K(203264K), 1.6029044 secs]
    [Full GC 203263K->203242K(203264K), 1.3081352 secs]
    <Jan 17, 2007 9:41:51 AM EST> <Emergency> <WebLogicServer> <BEA-000210> <The WebLogic Server is no longer listening for connections.>
    [Full GC 203263K->203247K(203264K), 1.3161194 secs]
    [Full GC 203263K->203249K(203264K), 1.2954988 secs]
    [Full GC 203263K->203247K(203264K), 1.6423404 secs]
    <Jan 17, 2007 9:41:57 AM EST> <Alert> <WebLogicServer> <BEA-000218> <Server shutdown has been requested by <WLS Kernel>>
    [Full GC 203263K->203250K(203264K), 1.3161025 secs]
    Another strange item is: I maximized the amount of memory it uses to 512m with the Xmx parameter, I am almost sure that that one is used, but it never gets higher than 203M? Does anyone know why this is?
    Another strange item: the monitoring in the weblogic code indicates 32MB of usage (relative memory usage seems to be ok, but the quanity indication is just plain wrong) with 15 threads running.
    This problem does not exist when using JBoss 4.0.2 or 4.0.3 (standard j2ee settings).
    If anyone has an idea or can help me, I would appreciate it very very much. :)

    Hi ,
    Is this issue resolved ?
    we are facing same problem.
    1. We have checked the CPU and memory utilization everything is normal
    2. GC logs showing FULL GC calls continuously
    3. After restart the resin server system is working normally.
    Environment detail
    Resin ./resin-pro-3.0.18 on suse Linux
    Java JDK1.4.2_08
    Please suggest

  • Weblogic Data source is not releasing connections

    Hi All,
    Weblogic JDBC data source is not releasing connection until JDBC connection is deleted and created again. Could you please let me know this is a database issue or weblogic jdbc driver issue. We are using weblogic 10.1. Please see the following xml for JDBC driver.
    Although maximum connections are set to 300, it stills keeps increasing connections over 300. This issue is resolved only when jdbc data source is deleted and created again.
    <?xml version='1.0' encoding='UTF-8'?>
    <jdbc-data-source xmlns="http://www.bea.com/ns/weblogic/90" xmlns:sec="http://www.bea.com/ns/weblogic/90/security" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wls="http://www.bea.com/ns/weblogic/90/security/wls" xsi:schemaLocation="http://www.bea.com/ns/weblogic/920 http://www.bea.com/ns/weblogic/920.xsd">
    <name>abc_admin_STGNCB</name>
    <jdbc-driver-params>
    <url>jdbc:oracle:thin:@10.151.43.54:1521:STGNCB</url>
    <driver-name>oracle.jdbc.OracleDriver</driver-name>
    <properties>
    <property>
    <name>user</name>
    <value>abc_admin</value>
    </property>
    <property>
    <name>portNumber</name>
    <value>1521</value>
    </property>
    <property>
    <name>SID</name>
    <value>STGNCB</value>
    </property>
    <property>
    <name>serverName</name>
    <value>10.151.43.54</value>
    </property>
    </properties>
    <password-encrypted>{3DES}wc5vg5GIbPtt+b8vWY0i5Q==</password-encrypted>
    </jdbc-driver-params>
    <jdbc-connection-pool-params>
    <initial-capacity>20</initial-capacity>
    <max-capacity>300</max-capacity>
    <capacity-increment>10</capacity-increment>
    <connection-creation-retry-frequency-seconds>30</connection-creation-retry-frequency-seconds>
    <statement-cache-size>200</statement-cache-size>
    <pinned-to-thread>true</pinned-to-thread>
    <identity-based-connection-pooling-enabled>true</identity-based-connection-pooling-enabled>
    </jdbc-connection-pool-params>
    <jdbc-data-source-params>
    <jndi-name>jdbc/ABC_TX_DATASOURCE</jndi-name>
    <jndi-name>jdbc/ABC_NON_TX_DATASOURCE</jndi-name>
    <jndi-name>jdbc/ABC_TX_EVENT_DATASOURCE</jndi-name>
    <jndi-name>jdbc/ABC_NON_TX_EVENT_DATASOURCE</jndi-name>
    <jndi-name>jdbc/ABC_DATASOURCE</jndi-name>
    <jndi-name>abc.cdb.DataSource</jndi-name>
    <global-transactions-protocol>EmulateTwoPhaseCommit</global-transactions-protocol>
    </jdbc-data-source-params>
    </jdbc-data-source>
    Edited by: bpenugon on Aug 24, 2010 8:02 AM

    The root cause is pinned-to-thread is enabled. When the application finishes using the connection and calls connection.close(), WebLogic Server keeps the connection with the execute thread and does not return it to the connection pool. The connection pool maximum capacity is ignored when pinned-to-thread is enabled. So you saw the number of connections in connection pool keeps increasing over 300.
    Set pinned-to-thread to false can solve the problem.

  • Self tuning threads are not releasing even though server running fine.

    One of the cluster instance is running fine and serving the requests with good response but there self tuning threads are not releasing .I am not seeing any stuck threads in logs and no errors. why threads are not releasing.How we can troubleshoot this issue. May I know what are the cause of this.

    Arun thanks for your quick response
    Here is the threads details
    Active Execute Threads 192     
    Execute Thread Total Count 222
    ExecuteThreadIdleCount 190     
    QueueLength 0
    PendingUserRequestCount 0
    completed request count 36659285
    HoggingThreadCount     1     
    StandbyThreadCount 30     
    Throughput 7.5     
    More number of threads are waiting for lock
    Here is the sample thread dump.
    "[ACTIVE] ExecuteThread: '218' for queue: 'weblogic.kernel.Default (self-tuning)'" waiting for lock weblogic.work.ExecuteThread@faf757 WAITING
         java.lang.Object.wait(Native Method)
         java.lang.Object.wait(Object.java:474)
         weblogic.work.ExecuteThread.waitForRequest(ExecuteThread.java:156)
         weblogic.work.ExecuteThread.run(ExecuteThread.java:177)
    "[ACTIVE] ExecuteThread: '217' for queue: 'weblogic.kernel.Default (self-tuning)'" waiting for lock weblogic.work.ExecuteThread@12c34ef WAITING
         java.lang.Object.wait(Native Method)
         java.lang.Object.wait(Object.java:474)
         weblogic.work.ExecuteThread.waitForRequest(ExecuteThread.java:156)
    some threads are blocked
    ExecuteThread: '9' for queue: 'weblogic.socket.Muxer'" waiting for lock java.lang.String@1f39d37 BLOCKED
         weblogic.socket.DevPollSocketMuxer.processSockets(DevPollSocketMuxer.java:93)
         weblogic.socket.SocketReaderRequest.run(SocketReaderRequest.java:29)
         weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:42)
         weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:145)
         weblogic.kernel.ExecuteThread.run(ExecuteThread.java:117)
    "ExecuteThread: '8' for queue: 'weblogic.socket.Muxer'" waiting for lock java.lang.String@1f39d37 BLOCKED
         weblogic.socket.DevPollSocketMuxer.processSockets(DevPollSocketMuxer.java:93)
         weblogic.socket.SocketReaderRequest.run(SocketReaderRequest.java:29)
         weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:42)
         weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:145)
         weblogic.kernel.ExecuteThread.run(ExecuteThread.java:117)
         weblogic.work.ExecuteThread.run(ExecuteThread.java:177)
    "[STANDBY] ExecuteThread: '11' for queue: 'weblogic.kernel.Default (self-tuning)'" waiting for lock weblogic.work.ExecuteThread@1bd18aa WAITING
         java.lang.Object.wait(Native Method)
         java.lang.Object.wait(Object.java:474)
         weblogic.work.ExecuteThread.waitForRequest(ExecuteThread.java:156)
         weblogic.work.ExecuteThread.run(ExecuteThread.java:177)

  • OIM 11g using too much memory and not releasing it when shutting down

    Hello,
    we have a problem with OIM 11g using too much memory (about 5gb) and it's not releasing it at shutdown (4gb still used).
    We are using a VM with RedHat Linux 5.6. Originally we had 4gb RAM + 2gb swap file. We installed Admin Server, OAM, OIM and SOA on that machine but quickly realised we couldn't run all 4 programs at once in 6gb. AdminServer could run with 2 other products, but it was a tight fit in memory.
    So we increased the RAM to 8gb (still 2gb swap file). But then our problem occured : I start the Admin Server (2.7gb total memory used), then OAM (4.6gb total memory used) and then OIM. After it started the server is now using 9.6gb of memory (~300mb of free memory) ! The problem gets even better : after I shut down everything (OIM, OAM, admin server) the "top" command show that there is still 4gb of memory used even tho nothing else is running on the server ! There is absolutely no other process (other than root stuff) running and no other users connected to the machine. After a reboot, it shows 400mb of memory used. I tried restarting the programs and it did the same thing.
    Our intuition is that there might be a memory leak or some bug in OIM that might use up almost all the free memory and it's not releasing it upon shutdown. It might have been there before we increased the memory but have not noticed it since memory was already tight.
    Anyone encountered the same problem ? Any idea ? Any suggestion to narrow down the problem ?
    Thank you

    You can adjust the memory settings for WLS by editing the setSOADomainEnv.sh file that can be found in your /middleware/user_projects/domains/<domain>/bin/ folder. There is an argument called PORT_MEM_ARGS which is used to set your Java memory arguments. This way you can decrease/increase the amount of memory used by each managed server.
    I usually type "ps -ef | grep oracle" to see what processes are running by the oracle user. This way the output doesn't get cluttered with root processes.
    Sunny Tsang

  • XML,CLOB  AND MEMORY : CONSUMED BUT NOT RELEASED !!!

    Hi,
    I'm working with XMLGEN Package and XSLT Processor to produce XML Document on Oracle 8.1.7.3 server, I use 9i XML and Java packages.
    I'm facing the following BIG MEMORY problem :
    Environment : I must generate an XML parsed with an XSL document of 80Mo (nearly 22 000 rows),
    as XMLGEN is on DOM parsing method, I extract my XML by 500 Rows and I loop until 22 000 rows. I use DBMS_JOB with jobs who read and execute export each minute.
    The algorithme is :
    keeprow=22000
    while keeprow>0
    Create 3 clob (DBMS_LOB Package) : one for XSL Sheet, one for XML and one for result
    GetXML (XMLGEN Package)
    Transform in XSL (XSL Processor)
    Write to disk (UTL_FILE Package)
    Free the 3 Clob ((DBMS_LOB Package))
    keeprow =keeprow-500
    loop
    The problem : The process start at 250Mo ot total memory and END at 1000 Mo of used memory and NEVER RELEASE 1 ko of memory.
    So often I get a JavaOutOfMemoryError (I've allocated 1Go Ram to my JAVA process).
    Any help will be very very appreciated !
    My derived problem is 22 000 rows is not enough I've some export of 200 000 rows to do (And I cannot allocate 10 Go of RAM !!!)
    Following My PL/SQL Code.
    Regards
    Fred
         PROCEDURE DO_EXPORT_XML(
                   P_JOB_ID JOB_PARAMETRE.JOB_ID%TYPE,
                   P_JOB_ID_ORDRE JOB_PARAMETRE.JOB_ID_ORDRE%TYPE,
                   P_CLE_UP UPLOADREQ_TEMP.ID%TYPE,
                   P_LOAD_OR_DELOAD VARCHAR2)
              IS
              L_FILE_NAME JOB_PARAMETRE.JOB_FILE_NAME_DEST%TYPE;
              L_REP_NAME JOB_PARAMETRE.JOB_REP_NAME_DEST%TYPE;
              L_FILE_STYLESHEET JOB_PARAMETRE.JOB_STYLESHEET%TYPE;
              L_VERSION_PDM JOB_PARAMETRE.JOB_VPDM%TYPE;
              P_SELECT varchar2(4000):='';
              P_CURSOR varchar2(4000):='';
         l_filehandler_out UTL_FILE.FILE_TYPE;
              --Variable pour le traitement par lot de 500
              L_NBROW_TODO_ATONCE number := 500;
              L_NBROW_MIN number := 1;
              L_NBROW_MAX number := -1;
              L_NBROWKEEPTODO number := -1;
              xslString CLOB := null;
              res number default -1;
              xmlString CLOB := null;
              li_ret number := 0;
              li_faitle number := 0;
              amount integer:= 255;
              li_loop integer := 0;
              charString varchar2(255);
              ls_deload varchar2(255) default '';
              ls_SQL varchar2(4000) default '';
              ls_temp_file varchar2(255) default '';
              text_file_dir varchar2(32) := 'e:\temporarydir';
              l_par xmlparser.parser;
         l_xml xmldom.domdocument;
         l_pro xslprocessor.processor;
         l_xsl xslprocessor.stylesheet;
              docfragnode xmldom.DOMNode;
              docfrag xmldom.DOMDocumentFragment;
              l_parsedclob clob := null;
              l_amount binary_integer := 32767;
              l_ligne varchar2(32767);
              l_offset number default 1;
              l_pos number default null;
              l_pos2 number default null;
              l_lobsize number default null;
              l_memsize number default 1073741824; --1024 Mo
              l_mempipo number default 0;
              type rc is ref cursor;
              l_cursor rc;
              cursor TEMPLATE is select UNSPSC,1 as NB from UPLOADREQ_TEMP where 1=2;
              c1rec TEMPLATE%rowtype;          
              BEGIN
              l_mempipo:=setmaxmemorysize(l_memsize);
              dbms_lob.createtemporary(l_parsedclob, true, dbms_lob.session);
              dbms_lob.createtemporary(xmlstring, true, dbms_lob.session);
              --return the good select
              GET_SELECT_TO_EXPORT_XML(P_JOB_ID , P_JOB_ID_ORDRE , P_CLE_UP , P_SELECT,P_CURSOR, P_LOAD_OR_DELOAD);
                        SELECT JOB_FILE_NAME_DEST,JOB_REP_NAME_DEST,JOB_STYLESHEET
                        INTO L_FILE_NAME,L_REP_NAME,L_FILE_STYLESHEET
                        FROM JOB_PARAMETRE
                        WHERE JOB_ID =P_JOB_ID AND JOB_ID_ORDRE=P_JOB_ID_ORDRE;
                        l_filehandler_out := UTL_FILE.FOPEN(text_file_dir, L_FILE_NAME, 'w',l_amount);
                        --Return XSL Sheet in a clob : cause of memory consumed  but not released
                   xslString := METACAT.load_a_file( 1,L_FILE_STYLESHEET);     
                        open l_cursor for P_CURSOR;
    LOOP
                   fetch l_cursor into c1rec;
                   exit when l_cursor%notfound;
                             L_NBROW_MIN := 1;
                             L_NBROW_MAX := 0;
                             L_NBROWKEEPTODO:=c1rec.NB;
                             LOOP
                             begin
                                  if(L_NBROWKEEPTODO > L_NBROW_TODO_ATONCE) THEN
                                       begin
                                       L_NBROW_MAX:= L_NBROW_TODO_ATONCE + L_NBROW_MAX;
                                       L_NBROWKEEPTODO:= L_NBROWKEEPTODO - L_NBROW_TODO_ATONCE;
                                       end;
                                  else
                                       begin
                                       L_NBROW_MAX:= L_NBROW_MAX + L_NBROWKEEPTODO;
                                       L_NBROWKEEPTODO:=0;
                                       end;
                                  end if;
                                  --on ouvre le fichier de risultats
                                  ls_SQL:= P_SELECT || ' AND ( ROWNUM BETWEEN ' || L_NBROW_MIN || ' AND ' || L_NBROW_MAX || ' ) and UNSPSC=''' || c1rec.UNSPSC || '''';
                                  ls_temp_file := c1rec.UNSPSC || '_' || L_FILE_NAME;
                                  L_NBROW_MIN:=L_NBROW_TODO_ATONCE + L_NBROW_MIN;
                                  --CAT_AUTOLOAD.JOB_ADD_TRACE (P_JOB_ID,'UPLOAD REQUISITE : Export donnies REQUETE ' || to_char(li_loop), ls_SQL,'',0,0);
                                  xmlgen.resetOptions;
                                  xmlgen.setErrorTag('ERROR_RESULT');
                                  xmlgen.setRowIdAttrName('NAH');
                                  xmlgen.setRowIdColumn('NAH');
                                  xmlgen.setEncodingTag('ISO-8859-1');
                                  xmlgen.useNullAttributeIndicator(false);
                                  if(xmlString is not null) then
                                       dbms_lob.open(xmlString,dbms_lob.lob_readwrite);
                                       l_lobsize:= dbms_lob.Getlength(xmlString);
                                       if(l_lobsize>0) then
                                       dbms_lob.erase(xmlString,l_lobsize,1);
                                       end if;
                                       dbms_lob.close(xmlString);
                                  dbms_lob.freetemporary(xmlString);
                                       dbms_lob.createtemporary(xmlstring, true, dbms_lob.session);
                                  end if;
    --Return XML in a clob : cause of memory consumed  but not released
                                  xmlString := xmlgen.getXML(ls_SQL,0);
                                  l_par := xmlparser.newparser;
                                  xmlparser.parseclob(l_par, xslString);
                                  l_xsl := xslprocessor.newstylesheet(xmlparser.getdocument(l_par),null);
                                  xmlparser.parseclob(l_par, xmlString);
                                  l_xml := xmlparser.getdocument(l_par);
                                  l_pro := xslprocessor.newprocessor;
                                       xslprocessor.showWarnings(l_pro, true);
                                       xslprocessor.setErrorLog(l_pro, text_file_dir || substr(ls_temp_file,0,length(ls_temp_file)-4) || '_logerreur.XML');
                                       if(l_parsedclob is not null) then
                                                 dbms_lob.open(l_parsedclob,dbms_lob.lob_readwrite);
                                                 l_lobsize:= dbms_lob.Getlength(l_parsedclob);
                                                 if(l_lobsize>0) then
                                                 dbms_lob.erase(l_parsedclob,l_lobsize,1);
                                                 end if;
                                                 dbms_lob.close(l_parsedclob);
                                            dbms_lob.freetemporary(l_parsedclob);
                                                 dbms_lob.createtemporary(l_parsedclob, true, dbms_lob.session);
                                       end if;
                        --Return XML Processed with XSL in a clob : cause of memory consumed  but not released
                                  xslprocessor.processxsl(l_pro,l_xsl,l_xml,l_parsedclob);
                                       --release NOTHING
                                  xmlparser.freeparser(l_par);
                                  xslprocessor.freeprocessor(l_pro);
                                                      l_ligne:='';
                                                      l_offset :=1;
                                                      l_pos := null;
                                                      l_pos2 := null;
                                                      if(li_loop=0) then
                                                           begin
                                                                --on ouvre le fichier et on sauve l'entete + les donnies dedans.
                                                                     l_pos:=dbms_lob.instr(l_parsedclob,'</DATA>');
                                                      if ( nvl(l_pos,0) > 0 ) then
                                                                          loop
                                                                          if(l_pos-1>l_amount + l_offset ) then
                                                                                    l_ligne:=dbms_lob.SUBSTR(l_parsedclob,l_amount,l_offset);
                                                                                    UTL_FILE.PUT(l_filehandler_out,l_ligne);
                                                                                    UTL_FILE.fflush(l_filehandler_out);
                                                                                    l_offset:=l_offset+l_amount;
                                                                               else
                                                                                    l_ligne:=dbms_lob.SUBSTR(l_parsedclob,l_pos-1 -l_offset ,l_offset);
                                                                                    UTL_FILE.PUT(l_filehandler_out,l_ligne);
                                                                                    UTL_FILE.fflush(l_filehandler_out);
                                                                                    exit;
                                                                               end if;
                                                                          end loop;
                                                                     else
                                                                          EXIT;
                                                                     end if;
                                                           end;
                                                      else
                                                           --on met les donnies donc on ne repete pas le debut
                                                           begin
                                                                     l_pos:=dbms_lob.instr(l_parsedclob,'<ITEM');
                                                      if ( nvl(l_pos,0) > 0 ) then
                                                                     l_pos2:=dbms_lob.instr(l_parsedclob,'</DATA>');
                                                      if ( nvl(l_pos2,0) > 0 ) then
                                                                          loop
                                                                          if(l_pos + l_amount <= l_pos2 -1 ) then
                                                                                    l_ligne:=dbms_lob.SUBSTR(l_parsedclob,l_amount,l_pos);
                                                                                    UTL_FILE.PUT(l_filehandler_out,l_ligne);
                                                                                    UTL_FILE.fflush(l_filehandler_out);
                                                                                    l_pos:=l_pos +l_amount;
                                                                               else
                                                                                    l_ligne:=dbms_lob.SUBSTR(l_parsedclob,l_pos2 -1 -l_pos,l_pos);
                                                                                    UTL_FILE.PUT(l_filehandler_out,l_ligne);
                                                                                    UTL_FILE.fflush(l_filehandler_out);
                                                                                    exit;
                                                                               end if;
                                                                          end loop;
                                                                          else
                                                                          exit;                                                                      
                                                                          end if;
                                                                     end if;
                                                           end;
                                                      end if;
                                                 li_loop:=li_loop + 1 ;
                                                 --UTL_FILE.FCLOSE(l_filehandler_in);
                                                 JAVA_GC();
                                                 EXIT WHEN L_NBROWKEEPTODO=0;
                                                 Exception
                                                 when others then
                                                      begin
                                                      -- IF(utl_file.is_open(l_filehandler_in)) THEN
                                                      --               utl_file.fclose( l_filehandler_in);
                                                      -- END IF;
                                                      IF(utl_file.is_open(l_filehandler_out)) THEN
                                                                     utl_file.fclose( l_filehandler_out);
                                                      END IF;
                                                      RAISE_APPLICATION_ERROR(-20001,'File with errors');
                                                      end;
                             END;
                             END LOOP;
    END LOOP;
    CLOSE l_cursor;
                        if ( xmlString is not null ) then
                                  dbms_lob.open(xmlString,dbms_lob.lob_readwrite);
                                  l_lobsize:= dbms_lob.Getlength(xmlString);
                                  if(l_lobsize>0) then
                                  dbms_lob.erase(xmlString,l_lobsize,1);
                                  end if;
                                  dbms_lob.close(xmlString);
                                  dbms_lob.freeTemporary( xmlString);
                        end if;
                        if(l_parsedclob is not null) then
                                  dbms_lob.open(l_parsedclob,dbms_lob.lob_readwrite);
                                  l_lobsize:= dbms_lob.Getlength(l_parsedclob);
                                  if(l_lobsize>0) then
                                       dbms_lob.erase(l_parsedclob,l_lobsize,1);
                                  end if;
                                  dbms_lob.close(l_parsedclob);
                                  dbms_lob.freetemporary(l_parsedclob);
                        end if;
                        UTL_FILE.NEW_LINE(l_filehandler_out);
                        l_ligne:='</DATA></CATALOG>';
                        UTL_FILE.PUT(l_filehandler_out,l_ligne);
                        UTL_FILE.FCLOSE(l_filehandler_out);                    
                   EXCEPTION
                   when others then
                             begin
                             IF(utl_file.is_open(l_filehandler_out)) THEN
                                       utl_file.fclose( l_filehandler_out);
                                  END IF;
                             end;     
              END;
    ******************************

    Thank you for the info - I had no idea I was puing myself in danger by cutting it so close.  Since your post I have moved my iphoto library to an external drive and now have 165 GB of space on my HD.  Following this I have 2 questions.
    1.  Since my available HD space was reduced by the size of the photo download it seems logical that the download is somewhere on my HD still.  Is there a place where these photos might be hiding on my HD even though they are not available on the iphoto library?
    2.  I was able to recover the .jpg files which are fine.  I also recovered the .mov files but they have been compromised.  I am hoping I can find the originals still on the HD somewhere.  If not, do you have any suggestions for recovery methods or programs?  I have not used the SD card since the incident so I should be able to attempt another recovery to salvage the .mov files if there is an alternative method/program available.
    Thanks again!

  • Garbage Collection not releasing memory properly

    Hello, In my web application memory is not releasing properly, after some point of time application throw out of memory error, we are using tomcat5, jdk5, my heap size is half of the RAM.Garbage Collection not releasing memory properly.

    sabre150 wrote:
    punter wrote:
    georgemc wrote:
    Yep. Couldn't be a problem with your code, it must be that garbage collection doesn't work and nobody else noticed. Raise a bug with Sun.Are you serious ?You need to replace your sarcasm detector.I have blowed my sarcasm meter and limping in the blindness !!!! :(

  • [svn] 2692: Bug: BLZ-227 - When using JMS Destination, MessageClient and FlexClient not released from memory when the session times out .

    Revision: 2692
    Author: [email protected]
    Date: 2008-07-31 13:05:35 -0700 (Thu, 31 Jul 2008)
    Log Message:
    Bug: BLZ-227 - When using JMS Destination, MessageClient and FlexClient not released from memory when the session times out.
    QA: Yes
    Doc: No
    Checkintests: Pass
    Details: Fixed a memory leak with JMS adapter. Also a minor tweak to QA build file to not to start the server if the server is already running.
    Ticket Links:
    http://bugs.adobe.com/jira/browse/BLZ-227
    Modified Paths:
    blazeds/branches/3.0.x/modules/core/src/java/flex/messaging/services/messaging/adapters/J MSAdapter.java
    blazeds/branches/3.0.x/qa/build.xml

    Revision: 2692
    Author: [email protected]
    Date: 2008-07-31 13:05:35 -0700 (Thu, 31 Jul 2008)
    Log Message:
    Bug: BLZ-227 - When using JMS Destination, MessageClient and FlexClient not released from memory when the session times out.
    QA: Yes
    Doc: No
    Checkintests: Pass
    Details: Fixed a memory leak with JMS adapter. Also a minor tweak to QA build file to not to start the server if the server is already running.
    Ticket Links:
    http://bugs.adobe.com/jira/browse/BLZ-227
    Modified Paths:
    blazeds/branches/3.0.x/modules/core/src/java/flex/messaging/services/messaging/adapters/J MSAdapter.java
    blazeds/branches/3.0.x/qa/build.xml

  • SQL Server Memory Usage Peaks to 95% and its not releasing SQL 2012

    We are currently running SQL 2012  64 bit, Lock Pages Enabled, 128 GB. We allocated Max Memory 112000, Min Memory to 0. We have a SQL Maintenace Job which backs up (Full Backup) of our server around 11PM at that time the SQL Server memory peaks to almost
    96% even during full business hours we are constantly in the range of 56 to 60% but after 11PM within 10 minutes of the job it peaks to 95 or 96 Percentage and even after the job completes it's not releasing the memory back. I have to manually shut the sql
    service and then restart at that time it comes back to normal.
    Any suggestions/any help really appreciated.

    Here are the details Memory is at 96% I still didn't restart...Please any help appreciated...The memory detals is for 24 hours  I restarted the service around 11AM before I posted my previous message..
    Memory Used by SqLServer: 119329
    Locked Pages Used SQLServer : 105969
    Total VAS in MB : 8388607
    Process Physical Memory Low : 0
    Process Virtual Memory Low : 0
    Max Memory set to :112000
    Out of 128 Memory Last 24 hours the memory usage in %
    Percent Memory Used - Total Memory is 128.0 GB
    Last 24 Hours
    DATE / TIME
    Memory Used
    19-Dec-14
    11:46 PM
    96.24659602
    20-Dec-14
    12:46 AM
    96.24578349
    20-Dec-14
    1:46 AM
    96.25146739
    20-Dec-14
    2:46 AM
    96.24345652
    20-Dec-14
    3:46 AM
    96.27311834
    20-Dec-14
    4:46 AM
    96.28947067
    20-Dec-14
    5:46 AM
    96.18931325
    20-Dec-14
    6:46 AM
    96.09323502
    20-Dec-14
    7:46 AM
    96.07915497
    20-Dec-14
    8:46 AM
    96.07906977
    20-Dec-14
    9:46 AM
    96.0784111
    20-Dec-14
    10:46 AM
    96.07415009
    20-Dec-14
    11:46 AM
    26.03422141
    20-Dec-14
    12:46 PM
    33.57474359
    20-Dec-14
    1:46 PM
    39.466561
    20-Dec-14
    2:46 PM
    41.85940742
    20-Dec-14
    3:46 PM
    43.89071274
    20-Dec-14
    4:46 PM
    45.80877368
    20-Dec-14
    5:46 PM
    46.49493281
    20-Dec-14
    6:46 PM
    46.68486468
    20-Dec-14
    7:46 PM
    46.69701958
    20-Dec-14
    8:46 PM
    46.69994736
    20-Dec-14
    9:46 PM
    57.5012455
    20-Dec-14
    10:46 PM
    96.25695419
    I verified its a sqL job and still my memory is 95%
    It peaeked at 10:46PM and here are the details of the SQL job which started at 10:30 
    Progress: 2014-12-20 22:30:04.39 
          Source: Check Database Integrity Task      Executing query "USE [DATASTORE]  ".: 50% complete  End Progress  Progress: 2014-12-20 22:43:06.10 
          Source: Check Database Integrity Task      Executing query "DBCC CHECKDB(N'DATASTORE')  WITH NO_INFOMSGS  ".: 100% complete  End Progress
        Progress: 2014-12-20 22:43:06.11     Source: Check Database Integrity Task      Executing query "USE [ETL_Proc]  ".: 50% complete 
     End Progress  Progress: 2014-12-20 22:46:52.56     Source: Check Database Integrity Task      Executing query "DBCC CHECKDB(N'ETL_Proc') 
      WITH NO_INFOMSGS  ".: 100% complete  End Progress  Progress: 2014-12-20 22:46:52.64     Source: Back Up Database Task
            Executing query "EXECUTE master.dbo.xp_create_subdir N'P:\SQL_Backu...".: 20% complete  End Progress  
    Progress: 2014-12-20 22:46:52.64     Source: Back Up Database Task      Executing query "EXECUTE master.dbo.xp_create_subdir N'P:\SQL_Backu...".
    : 40% complete  End Progress  Progress: 2014-12-20 22:46:52.64   
      Source: Back Up Database Task      Executing query "EXECUTE master.dbo.xp_create_subdir N'P:\SQL_Backu...".: 60% complete 
       End Progress  Progress: 2014-12-20 22:46:52.64     Source: Back Up Database Task    
     Executing query "EXECUTE master.dbo.xp_create_subdir N'P:\SQL_Backu...".: 80% complete  End Progress  
     Progress: 2014-12-20 22:46:52.64     Source: Back Up Database Task      
     Executing query "EXECUTE master.dbo.xp_create_subdir N'P:\SQL_Backu...".: 100% complete  End Progress 
      Progress: 2014-12-20 22:46:55.63     Source: Back Up Database Task    
        Executing query "BACKUP DATABASE [ReportServer] TO  DISK = N'P:\SQL...".: 100% complete  
    End Progress  Progress: 2014-12-20 22:46:56.55     Source: Back Up Database Task    
      Executing query "BACKUP DATABASE [ReportServerTempDB] TO  DISK = N'...".: 100% complete  End Progress  Progress: 2014-12-20 22:46:57.35  
         Source: Back Up Database Task      Executing query "BACKUP DATABASE [dbamaint] TO  DISK = N'P:\SQL_Bac...".: 100% complete  End Progress 
      Progress: 2014-12-20 22:51:13.08     Source: Back Up Database Task   
         Executing query "BACKUP DATABASE [DATASTORE] TO  DISK = N'P:\SQL_Ba...".: 100% complete  End Progress
       Progress: 2014-12-20 22:51:52.72     Source: Back Up Database Task     
    Executing query "BACKUP DATABASE [ETL_Proc] TO  DISK = N'P:\SQL_Bac...".: 100% complete  End Progress  Progress: 2014-12-20 22:51:54.87 
        Source: Rebuild Index Task      Executing query "USE [ReportServer]  ".: 0% complete  End Progress  Progress:
     2014-12-20 22:51:54.88     Source: Rebuild Index Task      Executing query "ALT...  The package executed successf...  The step succeeded.

  • PS Touch Android does not release memory when closed.

    I have to force closure with Task Manager on my Samsung Note 2 running JB 4.1. Why and when will it be fixed?

    Hi Ignacio,
    Sorry for the lack of information - I had typed more complete description, but had trouble posting it.
    The app is installed on a Samsung Galaxy Note 2 phone that is running Jellybean 4.1.1.
    The only way I can see to exit the application is by using the "back" soft key under the screen on the right. Some apps have an "exit" choice under the "menu" soft key, but that key is not active with PSTouch.
    I see the same issue with Google Chrome. The menu key is active with this app, but it does not have an "exit" choice.
    With both these apps, I have to go to the "Active Apps" tab of the Task Manager to release memory.
    There is one difference with PS Touch. Google Chrome always starts the same way whether or not I release it's memory. With PS Touch, if I release memory after closing with the back key, the next time I start it I get an initial royal blue screen with the PS Touch icon in the middle followed by a second screen with a menu in the middle titled "New Project From". If I exit at that point, it takes two presses of the back key to first close the menu and then exit the program and return to a home screen. If I do not release memory, the next time I start PS Touch, it goes directly to the second screen, but without the "New Project From" menu.
    I hope this gives you the information you need.
                      Pete

  • Photoshop does not release memory after closing document.

    When I close a large document Photoshop does not release the memory. If I open another document the program is slow and not resposive. If I close out of Photoshop and restart it then load the other document it is quick and responsive again.

    A bit late to the party here but this issue is still live and I can't find anything else on the forum similar to it (apologies if there is).
    Photoshop does not seem to re-use memory it just keep allocating new right up to the limit before the prog crashes (same applies to Fireworks) so any batch/script processing of more than a handful of files is impossible.
    I am Photoshop via Creative Cloud (so I am always updated to your latest release), Windows 7 64k with 8Mb memory and am using Norton Intenet Security 20.3.1.22 which is updated daily.

  • Vector renewed but memory not released

    Hi,
    Please see the following code:
    Vector v = new Vector(10000000);
    // from windows task manager, it seems it takes 40 Mb of memory.
    // there is a need to do the following after some code
    v = new Vector(10000000);
    // now the memory taken is around 80 Mb
    It would be useful if the program releases the earlier memory of 40 Mb. May be it does not work that way? Any thoughts are welcome.
    Regards
    Chandra.

    Thank you all folks. Each suggestion helps me understand vectors and memory in a better way than before. I have noted setting the heap and also the 'clear' function.
    When I repeat the code several times, it seems that initially there is an increase in memory up to a certain limit (in my case it is 128 Mb) but there is no increase after that, how many times I repeat the code. (Repeating the code is to find when the out of memory problem occurs). It works okay for now.
    Thanks to all again.
    Regards
    Chandra.

  • Interface operator : Memory not released

    Hello,
    In the interface operator provided by Ni “Full-Featured \ CVI”,
    it would seem that the memory is not released correctly.
    By adding the
    following lines of codes at the end of the hand, one realizes that the
    number of block and byte are not to 0.
    #ifdef _CVI_DEBUG_
        unsigned int
    NbByte;
        unsigned int NbBlock;
        CVIDynamicMemoryInfo (“Fine of the Hand”,
    &NbBlock, &NbByte, DYNAMIC_MEMORY_SHOW_ALLOCATED_MEMORY);
     #endif
    A priori that comes from the function:
    errChk
    (TS_LoadMenuBarResourceStrings (gMainWindow.engine, GetPanelMenuBar
    (gMainWindow.panel), 0, “TSUI_OI_MAIN_PANEL”, errMsg));
    In spite of my
    research, I do not manage to solve the problem.
    Somebody would have it
    the solution or then a track to be exploited.
    Thank you in advance for
    your assistance

    Hello Dave.
    I found this KB for your problem.
    I hope it will help you.
    Let me know if it's ok for you.
    Have a nice day.
    Regards.
    Romain D.
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    NIDays 2010 : Conférence mondiale de l'instrumentation virtuelle
    >>Détails et Inscription<<

Maybe you are looking for