Memory Leak in Flex Builder

I created Services.mxml in the tutorial, set it as the
default application file, and dragged the first component onto the
design view screen, a label, when Flex Builder seems to get
sluggish. Jumping out to the task manager revealed javaw.exe
rapidly accumulating memory usage, heading for 300,000 K. I killed
FB before it hung the machine and restarted it.
I was able to replicate it by being in a hurry. I created
another Services2.mxml as an application, and while it was Building
the workspace i tried to drag a Label onto the stage. Twice. The
cursor didn't change, but they eventually they appeared. Checking
the task manager revealed that i had put javaw.exe again in a
tailspin, rapidly accumulating memory usage.

I'm also experiencing huge memory leaks from beta 3...after a
couple of builds memory allocation for javaw is around
300MB...hopefully this will get fixed. thanks,
-george

Similar Messages

  • Flex Builder 3 - Memory Profile Confusion!

    Hello,
    I'm currently working on memory leaks in a fairly large application. When I finally tracked down the issue it had to do with using BindUtils's bindProperty method. If I assigned my properties directly and manually updated them, all of the instances were relased when the garbage collector was invoked (all of this through the memory profiler in Flex Builder Pro 3).
    I then build out a small little test app that simply created an ArrayCollection then using BindingUtils, bound it to the dataProvider of 20 data grids. I stored the change watches then manually called "unwatch" and finally nulled out the changeWatchers (and even went so far to manually remove the grids and null them out).
    What I noticed was when I used bindingutils, the ListCollectionView objects were not released when I used BindingUtils but when I used direct assignment and removed the grids, all the ListCollectionView instances were dumped correctly.
    At this point I'm not sure if I'm misinterpeting the results in the memory profiler or not. If I "unwatch" a change watcher and destroy it, should that kill and references to the target object? Any help or advice would be appreciated.
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
                    layout="absolute"
                    initialize="initData()">
        <mx:Script>
            <![CDATA[
                import mx.binding.utils.ChangeWatcher;
                import mx.controls.DataGrid;
                import mx.binding.utils.BindingUtils;
                import mx.controls.Label;
                import mx.collections.ArrayCollection;
                [Bindable]
                public var dataProvider:ArrayCollection;
                private var changeWatchers:Array;
                private function initData():void
                    var object1:Object = new Object();
                    object1["first"] = "John";
                    object1["middle"] = "Alexander";
                    object1["last"] = "Smith";
                    dataProvider = new ArrayCollection();
                    dataProvider.addItem(object1);
                private function createObjects():void
                    changeWatchers = new Array();
                    for (var i:int = 0; i < 20; i++)
                        var newGrid:DataGrid = new DataGrid();
                        changeWatchers.push(BindingUtils.bindProperty(newGrid, "dataProvider", this, "dataProvider"));
                        //newGrid.dataProvider = dataProvider;
                        targetItems.addChild(newGrid);
                private function deleteMemory():void
                    for each (var cw:ChangeWatcher in changeWatchers)
                        cw.unwatch();
                        cw = null;
                    var children:Array = targetItems.getChildren();
                    for each (var child:DisplayObject in children)
                        targetItems.removeChild(child);
                        child = null;
            ]]>
        </mx:Script>
        <mx:HBox y="0">
            <mx:Button label="Create Grids"
                       click="createObjects()"/>
            <mx:Button label="Delete Grids"
                       click="deleteMemory()"/>
        </mx:HBox>
        <mx:VBox id="targetItems"
                 y="50">
        </mx:VBox>
    </mx:Application>

    I answered my own question.
    In the code I was calling "unwatch" and setting the array element to null and I assumed that would cause the instances of ListCollectionView to decrease once the garbage collector was invoked. It wasn't till now that I was playing around with the code and set the array itself to null that it decreased the instances back to 0.
    At least I know where some of my memory issues could be coming from in the main application as I use arrays quite a bit!

  • Memory leak in Oracle Text under Oracle 8.1.7!!!

    When I wanted to use USER_DATASOTRE preference to use my own formatting tag in Oracle Text, the memory leak occured in Oracle Text!
    Memory just freed when I close SQL*Plus program
    My formatting procedure is so easy
    PROCEDURE format_tag(r IN ROWID, tlob IN OUT NOCOPY CLOB) IS
    BEGIN
    SELECT '<C>' &#0124; &#0124; catalog_id &#0124; &#0124; '</C></T>' &#0124; &#0124; tag_id &#0124; &#0124; '</T><V>' &#0124; &#0124; tag_value &#0124; &#0124; '</V>' INTO buf
    FROM tbl_catalog WHERE ROWID=r;
    dbms_lob.trim(tlob, 0); -- set LOB's size to zero
    dbms_lob.write(tlob, length(buf), 1, buf);
    END;
    The typical rows are about 100,000 ( The actual records are tens of millions )
    How can I solve this problem?

    Thanks for your reply
    I'm using Oracle 8.1.7.0.0 on Windows 2000
    The preferences are as follows:
    DECLARE
    ds VARCHAR2(30):= 'dts_catalog';
    grp VARCHAR2(30):= 'grp_catalog';
    lxr VARCHAR2(30):= 'lxr_catalog';
    wrd VARCHAR2(30):= 'wrd_catalog';
    BEGIN
    ctx_ddl.create_preference(wrd, 'BASIC_WORDLIST');
    ctx_ddl.set_attribute(wrd, 'STEMMER', 'NULL');
    ctx_ddl.create_preference(lxr, 'BASIC_LEXER');
    ctx_ddl.set_attribute(lxr, 'INDEX_TEXT', 'TRUE');
    ctx_ddl.set_attribute(lxr, 'INDEX_THEMES', 'FALSE');
    ctx_ddl.create_preference(ds, 'USER_DATASTORE');
    ctx_ddl.set_attribute(ds, 'OUTPUT_TYPE', 'VARCHAR2');
    ctx_ddl.set_attribute(ds, 'PROCEDURE', 'pkg_catalog.format');
    ctx_ddl.create_section_group(grp, 'BASIC_SECTION_GROUP');
    ctx_ddl.add_field_section(grp, 'catalog', 'C', TRUE);
    ctx_ddl.add_field_section(grp, 'tag', 'T', TRUE);
    TRUE);
    ctx_ddl.add_field_section(grp, 'value', 'V', TRUE);
    END;
    the STORAGE preferences are not here ( because they are long )
    Index statement that I used for indexing
    CREATE INDEX idx_catalog_info ON tbl_catalog_info(val)
    INDEXTYPE IS ctxsys.context
    PARAMETERS(
    'STORAGE stg_catalog
    DATASTORE dts_catalog
    SECTION GROUP grp_catalog
    LEXER lxr_catalog
    WORDLIST wrd_catalog
    MEMORY 24M'
    I changed my last version of procedure and using VARCHAR2 parameter type instead of CLOB, but memory leak persist during building index.
    so I used a simple trick by writing a package and counting the records to be indexed, after each 100,000 records I used DBMS_SESSION.FREE_UNUSED_USER_MEMORY procedure to free unused session's memory.
    the package is as follows:
    CREATE OR REPLACE PACKAGE pkg_catalog IS
    PROCEDURE format(r ROWID, buf IN OUT NOCOPY VARCHAR2);
    END pkg_catalog;
    CREATE OR REPLACE PACKAGE BODY pkg_catalog IS
    recs PLS_INTEGER:= 0;
    PROCEDURE format(r ROWID, buf IN OUT NOCOPY VARCHAR2) IS
    BEGIN
    SELECT '<C>'&#0124; &#0124;catalog_id&#0124; &#0124;'</C><T>'&#0124; &#0124;tag_id&#0124; &#0124;subfield_id&#0124; &#0124;'</T><V>'&#0124; &#0124;val&#0124; &#0124;'</V>' INTO buf FROM &usr.tbl_catalog_info WHERE ROWID=r;
    recs:= recs + 1;
    IF recs>100000 THEN
    recs:= 0;
    dbms_session.free_unused_user_memory; -- clean-out memory garbage
    END IF;
    END format;
    END pkg_catalog;
    My problem solved, but it is very marvelous "Why Oracle does not free unused session's memory?"

  • SQL Server 2012- Memory Leak Issue

    Team,
    We are running a Mission Critical Application on SQL Server 2012 SP2(11.0.5058) which is configured on Always ON Synchronous mode. Offlate due to heavy development work, Application team have come up with stating memory issues. I have analysed all the areas
    and everything looks normal. Please suggest if we have to patch the latest CU4 for SQL Server 2012 SP2. 
    The checks were performed on the below areas:
    - Errorlog, System Logs - No errors reported.
    - There are close to 8 Databases hosted on the instances which are all configured for AlwaysON. SQL Server is running on VM Infrastructure and the total physical memory allocated is 96GB out of which SQL is capped for 92GB. 
    -The Page Life Expectancy is healthy and is showing a greater number. There are no Signal waits either or pending memory grants. 
    - The writes are more than reads for one of the databases which is flagged with application team. There are no blockings & Deadlocks.
    Please suggest me the future course of action and your inputs are much appreciated.
    Best Regards,
    Sharath 

    Actual issue is- Application team have reported a memory leak and their builds have significantly slowed down. They suspect that its Database memory leak. However I have verified from database end and gave the above inputs. 
    The AOAGs are good. I was looking for any pointers whether there are any bugs which is related to memory leaks in SQL Server 2012.  I know all of them are addressed with SQL Server 2012 SP2. 
    Application team has NO idea about SQL Server do they ? And to say SQL Server has memory leak you have to actually prove it did they showed any proof. Its common for application team to say SQL Server is leaking memory because they are unaware about fact
    by default SQL Server would take as much memory as possible and would release when SQLOS asks it to do so. This might give sign that it is leaking memory BUT IT IS NOT.
    As you already said AOAG is working fine so I am presuming there is nothing much to worry. To monitor memory usage in SQL Server 2012 you can use below counters
    SQL Server: Memory Manager-- Target Server Memory (KB)
    SQL Server: Memory Manager--Total Server Memory (KB)
    SQL Server: Memory Manager- Free Memory (KB)
    SQL Server: Memory Manager--Database Cache Memory (KB)
    Please mark this reply as answer if it solved your issue or vote as helpful if it helped so that other forum members can benefit from it
    My Technet Wiki Article
    MVP

  • Memory leak in MAX Preview resolved by build 411

    I was experiencing a memory leak while using the TLF that came as part of Flex 4 MAX Preview. Over the course of several hours, instances of a class called TextAccImpl would rapidly accumulate to the point where they accounted for over 50% of memory usage in my application, severely degrading performance.
    Upgrading to weekly build 411 resolved this issue - I didn't try with build 409 to see if it was also affected.
    Posting this as I wasn't sure if this entry in the change notes; "Fix a memory leak issue with the TextLayoutFormat cache" was related or not.

    If you modify the code just to call theCon=scp->getConnection(); and scp->releaseConnection(theCon); in an infinite loop, in as many threads as you like but initially in just one thread, does this program's memory usage stabilise or does it continue to use increasingly more and more memory until it crashes due to lack of memory?

  • HTTPService + XML Load + Memory Leak

    Hi all....
    I have noticed a memory leak in my application. This leak was
    not apparent when the application was completed some months back
    which is what left me a little confused as all I have done since
    was upgrade to Flex 3 and possibly updated / changed my Flash
    player.
    I think I have found the cause to this problem (below) but am
    not 100% sure that it is the "actual" problem or any reasons to
    back my thoughts up, so have listed what I have checked / tried
    along the way (maybe I have missed something)....
    My Discovery Process:
    I started profiling my application but did not find anything
    out of the ordinary. I did a code walk-through double checking I
    had cleaned up after myself, removing and even nulling all items
    etc but still to now success - the leak is still there.
    I have profiled the app in the profiler for reasonably long
    periods of time.
    All the classes etc being used within the app are consistent
    in size and instance amount and there is no sign of any apparent
    leak.
    I am using a HTTPService that is loading XML data which I am
    refreshing every 5 seconds. On this 5 second data refresh some
    class instances are incremented but are restored to the expected
    amount after a GC has occurred. The GC seems to take longer, the
    longer the app is running, therefore more and more instances are
    being added to the app, but when the GC eventually runs it "seems"
    to clear these instances to the expected amount.
    After scratching my head for a while I decided to make a copy
    of my application, rip everything out, and focus in my data load,
    where I found a problem!
    I have now just a HTTPService that loads an XML file every 5
    seconds, and this is all I currently have in the app (as I ripped
    the rest of the code out), e.g:
    Code:
    <mx:Application xmlns:mx="
    http://www.adobe.com/2006/mxml"
    ....... creationComplete="initApp()" >
    <mx:HTTPService
    id="httpServiceResults"
    url="
    http://myIP:myPort/myRoot/myXML.cfm"
    resultFormat="e4x"
    result="httpResultHandler(event)" />
    <script....... >
    private var timerPulse:Timer;
    private function initApp():void
    httpServiceResults.send();
    timerPulse = new Timer(5000, 0);
    private function httpResultHandler(event:ResultEvent):void
    timerPulse.start();
    timerPulse.addEventListener(TimerEvent.TIMER, timerRefresh);
    public function timerRefresh(eventObj:TimerEvent):void
    timerPulse.stop();
    timerPulse.removeEventListener(TimerEvent.TIMER,
    timerRefresh);
    timerPulse.reset();
    httpServiceResults.send();
    </script>
    </mx:Application>
    This is pretty much the code I am currently using and it
    leaks.
    I ran and monitored this in both the profiler and the
    activity / task manager, and after running the app for 1800 seconds
    (30 min) in the profiler, the memory size grew from 50mg to 165mg
    just sending the HTTPService.
    I tried loading the service in multiple ways including in AS
    rather than MXML creating new instances of it each time, resetting
    it, nulling it etc... but nothing prevented this memory increase.
    I then tried to load the XML using different methods such as
    using the URLRequest and URLLoader which again caused a memory
    leak.
    What still confuses me is that this leak did not exist in the
    previous version and not a great deal has changed since then apart
    from upgrading to Flex 3 and possibly upgrading my Flash payer
    (which I believe is a possible cause)
    After looking into this issue a bit more deeply, I read a few
    blogs / forums and other people are experiencing the same problems
    - even with a lot bigger leaks in some cases all when reloading
    large sets of XML data into Flex - however, I as of yet found no
    solution to this leak - people with a similar problem believe it is
    not due to a memory leak more a GC error, and others pointing
    towards the Flash Player itself that is leaking - I don't really
    know.
    Findings so far during investigation of this issue:
    * App leaks for both HTTPService and ULRRequest / URLLoader
    methods
    * App only leaks when calling a data loader
    * The size of the leak seems to depend on the size of the
    XML being loaded
    * The size of the leak also seems to be affected by the
    applications heaviness - the greater seems to enhance the leak
    An interesting factor I have noticed is that if I copy the
    XML from my "myXML.cfm" that I link to in my HTTPService and copy
    the contents of the file into my own XML file stored within the
    Flex project root itself: ""myXML.xml"" the leak disappears... like
    it seems to link when loading the XML over a network, however as my
    network knowledge is not great I am not sure what to make of this -
    any ideas???
    Could the connection to the XML document cause leaks??? is
    there anything else that could cause this leak??? have I something
    in my code sample that could cause this leak??? or could any of the
    other things I have mentioed cause this leak???
    Any help / ideas would be greatly appreciated.
    Thanks,
    Jon.

    I also observed heavy memory leak from using httpservice with
    XML data. I am using Flex3 builder under Linux. My Flex application
    polls httpservice every 10 seconds. The reply is a short XML
    message less than 100 bytes. This simple polling will consume 30+
    MB of memory every hour. I leave it idling for several hours and it
    took 200 MB of memory. No sign of garbage collection at all.

  • Potential Memory Leak during Marshelling of a Web Service Response

    I believe I have found a memory leak when using the configuration below.
    The memory leak occurs when calling a web service. When the web service function is marshelling the response of the function call, an "500 Internal Server Error ... java.lang.OutOfMemoryError" is returned from OC4J. This error may be seen via the TCP Packet Monitor in JDeveloper.
    Unfortunately no exception dump is outputted to the OC4J log.
    Configuration:
    Windows 2000 with 1 gig ram
    JDeveloper 9.0.5.2 with JAX/RPC extension installed
    OC4J 10.0.3
    Sun JVM version 1.4.2_03-b02
    To demonstrate the error I created a simple web service and client. See below the client and web service function that demonstrates it.
    The web service is made up of a single function called "queryTestOutput".
    It returns an object of class "TestOutputQueryResult" which contains an int and an array.
    The function call accepts a one int input parameter which is used to vary the size of array in the returned object.
    For small int (less than 100). Web service function returns successfully.
    For larger int and depending on the size of memory configuration when OC4J is launched,
    the OutOfMemoryError is returned.
    The package "ws_issue.service" contains the web service.
    I used the Generate JAX-RPC proxy to build the client (found in package "ws_issue.client"). Package "types" was
    also created by Generate JAX-RPC proxy.
    To test the web service call execute the class runClient. Vary the int "atestValue" until error is returned.
    I have tried this with all three encodings: RPC/Encoded, RPC/Literal, Document/Literal. They have the
    same issue.
    The OutOfMemory Error is raised fairly consistently using the java settings -Xms386m -Xmx386m for OC4J when 750 is specified for the input parameter.
    I also noticed that when 600 is specified, the client seems to hang. According to the TCP Packet Monitor,
    the response is returned. But, the client seems unable to unmarshal the message.
    ** file runClient.java
    // -- this client is using Document/Literal
    package ws_issue.client;
    public class runClient
    public runClient()
    * @param args
    * Test out the web service
    * Play with the atestValue variable to until exception
    public static void main(String[] args)
    //runClient runClient = new runClient();
    long startTime;
    int atestValue = 1;
    atestValue = 2;
    //atestValue = 105; // last one to work with default memory settings in oc4j
    //atestValue = 106; // out of memory error as seen in TCP Packet Monitor
    // fails with default memory settings in oc4j
    //atestValue = 600; // hangs client (TCP Packet Monitor shows response)
    // when oc4j memory sessions are -Xms386m -Xmx386m
    atestValue = 750; // out of memory error as seen in TCP Packet Monitor
    // when oc4j memory sessions are -Xms386m -Xmx386m
    try
    startTime = System.currentTimeMillis();
    Ws_issueInterface ws = (Ws_issueInterface) (new Ws_issue_Impl().getWs_issueInterfacePort());
    System.out.println("Time to obtain port: " + (System.currentTimeMillis() - startTime) );
    // call the web service function
    startTime = System.currentTimeMillis();
    types.QueryTestOutputResponse qr = ws.queryTestOutput(new types.QueryTestOutput(atestValue));
    System.out.println("Time to call queryTestOutput: " + (System.currentTimeMillis() - startTime) );
    startTime = System.currentTimeMillis();
    types.TestOutputQueryResult r = qr.getResult();
    System.out.println("Time to call getresult: " + (System.currentTimeMillis() - startTime) );
    System.out.println("records returned: " + r.getRecordsReturned());
    for (int i = 0; i<atestValue; i++)
    types.TestOutput t = r.getTestOutputResults();
    System.out.println(t.getTestGroup() + ", " + t.getUnitNumber());
    catch (Exception e)
    e.printStackTrace();
    ** file wsmain.java
    package ws_issue.service;
    import java.rmi.RemoteException;
    import javax.xml.rpc.ServiceException;
    import javax.xml.rpc.server.ServiceLifecycle;
    public class wsmain implements ServiceLifecycle, ws_issueInterface
    public wsmain()
    public void init (Object p0) throws ServiceException
    public void destroy ()
    System.out.println("inside ws destroy");
    * create an element of the array with some hardcoded values
    private TestOutput createTestOutput(int cnt)
    TestOutput t = new TestOutput();
    t.setComments("here are some comments");
    t.setConfigRevisionNo("1");
    t.setItemNumber("123123123");
    t.setItemRevision("arev" + cnt);
    t.setTestGroup(cnt);
    t.setTestedItemNumber("123123123");
    t.setTestedItemRevision("arev" + cnt);
    t.setTestResult("testResult");
    t.setSoftwareVersion("version");
    t.setTestConditions("conditions");
    t.setStageName("world's a stage");
    t.setTestMode("Test");
    t.setTestName("test name");
    t.setUnitNumber("UnitNumber"+cnt);
    return t;
    * Web service function that is called
    * Create recCnt number of "records" to be returned
    public TestOutputQueryResult queryTestOutput (int recCnt) throws java.rmi.RemoteException
    System.out.println("Inside web service function queryTestOutput");
    TestOutputQueryResult r = new TestOutputQueryResult();
    TestOutput TOArray[] = new TestOutput[recCnt];
    for (int i = 0; i< recCnt; i++)
    TOArray[i] = createTestOutput(i);
    r.setRecordsReturned(recCnt);
    r.setTestOutputResults(TOArray);
    System.out.println("End of web service function call");
    return r;
    * @param args
    public static void main(String[] args)
    wsmain wsmain = new wsmain();
    int aval = 5;
    try
    TestOutputQueryResult r = wsmain.queryTestOutput(aval);
    for (int i = 0; i<aval; i++)
    TestOutput t = r.getTestOutputResults()[i];
    System.out.println(t.getTestGroup() + ", " + t.getUnitNumber());
    catch (Exception e)
    e.printStackTrace();
    ** file ws_issueInterface.java
    package ws_issue.service;
    import java.rmi.Remote;
    import java.rmi.RemoteException;
    public interface ws_issueInterface extends java.rmi.Remote
    public TestOutputQueryResult queryTestOutput (int recCnt) throws java.rmi.RemoteException;
    ** file TestOutputQueryResult.java
    package ws_issue.service;
    public class TestOutputQueryResult
    private long recordsReturned;
    private TestOutput[] testOutputResults;
    public TestOutputQueryResult()
    public long getRecordsReturned()
    return recordsReturned;
    public void setRecordsReturned(long recordsReturned)
    this.recordsReturned = recordsReturned;
    public TestOutput[] getTestOutputResults()
    return testOutputResults;
    public void setTestOutputResults(TestOutput[] testOutputResults)
    this.testOutputResults = testOutputResults;
    ** file TestOutput.java
    package ws_issue.service;
    public class TestOutput
    private String itemNumber;
    private String itemRevision;
    private String configRevisionNo;
    private String testName;
    private String testConditions;
    private String stageName;
    private String testedItemNumber;
    private String testedItemRevision;
    private String unitNumber;
    private String testStation;
    private String testResult;
    private String softwareVersion;
    private String operatorID;
    private String testDate; // to be datetime
    private String comments;
    private int testGroup;
    private String testMode;
    public TestOutput()
    public String getComments()
    return comments;
    public void setComments(String comments)
    this.comments = comments;
    public String getConfigRevisionNo()
    return configRevisionNo;
    public void setConfigRevisionNo(String configRevisionNo)
    this.configRevisionNo = configRevisionNo;
    public String getItemNumber()
    return itemNumber;
    public void setItemNumber(String itemNumber)
    this.itemNumber = itemNumber;
    public String getItemRevision()
    return itemRevision;
    public void setItemRevision(String itemRevision)
    this.itemRevision = itemRevision;
    public String getOperatorID()
    return operatorID;
    public void setOperatorID(String operatorID)
    this.operatorID = operatorID;
    public String getSoftwareVersion()
    return softwareVersion;
    public void setSoftwareVersion(String softwareVersion)
    this.softwareVersion = softwareVersion;
    public String getStageName()
    return stageName;
    public void setStageName(String stageName)
    this.stageName = stageName;
    public String getTestConditions()
    return testConditions;
    public void setTestConditions(String testConditions)
    this.testConditions = testConditions;
    public String getTestDate()
    return testDate;
    public void setTestDate(String testDate)
    this.testDate = testDate;
    public String getTestName()
    return testName;
    public void setTestName(String testName)
    this.testName = testName;
    public String getTestResult()
    return testResult;
    public void setTestResult(String testResult)
    this.testResult = testResult;
    public String getTestStation()
    return testStation;
    public void setTestStation(String testStation)
    this.testStation = testStation;
    public String getTestedItemNumber()
    return testedItemNumber;
    public void setTestedItemNumber(String testedItemNumber)
    this.testedItemNumber = testedItemNumber;
    public String getTestedItemRevision()
    return testedItemRevision;
    public void setTestedItemRevision(String testedItemRevision)
    this.testedItemRevision = testedItemRevision;
    public String getUnitNumber()
    return unitNumber;
    public void setUnitNumber(String unitNumber)
    this.unitNumber = unitNumber;
    public int getTestGroup()
    return testGroup;
    public void setTestGroup(int testGroup)
    this.testGroup = testGroup;
    public String getTestMode()
    return testMode;
    public void setTestMode(String testMode)
    this.testMode = testMode;

    I use web services a lot and I sympathize with your issue. I
    struggle with similar issues and I found this great utility that
    will help you confirm if your webservice is returning the data
    correctly to Flex. I know you said it works in other applications
    but who knows if flex is calling it correctly etc. This utility is
    been the most amazing tool in helping me resolve web service
    issues.
    http://www.charlesproxy.com/
    Once you can confirm the data being returned is good you can
    try several things in flex. Try changing your result format to
    object or e4x etc. See how that plays out. Not sure where your
    tapping in to look at your debugger, you might want to catch it
    right at the result handler before converting to any collections. .
    If nothing here helps maybe post some code to look at. .
    .

  • Memory leak problem

    Dears,
    I have an application which have pages, each page has its content from text, images and external swfs.
    I load page only if user navigate to it, by the time, more navigation by user occures and more pages loaded.
    I don't kill ( also I couldn't kill, no destroy in as3 ) pages, becuse i need them when user go back again to it, specially that pages have interactive content which user can deal with it, like questions, so I need prevoius pages which user enterd, its content and user's data.
    The big problem is the Memory leak, the application becomes heavy , what can i do ?
    Also, if I should kill pages with its content and use GC, How can i do that ? - there is a long life and events of objects in my application.
    thank you in advance,
    heba

    I use Flash Builder , flex sdk 4.5, flash player 11.4, and windows 7 64bit
    thank you,

  • Memory leak found in flash player active-x 'CallFunction' method.

    Hello,
    I think I found a memory leak that results from  calling the flash player active-X object's method 'CallFunction'. Each time this  method is called it seems that memory is not properly freed.
    I'm attaching here a  simple program I've made with C# that uses the shockwave flash object to load a  SWF and continuously perform calls to it using the 'CallFunction'. It also  displays the process memory so you can see how it's being increased after some  time running.
    In the zip file, under the bin/release directory, you'll find the  compiled executable and both the test SWF (CallFunctionTest.swf) and its source (AS3 file) which is  just a dummy Sprite that exposes a callable method using the ExternalInterface.  The SWF has been compiled using Flex compiler (Version 3.3.0 build 4852).
    The  leak may become more visible after some hours running. Also, it's interesting to  note that even by reloading the SWF without closing the application (by stopping  and restarting the stress in my test application) the memory is not freed.
    As a reference, in my  computer (Intel Dual core E2180 @ 2Ghz) the test application's virtual memory  (VM64) increased from 192MB to 480MB in 4 hours. In Windows XP 32-bit when this value reaches 2GB the process runs out of memory and the application crashes.
    Does anyone experienced the same problem?
    I have Flash Player version 10,0,32,18 installed.
    Thanks,
    Joan

    Hi,
    I found this problem recently.
    I embedded Flash in my Visual C++ project through ActiveX, and intensively call
    ShockwaveFlashObjects::IShockwaveFlash::CallFunction().
    It seems that every time I invoke this function, the memory usage of my program increase about 8kB, and never goes back again. I think this is caused by the internal memory leak in Flash.
    Does adobe have any plan to fix this issue?
    Alvin. C. Chung

  • Huge Memory Leak - Simple To Reproduce

    I have an application that updates the display every so often using a timer, and as I run the application it comsumes increasingly more memory. After some extensive effort I narrowed it down to a very simple scenario:
    The code below creates a 40x30 matrix of objects that extend UIComponent (the same problem exists if I extend Sprite). A timer fires every 3 seconds and repaints each object with a random color on updateDisplayList(). Running this (whether from Flex IDE or swf) produces an infinitely increasing memory leak, even though no new memory should be allocated on each timer event. I see an increase of roughly .5MB to 1MB with each call. Calling gc() explicitly (which I know I shouldn't) doesn't help. I'm using Flex Builder 3.
    What am I missing? Is this a known bug? Any comment would be greatly appreciated.
    <?xml version="1.0"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" applicationComplete="startUp();" horizontalAlign="left">
        <mx:Script>
            <![CDATA[
             private var _myUIObjects:Array = new Array();
                private var _timer:Timer = new Timer(3000);
                private function startUp():void
                 var myUIObject:MyUIObject;
                 for (var i:int = 0; i < 1200; i++) {
                  myUIObject = new MyUIObject();
                  _myUIObjects.push(myUIObject);
                  canvas.addChild(myUIObject);
                 for (var iRow:int = 0; iRow < 30; iRow++) {
                  for (var iCol:int = 0; iCol < 40; iCol++) {
                   myUIObject = _myUIObjects[iRow * 40 + iCol];
                   myUIObject.x = iCol * 18;
                   myUIObject.y = iRow * 18;
                   myUIObject.width = 15;
                   myUIObject.height = 15;
                  _timer.addEventListener(TimerEvent.TIMER, handle_timer);
                  _timer.start();
                private function handle_timer(event:Event):void
                 for (var i:int = 0; i < 1200; i++) {
                  MyUIObject(_myUIObjects[i]).invalidateDisplayList();
            ]]>
        </mx:Script>
        <mx:Canvas id="canvas" width="1000" height="1000"/>
    </mx:Application>
    package
    import mx.core.UIComponent;
    public class MyUIObject extends UIComponent
      protected override function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
       this.graphics.beginFill(Math.random() * 500000);
       this.graphics.drawRect(0,0,15,15);

    You are missing a call to graphics.clear().  Your code is actually adding
    another fill on top of previously existing fills.

  • MethodQueueElement Memory Leak....what to do?

    I have a memory leak, all the users testing my Flex/AIR application are saying that after running my app for a while the whole computer completely starts slowing down. So I think this must be a memory link. I ran my app in the profiler, the only thing that seems to have a significant amount of memory is MethodQueueElement which seems like instances of this class just keep building up and never going away.
    I couldn't find any info at all about this class, after researching myself I have found it to be a class defined inside the UIComponent class, which is used for storing methods to be called later. Thats about all I know though.
    I have no idea how so many instances can be pilling up, I am creating new components all the time but always cleaning them out of memory, what can I do about this?
    Thanks!!

    Which column shows the queue elements building up?
    Both Cumulative Instances, and Instances
    Its possible I am reading it wrong, I do not have much experience with profiling.
    After I turned off the filters, I noticed 3 other classes that are causing a lot of memory.
    BitmapData 165 instances 578784 memory (but the only bitmaps I am using are for MenuItem icons and system tray icon)
    DataGridItemRenderer 308 instances 468160 memory
    UITextField 320 instances 462016 memory
    I only actually use couple of these components, they each are in a class that extends window, when the window closes and opens I create a NEW window, and close the previous one and set it to null, are these windows staying in memory maybe? should I not create a new window and just keep reopening the same window?
    Thanks.

  • APEX 4.1.1 Memory Leak in IE7

    Hi,
    We busy upgrading our apex and db from 3.0/10G to 4.1.1/11.2G and notice that there appears to be a memory leak when using APEX. At one stage we have had IE7 using over a gig of memory.
    When you load or refresh your page IE7 seems to grab on average 2-5MB of memory for each page load. At first we thought it may have been our apps or setup but this also happens when we go to app 4550 page 1 on apex.oracle.com.
    How to replicate:
    Open task manager to view the Memory Usage.
    Using IE7
    1. Go to http://apex.oracle.com/pls/apex/f?p=4550:1
    2. Go back to Task Manager and note the readings once the CPU Usage for iexplore.exe has stablised to 0.
    3. go back to IE7 and press F5
    4. Repeat steps 2-3 and you will see the Memory usage increases.
    We think this maybe due to a few jQuery UI memory leaks within IE7 and thought this bug ticket maybe of interest http://bugs.jqueryui.com/ticket/7666 (Slightly different versions but similiar experiences)
    Could someone else confirm that they also experience the increasing or have had similiar problems and managed to resolve it?
    TBH, it wouldn't be an issue to use another browser like Firefox to access the builder but this also affects the applications if they include APEX standard Javascript and CSS.
    Thanking you in advance.
    Alistair
    Edited by: Alistair Laing on Jun 16, 2012 2:32 PM
    Added Tags

    Alistair Laing wrote:
    Hi,
    We busy upgrading our apex and db from 3.0/10G to 4.1.1/11.2G and notice that there appears to be a memory leak when using APEX. At one stage we have had IE7 using over a gig of memory.
    When you load or refresh your page IE7 seems to grab on average 2-5MB of memory for each page load. At first we thought it may have been our apps or setup but this also happens when we go to app 4550 page 1 on apex.oracle.com.
    How to replicate:
    Open task manager to view the Memory Usage.
    Using IE7
    1. Go to http://apex.oracle.com/pls/apex/f?p=4550:1
    2. Go back to Task Manager and note the readings once the CPU Usage for iexplore.exe has stablised to 0.
    3. go back to IE7 and press F5
    4. Repeat steps 2-3 and you will see the Memory usage increases.
    We think this maybe due to a few jQuery UI memory leaks within IE7 and thought this bug ticket maybe of interest http://bugs.jqueryui.com/ticket/7666 (Slightly different versions but similiar experiences)
    Could someone else confirm that they also experience the increasing or have had similiar problems and managed to resolve it?Anecdotally, yes. Don't have exact steps for replication or precise numbers, but I have noticed this in passing. On the junk that my client considers a PC suitable for web development the typical IE7 memory footprint with the APEX 3.0 builder and several other tabs running is about 52MB. Add APEX 4.1.1 and it climbs constantly until I have to pull the plug when it gets north of 150MB as the PC can't take it.
    As well that I also have Firefox and 4.1.1 is still experimental at that site...
    At the moment I don't have to resolve it and if I did the only option I'd propose is the replacement of IE7.
    VC wrote:
    Look at this http://www.bbc.co.uk/news/technology-18440979
    Alistair Laing wrote:lol @ VC - I dont shop online at work :-D
    I saw that eariler this week. I do agree with the concept though.So take appropriate action: charge extra for IE7 support.
    The amount of work and effort involved in making our website look normal on IE7 equalled the combined time of designing for Chrome, Safari and Firefox.Is entirely accurate. If it's stated as a requirement, itemise it as an extra on the quote.
    Educate management and bean counters: show them the one line of standards-compliant CSS that's all that is necessary in Safari, Chrome, Firefox and Opera (and just possibly in IE8/9/10), how it isn't supported in IE7, and the tortuous hacks and workarounds that are required to get something equivalent working there.

  • DataSocket memory leak problem (2VO0SF00) -- more info?

    When upgrading to LabVIEW 8.5 recently, I noticed the following known issue in the readme file:
    "ID: 2VO0SF00
    DataSocket/OPC Leaks Memory using ActiveX VIs to perform open-write-close repeatedly
    If you call the DataSocket Open, DataSocket Write, and DataSocket Close functions in succession repeatedly, LabVIEW leaks memory. Workaround — To correct this problem, call the DataSocket Open function once, use the DataSocket Write function to write multiple times, and then use the DataSocket Close function."
    Looking back, I think this problem may have been present in previous LabVIEW releases as well, and might be giving rise to a problem that's been dogging me for quite some time (see my thread, "Error 66 with DataSockets", http://forums.ni.com/ni/board/message?board.id=170&thread.id=187206), in addition to general slow/glitchy behaviour when my VI's have been running continuously for a long time. But in order to determine whether or not this issue affects me, and how I should go about fixing it in the context of my own programs, I need a bit more information about the nature of the issue itself and the inner workings of the DataSocket VI's. Any help or insight the community can provide into this would be greatly appreciated!
    Here are my questions:
    It is my understanding from the "known issue" description above that the memory leak happens when you have a DS Open wired to a DS Write wired to a DS Close, all inside a loop (example 1), and that the suggested workaround would be to move the DS Open and DS Close functions out of the loop on opposite sides, wired to the DS Write which remains inside the loop (example 2). Is this correct?
    Does this leak also happen when performing DS open-read-close's repeatedly (example 3)?
    What happens when a DS Write (or DS Read) is called without a corresponding DS Open and DS Close (examples 4a and 4b)? Does it implicitly do a DS open before doing the write operation and a DS close afterwards? What I'm getting at is this: would having an isolated DS Write (or DS Read) inside a loop, not connected to any DS Open or DS Close functions at all, cause this same memory leak?
    If one computer is running the DS server and a second computer is running the VI with the repeated open-write-close's, on which computer does the memory leak occur?
    In my question #1 workaround (example 2), the DS Open and DS Close outside the loop are routed through a shift register and in to and out of the DS Write inside the loop. If the DS connection id goes into the DS Write "connection in" and then splits and goes around the DS Write and out to the DS Close, without coming out of the DS Write "connection out" (example 5), will the memory leak still be avoided? I.e. if the DS Write function doesn't have anything connected to its "connection out", will it try to do an implicit DS Close?
    If the VI causing the memory leak is stopped, but LabVIEW stays running, will the leaked memory be reclaimed? What if the VI is closed? What if all of LabVIEW is closed?
    FYI, in the examples above "x1a" is a statically-defined DataSocket on the DS server running on the computer Max, to which the computer running the example VI's has read/write access. My actual application has numerous VI's and hundreds of DataSocket items, many of which are written to / read from every 50-100 ms in the style of examples 4a and 4b.
    Does anyone have any idea about this stuff?
    Thanks in advance,
    Patrick
    Attachments:
    examples_jpg1.zip ‏63 KB
    examples_vi1.zip ‏40 KB

    Hi Meghan,
    Yes, some of the larger VIs in my application do write to / read from several hundred DataSockets, so it's not feasible to use shift registers for each one individually, and hence why I'm passing the references into an array, etc.
    Your Alternate Solution 2 is more along the lines of something that would work for me. However, my actual code has a lot of nested loops, sequences and DataSocket items which are not all written to in the same frame, so this solution would still be difficult to implement: it would be cumbersome to unpack the entire 500-element reference id array and build a new one (maintaining the positions and values of the unaffected elements) every time I write to some small subset of the DataSockets.
    I think I have a solution which solves the problem and is also scalable to the size of my application -- I've attached it as Example 7. Do you think this will avoid the memory leak? It's the same as your Alternate Solution 2, except that instead of building a new array out of the DS Write reference outs, each reference out replaces the appropriate element of the original array.
    If I understand you correctly, in order to avoid implicit reference opens and closes, a DS Write needs to have both it's reference in and reference out wired to something. Thus, even though my Example 7 replaces an element of the array with an identical value, and therefore doesn't actually change the array (which would be a silly thing to do normally), the DS Writes have their reference outs wired to something, and eventually in a convoluted way to a DS Close, so it should avoid the memory leak.
    Just out of curiosity (I don't think anything like this would apply to my application or any fixes I implement), when would the implicit reference close happen in the attached Example 8? The DS Write has its reference in and reference out both connected to temporally "adjacent" DS Writes via the shift register, so perhaps it wouldn't try to close the reference on each loop iteration? Or would it look into the future and see that there is no DS Close and decide to implicitly do that itself? Or maybe only the DS Write on the last loop iteration does this?
    Thanks for bearing with me through this,
    Patrick
    Attachments:
    example73.JPG ‏40 KB
    example83.JPG ‏14 KB

  • How to configure license file for Memory Leak tool and WL Server 9.2?

    (I posted to general JRockit forum before realizing existence of this forum which is probably more applicable.)
    Here's our problem:
    Running latest version of WL 9.2 MP3 and JRockit Mission Control 3.0.1
    Able to run Mission Control, and connect to the WL Server and to run View Console with no problems.
    I can't get Memory Leak tool to run because it complains about needing a license file.
    First I tried with off the shelf WL 9.2 MP3.
    Get error:
    A license for Memory Leak Detector could not be found on the JRockit at (1.5) weblogic.Server (192).
    Error: Can not find component Memory Leak Detector for JRockit * in the license file. Please check http://www.jrockit.com/license for license updates.
    So I downloaded license file from JRockit download site - wls92.zip. It contains several files, but no clear instructions on what to do with these files. I copied one of these files "LIC-WLSP92.txt" to my JRockit home as C:\bea\JROCKI~1\jre\license.bea
    Tried again. Restarted WL server. Restarted JRockit Mission Control.
    Get error: A license for Memory Leak Detector could not be found on the JRockit at (1.5) weblogic.Server (3052).
    The license file does not exist at: C:\bea\JROCKI~1\jre\license.bea
    Any advise on how to install license or who to contact for help?

    Installed Mission Control 3.0.3.
    Got following message when I attempted to run Memory Leak:
    A license for Memory Leak Detector could not be found on the JRockit at (1.5) weblogic.Server (192).
    Error: Can not find component Memory Leak Detector for JRockit * in the license file.
    Please check http://www.jrockit.com/license for license updates.
    I believe that we're using the latest downloads of WebLogic 9.2.x and JRockit.
    WebLogic is running using 9.2.3 and JRockit build R27.4.0-90_CR358515-94243-1.5.0_12-20080118-1154-windows-ia2
    Contents of C:\bea\jrockit_150_12\jre\license.bea:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <bea-licenses>
    <license-group format="1.0" product="JRockit" release="*">
    </license-group>
    </bea-licenses>
    Could WebLogic be misconfigured?
    Any diagnostics to help figure out the licensing?
    Any other ideas?

  • JBoss EAP 6 On JRockit - Memory Leak

    hello team.
    I have memory leak problem on jboss and jrockit.
    My Environment :
    1. OS :          
    CentOS release 6.4 (Final)
    2. JRockit :     
    java version "1.6.0_45"
         Java(TM) SE Runtime Environment (build 1.6.0_45-b06)
         Oracle JRockit(R) (build R28.2.7-7-155314-1.6.0_45-20130329-0641-linux-x86_64, compiled mode)
    3. Application Server:
    JBoss EAP 6.2.0.GA
    4. Application
    Large EJB Application (100 and more EJB Beans (Stateless, Stateful,  MDB, Timers and so on)
    Everything works fine on older application server versions (4.3 , 4.2)
    But now I have Problem
    Of course I know that problem is new version - and i have discussion on JBoss forums.
    but guys I have question about jrockit with you:
    What is the option "Other" in memory ??
    [jboss@jboss-new bin]$ jrcmd 17114  print_memusage
    17114:
    Total mapped                       8457864KB           (reserved=2983100KB)
    -              Java heap              3145728KB           (reserved=0KB)
    -              GC tables            105232KB         
    -          Thread stacks       46412KB           (#threads=138)
    -          Compiled code       1048576KB           (used=12257KB)
    -               Internal                   1480KB         
    -                     OS       170324KB         
    -                  Other       3639056KB         
    -            Classblocks         10496KB           (malloced=9631KB #28393)
    -        Java class data       289536KB           (malloced=192391KB #133697 in 28393 classes)
    - Native memory tracking     1024KB           (malloced=294KB #10)
    [jboss@jboss-new bin]$
    This size increases every time - and took entire amount of RAM.
    Thank in Advance.
    Regards,
    Paata Lominadze

    Not sure what the 'other' is, but it is probably best shown by using an example. By using displayMap we can display a memory map of various JVM subsystems and libraries that are loaded, including third-party libraries.
    ./jrcmd 4523 print_memusage displayMap
    Total mapped                  3984796KB           (reserved=2978740KB)
    -              Java heap       524288KB           (reserved=0KB)
    -              GC tables        17548KB         
    -          Thread stacks        20276KB           (#threads=39)
    -          Compiled code      1048576KB           (used=14224KB)
    -               Internal         1672KB         
    -                     OS       146924KB         
    -                  Other      2092648KB         
    -            Classblocks         7424KB           (malloced=7381KB #20064)
    -        Java class data       124416KB           (malloced=124411KB #91048 in 20064 classes)
    - Native memory tracking         1024KB           (malloced=118KB #10)
    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
        OS                          *java    r x 0x0000000000400000.(     76KB)
        OS                          *java    rw  0x0000000000612000.(      4KB)
        OS                        *[heap]    rw  0x00000000007c1000.(    132KB)
       INT                           Poll    r   0x000000007fffe000 (      4KB)
       INT                         Membar    rw  0x000000007ffff000.(      4KB)
       MSP              Classblocks (1/2)    rw  0x00000000df8c0000 (   6912KB)
       MSP              Classblocks (2/2)    rw  0x00000000dff80000 (    512KB)
      HEAP                      Java heap    rw  0x00000000e0000000.( 524288KB)
        OS                    *ld-2.12.so    r x 0x0000003664400000.(    128KB)
        OS                    *ld-2.12.so    r   0x000000366461f000 (      4KB)
        OS                    *ld-2.12.so    rw  0x0000003664620000 (      4KB)
        OS                   **ld-2.12.so    rw  0x0000003664621000.(      4KB)
       OS           *gconv-modules.cache    r   0x00007f8f2e4a0000 (     28KB)
    THREAD                     Stack 4630    rwx 0x00007f8f2e4a7000 (      8KB)
    THREAD                     Stack 4630        0x00007f8f2e4a9000 (     12KB)
    THREAD                     Stack 4630    rwx 0x00007f8f2e4ac000 (    244KB)
       MSP         Java class data (5/37)    rw  0x00007f8f2e4e9000 (  14336KB)
       MSP         Java class data (9/37)    rw  0x00007f8f2fa40000 (   5888KB)
                                             rw  0x00007f8f30000000 (    188KB)
                                                 0x00007f8f3002f000 (  65348KB)
                                             rw  0x00007f8f34000000 (    132KB)
                                                 0x00007f8f34021000 (  65404KB)
                                             rw  0x00007f8f38000000 (    412KB)
                                                 0x00007f8f38067000.(  65124KB)
       MSP        Java class data (10/37)    rw  0x00007f8f3c034000 (  34048KB)
                                             rw  0x00007f8f3e174000 (   8200KB)
       MSP        Java class data (11/37)    rw  0x00007f8f3e976000 (    256KB)
        OS                     *libhpi.so    rw  0x00007f8fb37fc000 (      8KB)
        OS                    **libhpi.so    rw  0x00007f8fb37fe000 (      4KB)
      CODE                  Compiled code    rwx 0x00007f8fb37ff000 (     64KB)
      CODE                  Compiled code    rwx 0x00007f8fb380f000 (    128KB)
      CODE                  Compiled code    rwx 0x00007f8fb382f000 (     64KB)
      MSP        Java class data (37/37)    rw  0x00007f8ff83a1000 (    512KB)
        GC Modified Union Set (committed)    rw  0x00007f8ff8421000 (    132KB)
        GC                     Card table    rw  0x00007f8ff8442000 (   1024KB)
        GC        Object bits (committed)    rw  0x00007f8ff8542000 (   8196KB)
    Here
    - thread is thread related (such as thread stacks)
    - int, internal use (such as pointer pages)
    - heap, chunk used by JRockit for the Java heap
    - os, mapped directly from the operating system, such as third party DLLs or shared objects
    - msp, memory space. a memory space is a native heap with a specific purpose, for example native memory allocation inside the JVM
    - gc, garbage collection related, for example live bits
    - code, compiled code
    The 'other' memory space looks to me (from the blank entries in the above print-out) like they are a memory pages to are still not used. When the JVM starts it mappes an amount of memory. To my knowledge JRockit uses mmap (mmap(2) - Linux manual page), which creates a new mapping in the virtual address space. JRockit reserves an amount of memory (Java Heap (heap where your object instances go) + its own runtime (all the others)).
    To see where the growth is in the various memory spaces, you can use 'print_memusage baseline', after which you can execute print_memusage again, for example,
    ./jrcmd 4523 print_memusage scale=M
    4523:
    Total mapped                     3896MB      +4MB (reserved=2905MB -3MB)
    -              Java heap          512MB           (reserved=0MB)
    -              GC tables           17MB         
    -          Thread stacks           19MB           (#threads=39)
    -          Compiled code         1024MB           (used=14MB +1MB)
    -               Internal            1MB         
    -                     OS          143MB         
    -                  Other         2043MB         
    -            Classblocks            7MB           (malloced=7MB #20596 +532)
    -        Java class data          126MB      +4MB (malloced=125MB +4MB #93640 +2592 in 20596 classes)
    - Native memory tracking            1MB           (malloced=0MB #20 +10)
    Note the additional column that prints out the difference in memory usage in relation to the baseline. You can also monitor native allocations by using trace_alloc_sites, memory allocations can then be displayed with different levels of detail using the level argument.
    ./jrcmd 4523 print_memusage trace_alloc_sites=true
    4523:
    Total mapped                  3989660KB   +4864KB (reserved=2974732KB -4008KB)
    -              Java heap       524288KB           (reserved=0KB)
    -              GC tables        17548KB         
    -          Thread stacks        20276KB           (#threads=39)
    -          Compiled code      1048576KB           (used=15265KB +1040KB)
    -               Internal         1672KB         
    -                     OS       146924KB         
    -                  Other      2092648KB         
    -            Classblocks         7680KB    +256KB (malloced=7669KB +287KB #20596 +532)
    -        Java class data       129024KB   +4608KB (malloced=128967KB +4555KB #93640 +2592 in 20596 classes)
    - Native memory tracking         1024KB           (malloced=236KB +118KB #20 +10)
    ./jrcmd 4523 print_memusage level=3
    4523:
    Total mapped                  3989660KB   +4864KB (reserved=2974732KB -4008KB)
    -              Java heap       524288KB           (reserved=0KB)
    -              GC tables        17548KB         
    -          Thread stacks        20276KB           (#threads=39)
    -          Compiled code      1048576KB           (used=15265KB +1040KB)
    -               Internal         1672KB         
    -                     OS       146924KB         
    -                  Other      2092648KB         
    -            Classblocks         7680KB    +256KB (malloced=2KB -7379KB #4 -20060) Not fully traced
    -        Java class data       129024KB   +4608KB (malloced=26KB -124385KB #16 -91032 in 20596 classes) Not fully traced.
    - Native memory tracking         1024KB           (malloced=118KB #10) Not fully traced.
         gather_memorymap_database                     memtrace.c: 206         91KB     +91KB (#1 +1)
               gather_memory_usage                  osal_mspace.c:5142          7KB      +7KB (#4 +4)
      msGatherMSpacesUsageDatabase                  osal_mspace.c:6128          2KB      +2KB (#1 +1)
      msGatherMSpacesUsageDatabase                  osal_mspace.c:6134         16KB     +16KB (#1 +1)
    Note this is more on the JVM level, in your case in might be beneficial to investigate what is happening on the java heap. By using print_object_summary you can get insight how memory on the heap is used on a per-class basis. To get to the bottom of where the memory leak is you can use the memory-leak-detector (an example of its use can be found here Middleware Snippets: Fast, Faster, JRockit). You can also obtain a heapdump that can be analyzed by using for example MAT (see for an example here Middleware Snippets: Visualizing Class Loading). To obtain a heapdump you can run the command, for example,
    [weblogic@machine1 bin]$ ./jrcmd 4523 runsystemgc full=true fullcompact=true
    4523:
    [weblogic@machine1 bin]$ ./jrcmd 4523 hprofdump filename=/home/weblogic/dump.hprof
    4523:
    Wrote dump to /home/weblogic/dump.hprof
    Note that this first issues a full GC by using the runsystemgc command.

Maybe you are looking for

  • In SharePoint sorting is not working in the list.

    Sorting is not working when i click on the list column, where the column filed is an people or Group datatype. Please help me out in this. Ramesh S

  • Auto-mapping across multiple domains

    I originally posted this in an O365 Exchange forum and was redirected here.  Any help is appreciated. Single E1/E3 O365 account with multiple domains having hosted email.  Automapping is working correctly only if the shared mailbox is from the first

  • UWL not getting refreshed automatically

    Hi, We have a requirement, where in the MSS UWL, we dont require all the 4 tabs (Alerts, Tasks, Notification, Tracking) in the worklist. We only want Tasks tab, which is possible through UWl configuration, which we have done. Now we have only 1 tab w

  • SAP fails to find uninstaller or uninstaller parameters are not passed

    We have a custom add-on , and we intend to deploy the add-on with professional quality. However I have a issue with the uninstaller area. Scenario 1; Installer name = AddOnInstaller.exe Uninstaller name = AddOnUnInstaller.exe I have created a proper

  • NTSC Lines

    When I watch NTSC mpeg2 movies on my MAC i am getting horrizontal lines through the picture. The Mpeg looks fine on a TV, but when watching it in DVDSP and on other computer monitors the lines appear. Can anybody tell me why and how to remove them?