Out of heap space erorr

Hi guys,
My app is mainly a wordlist crunching program. Its a swing app.
There are two flat files about 10 MB each. The first part of the app is supposed to read all that data from the two sperate flatfiles and put them into two seperate Hashtables.
The first first file get loaded fine into the Hashtable. But during the loading of the second file, the program crashes giving a "out of Heap space" error.
Is this due to a memory leak? ( But thats not supposed to happen in Java) or the JVM with its default memory allocation cannot support processing such huge flat files?
I dont want to use the -Xmx option cuz thats what I am gonna use as a programmer. But when i deploy the application. nobody is going to use this option to run the program each time.
What do you think guys? How can this be solved?
Message was edited by:
arijit_datta

Hi , all objects in java live on Heap..As objects grow on the heap ,available space on heap will be decreased , In such cases you will get that error..
to solve the problem,unreachable objects needs to be deleted from the heap..
I hope the following can solve yr problem.
1) make null all unuseful object references ( all unused object refrences related to your first file..
obj=null;
2)Call System.gc() method before loading your second file or at end of the first file.
Consider this Example
import java.util.Date;
public class CheckGC {
public static void main(String [] args) {
Runtime rt = Runtime.getRuntime();
System.out.println("Total JVM memory: " + rt.totalMemory());
System.out.println("Before Memory = " + rt.freeMemory());
Date d = null;
for(int i = 0;i<10000;i++) {
d = new Date();
d = null;
System.out.println("After Memory = " + rt.freeMemory());
rt.gc(); // an alternate to System.gc()
System.out.println("After GC Memory = " + rt.freeMemory());
Thanks
RajaSekhar K

Similar Messages

  • Consequences of out of heap space errors

    Hello,
    I'm curious what are the consequences of an out of heap space error. If my application is running and I get a heap space error does this corrupt my application? If I had some variable x = 123 can a out of heap space error corrupt x to make it -123?
    Thanks

    Hello,
    I'm curious what are the consequences of an out of
    heap space error. If my application is running and I
    get a heap space error does this corrupt my
    application? If I had some variable x = 123 can a
    out of heap space error corrupt x to make it -123?
    No.
    Corrupt is to harsh of a word.
    However where you run out of space can make your application unusable. For example you might run out of space when loading a new class. Or when creating a new thread. Does your code account for that? If not then that could be a problem.
    On the other hand if you are creating a large data structure and at some point you run out of memory then if you just go back to where you started the creation and remove all references then it shouldn't impact your application.

  • JDeveloper running out of Heap Space using SVN

    JDeveloper: 11.1.1.1.0
    SVN : 1.6.3
    When checking out from SVN , JDeveloper runs out of memory.
    I have changed the startup target of JDeveloper to include the following : -Xmn512M -Xms2048M -Xmx2048M .. but this has not helped.
    What should I do?
    Howie

    Alternatively, you can set it in jdev.conf as well.
    -Arun

  • 30EA1: 100% CPU until out of Java Heap space

    Hi,
    Just my initial 20 minute eval of the new 3.0, and already had 2 lockups on my XP and 10g DB; 1 on opening the Tasks view (just keeps looking for application tasks, with progress bar), the other on opening the Query Builder tab (keeps Loading available objects and relationships, with hourglass). No exceptions in the debug console until running out of heap space.
    Hope these get reviewed and debugged before production,
    K.

    After about 10 minutes, it stopped, so I switched from from Current Project to Current Application and back again to get going again.
    Now memory use just continued growing, until after about 10 minutes, my main sqldev window just disappeared. I was just in time to capture a dump before the console also disappeared on its own:
    Full thread dump Java HotSpot(TM) Client VM (14.2-b01 mixed mode, sharing):
    "Thread-4" prio=6 tid=0x0632f400 nid=0x1570 runnable [0x0e9bf000]
       java.lang.Thread.State: RUNNABLE
            at sun.reflect.Reflection.getClassAccessFlags(Native Method)
            at sun.reflect.Reflection.quickCheckMemberAccess(Reflection.java:51)
            at java.lang.reflect.Method.invoke(Method.java:576)
            at oracle.javatools.marshal.xml.PropertyInfo.getPropertyValue(PropertyInfo.java:128)
            at oracle.ide.marshal.xml.Object2Dom.toElement(Object2Dom.java:772)
            at oracle.ide.marshal.xml.Object2Dom.toElement(Object2Dom.java:433)
            at oracle.ide.marshal.xml.List2Dom.toElement(List2Dom.java:48)
            at oracle.ide.marshal.xml.Object2Dom.toElement(Object2Dom.java:760)
            at oracle.ide.marshal.xml.Object2Dom.toElement(Object2Dom.java:433)
            at oracle.ide.marshal.xml.Map2Dom.getValueElement(Map2Dom.java:215)
            at oracle.ide.marshal.xml.Map2Dom.toElement(Map2Dom.java:84)
            at oracle.ide.marshal.xml.Object2Dom.toElement(Object2Dom.java:760)
            at oracle.ide.marshal.xml.Object2Dom.toElement(Object2Dom.java:433)
            at oracle.ide.marshal.xml.Object2Dom.toElement(Object2Dom.java:794)
            at oracle.ide.marshal.xml.Object2Dom.toElement(Object2Dom.java:433)
            at oracle.ide.marshal.xml.Map2Dom.getValueElement(Map2Dom.java:215)
            at oracle.ide.marshal.xml.Map2Dom.toElement(Map2Dom.java:84)
            at oracle.ide.marshal.xml.Object2Dom.toElement(Object2Dom.java:760)
            at oracle.ide.marshal.xml.Object2Dom.toDocument(Object2Dom.java:209)
            at oracle.ide.marshal.xml.Object2Dom.toDocument(Object2Dom.java:158)
            at oracle.ide.marshal.xml.Object2Dom.toDocument(Object2Dom.java:148)
            at oracle.ide.config.DTCache.save(DTCache.java:252)
            at oracle.dbtools.raptor.config.NonUserConfigOptions.saveSettings(NonUserConfigOptions.java:25)
            at oracle.dbtools.raptor.config.NonUserConfigOptions.put(NonUserConfigOptions.java:29)
            at oracle.dbtools.raptor.config.NonUserConfigOptions.removeUserAgent(NonUserConfigOptions.java:52)
            at oracle.dbtools.migration.workbench.core.MigrationAddin.updateUserAgentString(MigrationAddin.java:1075)
            at oracle.dbtools.migration.workbench.core.MigrationAddin.access$000(MigrationAddin.java:111)
            at oracle.dbtools.migration.workbench.core.MigrationAddin$1.run(MigrationAddin.java:285)
    "SIGINT handler" daemon prio=10 tid=0x064d7400 nid=0x11c8 in Object.wait() [0x0612f000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            at java.lang.Thread.join(Thread.java:1143)
            - locked <0x177b00d8> (a oracle.dbtools.migration.workbench.core.MigrationAddin$1)
            at java.lang.Thread.join(Thread.java:1196)
            at java.lang.ApplicationShutdownHooks.runHooks(ApplicationShutdownHooks.java:79)
            at java.lang.ApplicationShutdownHooks$1.run(ApplicationShutdownHooks.java:24)
            at java.lang.Shutdown.runHooks(Shutdown.java:79)
            at java.lang.Shutdown.sequence(Shutdown.java:123)
            at java.lang.Shutdown.exit(Shutdown.java:168)
            - locked <0x2b7de638> (a java.lang.Class for java.lang.Shutdown)
            at java.lang.Terminator$1.handle(Terminator.java:35)
            at sun.misc.Signal$1.run(Signal.java:195)
            at java.lang.Thread.run(Thread.java:619)
    "RaptorTask: StatementRunner Task" prio=6 tid=0x06366000 nid=0xe88 waiting on condition [0x0597f000]
       java.lang.Thread.State: WAITING (parking)
            at sun.misc.Unsafe.park(Native Method)
            - parking to wait for  <0x17a5d908> (a java.util.concurrent.SynchronousQueue$TransferStack)
            at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
            at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:422)
            at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:323)
            at java.util.concurrent.SynchronousQueue.take(SynchronousQueue.java:857)
            at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
            at java.lang.Thread.run(Thread.java:619)
    "ToDoQueryTask" prio=6 tid=0x0644e000 nid=0x184 waiting on condition [0x05b7f000]
       java.lang.Thread.State: WAITING (parking)
            at sun.misc.Unsafe.park(Native Method)
            - parking to wait for  <0x1eaf25a0> (a java.util.concurrent.FutureTask$Sync)
            at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
            at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:747)
            at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:905)
            at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1217)
            at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:218)
            at java.util.concurrent.FutureTask.get(FutureTask.java:83)
            at oracle.ideimpl.index.task.BackgroundTaskImpl.get(BackgroundTaskImpl.java:44)
            at oracle.ideimpl.index.IndexImpl$IndexTask.get(IndexImpl.java:708)
            at oracle.jdevimpl.todo.ToDoManagerImpl$SearchForTagsTask.run(ToDoManagerImpl.java:2226)
            at java.lang.Thread.run(Thread.java:619)
    "file-table-thread-1" prio=6 tid=0x06478400 nid=0x1674 waiting on condition [0x0ecbf000]
       java.lang.Thread.State: RUNNABLE
            at java.util.Arrays.copyOf(Arrays.java:2882)
            at java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:100)
            at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:461)
            at java.lang.StringBuilder.append(StringBuilder.java:179)
            at oracle.ide.net.URLFactory.sanitizePath(URLFactory.java:710)
            at oracle.ide.net.URLFactory.newDirURL(URLFactory.java:496)
            at oracle.ide.net.URLFactory.newDirURL(URLFactory.java:518)
            at oracle.ide.net.FileURLFileSystemHelper.getParent(FileURLFileSystemHelper.java:353)
            at oracle.ide.net.URLFileSystemHelperDecorator.getParent(URLFileSystemHelperDecorator.java:164)
            at oracle.ide.net.URLFileSystemHelperDecorator.getParent(URLFileSystemHelperDecorator.java:164)
            at oracle.ide.net.VirtualFileSystemHelper.getActiveRoot(VirtualFileSystemHelper.java:2320)
            - locked <0x17601f50> (a java.util.HashMap)
            at oracle.ide.net.VirtualFileSystemHelper.findOrFetchDirEntry(VirtualFileSystemHelper.java:2036)
            at oracle.ide.net.VirtualFileSystemHelper.ls(VirtualFileSystemHelper.java:688)
            at oracle.ide.net.VirtualFileSystemHelper.ls(VirtualFileSystemHelper.java:675)
            at oracle.ide.net.URLFileSystemHelperDecorator.ls(URLFileSystemHelperDecorator.java:259)
            at oracle.ide.net.URLFileSystem.ls(URLFileSystem.java:1152)
            at oracle.ideimpl.index.file.DirFileTable.updateDir(DirFileTable.java:299)
            at oracle.ideimpl.index.file.DirFileTable.processQueue(DirFileTable.java:288)
            at oracle.ideimpl.index.file.DirFileTable.fullUpdate(DirFileTable.java:201)
            at oracle.ideimpl.index.file.DirFileTable.updateFileTable(DirFileTable.java:136)
            at oracle.ideimpl.index.file.AbstractFileTable.update(AbstractFileTable.java:379)
            at oracle.ideimpl.index.file.AbstractFileTable$FileTableUpdater.call(AbstractFileTable.java:914)
            at oracle.ideimpl.index.file.AbstractFileTable$FileTableUpdater.call(AbstractFileTable.java:903)
            at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
            at java.util.concurrent.FutureTask.run(FutureTask.java:138)
            at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
            at java.lang.Thread.run(Thread.java:619)
    "index-query-thread-1" prio=6 tid=0x0646a400 nid=0xb68 waiting on condition [0x0eabf000]
       java.lang.Thread.State: WAITING (parking)
            at sun.misc.Unsafe.park(Native Method)
            - parking to wait for  <0x1f216380> (a java.util.concurrent.FutureTask$Sync)
            at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
            at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:747)
            at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:905)
            at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1217)
            at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:218)
            at java.util.concurrent.FutureTask.get(FutureTask.java:83)
            at oracle.ideimpl.index.task.BackgroundTaskImpl.get(BackgroundTaskImpl.java:44)
            at oracle.ideimpl.index.file.FileTableManagerImpl.getFileTable(FileTableManagerImpl.java:106)
            at oracle.ideimpl.index.IndexRoot.lock(IndexRoot.java:296)
            at oracle.ideimpl.index.IndexImpl.lock(IndexImpl.java:161)
            at oracle.ideimpl.index.IndexImpl$IndexQuery.call(IndexImpl.java:510)
            at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
            at java.util.concurrent.FutureTask.run(FutureTask.java:138)
            at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
            at java.lang.Thread.run(Thread.java:619)
    "Image Animator 3" daemon prio=4 tid=0x062cc000 nid=0x268 waiting for monitor entry [0x0776f000]
       java.lang.Thread.State: BLOCKED (on object monitor)
            at java.awt.Frame.getExtendedState(Frame.java:743)
            - waiting to lock <0x1755c688> (a oracle.ideimpl.MainWindowImpl)
            at javax.swing.RepaintManager.addDirtyRegion0(RepaintManager.java:419)
            at javax.swing.RepaintManager.addDirtyRegion(RepaintManager.java:465)
            at javax.swing.JComponent.repaint(JComponent.java:4734)
            at java.awt.Component.imageUpdate(Component.java:3297)
            at sun.awt.image.ImageWatched$WeakLink.newInfo(ImageWatched.java:114)
            at sun.awt.image.ImageWatched.newInfo(ImageWatched.java:151)
            at sun.awt.image.ImageRepresentation.imageComplete(ImageRepresentation.java:649)
            at sun.awt.image.ImageDecoder.imageComplete(ImageDecoder.java:135)
            at sun.awt.image.GifFrame.dispose(GifImageDecoder.java:645)
            at sun.awt.image.GifImageDecoder.readImage(GifImageDecoder.java:441)
            at sun.awt.image.GifImageDecoder.produceImage(GifImageDecoder.java:195)
            at sun.awt.image.InputStreamImageSource.doFetch(InputStreamImageSource.java:246)
            at sun.awt.image.ImageFetcher.fetchloop(ImageFetcher.java:172)
            at sun.awt.image.ImageFetcher.run(ImageFetcher.java:136)
    "IconOverlayTracker Timer" prio=6 tid=0x0645e800 nid=0xe30 in Object.wait() [0x0786f000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            at java.lang.Object.wait(Object.java:485)
            at java.util.TimerThread.mainLoop(Timer.java:483)
            - locked <0x18d3ffe0> (a java.util.TaskQueue)
            at java.util.TimerThread.run(Timer.java:462)
    "status-0" prio=2 tid=0x06440400 nid=0x12c4 waiting on condition [0x0577f000]
       java.lang.Thread.State: WAITING (parking)
            at sun.misc.Unsafe.park(Native Method)
            - parking to wait for  <0x17812428> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
            at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
            at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1925)
            at java.util.concurrent.DelayQueue.take(DelayQueue.java:160)
            at oracle.ide.status.StatusExecutor$StatusQueue.take(StatusExecutor.java:329)
            at oracle.ide.status.StatusExecutor$StatusQueue.take(StatusExecutor.java:291)
            at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
            at java.lang.Thread.run(Thread.java:619)
    "WaitCursor-Timer" prio=6 tid=0x063a2400 nid=0x111c in Object.wait() [0x0756f000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            - waiting on <0x185b32e8> (a java.util.TaskQueue)
            at java.lang.Object.wait(Object.java:485)
            at java.util.TimerThread.mainLoop(Timer.java:483)
            - locked <0x185b32e8> (a java.util.TaskQueue)
            at java.util.TimerThread.run(Timer.java:462)
    "Native Directory Watcher" prio=2 tid=0x0629d800 nid=0x1788 runnable [0x0746f000]
       java.lang.Thread.State: RUNNABLE
            at oracle.ide.natives.NativeHandler.enterWatcherThread(Native Method)
            at oracle.ide.natives.NativeHandler$2.run(NativeHandler.java:252)
            at java.lang.Thread.run(Thread.java:619)
    "Background Parser" prio=6 tid=0x0634ec00 nid=0x434 waiting on condition [0x0736f000]
       java.lang.Thread.State: TIMED_WAITING (sleeping)
            at java.lang.Thread.sleep(Native Method)
            at oracle.dbtools.raptor.plsql.BackgroundParser$1.construct(BackgroundParser.java:127)
            at oracle.dbtools.raptor.utils.NamedSwingWorker$2.run(NamedSwingWorker.java:115)
            at java.lang.Thread.run(Thread.java:619)
    "Background Parser" prio=6 tid=0x04cd1800 nid=0x1378 waiting on condition [0x0726f000]
       java.lang.Thread.State: TIMED_WAITING (sleeping)
            at java.lang.Thread.sleep(Native Method)
            at oracle.dbtools.raptor.plsql.BackgroundParser$1.construct(BackgroundParser.java:127)
            at oracle.dbtools.raptor.utils.NamedSwingWorker$2.run(NamedSwingWorker.java:115)
            at java.lang.Thread.run(Thread.java:619)
    "TextBufferScavenger" prio=6 tid=0x04ae7400 nid=0x11b4 in Object.wait() [0x05e7f000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            - waiting on <0x1839ca00> (a java.lang.ref.ReferenceQueue$Lock)
            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
            - locked <0x1839ca00> (a java.lang.ref.ReferenceQueue$Lock)
            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
            at oracle.ide.model.TextNode$FacadeBufferReference$PollingThread.run(TextNode.java:1949)
    "Checkpointer" daemon prio=6 tid=0x04d0dc00 nid=0x564 in Object.wait() [0x05d7f000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            - waiting on <0x18023560> (a java.lang.Object)
            at java.lang.Object.wait(Object.java:485)
            at com.sleepycat.je.utilint.DaemonThread.run(DaemonThread.java:152)
            - locked <0x18023560> (a java.lang.Object)
            at java.lang.Thread.run(Thread.java:619)
    "INCompressor" daemon prio=6 tid=0x04d0d800 nid=0x10b4 in Object.wait() [0x05c7f000]
       java.lang.Thread.State: TIMED_WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            at com.sleepycat.je.utilint.DaemonThread.run(DaemonThread.java:154)
            - locked <0x18023528> (a java.lang.Object)
            at java.lang.Thread.run(Thread.java:619)
    "BaseTreeExplorer.NodeOpeningExecutor" prio=6 tid=0x03925400 nid=0x14c0 waiting on condition [0x05a7f000]
       java.lang.Thread.State: WAITING (parking)
            at sun.misc.Unsafe.park(Native Method)
            - parking to wait for  <0x17a650c0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
            at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
            at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1925)
            at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:358)
            at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
            at java.lang.Thread.run(Thread.java:619)
    "Scheduler" daemon prio=6 tid=0x04ad4800 nid=0x1514 in Object.wait() [0x0587f000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            at java.lang.Object.wait(Object.java:485)
            at oracle.dbtools.raptor.backgroundTask.TaskLinkedList.takeNextTask(TaskLinkedList.java:47)
            - locked <0x17a5d308> (a oracle.dbtools.raptor.backgroundTask.TaskLinkedList)
            at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$SchedulerThread.run(RaptorTaskManager.java:429)
    "ChangeSetService" prio=2 tid=0x04ac9000 nid=0x1740 in Object.wait() [0x0567f000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            - waiting on <0x178db328> (a oracle.jdevimpl.vcs.changeset.ChangeSetService)
            at java.lang.Object.wait(Object.java:485)
            at oracle.jdevimpl.vcs.changeset.ChangeSetService.awaitEvents(ChangeSetService.java:178)
            - locked <0x178db328> (a oracle.jdevimpl.vcs.changeset.ChangeSetService)
            at oracle.jdevimpl.vcs.changeset.ChangeSetService.eventLoop(ChangeSetService.java:199)
            at oracle.jdevimpl.vcs.changeset.ChangeSetService.access$200(ChangeSetService.java:56)
            at oracle.jdevimpl.vcs.changeset.ChangeSetService$2.run(ChangeSetService.java:138)
            at java.lang.Thread.run(Thread.java:619)
    "TimerQueue" daemon prio=6 tid=0x04a2b800 nid=0x10a4 in Object.wait() [0x0516f000]
       java.lang.Thread.State: TIMED_WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            at javax.swing.TimerQueue.postExpiredTimers(TimerQueue.java:218)
            - locked <0x175e7768> (a javax.swing.TimerQueue)
            at javax.swing.TimerQueue.run(TimerQueue.java:234)
            - locked <0x175e7768> (a javax.swing.TimerQueue)
            at java.lang.Thread.run(Thread.java:619)
    "TimedCache-Timer" daemon prio=6 tid=0x03975c00 nid=0x113c in Object.wait() [0x03cdf000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            at java.lang.Object.wait(Object.java:485)
            at java.util.TimerThread.mainLoop(Timer.java:483)
            - locked <0x17204200> (a java.util.TaskQueue)
            at java.util.TimerThread.run(Timer.java:462)
    "JarIndex Timer" daemon prio=6 tid=0x0396c400 nid=0x1058 in Object.wait() [0x040ef000]
       java.lang.Thread.State: TIMED_WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            at java.util.TimerThread.mainLoop(Timer.java:509)
            - locked <0x171e8d50> (a java.util.TaskQueue)
            at java.util.TimerThread.run(Timer.java:462)
    "AWT-EventQueue-0" prio=6 tid=0x02fbc400 nid=0x998 runnable [0x03fdf000]
       java.lang.Thread.State: RUNNABLE
            at sun.awt.windows.WFramePeer.getState(Native Method)
            at java.awt.Frame.getExtendedState(Frame.java:745)
            - locked <0x1755c688> (a oracle.ideimpl.MainWindowImpl)
            at oracle.bali.ewt.olaf2.OracleRootPaneUI._isResizable(OracleRootPaneUI.java:210)
            at oracle.bali.ewt.olaf2.OracleRootPaneUI.access$400(OracleRootPaneUI.java:44)
            at oracle.bali.ewt.olaf2.OracleRootPaneUI$ResizeComponent.getWidth(OracleRootPaneUI.java:335)
            at javax.swing.JComponent.getBounds(JComponent.java:4178)
            at javax.swing.JComponent.getObscuredState(JComponent.java:5171)
            at javax.swing.JComponent._paintImmediately(JComponent.java:4984)
            at javax.swing.JComponent.paintImmediately(JComponent.java:4882)
            at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:803)
            at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:714)
            at javax.swing.RepaintManager.seqPaintDirtyRegions(RepaintManager.java:694)
            at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:128)
            at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
            at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
            at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
            at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
            at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
            at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
    "AWT-Shutdown" prio=4 tid=0x03830400 nid=0x17e4 in Object.wait() [0x03edf000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            at java.lang.Object.wait(Object.java:485)
            at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:259)
            - locked <0x171ae868> (a java.lang.Object)
            at java.lang.Thread.run(Thread.java:619)
    "Java2D Disposer" daemon prio=10 tid=0x03019400 nid=0xbc0 in Object.wait() [0x03bdf000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
            - locked <0x171ae8f8> (a java.lang.ref.ReferenceQueue$Lock)
            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
            at sun.java2d.Disposer.run(Disposer.java:125)
            at java.lang.Thread.run(Thread.java:619)
    "Low Memory Detector" daemon prio=6 tid=0x02f99c00 nid=0xd70 runnable [0x00000000]
       java.lang.Thread.State: RUNNABLE
    "CompilerThread0" daemon prio=10 tid=0x02f93c00 nid=0xbe4 waiting on condition [0x00000000]
       java.lang.Thread.State: RUNNABLE
    "Attach Listener" daemon prio=10 tid=0x02f92400 nid=0xf40 runnable [0x00000000]
       java.lang.Thread.State: RUNNABLE
    "Signal Dispatcher" daemon prio=10 tid=0x02f91000 nid=0x17f4 waiting on condition [0x00000000]
       java.lang.Thread.State: RUNNABLE
    "Finalizer" daemon prio=8 tid=0x02f4f000 nid=0xa90 in Object.wait() [0x0332f000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
            - locked <0x17130288> (a java.lang.ref.ReferenceQueue$Lock)
            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
            at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
    "Reference Handler" daemon prio=10 tid=0x02f4dc00 nid=0x17ec in Object.wait() [0x0322f000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            at java.lang.Object.wait(Object.java:485)
            at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
            - locked <0x17130310> (a java.lang.ref.Reference$Lock)
    "main" prio=6 tid=0x00bb7800 nid=0x17b8 waiting on condition [0x00000000]
       java.lang.Thread.State: RUNNABLE
    "VM Thread" prio=10 tid=0x02f4c000 nid=0x17dc runnable
    "VM Periodic Task Thread" prio=10 tid=0x02fa4000 nid=0x83c waiting on condition
    JNI global references: 11823
    Heap
    def new generation   total 14208K, used 14203K [0x161d0000, 0x17130000, 0x17130000)
      eden space 12672K, 100% used [0x161d0000, 0x16e30000, 0x16e30000)
      from space 1536K,  99% used [0x16fb0000, 0x1712ef00, 0x17130000)
      to   space 1536K,   0% used [0x16e30000, 0x16e30000, 0x16fb0000)
    tenured generation   total 189056K, used 189056K [0x17130000, 0x229d0000, 0x229d0000)
       the space 189056K, 100% used [0x17130000, 0x229d0000, 0x229d0000, 0x229d0000)
    compacting perm gen  total 43520K, used 43279K [0x229d0000, 0x25450000, 0x2a9d0000)
       the space 43520K,  99% used [0x229d0000, 0x25413e80, 0x25414000, 0x25450000)
        ro space 8192K,  67% used [0x2a9d0000, 0x2af39040, 0x2af39200, 0x2b1d0000)
        rw space 12288K,  54% used [0x2b1d0000, 0x2b84d348, 0x2b84d400, 0x2bdd0000)So with a slightly different outcome from yesterday, when I was logically using more of sqldev. That gave me a lot of out of memory exceptions before sqldev become unusable. I eventually killed it myself.
    I haven't reproduced the query builder situation (yet), but as it's internal query is almost as long as this one, it might very well be the same or a related issue.
    Hope that helps,
    K.

  • Lock Timeouts and Heap Space Exhaustion

    I'm having some trouble figuring out the best way to handle resource constraints in my application. Generally speaking, the application works well after starting for about a day or so, but inevitably starts generating "Lock timeout" messages and eventually runs out of heap space.
    Here is the main entity class:
    http://github.com/justindthomas/flower_as/blob/master/src/java/name/justinthomas/flower/analysis/statistics/StatisticalInterval.java
    Here is a supporting, persistent class:
    http://github.com/justindthomas/flower_as/blob/master/src/java/name/justinthomas/flower/analysis/statistics/StatisticalFlow.java
    This is the data accessor:
    http://github.com/justindthomas/flower_as/blob/master/src/java/name/justinthomas/flower/analysis/statistics/StatisticsAccessor.java
    And here is the class that controls the insertion and retrieval of data:
    http://github.com/justindthomas/flower_as/blob/master/src/java/name/justinthomas/flower/analysis/statistics/StatisticsManager.java
    The general flow is that a netflow packet is received from a sensor and the StatisticsManager normalizes the flow as it is inserted into the database. The normalization converts the summarized flow into several "resolutions." For example, one resolution might be 5000 ms. So the StatisticsManager takes the flow's end time/5000 - start time/5000 and divides the volume by the result and inserts that data into the database. It sounds kind of confusing, but results in a dataset that allows me to query for netflow activity for any time frame.
    It also means that the database is queried as it is written to; existing data is updated more frequently than new data is written.
    Regardless, Sleepycat seems to be holding on to more data than it needs to. Once an interval has passed (maybe 5 minutes or so), it is unlikely to be accessed again until queried to create charts. However, the memory usage grows out of control despite the lack of necessity for keeping all but recently entered entries in cache.
    This is how the trouble generally starts (note that I've increased the timeout to 15000 ms to try to accommodate for longer wait times, but that just seems to delay the onset of the issue by a day or so):
    [#|2010-10-23T13:46:00.854-0700|SEVERE|glassfish3.0.1|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=64;_ThreadName=Thread-1;|addStatisticalSeconds Failed: (JE 4.0.104) Lock expired. Locker 30264205 -1_pool-6-thread-8_ThreadLocker: waited for lock on database=persist#Statistics#name.justinthomas.flower.analysis.statistics.StatisticalInterval LockAddr:32426808 node=17057517 type=READ grant=WAIT_NEW timeoutMillis=15000 startTime=1287866745448 endTime=1287866760795
    Owners: [<LockInfo locker="29616818 -1_pool-6-thread-5_ThreadLocker" type="WRITE"/>]
    Waiters: [<LockInfo locker="7246740 -1_pool-6-thread-6_ThreadLocker" type="READ"/>, <LockInfo locker="26940477 -1_pool-6-thread-2_ThreadLocker" type="WRITE"/>, <LockInfo locker="5099094 -1_pool-6-thread-4_ThreadLocker" type="READ"/>]
    |#]
    [#|2010-10-23T15:00:41.343-0700|SEVERE|glassfish3.0.1|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=65;_ThreadName=Thread-1;|addStatisticalSeconds Failed: (JE 4.0.104) Lock expired. Locker 14184769 -1_pool-6-thread-1_ThreadLocker: waited for lock on database=persist#Statistics#name.justinthomas.flower.analysis.statistics.StatisticalInterval LockAddr:32730917 node=17057517 type=READ grant=WAIT_NEW timeoutMillis=15000 startTime=1287871223679 endTime=1287871241341
    Owners: [<LockInfo locker="23975039 -1_pool-6-thread-8_ThreadLocker" type="WRITE"/>]
    Waiters: [<LockInfo locker="19650664 -1_pool-6-thread-6_ThreadLocker" type="READ"/>]
    |#]
    [#|2010-10-23T15:32:13.090-0700|SEVERE|glassfish3.0.1|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=66;_ThreadName=Thread-1;|addStatisticalSeconds Failed: (JE 4.0.104) Lock expired. Locker 17937364 -1_pool-6-thread-7_ThreadLocker: waited for lock on database=persist#Statistics#name.justinthomas.flower.analysis.statistics.StatisticalInterval LockAddr:20265315 node=17057517 type=WRITE grant=WAIT_NEW timeoutMillis=15000 startTime=1287873113904 endTime=1287873133089
    Owners: [<LockInfo locker="3251671 -1_pool-6-thread-1_ThreadLocker" type="WRITE"/>]
    Waiters: [<LockInfo locker="32174859 -1_pool-6-thread-8_ThreadLocker" type="READ"/>, <LockInfo locker="33186148 -1_pool-6-thread-4_ThreadLocker" type="WRITE"/>, <LockInfo locker="17825718 -1_pool-6-thread-2_ThreadLocker" type="READ"/>]
    |#]
    [#|2010-10-23T15:32:13.096-0700|SEVERE|glassfish3.0.1|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=64;_ThreadName=Thread-1;|addStatisticalSeconds Failed: (JE 4.0.104) Lock expired. Locker 32174859 -1_pool-6-thread-8_ThreadLocker: waited for lock on database=persist#Statistics#name.justinthomas.flower.analysis.statistics.StatisticalInterval LockAddr:20265315 node=17057517 type=READ grant=WAIT_NEW timeoutMillis=15000 startTime=1287873118064 endTime=1287873133092
    Owners: [<LockInfo locker="3251671 -1_pool-6-thread-1_ThreadLocker" type="WRITE"/>]
    Waiters: [<LockInfo locker="33186148 -1_pool-6-thread-4_ThreadLocker" type="WRITE"/>, <LockInfo locker="17825718 -1_pool-6-thread-2_ThreadLocker" type="READ"/>]
    |#]
    [#|2010-10-23T15:32:13.367-0700|SEVERE|glassfish3.0.1|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=67;_ThreadName=Thread-1;|addStatisticalSeconds Failed: (JE 4.0.104) Lock expired. Locker 33186148 -1_pool-6-thread-4_ThreadLocker: waited for lock on database=persist#Statistics#name.justinthomas.flower.analysis.statistics.StatisticalInterval LockAddr:20265315 node=17057517 type=WRITE grant=WAIT_NEW timeoutMillis=15000 startTime=1287873118366 endTime=1287873133366
    Owners: [<LockInfo locker="3251671 -1_pool-6-thread-1_ThreadLocker" type="WRITE"/>]
    Waiters: [<LockInfo locker="17825718 -1_pool-6-thread-2_ThreadLocker" type="READ"/>, <LockInfo locker="25145711 -1_pool-6-thread-6_ThreadLocker" type="READ"/>, <LockInfo locker="5544029 -1_pool-6-thread-5_ThreadLocker" type="READ"/>]
    |#]
    [#|2010-10-23T15:33:14.030-0700|SEVERE|glassfish3.0.1|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=68;_ThreadName=Thread-1;|addStatisticalSeconds Failed: (JE 4.0.104) Lock expired. Locker 31602565 -1_pool-6-thread-5_ThreadLocker: waited for lock on database=persist#Statistics#name.justinthomas.flower.analysis.statistics.StatisticalInterval LockAddr:11219992 node=17057517 type=WRITE grant=WAIT_NEW timeoutMillis=15000 startTime=1287873175916 endTime=1287873194019
    Owners: [<LockInfo locker="27649147 -1_pool-6-thread-2_ThreadLocker" type="WRITE"/>]
    Waiters: [<LockInfo locker="3895581 -1_pool-6-thread-7_ThreadLocker" type="WRITE"/>, <LockInfo locker="8345933 -1_pool-6-thread-8_ThreadLocker" type="WRITE"/>, <LockInfo locker="12576013 -1_pool-6-thread-6_ThreadLocker" type="WRITE"/>, <LockInfo locker="5695501 -1_pool-6-thread-1_ThreadLocker" type="WRITE"/>]
    |#]
    [#|2010-10-23T15:33:23.334-0700|SEVERE|glassfish3.0.1|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=64;_ThreadName=Thread-1;|addStatisticalSeconds Failed: (JE 4.0.104) Lock expired. Locker 8345933 -1_pool-6-thread-8_ThreadLocker: waited for lock on database=persist#Statistics#name.justinthomas.flower.analysis.statistics.StatisticalInterval LockAddr:11219992 node=17057517 type=WRITE grant=WAIT_NEW timeoutMillis=15000 startTime=1287873184851 endTime=1287873203333
    Owners: [<LockInfo locker="3895581 -1_pool-6-thread-7_ThreadLocker" type="WRITE"/>]
    Waiters: [<LockInfo locker="12576013 -1_pool-6-thread-6_ThreadLocker" type="WRITE"/>, <LockInfo locker="5695501 -1_pool-6-thread-1_ThreadLocker" type="WRITE"/>, <LockInfo locker="13327115 -1_pool-6-thread-4_ThreadLocker" type="READ"/>, <LockInfo locker="11939897 -1_pool-6-thread-5_ThreadLocker" type="READ"/>]
    |#]
    [#|2010-10-23T15:33:23.344-0700|SEVERE|glassfish3.0.1|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=69;_ThreadName=Thread-1;|addStatisticalSeconds Failed: (JE 4.0.104) Lock expired. Locker 12576013 -1_pool-6-thread-6_ThreadLocker: waited for lock on database=persist#Statistics#name.justinthomas.flower.analysis.statistics.StatisticalInterval LockAddr:11219992 node=17057517 type=WRITE grant=WAIT_NEW timeoutMillis=15000 startTime=1287873184893 endTime=1287873203343
    Owners: [<LockInfo locker="3895581 -1_pool-6-thread-7_ThreadLocker" type="WRITE"/>]
    Waiters: [<LockInfo locker="5695501 -1_pool-6-thread-1_ThreadLocker" type="WRITE"/>, <LockInfo locker="13327115 -1_pool-6-thread-4_ThreadLocker" type="READ"/>, <LockInfo locker="11939897 -1_pool-6-thread-5_ThreadLocker" type="READ"/>]
    |#]
    Those errors go on and on and on, until I eventually see this:
    [#|2010-10-23T17:37:29.876-0700|SEVERE|glassfish3.0.1|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=71;_ThreadName=Thread-1;|Exception in thread "ContainerBackgroundProcessor[StandardEngine[com.sun.appserv]]" |#]
    [#|2010-10-23T17:37:34.915-0700|INFO|glassfish3.0.1|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=23;_ThreadName=Thread-1;|In main loop, we have serious trouble: java.lang.OutOfMemoryError: Java heap space|#]
    [#|2010-10-23T17:37:56.516-0700|SEVERE|glassfish3.0.1|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=66;_ThreadName=Thread-1;|Exception in thread "pool-6-thread-7" |#]
    [#|2010-10-23T17:39:11.060-0700|SEVERE|glassfish3.0.1|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=23;_ThreadName=Thread-1;|Exception in thread "{felix.fileinstall.poll=5000, felix.fileinstall.bundles.new.start=true, service.pid=org.apache.felix.fileinstall.fd8877ce-71aa-41d2-8ddc-15ce996cde1b, felix.fileinstall.dir=/opt/glassfishv3/glassfish/domains/domain1/autodeploy/bundles/, felix.fileinstall.filename=org.apache.felix.fileinstall-autodeploy-bundles.cfg, service.factorypid=org.apache.felix.fileinstall, felix.fileinstall.debug=1}" |#]
    [#|2010-10-23T17:39:11.070-0700|SEVERE|glassfish3.0.1|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=66;_ThreadName=Thread-1;|java.lang.OutOfMemoryError: Java heap space
         at java.util.IdentityHashMap.init(IdentityHashMap.java:261)
         at java.util.IdentityHashMap.<init>(IdentityHashMap.java:207)
         at com.sleepycat.je.utilint.IdentityHashMap.<init>(IdentityHashMap.java:25)
         at com.sleepycat.je.cleaner.LocalUtilizationTracker.<init>(LocalUtilizationTracker.java:39)
         at com.sleepycat.je.recovery.Checkpointer.flushDirtyNodes(Checkpointer.java:665)
         at com.sleepycat.je.recovery.Checkpointer.syncDatabase(Checkpointer.java:604)
         at com.sleepycat.je.dbi.DatabaseImpl.sync(DatabaseImpl.java:977)
         at com.sleepycat.je.dbi.DatabaseImpl.handleClosed(DatabaseImpl.java:863)
         at com.sleepycat.je.Database.closeInternal(Database.java:458)
         at com.sleepycat.je.Database.close(Database.java:314)
         at com.sleepycat.je.SecondaryDatabase.close(SecondaryDatabase.java:331)
         at com.sleepycat.persist.impl.Store.closeDb(Store.java:1454)
         at com.sleepycat.persist.impl.Store.close(Store.java:1059)
         at com.sleepycat.persist.EntityStore.close(EntityStore.java:630)
         at name.justinthomas.flower.analysis.persistence.FlowReceiver.addFlow(FlowReceiver.java:94)
         at name.justinthomas.flower.analysis.persistence.FlowReceiver.addFlow(FlowReceiver.java:65)
         at name.justinthomas.flower.collector.FlowWorker.parseData(FlowWorker.java:382)
         at name.justinthomas.flower.collector.FlowWorker.v9(FlowWorker.java:111)
         at name.justinthomas.flower.collector.FlowWorker.run(FlowWorker.java:61)
         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
         at java.lang.Thread.run(Thread.java:636)
    |#]
    [#|2010-10-23T17:39:11.124-0700|SEVERE|glassfish3.0.1|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=23;_ThreadName=Thread-1;|java.lang.OutOfMemoryError: Java heap space
    |#]
    [#|2010-10-23T17:39:11.141-0700|SEVERE|glassfish3.0.1|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=72;_ThreadName=Thread-1;|Exception in thread "pool-6-thread-3" |#]
    [#|2010-10-23T17:39:11.144-0700|SEVERE|glassfish3.0.1|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=72;_ThreadName=Thread-1;|java.lang.OutOfMemoryError: Java heap space
    |#]
    It's very frustrating, because things run so well at first and then just deteriorate into a resource nightmare. Any suggestions would be welcome. The application is running with 3 CPU cores and 2GB RAM.
    Edited by: justindthomas on Oct 23, 2010 7:19 PM: I initially tried to use the forum's "URL" mechanism, but that doesn't seem to work worth anything, so I un-did it.

    I've disabled that thread for now. While debugging that, I ran into a SecondaryIntegrityException and I read that I shouldn't use secondary indexes without also using transactions. I enabled transactional processing, but the locking issues grew far worse. I opted to find ways to not use secondary indexes instead.You're right that with secondaries it is important to use txns. But I'm not sure why you're having such severe locking problems with txns. Were you using a txn with a cursor, to perform a scan? If so, I can probably suggest ways of doing that without the txn, if you can describe what you're doing and/or point me to your source code. Or, perhaps you've decided not to use secondaries, and this isn't an issue anymore?
    --mark                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • BI XML Publiser Issue java langOutOfMemoryError Java heap space

    Hi
    I am getting 'java.lang.OutOfMemoryError: Java heap space' error in XML publisher report. Just i am running 15MB data report still its giving OutOfmemory issue.
    Please help on this.
    [5/22/12 9:08:00 AM] [98639:RT12903275] XML Publisher post-processing action complete.
    [5/22/12 9:08:01 AM] [98639:RT12903275] Completed post-processing actions for request 12903275.
    [5/22/12 10:20:15 AM] [OPPServiceThread1] Post-processing request 12903281.
    [5/22/12 10:20:19 AM] [98639:RT12903281] Executing post-processing actions for request 12903281.
    [5/22/12 10:20:19 AM] [98639:RT12903281] Starting XML Publisher post-processing action.
    [5/22/12 10:20:19 AM] [98639:RT12903281]
    Template code: XXGFS_AP_APMCGRN
    Template app: XXGFS_AP
    Language: en
    Territory: US
    Output type: EXCEL
    Exception: java.lang.OutOfMemoryError: Java heap space
    java.lang.OutOfMemoryError: Java heap space
         at oracle.jdbc.dbaccess.DBItem.allocBuffer(DBItem.java:204)
         at oracle.jdbc.dbaccess.DBItem.allocBuffer(DBItem.java:232)
         at oracle.jdbc.dbaccess.DBDataSetImpl._allocItemsAndBuffers(DBDataSetImpl.java:300)
         at oracle.jdbc.dbaccess.DBDataSetImpl._allocDataAndItems(DBDataSetImpl.java:261)
         at oracle.jdbc.dbaccess.DBDataSetImpl.setType(DBDataSetImpl.java:2068)
         at oracle.jdbc.dbaccess.DBDataSetImpl.setType(DBDataSetImpl.java:1951)
         at oracle.jdbc.driver.OracleCallableStatement.registerOutParameterBytes(OracleCallableStatement.java:278)
         at oracle.jdbc.driver.OracleCallableStatement.registerOutParameter(OracleCallableStatement.java:402)
         at oracle.jdbc.driver.OracleCallableStatement.registerOutParameter(OracleCallableStatement.java:477)
         at oracle.apps.fnd.cp.gsm.GenCartComm.getQueueMessage(GenCartComm.java:185)
         at oracle.apps.fnd.cp.gsf.GSMStateMonitor.waitForNextEvent(GSMStateMonitor.java:95)
         at oracle.apps.fnd.cp.gsf.GSMServiceController.mainLoop(GSMServiceController.java:236)
         at oracle.apps.fnd.cp.gsf.BaseServiceController.run(BaseServiceController.java:71)
         at java.lang.Thread.run(Thread.java:619)
    Exception in thread "Cache Stats Writer" java.lang.OutOfMemoryError: GC overhead limit exceeded
    Exception in thread "OPPAQMON:98639" java.lang.OutOfMemoryError: Java heap space
         at oracle.jdbc.dbaccess.DBItem.allocBuffer(DBItem.java:204)
         at oracle.jdbc.dbaccess.DBItem.allocBuffer(DBItem.java:232)
         at oracle.jdbc.dbaccess.DBDataSetImpl._allocItemsAndBuffers(DBDataSetImpl.java:300)
         at oracle.jdbc.dbaccess.DBDataSetImpl._allocDataAndItems(DBDataSetImpl.java:261)
         at oracle.jdbc.dbaccess.DBDataSetImpl.setType(DBDataSetImpl.java:2068)
         at oracle.jdbc.dbaccess.DBDataSetImpl.setType(DBDataSetImpl.java:1951)
         at oracle.jdbc.driver.OracleCallableStatement.registerOutParameterBytes(OracleCallableStatement.java:278)
         at oracle.jdbc.driver.OracleCallableStatement.registerOutParameter(OracleCallableStatement.java:402)
         at oracle.apps.fnd.cp.opp.OPPAQMonitor.waitForMessage(OPPAQMonitor.java:423)
         at oracle.apps.fnd.cp.opp.OPPAQMonitor.run(OPPAQMonitor.java:113)
         at java.lang.Thread.run(Thread.java:619)
    [5/22/12 10:24:36 AM] [UNEXPECTED] [98639:RT12903281] java.lang.OutOfMemoryError: Java heap space

    user972966 wrote:
    There are two tables (tableA, tableB) in two different databases. They both have almost same schema/structure. There is mapping between tables on their columns.
    I need to develop a Java application to compare data value between these two tables for a time frame (for example one day) and find missing records or mismatch data.
    The volume of data, even for one day, is huge; almost 70M, 100M. Do you mean this many records? or this many MB. either way they are not that big for Java. If you have collections of up to 2 billion entries, you won't have a problem.
    >
    I have tried to use Thread to split the comparison process in 10 threads. Each thread is fetching portion of data from both tables (for example 7M each) and processing portion them. The issue that I am facing is, I am getting following exception after running:I would suggest you get the program working with one thread first. You will find this is simpler and possibly even faster. Having 10 threads isn't guarenteed to be faster.
    >
    To compare the data, I am fetching data from tableA and add it into List<MyDataObject> listA (the MyDataObject represent a one row data. It is a java bean) and then I am fetching data from tableB and add it into List<MyDataObject> listB
    And then I compare the lists.
    It seems there is limitation in size of List and I cannot add many elements to a List object, it’ll throws Out of Memory exception. The limit is 2^31-1. However an Out of Memory error means what it says. You are out of heap space, so you need to either increase it, or use less memory.
    >
    This method works for small volume, but for large one I get that exceptionIs there any reason you cannot divide the problem so you can process a small volume at a time?

  • 32Bit Eclipse, 32Bit JRockit, 64Bit Windows OS - Maximum  Heap Space.

    Hi:
    My 32Bit Eclipse application tends to run out of heap space on big files. I have been using Sun JRE 6. JVM.
    Using the Sun JRE 6 JVM the maximum heap size I can achieve is 1.3GB
    My machine has 8GB of physical memory.
    I'm wondering if there is any advantage in moving to JRockit.
    1. Willl the 32Bit JRocket JVM enable me to have more heap space on 64Bit Windows XP.
    2. If (1) is possible what are some aggressive settings I can use to maxmiise heap space.
    Thanks
    Mark

    We run 2.75 GB ( -jrockit -Xms2816m -Xmx2816m ) in production all the time with 32-bit JRockit on Windows 2003 Server 64-bit. I had hoped to get it to 3.25 GB, but we occasionally run out of native memory and have to back down the heap size to 2.75 GB. I look into it when I get more time. Remember to set your min and max memory equal.
    The max your process can consume is 4GB (max addressable memory with 32-bits), so your JVM memory + Heap memory can't go over 4GB. If you use JRockit Mission Control, you can connect to the JVM and monitor the size of your virtual address space (looking at Mem Usage in Windows Task Manager kind of works too). I'd start with these JVM args:
    +(all args should be on one line)+
    -jrockit -Xms2816m -Xmx2816m
    -Xmanagement:ssl=false,authenticate=false,port=7091
    Connect to it with the jrmc.exe program in your JRockit bin directory and you can get a pretty good idea what is happening in the JVM. Also, if you haven't already, download the latest JRockit (google: JRockit download).
    Hope that gets you started so you can check out JRockit...
    -Bill S.
    (a fan of JRockit)

  • Reset, empty, clean java heap space

    Hello!
    I am actually not a Java user but an R (statistical programming language) user. I use an R package which writes output
    to Excel sheets. The package uses Java to link between R and Excel. When we used the package to write our data to Excel
    R recently started to throw errors which after doing several tests we traced back to the java heap space.
    Our question is now whether it is possible to clear/empty/reset the java heap space using java on the command line or by
    starting an external programme? It is possible to start external programmes within R. So in case it would be possible to
    clean up the java heap space we basically could write a little script which we could start from R to fix our problem.
    Any help is very much appreciated.
    Best,
    Jo

    Hi,
    the problem is a bit tricky to describe. R provides packages u can use but you do not see the underlying code.
    In the manual of the package it says it's using java to write the data from R to excel spreadsheet. We currently
    writing objects which 20000 rows and 6-10 columns. It works fine for the first 2 or 3 files and then R
    throws an error. To figure out where the error comes from I created a dummy data set with 3000 rows and 6 columns
    and used the package to write the output to the excel sheet again and again in differently named tabs.
    As more output you write to the excel sheet as slower it gets and then at some point R throws an error.
    I tried different data set sizes and deleted excel sheets, created new ones to test different cases but the outcome
    was always the same... R does not directly say something like: java out of heap space but to us it is pretty clear
    when the heap space is reaching its limit something gets screwed up. If you write to the same excel sheet again and again
    but with breaks in between so the heap space has some time to empty itself it works fine. If you restart R and write to the same file
    it works.

  • Out of memory: Java heap space

    Hello,
    I am working on a project, that simulates large populations, with each individual being a separate Objecta(a couple of kilobytes in size each).
    Once i reach a bug enough number of those Objects (stored in a Vector), i get Out of memory: Java heap space exception.
    Am i having a memory leak in Java? Or am i really reaching the maximal JVM limit and i need to reconfigure it, to support larger heap size?
    :)

    Am i having a memory leak in Java?Because of garbage collection there, by far and large, aren't memory leaks in java. However, there certainly is memory waste.
    If each of these objects you make room for are unnecessarily laden with references to other large objects creating huge networks of objects that never free their memory, and then you allocate 1 million of them, then, while not a leak, you are wasting your memory space.
    Look through your class and inspect each field to see if any of them could be holding more data than you intend. If so, multiply the amount of that data by 1,000,000 or however many objects you are going to instantiate to determine if this produces and absurd amount of memory. You should be able to predict ~how much storage your data will need...each char is 2bytes, each int is 4 bytes, doubles are 8 etc

  • Out of bounds exception although increasing heap space

    Hello,
    In my java application, there is a gif file with the size 6000 X 3500 . This file is 536 KB and i use this file with scroll bar.
    My question is that although I increased heap space to 512, it still keep going to give "out of bounds" exception when i try to set new dimention to the frame bigger than (800, 1000).
    How can I use my gif file with bigger frame?

    There is no such exception.
    Are you talking about ArrayIndexOutOfBoundsException?
    OutOfMemoryError?
    Something else?

  • Exception in thread "AWT-Event Queue 0" Mem Out of Bounds. Java Heap Space

    Hello,
    I'm not sure how to resolve this Java Heap Space Memory Out of Bounds error. Could someone please assist me with this error?
    A SCENARIO:
    I am reading in tons of data from 5 separate text files. The files have tons of rows (up to 64,220 in one). The data must be read into the program and assembled. When I have all of the files populated, I receive the OOM Error. If I remove the data from one of the 5 files the program runs successfully. If I add the data back into the file and then remove the data from some other file, the program runs successfully.
    Thanks
    RodneyM

    ff.skip(18);
    i = ff.read();
    i = ((ff.read() << 8) | i);
    i = ((ff.read() << 16) | i);
    i = ((ff.read() << 24) | i);
    xsize = i;
    System.out.println("width=" + xsize);
    i = 0;
    i = ff.read();
    i = ((ff.read() << 8) | i);
    i = ((ff.read() << 16) | i);
    i = ((ff.read() << 24) | i);
    ysize = i;
    System.out.println("Height=" + ysize);
    ff.skip(38);//62-(2+16+4+4=26)=36, actually total=62 Bytes header This is completely wrong. First an foremost you should not have this code in the paint(Graphics g) method. This is a GUI thing. The paint method may be called for any reason and you do not+ want to open a file stream, read it, and do the distance transformation every single time the method is called. There's also the issue that you have overridden the paint method as opposed to subclassing a component, overriding the paintComponent method, and adding it to the frame. But that can be ignored for right now (it will come back later and cause complications).
    Next, you've said that the header is 62 bytes. This is incorrect for a png file. The code you have posted assumes (very specifically) that you have inputted a BMP version 3 with 2-color entry palette. In other words you can only open a very specific type of image with that code. Definitely not a png. This is what was causing the out of memory error since it interprets the width and height wrong when reading the bytes and you end up trying to create a 2-D int array that will take up several hundred megabytes in size
    //xsize and ysize are interpreted wrongly
    pix=new int[xsize][ysize];
    mat1=new int[xsize][ysize]; Now granted, BMP v3 is the most common type you will encounter but you must admit that the code is not very robust at all (since it requires a very specific input).

  • Large Report Errors out with Java Heap Space in EBS 12.0.6

    When running custom or Standard BI report that have a huge data , we get a following error in EBS
    [UNEXPECTED] [156627:RT4605044] java.lang.OutOfMemoryError: Java heap space
    at java.lang.AbstractStringBuilder.<init>(AbstractStringBuilder.java:45)
    at java.lang.StringBuffer.<init>(StringBuffer.java:91)
    at oracle.apps.xdo.template.fo.FOHandler.init(FOHandler.java:161)
    at oracle.apps.xdo.template.fo.FOProcessingEngine.process(FOProcessingEngine.java:335)
    at oracle.apps.xdo.template.FOProcessor.generate(FOProcessor.java:1045)
    at oracle.apps.xdo.oa.schema.server.TemplateHelper.runProcessTemplate(TemplateHelper.java:5926)
    at oracle.apps.xdo.oa.schema.server.TemplateHelper.processTemplate(TemplateHelper.java:3458)
    at oracle.apps.xdo.oa.schema.server.TemplateHelper.processTemplate(TemplateHelper.java:3547)
    at oracle.apps.fnd.cp.opp.XMLPublisherProcessor.process(XMLPublisherProcessor.java:259)
    at oracle.apps.fnd.cp.opp.OPPRequestThread.run(OPPRequestThread.java:172)
    We have tried the follwing workaroud mentioned in the docoment 737311.1
    A)
    1)update FND_CP_SERVICES set DEVELOPER_PARAMETERS =
    'J:oracle.apps.fnd.cp.gsf.GSMServiceController:-mx5120m'
    where SERVICE_ID = (select MANAGER_TYPE from FND_CONCURRENT_QUEUES
    where CONCURRENT_QUEUE_NAME = 'FNDCPOPP');
    2)As XML Publisher Administrator navigate to Administration->Configuration.
    Under Temporary Directory pick a temporary file location on your concurrent processing node. This should be at least 5GB or 20x larger than largest XML data file you generate
    Under FO Processing, set:
    Use XML Publisher's XSLT processor set to True
    Enable scalable feature of XSLT processor set to False (see #4 below),
    Enable XSLT runtime optimization set to True
    3)We also have tried to to apply the workaround mentioned in the document 747750.1
    In to Concurrent -> Program -> Define, in the 'Executable' group, there is a field named 'Options'.
    Enter the value '-ms1024m -mx1024m' as the value for this field.
    None of these seem to have worked.
    Also refered to the the previous forum entries on these. But did not find anything specific to EBS. Most of them were related to Standalone installations.
    CAn anyone help me.
    Dhaval K

    hi gurus
    The problem has sovled.I supplyed the wrong file for the rawfile.conf,everything was fine after I provided the corrent one.
    Thanks for your time.

  • Heap space out of memory in weblogic

    Hi,
    I am using weblogic server 10.3.2,Actually i am facing heap space error because lot of data is there is the database approx 50lacs Data.
    And my system configuration is 8GB RAM and 64bit machine.
    but after 5 minutes heap space error...
    Note:I have already configured in the setDomainEnv.cmd File
    if "%JAVA_VENDOR%"=="Sun" (
    set WLS_MEM_ARGS_64BIT=-Xms256m -Xmx2048m
    set WLS_MEM_ARGS_32BIT=-Xms256m -Xmx512m
    ) else (
    set WLS_MEM_ARGS_64BIT=-Xms512m -Xmx2048m
    set WLS_MEM_ARGS_32BIT=-Xms512m -Xmx512m
    set MEM_PERM_SIZE_64BIT=-XX:PermSize=256m
    when i start the weblogic server ,below is the details but i have already changed then why
    -Xms256m -Xmx512m -XX:CompileThreshold=8000 -XX:PermSize=128m -XX:MaxPermSize=512m -
    D:\Oracle\MIDDLE~1\JDK160~1.5-3\bin\java -client -Xms256m -Xmx512m -XX:CompileThreshold=8000 -XX:PermSize=128m -XX:MaxPermSize=512m -Dweblogic.Name=DefaultServer -Djava.security.policy=D:\Oracle\MIDDLE~1\WLSERV~1.3\server\lib\weblogic.policy -Djavax.net.ssl.trustStore=D:\Oracle\Middleware\wlserver_10.3\server\lib\DemoTrust.jks -Dweblogic.nodemanager.ServiceEnabled=true -Xverify:none -da -Dplatform.home=D:\Oracle\MIDDLE~1\WLSERV~1.3 -Dwls.home=D:\Oracle\MIDDLE~1\WLSERV~1.3\server -Dweblogic.home=D:\Oracle\MIDDLE~1\WLSERV~1.3\server -Djps.app.credential.overwrite.allowed=true -Ddomain.home=C:\Users\Mohiddin\AppData\Roaming\JDEVEL~1\SYSTEM~1.36\DEFAUL~1 -Dcommon.components.home=D:\Oracle\MIDDLE~1\ORACLE~1 -Djrf.version=11.1.1 -Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.Jdk14Logger -Djrockit.optfile=D:\Oracle\MIDDLE~1\ORACLE~1\modules\oracle.jrf_11.1.1\jrocket_optfile.txt -Doracle.domain.config.dir=C:\Users\Mohiddin\AppData\Roaming\JDEVEL~1\SYSTEM~1.36\DEFAUL~1\config\FMWCON~1 -Doracle.server.config.dir=C:\Users\Mohiddin\AppData\Roaming\JDEVEL~1\SYSTEM~1.36\DEFAUL~1\config\FMWCON~1\servers\DefaultServer -Doracle.security.jps.config=C:\Users\Mohiddin\AppData\Roaming\JDEVEL~1\SYSTEM~1.36\DEFAUL~1\config\fmwconfig\jps-config.xml -Djava.protocol.handler.pkgs=oracle.mds.net.protocol -Digf.arisidbeans.carmlloc=C:\Users\Mohiddin\AppData\Roaming\JDEVEL~1\SYSTEM~1.36\DEFAUL~1\config\FMWCON~1\carml -Digf.arisidstack.home=C:\Users\Mohiddin\AppData\Roaming\JDEVEL~1\SYSTEM~1.36\DEFAUL~1\config\FMWCON~1\arisidprovider -Dweblogic.alternateTypesDirectory=\modules\oracle.ossoiap_11.1.1,\modules\oracle.oamprovider_11.1.1 -Dweblogic.jdbc.remoteEnabled=false -Dwsm.repository.path=C:\Users\Mohiddin\AppData\Roaming\JDEVEL~1\SYSTEM~1.36\DEFAUL~1\oracle\store\gmds -Dweblogic.management.discover=true -Dwlw.iterativeDev= -Dwlw.testConsole= -Dwlw.logErrorsToConsole= -Dweblogic.ext.dirs=D:\Oracle\MIDDLE~1\patch_wls1032\profiles\default\sysext_manifest_classpath;D:\Oracle\MIDDLE~1\patch_jdev1111\profiles\default\sysext_manifest_classpath weblogic.Server
    <Mar 29, 2013 1:22:43 PM IST> <Info> <WebLogicServer> <BEA-000377> <Starting WebLogic Server with Java HotSpot(TM) Client VM Version 14.0-b16 from Sun Microsystems Inc.>
    <Mar 29, 2013 1:22:44 PM IST> <Info> <Management> <BEA-141107> <Version: WebLogic Server 10.3.2.0 Tue Oct 20 12:16:15 PDT 2009 1267925 >
    <Mar 29, 2013 1:22:44 PM IST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STARTING>
    <Mar 29, 2013 1:22:44 PM IST> <Info> <WorkManager> <BEA-002900> <Initializing self-tuning thread pool>
    <Mar 29, 2013 1:22:44 PM IST> <Notice> <LoggingService> <BEA-320400> <The log file C:\Users\Mohiddin\AppData\Roaming\JDeveloper\system11.1.1.2.36.55.36\DefaultDomain\servers\DefaultServer\logs\DefaultServer.log will be rotated. Reopen the log file if tailing has stopped. This can happen on some platforms like Windows.>
    <Mar 29, 2013 1:22:44 PM IST> <Notice> <LoggingService> <BEA-320401> <The log file has been rotated to C:\Users\Mohiddin\AppData\Roaming\JDeveloper\system11.1.1.2.36.55.36\DefaultDomain\servers\DefaultServer\logs\DefaultServer.log00214. Log messages will continue to be logged in C:\Users\Mohiddin\AppData\Roaming\JDeveloper\system11.1.1.2.36.55.36\DefaultDomain\servers\DefaultServer\logs\DefaultServer.log.>
    <Mar 29, 2013 1:22:44 PM IST> <Notice> <Log Management> <BEA-170019> <The server log file C:\Users\Mohiddin\AppData\Roaming\JDeveloper\system11.1.1.2.36.55.36\DefaultDomain\servers\DefaultServer\logs\DefaultServer.log is opened. All server side log events will be written to this file.>
    <Mar 29, 2013 1:22:46 PM IST> <Error> <Security> <BEA-000000> <[Security:090739]The SQL statement for SQLIsMember does not appear to be correct>
    <Mar 29, 2013 1:22:47 PM IST> <Notice> <Security> <BEA-090082> <Security initializing using security realm myrealm.>
    <Mar 29, 2013 1:22:49 PM IST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STANDBY>
    <Mar 29, 2013 1:22:49 PM IST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STARTING>
    <Mar 29, 2013 1:22:52 PM IST> <Warning> <J2EE> <BEA-160195> <The application version lifecycle event listener oracle.security.jps.wls.listeners.JpsAppVersionLifecycleListener is ignored because the application XBSystemMasters is not versioned.>
    Please help me and in above configuration i have changed but the same prob i m getting issue...
    Edited by: 888679 on Mar 29, 2013 12:53 AM

    Hi,
    I m using 32 bit java sotfware..Actually Problem is when Jdevelpoer start through weblogic then it is not reflected but
    when start weblogic through command prompt then it is reflecting.
    So can u please help me why ,when start the weblogic through Jdeveloper.it is not reflecting.any setting in Jdeveloper..
    Thanks
    Anup
    Edited by: 888679 on Mar 31, 2013 2:39 AM

  • Dbca errors out with java.lang.OutOfMemoryError: Java heap space

    hi gurus
    I am trying to use DBCA to create a 10.2.0.4 database on a HP platform.DBCA hangs at the step 6 and following message can be seen in the
    trace.log:
    java.lang.OutOfMemoryError: Java heap space
    I googled and modified the DBCA scripts content from
    # Run DBCA
    $JRE_DIR/bin/java -Dsun.java2d.font.DisableAlgorithmicStyles=true -DORACLE_HOME=$OH -DDISPLAY=$DISPLAY -DJDBC_PROTOCOL=thin -mx128m
    -classpath $CLASSPATH oracle.sysman.assistants.dbca.Dbca $ARGUMENTS
    to
    # Run DBCA
    $JRE_DIR/bin/java -Dsun.java2d.font.DisableAlgorithmicStyles=true -DORACLE_HOME=$OH -DDISPLAY=$DISPLAY -DJDBC_PROTOCOL=thin -mx256m
    -classpath $CLASSPATH oracle.sysman.assistants.dbca.Dbca $ARGUMENTS
    and rerun the DBCA and the problem still there.
    How to solve this problem?
    Thanks !
    Edited by: KevinMao on Mar 31, 2010 2:39 AM
    Edited by: KevinMao on Mar 31, 2010 2:42 AM

    hi gurus
    The problem has sovled.I supplyed the wrong file for the rawfile.conf,everything was fine after I provided the corrent one.
    Thanks for your time.

  • Out of Heap from space?

    I keep getting "An unexpected error has been detected by HotSpot Virtual Machines" crash in my application.
    The following:
    Heap
    def new generation total 576K, used 386K [0x02a70000, 0x02b10000, 0x02f50000)
    eden space 512K, 62% used [0x02a70000, 0x02ac0868, 0x02af0000)
    from space 64K, 99% used [0x02af0000, 0x02affff0, 0x02b00000)
    to space 64K, 0% used [0x02b00000, 0x02b00000, 0x02b10000)
    tenured generation total 4576K, used 4216K [0x02f50000, 0x033c8000, 0x06a70000)
    the space 4576K, 92% used [0x02f50000, 0x0336e190, 0x0336e200, 0x033c8000)
    compacting perm gen total 8192K, used 3801K [0x06a70000, 0x07270000, 0x0aa70000)
    the space 8192K, 46% used [0x06a70000, 0x06e264d0, 0x06e26600, 0x07270000)
    No shared spaces configured.
    Here is my guess at what the problem is. All the errors have the "Heap from space" either 99% or 100% used. Is this a logicly guess? I have attempted using the following commands to increase the heap space but it didn't not resolve the problem and the Heap From space still read at 64kb.
    jvm_args: -Xms32m -Xmx128m
    Help please?
    Message was edited by:
    Chazz56

    It could mean the VM is crashing during garbage collection. Don't know without more information from you.
    What version of the VM are you using?
    Have you tried the latest update for your version? There are a lot of VM crashes fixes that go into each update.
    If you are running earlier VM, try the later ones and see if it still crashes.
    Post the error log. It should contain stack traces that may help you or someone else search for for the cause. Through the lifetime of the VM there have been a lot of VM crash bugs, if you don't give any more information, there is no way to diagnose the problem.

Maybe you are looking for