Find out whether our application caused the memory leak

whether have the command to find out whether our application caused the memory leak !
We are using Jdev10g + BC4J + Struts + JSP to build our enterprise application,
but when the application running some days in our Application Server(RedHat AS3-86, with 4GB RAM), the memory consumed is serious ! we doubt and worry
about maybe our application suffer the memory leak problem, so we want to know have the command to find out whether our application caused the memory leak
issue and which program is the major murderer for memory.

The second scenario is, as we perform some deployment activity on 10g, the memory usage chart shows a sharp consumption of memory about 1.5GB .the loss memory almost be display in "other" legend chart !
Please give us some advice , thanks in advance

Similar Messages

  • Whether our application caused the memory leak

    whether have the command to find out whether our application caused the memory leak !
    We are using Jdev10g + JHeadstart(Release 9.0.5.1, BC4J + Struts + JSP) to build our enterprise application,
    but when the application running some days in our Application Server(RedHat AMD64, with 8GB RAM), the memory consumed was growth seriously in production environment (one OC4J instance will caused almost 2G memory ulilization after running 2 days) that is caused us to restart the instance each day ! we doubt and worry
    about maybe our application suffer the memory leak problem, so we want to know have the command to find out whether our application caused the memory leak
    issue and which program is the major murderer for memory.

    Ting,
    Unfortunately there is no 'command' that will show you the location of a memory leak. First I would scrutinizing your code for any obvious 'leaks'. Then, you should obtain some statistics about the usage of your system. One important aspect is how long a HttpSession usually lives. If you have thousands of users that stay online the entire day and never 'time out', and if you have users on the system 24 hours a day, then the sheer number of HttpSessions might be a problem.
    JHeadstart 9.0.x tends to have rather 'heavy' session objects. This can easily be solved by adding some actions to clear up DataObjects and DataObjectSets of previous 'Groups' when entering a new Group. A good place would be between the 'DynamicActionRouter' and the 'ActionRouters'. Just before entering the 'EmployeeActionRouter', you could remove all DataObjects and DataObjectSets that might be left on the Session by actions of the other ActionRouters.
    Also it would be interesting to see if the garbage collector can do its thing when the system is less busy. For instance, if your application has a smaller load during the weekend, what is the memory usage on Sunday at midnight compared to, say, Friday at noon. Has the memory load dropped consistently with the decreased number of online users, or does too much memory stay allocated? If so, then there's more going on than just HttpSession objects.
    If all this does not lead to a solution, I suggest using a profiling tool such as OptimizeIt to investigate the memory usage of the application in detail.
    Kind regards,
    Peter Ebell
    JHeadstart Team

  • I keep getting a "not enough memory"  comment on my computer.  Where can I look to find out what is taking up the memory while i'm working?

    I keep getting a "not enough memory"  comment on my computer.  Where can I look to find out what is taking up the memory while i'm working?

    Are you referring to the message that says your startup disk is full?  If so, you need to delete some files from the hard drive, or get a larger hard drive.  Moving some files to an external hard drive is a quick and easy solution.  Note that you should avoid the temptation to use various utilities to clean up your system or remove parts (like unused languages).  That will not free up much space and can easily result in damaging your system.

  • Is there a way to find out, whether the student or the full version is currently installed?

    Hi everyone!
    First of all: Merry Christmas!
    A longer text with some background information is following. My question will be at the bottom.
    My computer is a good boy and it didn't disappoint me for quite a while now.
    I had once installed the student version (german) of CS3 extended on this one.
    Then, after having removed the student version some time later when needed, I have re-installed the full version.
    This time, however, it was in english and it wasn't the extended version either.
    After the software has accepted my serial id, I was quite content. It felt much better in english and I was able to use photoshop to the fullest once again.
    Today, I have gotten my hands on the upgrade version to CS5 (again in english and not extended, but that's all I need).
    After the installation guide has told me, that there are no programmes installed which are compatible to the upgrade, I was confused.
    I have realised that my current CS3 version was still the extended one, even though it was in english and it wasn't the student version either (at least, that's what I believe, because there were no "activate"/"deactivate" buttons in the help menu where it used to be in the german student version before).
    So while doing an upgrade to CS5, I had to chose CS3 extended from the list and had to type in the old student's version serial number.
    Nothing else worked, even though I've tried to chose the CS3 version in combination with the other serial number, which belong to the full version both.
    Now to my question:
    Is there a way to find out, whether the student or the full version is currently installed?
    (Other than looking at the box of course, that would be quite trivial. I am worried if the installation guide hasn't removed all components thoroughly.)
    Thanks in advance,
    Happy holidays,
    Jeff

    Thanks for the reply!
    That's what I thought as well. However, that wasn't the case. Whether it's the educational or the full version, both splash screens looked the same.
    At least for the CS3 version.I know how I was quite confused about that in the past when I'd realised that.
    The CS5 splash screen didn't say anything about a student version, but I was able to deactivate the application. I thought this was possible for the student version only.
    I've tried using the adobe clean program like suggested, but that didn't work either. The installation guide of CS5 still didn't bother asking for an older version.
    I.e.: It still used the educational serial number from before.
    After reinstalling windows on my pc, the installation guide finally wanted to know about my CS3 again.
    However, it told me, that the serial number of the full version in combination with CS3 is not valid. Just like it did before.
    Maybe it's because the full version was made in the USA and the CS5 upgrade version was made in Austria - Ireland?
    That would be really frustrating.

  • How to find out whether the transaction logs are being truncated or not

    Hi,
    We are using Veritas Backup tool for Backups and restores on our MS SQL 2000.
    One of our Veritas Tech has disabled the Truncation of Transaction Log Backup using the Job setup in Veritas. We want to confirm whether the Truncation is happening or not. I don't see any difference in the Transaction Log file size.
    How to find out whether truncation is active or not?
    Thanks
    Vijay

    Hello Vijay,
    On MSSQL truncation of transaction log does not shrink the size of the transaction log. It simply removes the content within the transaction log and writes it to the backup.
    Meaning the free percentage within the transaction log will increase.
    If you want to Resize the transaction log size, you need to do something else.
    The shrinking procedure is given here:
    http://support.microsoft.com/kb/907511
    Regards,
    Siddhesh

  • How can I find out whether I will be charged for texting somebody who lives in Canada and I live in the US?

    How can I find out whether I will be charged for texting somebody who lives in Canada and I live in the US?

    If you are on a More Everything plan, International texting is included at no additional charge.
    If you are on any other plan, there will be a charge.
    From Verizon FAQ
    If you have The MORE Everything Plan, unlimited international text and multimedia messaging is included for no additional cost.
    For all other plans, you can find pricing, dialing and coverage information for a specific country on our International Messagingpage.

  • How to quickly and accurately find out the memory leak points?

    Hi, all.I have added a option -XX:+HeapDumpOnOutOfMemoryError in the bootstarp script of my application.
    The application has been run for one day and the OOM error was thrown again. So I downloaded the hprof file and used MAT to parse it.
    But after seeing the leak suspects I still have no idea what's wrong and what's the possible leak point.
    Can anyone shard some experience how to find out the memory leak points quickly and accurately?
    It would be more nice if you can take a loot at the leak supects.
    Thanks,
    SuoNayi

    Furthermore, when I try to dump the thread stack, I can see the following errors/warns:
    Thread 12135: (state = BLOCKED)
    - java.lang.Object.wait(long) @bci=0 (Compiled frame; information may be imprecise)
    Error occurred during stack walking:
    sun.jvm.hotspot.utilities.AssertionFailure: Only used on C2 x86
         at sun.jvm.hotspot.utilities.Assert.that(Assert.java:15)
         at sun.jvm.hotspot.code.CodeBlob.getLinkOffset(CodeBlob.java:193)
         at sun.jvm.hotspot.runtime.amd64.AMD64Frame.senderForCompiledFrame(AMD64Frame.java:297)
         at sun.jvm.hotspot.runtime.amd64.AMD64Frame.sender(AMD64Frame.java:213)
         at sun.jvm.hotspot.runtime.Frame.sender(Frame.java:184)
         at sun.jvm.hotspot.runtime.Frame.realSender(Frame.java:189)
         at sun.jvm.hotspot.runtime.VFrame.sender(VFrame.java:102)
         at sun.jvm.hotspot.runtime.VFrame.javaSender(VFrame.java:129)
         at sun.jvm.hotspot.tools.StackTrace.run(StackTrace.java:50)
         at sun.jvm.hotspot.tools.JStack.run(JStack.java:41)
         at sun.jvm.hotspot.tools.Tool.start(Tool.java:204)
         at sun.jvm.hotspot.tools.JStack.main(JStack.java:58)

  • How to find out whether the system user is a vendor or a purchaser

    Hi,
    I am working in SRM 5.0. I have a requirement that some fields of Bid invitation can be visible by purchaser but not to bidder.
    How to find out whether the system user (user id though which system logged in) is a vendor or a purchaser. Kindly help me to resolve this issue.
    Sushmita Singh

    check his role.
    is surrogate bidding available for that bidder.
    via surrogate bid , purchaser can submit bid on behalf of the bidder.
    masa is correct
    pposa_bbp - search via user . so he might be  a purchaser.
    maintain business partner -supply your bidder bp number -edit
    go to bidder data .Under bidder data you must flag "PERMIT PROXY BIDDING"
    regards
    Muthu
    br
    muthu

  • Imp:How to find out whether client authentication Enabled on the Web Server

    Hi,
    I am trying to find out whether the Client Authentication Enabled on the Web Server or not.
    Reason for doing this, if we have two certificates in the key store which will authenticate the Web Server, JSSE Authentication will always take the first cert from the keystore. If the first Certificate is Expired, it will fail while doing the HandShake.
    So if I can find out whether Client Authentication is Enabled or not, then I can prompt a dialog for the user to select the Certificate for the Hand Shake.
    Thanks in advance for any Response,
    Krish.

    AUTH_TYPE will tell you only if it SSL or not. It won't say whether the Client Certificates Required for SSL Connection.
    Also, AUTH_TYPE is not part of the Http Headers.
    If there is any other solution, greatly appreciated.
    Thanks
    Krish.

  • When using tethered capture I often get this notification "The metadata for this photo has been changed by both Lightroom and another application". This slows or stalls the loading of incoming photos. How do I find out which other application is changing

    When using tethered capture I often get this notification "The metadata for this photo has been changed by both Lightroom and another application". This slows or stalls the loading of incoming photos. How do I find out which other application is changing the metadata and stop it?

    Thanks Sean,
    I've had a look at the TC settings dialog and tried to keep it as simple as possible. I also had a copy of LR 4 on the hard drive so have trashed that also incase of any conflicts. LR seems to be running ok now but as said it's an intermittent problem.
    I also have a copy of Capture One on the hard drive so am going to uninstall that also in case it is trying to launch.

  • How to find out, whether win 2003 is sick ?

    Hello together,
    I am running some SAP NW 7.0  Application-Server (Java+Abap) on Windows Server 2003  64bit in front to a central instance on a host  IBM System i with DB2.
    I don't have much knowhow in Windows Servers and want to know, how can I find out whether the windows server is running good.
    On which values (perhaps Task Manager) should I keep an eye on?
    best regards
    Carsten Schulz

    HI,
    you can get all information i.e memory,cpu,hdd space by running st06 /st06n
    How to watch the net speed to the central instance?
    i can't get exactly what you want to know
    but you can perform developer trace on work process running on application server using sm50 -> process ->trace -> display file look for error.
    you get buffer related info. by running tcod -st02  if required you can change the relavant parameter in instance profile
    you can get memory consume by user tranasaction  by running sm04 ->goto->memory
    you can get responce time of application server by smlg -> goto -> load distribution
    regards,
    kaushal

  • How to find out whether it is shared Appl_top?

    How to find out whether it is shared Appl_top?

    Hi,
    In a Shared APPL_TOP installation, the APPL_TOP and the COMMON_TOP file systems are installed on a shared disk resource mounted to each node in the system. These nodes can be used to provide standard application tier services, such as Forms, Web, and Concurrent processing. Any changes made in the shared APPL_TOP file system are immediately visible on all nodes.
    Note that each node continues to have a separate Applications techstack installation.
    I have given the concept of shared Appl_TOP , so that you can understand "How to find out whether it is shared Apll_TOP".
    Hope, this will help you.

  • How to find out web-inf path from the physical drive?

    How to find out web-inf path from the physical drive?
    I have some user profiles in web-inf directory.SO I want to know the path from root directory like
    d:/program files/allaire/jrun/appname/web-inf/profiles/username like that.
    Presently I am able to get the path upto the application directory and from that I am concatinationg web-inf/profiles/username .
    But it is giving problems when it is deployed under unix or linux.Because web-inf there it treats as WEB_INF
    SO I want to get the path of web-inf directory with out hard coding.
    Thanku

    String path = application.getRealPath("/WEB-INF/profiles/username");
    Note sure why you need this, but you don't need the real path to read the file - you can get an InputStream using the relative path. See ServletContext getResource() and getResourceAsStream().

  • How do I find out what "Other" is, in the "About this Mac", storage details bar graph?

    My new Mac Book Pro with 250 GB Flash Storage is already full with only adding a few apps. I purchased the new Final Cut Pro X, but store all video data on an external drive. Whats up? Why is 146 GB used up with "Other"? What is "Other!?" How can I find out the details of what's in other, and get rid of what I don't want or use?

    First, empty the Trash if you haven't already done so. If you use iPhoto, empty its internal Trash as well:
    iPhoto ▹ Empty Trash
    Then reboot. That will temporarily free up some space.
    According to Apple documentation, you need at least 9 GB of available space on the startup volume (as shown in the Finder Info window) for normal operation. You also need enough space left over to allow for growth of your data. There is little or no performance advantage to having more available space than the minimum Apple recommends. Available storage space that you'll never use is wasted space.
    If you're using Time Machine to back up a portable Mac, some of the available space will be used to make local snapshots, which are backup copies of files you've recently deleted. The space occupied by local snapshots is reported as available by the Finder, and should be considered as such. In the Storage display of System Information, local snapshots are shown as "Backups." The snapshots are automatically deleted when they expire or when free space falls below a certain level. You ordinarily don't need to, and should not, delete local snapshots yourself.
    To locate large files, you can use Spotlight. That method may not find large folders that contain a lot of small files.
    You can more effectively use a tool such as OmniDiskSweeper (ODS) to explore your volume and find out what's taking up the space. You can also delete files with it, but don't do that unless you're sure that you know what you're deleting and that all data is safely backed up. That means you have multiple backups, not just one.
    Deleting files inside an iPhoto or Aperture library will corrupt the library. Any changes to a photo library must be made from within the application that created it. The same goes for Mail files.
    Proceed further only if the problem isn't solved by the above steps.
    ODS can't see the whole filesystem when you run it just by double-clicking; it only sees files that you have permission to read. To see everything, you have to run it as root.
    Back up all data now.
    Install ODS in the Applications folder as usual. Quit it if it's running.
    Triple-click the line of text below to select it, then copy the selected text to the Clipboard (command-C):sudo /Applications/OmniDiskSweeper.app/Contents/MacOS/OmniDiskSweeper
    Launch the Terminal application in any of the following ways:
    ☞ Enter the first few letters of its name into a Spotlight search. Select it in the results (it should be at the top.)
    ☞ In the Finder, select Go ▹ Utilities from the menu bar, or press the key combination shift-command-U. The application is in the folder that opens.
    ☞ Open LaunchPad. Click Utilities, then Terminal in the icon grid.
    Paste into the Terminal window (command-V). You'll be prompted for your login password, which won't be displayed when you type it. You may get a one-time warning not to screw up. If you see a message that your username "is not in the sudoers file," then you're not logged in as an administrator.
    The application window will open, eventually showing all files in all folders. It may take some minutes for ODS to list all the files.
    I don't recommend that you make a habit of doing this. Don't delete anything while running ODS as root. If something needs to be deleted, make sure you know what it is and how it got there, and then delete it by other, safer, means. When in doubt, leave it alone or ask for guidance.
    When you're done with ODS, quit it and also quit Terminal.

  • How to find out which objects are at the end of the datafiles

    My Scenario is having a tablespace of 65G but the data is 5G and that is at the end of datafile for that we are not able to resize the datafile our though is to find out what are the objects at that end of datafiles and will either alter move <owner.tablename> move or alter index <owner.index> rebuld online.
    For that how to find out which objects are at the end of the datafiles.

    >
    My Scenario is having a tablespace of 65G but the data is 5G and that is at the end of datafile for that we are not able to resize the datafile our though is to find out what are the objects at that end of datafiles and will either alter move <owner.tablename> move or alter index <owner.index> rebuld online.
    For that how to find out which objects are at the end of the datafiles.
    >
    You may want to copy this and add it to your toolkit
    See 'What's at the End of the File?' in this Tom Kyte article from the Sept 2004 Oracle Magazine
    http://www.oracle.com/technetwork/issue-archive/o54asktom-086284.html
    And this AskTom blog shows you how to generate a script containing ALTER statements toresize your datafiles to the smallest possible. You can 'pick and choose' from the ALTER statements to do what you want.
    Then of course, you can use techniques from this article by Oracle ACE, and noted author, Jonathan Lewis
    http://jonathanlewis.wordpress.com/2010/02/06/shrink-tablespace/

Maybe you are looking for