Full GC loops - JDK1.4.1

Hi,
we are using JDK1.4.1_01 with Tomcat 4.1.18 for a banking application with 20.000 hits per day and 2000 users (Win 2000, 4 GB, 2 2000 MHZ CPU).
After 8 hours runtime and only some full gcs occuring (and a lot more minor gcs) Tomcat dies with OutOfMemory exceptions.
In the verbose:gc output you can see that the vm hangs in a full gc loop without reducing the heap and although there is only 100M of 1500M heap used.
The systems can't respond due to the fact one full gc is starting after the one that has just finished.
At this stage we have no idea why. Only restarting Tomcat helps and ensures us another 8 hours online time.
The vm parameters are the following:
-XX:+PrintHeapAtGC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:NewRatio=3 -Xms1536M -Xmx1536M -XX:-DisableExplicitGC -Xloggc:logs\tomcat-gc-collections.txt -Dcatalina.base="d:\apps\tomcat" -Dcatalina.home="d:\apps\tomcat" -Djava.io.tmpdir=d:\apps\tmp -Dhostmode=avus -Dlog4j.configuration=log4J.properties -Djava.naming.factory.initial=com.inprise.j2ee.jndi.CtxFactory -Djava.naming.factory.url.pkgs=com.inprise.j2ee.jndi -Dvbroker.agent.port=14449
The catalina.log states the following:
003-06-23 16:31:49 HttpProcessor[80][36] process.invoke
java.lang.OutOfMemoryError
2003-06-23 16:31:49 HttpProcessor[80][25] process.invoke
java.lang.OutOfMemoryError
Thanks for any help
Oliver

is it just me or did you disable explicit garbage collection meaning that calls to System.gc() are ignored ...
personally I think it is probably better to force calls when they are needed (i.e. when you're placing a lot of young objects into the heap)
However as to why full gc isn't reducing the free memory - sound buggy to me.

Similar Messages

  • Full GC loop

    Our application went into Full GC loop, we did have verbose GC turned on. Can someone please explain how this can be interpretted.
    It appears like there is close to 1G free for promotion and still the Young Gen promotion is not working.
    Line 88326 : 41900.684: [GC [PSYoungGen: 1866224K->43794K(1931840K)] 3502757K->1685045K(5446976K), 0.1167970 secs] [Times: user=0.12 sys=0.00, real=0.12 secs]
    Line 88327 : 41906.230: [GC [PSYoungGen: 1868882K->64245K(1941056K)] 3510133K->1705697K(5456192K), 0.1538270 secs] [Times: user=0.15 sys=0.00, real=0.15 secs]
    Line 88328 : 41913.490: [GC [PSYoungGen: 1903285K->15842K(1941440K)] 3544737K->1685685K(5456576K), 0.1050850 secs] [Times: user=0.10 sys=0.00, real=0.11 secs]
    Line 88329 : 41919.636: [GC [PSYoungGen: 1854882K->71593K(1938112K)] 3524725K->1743162K(5453248K), 0.1610370 secs] [Times: user=0.16 sys=0.00, real=0.16 secs]
    Line 88330 : 41926.003: [GC [PSYoungGen: 1906473K->44674K(1879616K)] 3578042K->1716607K(5394752K), 0.0935700 secs] [Times: user=0.11 sys=0.00, real=0.10 secs]
    Line 88331 : 41931.256: [GC [PSYoungGen: 1879554K->19205K(1940032K)] 3551487K->1720689K(5455168K), 0.0924580 secs] [Times: user=0.13 sys=0.00, real=0.09 secs]
    Line 88332 : 41935.287: [GC [PSYoungGen: 1857477K->41100K(1939968K)] 3558961K->1742584K(5455104K), 0.0953660 secs] [Times: user=0.14 sys=0.00, real=0.09 secs]
    Line 88333 : 41938.270: [GC [PSYoungGen: 1879372K->18301K(1942016K)] 3580856K->1719871K(5457152K), 0.1102160 secs] [Times: user=0.09 sys=0.00, real=0.11 secs]
    Line 88334 : 41941.788: [GC [PSYoungGen: 1863293K->79254K(1941568K)] 3564863K->1781043K(5456704K), 0.0817900 secs] [Times: user=0.24 sys=0.00, real=0.08 secs]
    Line 88335 : 41946.594: [GC [PSYoungGen: 1924246K->69389K(1938112K)] 3626035K->1771986K(5453248K), 0.1661760 secs] [Times: user=0.20 sys=0.00, real=0.16 secs]
    Line 88336 : 41951.120: [GC [PSYoungGen: 1902861K->38451K(1871936K)] 3605458K->1770219K(5387072K), 0.1473680 secs] [Times: user=0.18 sys=0.00, real=0.15 secs]
    Line 88337 : 41958.626: [GC [PSYoungGen: 1871923K->54656K(1942400K)] 3603691K->1788149K(5457536K), 0.1552370 secs] [Times: user=0.16 sys=0.00, real=0.15 secs]
    Line 88338 : 41966.122: [GC [PSYoungGen: 1893824K->76469K(1939328K)] 4634025K->2853942K(5454464K), 0.1254980 secs] [Times: user=0.22 sys=0.00, real=0.13 secs]
    Line 88339 : 41967.458: [GC [PSYoungGen: 1358774K->17127K(1941760K)] 4136247K->3836163K(6037760K), 1.0412470 secs] [Times: user=0.80 sys=0.34, real=1.04 secs]
    Line 88340 : 41968.499: [Full GC[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor1047]
    Line 88471 : 41975.139: [GC-- [PSYoungGen: 1836416K->1836416K(1941760K)] 4982380K->4982380K(6037760K), 0.0646720 secs] [Times: user=0.06 sys=0.01, real=0.06 secs]
    Line 88472 : 41975.204: [Full GC[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor1202]
    Line 88543 : 41979.042: [GC-- [PSYoungGen: 1837491K->1837491K(1941760K)] 4983455K->4983455K(6037760K), 0.3140620 secs] [Times: user=0.63 sys=0.00, real=0.32 secs]
    Line 88544 : 41979.356: [Full GC[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor671]
    Line 88560 : 41985.093: [GC-- [PSYoungGen: 1830269K->1830269K(1941760K)] 4795149K->4795149K(6037760K), 0.3286810 secs] [Times: user=0.63 sys=0.00, real=0.33 secs]
    Line 88561 : 41985.422: [Full GC [PSYoungGen: 1830269K->1831614K(1941760K)] [PSOldGen: 2964879K->2964879K(4096000K)] 4795149K->4796494K(6037760K) [PSPermGen: 123099K->123099K(126656K)], 3.1776690 secs] [Times: user=3.17 sys=0.01, real=3.18 secs]
    Line 88562 : 41988.810: [GC-- [PSYoungGen: 1836416K->1836416K(1941760K)] 4901950K->4901950K(6037760K), 0.2989710 secs] [Times: user=0.63 sys=0.00, real=0.30 secs]
    Line 88563 : 41989.109: [Full GC [PSYoungGen: 1836416K->1837766K(1941760K)] [PSOldGen: 3065534K->3065534K(4096000K)] 4901950K->4903301K(6037760K) [PSPermGen: 123099K->123099K(126528K)], 3.1866390 secs] [Times: user=3.17 sys=0.00, real=3.19 secs]
    Line 88564 : 41992.341: [GC-- [PSYoungGen: 1837766K->1837766K(1941760K)] 4903301K->4903301K(6037760K), 0.3023900 secs] [Times: user=0.63 sys=0.00, real=0.30 secs]
    Line 88565 : 41992.643: [Full GC [PSYoungGen: 1837766K->1837766K(1941760K)] [PSOldGen: 3065534K->3065534K(4096000K)] 4903301K->4903301K(6037760K) [PSPermGen: 123099K->123099K(125952K)], 3.1959920 secs] [Times: user=3.17 sys=0.01, real=3.20 secs]
    Line 88566 : 41995.849: [GC-- [PSYoungGen: 1837766K->1837766K(1941760K)] 4903301K->4903309K(6037760K), 0.3198970 secs] [Times: user=0.63 sys=0.00, real=0.32 secs]
    Line 88567 : 41996.169: [Full GC [PSYoungGen: 1837766K->1813137K(1941760K)] [PSOldGen: 3065542K->3062041K(4096000K)] 4903309K->4875179K(6037760K) [PSPermGen: 123099K->123099K(125888K)], 5.4472620 secs] [Times: user=5.44 sys=0.00, real=5.45 secs]
    Line 88568 : 42001.746: [GC-- [PSYoungGen: 1836416K->1836416K(1941760K)] 4898457K->4898457K(6037760K), 0.2801550 secs] [Times: user=0.65 sys=0.00, real=0.28 secs]
    Line 88569 : 42002.026: [Full GC [PSYoungGen: 1836416K->1837744K(1941760K)] [PSOldGen: 3062041K->3062041K(4096000K)] 4898457K->4899786K(6037760K) [PSPermGen: 123099K->123099K(125824K)], 3.2083830 secs] [Times: user=3.20 sys=0.01, real=3.21 secs]
    Line 88570 : 42005.266: [GC-- [PSYoungGen: 1837744K->1837744K(1941760K)] 4899786K->4899786K(6037760K), 0.2898370 secs] [Times: user=0.59 sys=0.00, real=0.29 secs]
    Line 88571 : 42005.556: [Full GC [PSYoungGen: 1837744K->1837744K(1941760K)] [PSOldGen: 3062041K->3062041K(4096000K)] 4899786K->4899786K(6037760K) [PSPermGen: 123099K->123099K(125312K)], 3.2037720 secs] [Times: user=3.20 sys=0.01, real=3.20 secs]
    Line 88572 : 42008.805: [GC-- [PSYoungGen: 1837744K->1837744K(1941760K)] 4899786K->4899794K(6037760K), 0.3347480 secs] [Times: user=0.59 sys=0.00, real=0.33 secs]
    Line 88573 : 42009.140: [Full GC [PSYoungGen: 1837744K->1837744K(1941760K)] [PSOldGen: 3062049K->3062049K(4096000K)] 4899794K->4899794K(6037760K) [PSPermGen: 123099K->123099K(125312K)], 3.1690990 secs] [Times: user=3.16 sys=0.00, real=3.17 secs]
    Line 88574 : 42012.319: [GC-- [PSYoungGen: 1837744K->1837744K(1941760K)] 4899794K->4899794K(6037760K), 0.3056590 secs] [Times: user=0.62 sys=0.00, real=0.31 secs]
    Line 88575 : 42012.625: [Full GC [PSYoungGen: 1837744K->1813115K(1941760K)] [PSOldGen: 3062049K->3060814K(4096000K)] 4899794K->4873929K(6037760K) [PSPermGen: 123099K->123099K(124800K)], 4.9230010 secs] [Times: user=4.92 sys=0.01, real=4.92 secs]
    Line 88576 : 42017.661: [GC-- [PSYoungGen: 1836416K->1836416K(1941760K)] 4897230K->4897230K(6037760K), 0.2799600 secs] [Times: user=0.66 sys=0.00, real=0.28 secs]
    The following JVM options were used
    -Xms512M -XX:MaxPermSize=260M -Xmx6000M

    Hy,
    I'll have a stab at this :)
    up until "Line 88338", there's no sign of anything wrong with memory allocation in the JVM ... but
    Line 88337 : 41958.626: [GC [PSYoungGen: 1871923K->54656K(1942400K)] 3603691K->1788149K(5457536K), 0.1552370 secs] [Times: user=0.16 sys=0.00, real=0.15 secs]
    Line 88338 : 41966.122: [GC [PSYoungGen: 1893824K->76469K(1939328K)] 4634025K->2853942K(5454464K), 0.1254980 secs] [Times: user=0.22 sys=0.00, real=0.13 secs]
    than on "Line 88339" a few things to notice : GC kicks in only 1sec. after previous one and only "300084K" OldGen got freed up as opposed to 1800000K befor. Eden is not the probem here; possibly survivor space ... but need more info on application
    Line 88339 : 41967.458: [GC [PSYoungGen: 1358774K->17127K(1941760K)] 4136247K->3836163K(6037760K), 1.0412470 secs] [Times: user=0.80 sys=0.34, real=1.04 secs]
    Line 88340 : 41968.499: [Full GC[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor1047]
    Unloading classes can point to PermSpace depletion, but your GC logging is not verbose enough to see permspace collections all the time..
    After this, even if PermSpace got freed up enough, it seems your application doesn't recover at all ... probably only a restart works(around) ?
    Line 88471 : 41975.139: [GC-- [PSYoungGen: 1836416K->1836416K(1941760K)] 4982380K->4982380K(6037760K), 0.0646720 secs] [Times: user=0.06 sys=0.01, real=0.06 secs]
    Line 88472 : 41975.204: [Full GC[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor1202]
    Line 88543 : 41979.042: [GC-- [PSYoungGen: 1837491K->1837491K(1941760K)] 4983455K->4983455K(6037760K), 0.3140620 secs] [Times: user=0.63 sys=0.00, real=0.32 secs]
    Line 88544 : 41979.356: [Full GC[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor671]
    Line 88560 : 41985.093: [GC-- [PSYoungGen: 1830269K->1830269K(1941760K)] 4795149K->4795149K(6037760K), 0.3286810 secs] [Times: user=0.63 sys=0.00, real=0.33 secs]
    Line 88561 : 41985.422: [Full GC [PSYoungGen: 1830269K->1831614K(1941760K)] [PSOldGen: 2964879K->2964879K(4096000K)] 4795149K->4796494K(6037760K) [PSPermGen: 123099K->123099K(126656K)], 3.1776690 secs] [Times: user=3.17 sys=0.01, real=3.18 secs]
    If you really need 6GB for this app, and you have the resources, try moving Xms and Xmx closer together; rescale (initial + max) PermSize as well .. and than report back. Is it background app or user interactive. I presume you're using jdk1.5 ?
    e.g. "-verbose:gc -XX:+PrintGCDetails -Xms4000m -Xmx6000m -XX:MaxPermSize=500m" possibly try adding "-XX:SurvivorRatio=8" or so, this could releive collector a bit of promoting too much to OldGen ...
    grtz,
    gert

  • Full GC Loop + How to interpret Verbose GC?

    Can someone please explain how this verbose gc can be interpretted?
    It appears like there is close to 1G free for promotion and still the Young Gen promotion is not happening. Is this normal ?
    The application goes into Full GC loops and eventually has to be restarted to be performant again.
    Line 88326 : 41900.684: [GC [PSYoungGen: 1866224K->43794K(1931840K)] 3502757K->1685045K(5446976K), 0.1167970 secs] [Times: user=0.12 sys=0.00, real=0.12 secs]
    Line 88327 : 41906.230: [GC [PSYoungGen: 1868882K->64245K(1941056K)] 3510133K->1705697K(5456192K), 0.1538270 secs] [Times: user=0.15 sys=0.00, real=0.15 secs]
    Line 88328 : 41913.490: [GC [PSYoungGen: 1903285K->15842K(1941440K)] 3544737K->1685685K(5456576K), 0.1050850 secs] [Times: user=0.10 sys=0.00, real=0.11 secs]
    Line 88329 : 41919.636: [GC [PSYoungGen: 1854882K->71593K(1938112K)] 3524725K->1743162K(5453248K), 0.1610370 secs] [Times: user=0.16 sys=0.00, real=0.16 secs]
    Line 88330 : 41926.003: [GC [PSYoungGen: 1906473K->44674K(1879616K)] 3578042K->1716607K(5394752K), 0.0935700 secs] [Times: user=0.11 sys=0.00, real=0.10 secs]
    Line 88331 : 41931.256: [GC [PSYoungGen: 1879554K->19205K(1940032K)] 3551487K->1720689K(5455168K), 0.0924580 secs] [Times: user=0.13 sys=0.00, real=0.09 secs]
    Line 88332 : 41935.287: [GC [PSYoungGen: 1857477K->41100K(1939968K)] 3558961K->1742584K(5455104K), 0.0953660 secs] [Times: user=0.14 sys=0.00, real=0.09 secs]
    Line 88333 : 41938.270: [GC [PSYoungGen: 1879372K->18301K(1942016K)] 3580856K->1719871K(5457152K), 0.1102160 secs] [Times: user=0.09 sys=0.00, real=0.11 secs]
    Line 88334 : 41941.788: [GC [PSYoungGen: 1863293K->79254K(1941568K)] 3564863K->1781043K(5456704K), 0.0817900 secs] [Times: user=0.24 sys=0.00, real=0.08 secs]
    Line 88335 : 41946.594: [GC [PSYoungGen: 1924246K->69389K(1938112K)] 3626035K->1771986K(5453248K), 0.1661760 secs] [Times: user=0.20 sys=0.00, real=0.16 secs]
    Line 88336 : 41951.120: [GC [PSYoungGen: 1902861K->38451K(1871936K)] 3605458K->1770219K(5387072K), 0.1473680 secs] [Times: user=0.18 sys=0.00, real=0.15 secs]
    Line 88337 : 41958.626: [GC [PSYoungGen: 1871923K->54656K(1942400K)] 3603691K->1788149K(5457536K), 0.1552370 secs] [Times: user=0.16 sys=0.00, real=0.15 secs]
    Line 88338 : 41966.122: [GC [PSYoungGen: 1893824K->76469K(1939328K)] 4634025K->2853942K(5454464K), 0.1254980 secs] [Times: user=0.22 sys=0.00, real=0.13 secs]
    Line 88339 : 41967.458: [GC [PSYoungGen: 1358774K->17127K(1941760K)] 4136247K->3836163K(6037760K), 1.0412470 secs] [Times: user=0.80 sys=0.34, real=1.04 secs]
    Line 88340 : 41968.499: [Full GC[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor1047]
    Line 88471 : 41975.139: [GC-- [PSYoungGen: 1836416K->1836416K(1941760K)] 4982380K->4982380K(6037760K), 0.0646720 secs] [Times: user=0.06 sys=0.01, real=0.06 secs]
    Line 88472 : 41975.204: [Full GC[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor1202]
    Line 88543 : 41979.042: [GC-- [PSYoungGen: 1837491K->1837491K(1941760K)] 4983455K->4983455K(6037760K), 0.3140620 secs] [Times: user=0.63 sys=0.00, real=0.32 secs]
    Line 88544 : 41979.356: [Full GC[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor671]
    Line 88560 : 41985.093: [GC-- [PSYoungGen: 1830269K->1830269K(1941760K)] 4795149K->4795149K(6037760K), 0.3286810 secs] [Times: user=0.63 sys=0.00, real=0.33 secs]
    Line 88561 : 41985.422: [Full GC [PSYoungGen: 1830269K->1831614K(1941760K)] [PSOldGen: 2964879K->2964879K(4096000K)] 4795149K->4796494K(6037760K) [PSPermGen: 123099K->123099K(126656K)], 3.1776690 secs] [Times: user=3.17 sys=0.01, real=3.18 secs]
    Line 88562 : 41988.810: [GC-- [PSYoungGen: 1836416K->1836416K(1941760K)] 4901950K->4901950K(6037760K), 0.2989710 secs] [Times: user=0.63 sys=0.00, real=0.30 secs]
    Line 88563 : 41989.109: [Full GC [PSYoungGen: 1836416K->1837766K(1941760K)] [PSOldGen: 3065534K->3065534K(4096000K)] 4901950K->4903301K(6037760K) [PSPermGen: 123099K->123099K(126528K)], 3.1866390 secs] [Times: user=3.17 sys=0.00, real=3.19 secs]
    Line 88564 : 41992.341: [GC-- [PSYoungGen: 1837766K->1837766K(1941760K)] 4903301K->4903301K(6037760K), 0.3023900 secs] [Times: user=0.63 sys=0.00, real=0.30 secs]
    Line 88565 : 41992.643: [Full GC [PSYoungGen: 1837766K->1837766K(1941760K)] [PSOldGen: 3065534K->3065534K(4096000K)] 4903301K->4903301K(6037760K) [PSPermGen: 123099K->123099K(125952K)], 3.1959920 secs] [Times: user=3.17 sys=0.01, real=3.20 secs]
    Line 88566 : 41995.849: [GC-- [PSYoungGen: 1837766K->1837766K(1941760K)] 4903301K->4903309K(6037760K), 0.3198970 secs] [Times: user=0.63 sys=0.00, real=0.32 secs]
    Line 88567 : 41996.169: [Full GC [PSYoungGen: 1837766K->1813137K(1941760K)] [PSOldGen: 3065542K->3062041K(4096000K)] 4903309K->4875179K(6037760K) [PSPermGen: 123099K->123099K(125888K)], 5.4472620 secs] [Times: user=5.44 sys=0.00, real=5.45 secs]
    Line 88568 : 42001.746: [GC-- [PSYoungGen: 1836416K->1836416K(1941760K)] 4898457K->4898457K(6037760K), 0.2801550 secs] [Times: user=0.65 sys=0.00, real=0.28 secs]
    Line 88569 : 42002.026: [Full GC [PSYoungGen: 1836416K->1837744K(1941760K)] [PSOldGen: 3062041K->3062041K(4096000K)] 4898457K->4899786K(6037760K) [PSPermGen: 123099K->123099K(125824K)], 3.2083830 secs] [Times: user=3.20 sys=0.01, real=3.21 secs]
    Line 88570 : 42005.266: [GC-- [PSYoungGen: 1837744K->1837744K(1941760K)] 4899786K->4899786K(6037760K), 0.2898370 secs] [Times: user=0.59 sys=0.00, real=0.29 secs]
    Line 88571 : 42005.556: [Full GC [PSYoungGen: 1837744K->1837744K(1941760K)] [PSOldGen: 3062041K->3062041K(4096000K)] 4899786K->4899786K(6037760K) [PSPermGen: 123099K->123099K(125312K)], 3.2037720 secs] [Times: user=3.20 sys=0.01, real=3.20 secs]
    Line 88572 : 42008.805: [GC-- [PSYoungGen: 1837744K->1837744K(1941760K)] 4899786K->4899794K(6037760K), 0.3347480 secs] [Times: user=0.59 sys=0.00, real=0.33 secs]
    Line 88573 : 42009.140: [Full GC [PSYoungGen: 1837744K->1837744K(1941760K)] [PSOldGen: 3062049K->3062049K(4096000K)] 4899794K->4899794K(6037760K) [PSPermGen: 123099K->123099K(125312K)], 3.1690990 secs] [Times: user=3.16 sys=0.00, real=3.17 secs]
    Line 88574 : 42012.319: [GC-- [PSYoungGen: 1837744K->1837744K(1941760K)] 4899794K->4899794K(6037760K), 0.3056590 secs] [Times: user=0.62 sys=0.00, real=0.31 secs]
    Line 88575 : 42012.625: [Full GC [PSYoungGen: 1837744K->1813115K(1941760K)] [PSOldGen: 3062049K->3060814K(4096000K)] 4899794K->4873929K(6037760K) [PSPermGen: 123099K->123099K(124800K)], 4.9230010 secs] [Times: user=4.92 sys=0.01, real=4.92 secs]
    Line 88576 : 42017.661: [GC-- [PSYoungGen: 1836416K->1836416K(1941760K)] 4897230K->4897230K(6037760K), 0.2799600 secs] [Times: user=0.66 sys=0.00, real=0.28 secs]
    The following JVM options were used
    -Xms512M -XX:MaxPermSize=260M -Xmx6000M

    Any solution on this one?
    i have same question.

  • URGENT: Full Time Loop: Multiple QT Files with Video

    Hi,
    I have a presentation that contains only 1 slide.
    Contents:
    Video-movie: 2 min.
    3 QT files on a loop.
    Question:
    How do I have the QT files loop for the entire 2 minutes of the video?
    THIS IS URGENT; I NEED TO PRESENT THIS AT 7PM TONIGHT.
    THANKS.

    Hi,
    This is what i have:
    2 minute video
    3 self-looping QT files
    I want all 4 files to play simultaneously during the entire 2 minutes.
    You are certain that QT Pro allows to set these parameters?
    Where would I go within QT Pro?

  • Server goes into constant Full GC loop after running for a day

    This is a servlet application running under Resin, with Java hotspot 1.5_13 on Linux 64bit OS. JVM args are:
    -verbosegc -Xms8G -Xmx8G -XX:NewSize=512m -XX:MaxNewSize=512m -XX:+TraceClassUnloading -XX:+UseParallelGC -XX:PermSize=512M -XX:MaxPermSize=512M -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -XX:+DisableExplicitGC
    After running for a day or so, the server goes in to constant Full GC every few seconds, essentially hanging the server. Here is an excerpt of the JVM log:
    127731.579: [Full GC [PSYoungGen: 156635K->0K(352576K)] [PSOldGen: 7751937K->2260734K(7864320K)] 7908573K->2260734K(8216896K) [PSPermGen: 62855K->62855K(524288K)], 5.2972428 secs]
    127737.596: [GC [PSYoungGen: 179328K->157147K(351040K)] 2440062K->2417881K(8215360K), 0.1275439 secs]
    127739.066: [GC [PSYoungGen: 336475K->155824K(355136K)] 2709605K->2683786K(8219456K), 0.1729460 secs]
    127740.502: [GC [PSYoungGen: 340464K->169143K(353792K)] 2980821K->2836693K(8218112K), 0.1914048 secs]
    127741.562: [GC [PSYoungGen: 353783K->166305K(345344K)] 3021333K->2860977K(8209664K), 0.1367291 secs]
    127742.973: [GC [PSYoungGen: 340908K->153430K(349568K)] 3147976K->3124907K(8213888K), 0.1970560 secs]
    127743.946: [GC [PSYoungGen: 328278K->156065K(349568K)] 3299755K->3277928K(8213888K), 0.1868634 secs]
    127745.498: [GC [PSYoungGen: 330183K->156854K(349568K)] 3564442K->3545105K(8213888K), 0.1836370 secs]
    From the log it seemed that the memory usage jumped by 150M to 250M within 1.5 second, even when the user traffic was very light (a couple of page views a second, vs. 10 page views a second at peak). The same app was running fine for many hours on a Windows dev machine in load testing condition with about 300M heapsize. No memory leakage was found so far. (it would be pretty unlikely to have such a large memory leakage without being noticed in dev and testing)
    Thanks for any help.
    Edited by: tuxzilla on Nov 16, 2008 11:43 PM
    Edited by: tuxzilla on Nov 16, 2008 11:46 PM

    A NewSize of 512m seems small for an 8G heap. This would probably cause most objects to be rapidly tenured into the OldGen heap space. (Ultimately depends on your application.) You might consider either using a NewRatio in place of NewSize/MaxNewSize or not use either and instead see how the jvm handles things itself with"-XX:+UseAdaptiveSizePolicy"
    VisualVM is a good graphical tool for watching gc activity.
    NewRatio=1 is the largest you can go for Eden, which will set (Eden and survivor spaces) equal to oldGen space. ie, for 8G, 4g each.
    Watch activity in the gc tool, you will see "sawtooth" activity. If your sawtooth pattern does not maintain a flat profile, then you have in fact have a memory leak.

  • Adobe Reader X won't loop a slideshow.

    I generate a slideshow in Serif PagePlus and one of the options when I publish to pdf slideshow is "Loop Slideshow". This has worked fine for years, until, by the look of it the installation of  AR X. In AR X the slideshow just hangs at the end of the show so my rolling message board no longer works. Setting the Edit > Preferences > Full Screen - "Loop after last page" option in AR enables the slideshow to loop OK. However this isn't needed in previous versions of AR and I can't reckon on all users having this option set.
    Is it a bug?
    Art

    I did the following and it fixed the problem...
    Let us assign permissions to the C drive(or the drive where you have installed the OS) and then check.
    To apply permissions to a file or folder for a user:
    a. Right-click on the C drive and then click Properties.
    c. Click the Security tab, and then click Edit.
    d. Do one of the following:
        i. To set permissions for a user that is not listed under Group or user names, click Add, type the name of the user or group, click OK, select the permissions, and then click OK.
        ii. To change or remove permissions from an existing group or user, click the name of the group or user, select the permissions, and then click OK.

  • Full GC bug with JVM 1.5.0

    Hi people,
    Since we switched from JRE 1.5.0_08 to 1.5.0_11_64, we are encountering application freezes due to infinite full GC loops.
    Sun mentionned this runtime problem as bug 6545719 (*http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6545719*) since jre 1.5.0_11 fixed in version 1.5.0_15.
    I asbolutely need to reproduce the bug before we switch to jre 1.5.0_15. The problem is that i can't find the PermLeak.java class mentionned in the URL above.
    Can anybody tell me how/where can i get this class?
    Thanx in advance

    The test case was submitted by a third party, so we (Sun) need approval to release it. It's easier to describe how to write your own test. Use an infinite loop that appends to a string variable s and then calls s.intern() on each iteration. You want s to fill the permanent generation (default 64MB), so best to grow it quickly. You also need to use s somewhere in the loop, by printing out part of it, or printing its length. Otherwise if the method is compiled it might get optimized away. Good luck.
    -John

  • Data model - is tables and relationships between them are graph or tree

    Hello
    I want to ask if tables in database are nodes of graph what should this graph looks like - like real graph (with
    cycles) or tree ?
    Let the tables are nodes of graph and the relationships between the tables are edges in the graph.
    10x all
    Edited by: user10860289 on Apr 2, 2009 1:37 PM
    Edited by: user10860289 on Apr 2, 2009 1:37 PM
    Edited by: user10860289 on Apr 2, 2009 1:39 PM
    Edited by: user10860289 on Apr 2, 2009 2:04 PM

    You can put the \ tag before and after text to preserve white space.  That likely makes things easier to read if you're trying to post ASCII graphs.
    I wouldn't hesitate to use the proper set of tables and relationships for the entities I was trying to model.  Would I be concerned if my data model were full of loops?  Sure, that might cause me to double-check that I hadn't done something silly.  Would I be concerned if my data model had a loop if that was the best way to model something?  Not at all.
    There is no theoretical answer because the quality of a data model has nothing to do with whether it is more tree-like or more graph-like. 
    Justin                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • Organizing images for a photo album (to be printed) not working as expected

    I am trying to create a group of selects from a vacation from which I will print 40 non-snorkeling photos to put in a physical photo album. Here’s what I’m doing:
    Created project Hawaii, imported about 400 images.
    Created keywords "Hawaii", “Snorkeling Trip” and “Everything Else”
    Created Smart Album “Land and Air” with keywords “Hawaii” and “Everything Else”
    Created Smart Album “Snorkeling Trip” with keywords “Hawaii” and “Snorkeling Trip”
    Created empty Album “Photo Album”
    At this point I have about 400 images in the project Hawaii, 350 in Smart Album “Land and Air” and 50 in Smart Album “Snorkeling Trip”. So far everything is working as expected.
    Next I selected the Smart Album “Land and Air”, switched to the Ratings & Keywords view, walked through all images and found 40 to rate 5-stars. I also cropped and made some adjustments.
    Next I re-arranged these 40 selects to an order that better depicts a story. Note: At this point the sort field indicates “Custom” as expected.
    Next I dragged these 40 selects into empty Album “Photo Album”. This is where the problems begin:
    In the Album "Photo Album", the sort order changed to “Image Date” and “Custom” is now grayed out. I can not change the order of the images.
    All of these images are “- version 2”. If I click on the Smart Album “Land and Air” these 40 “- version 2” images appear there, too, in addition to the ones that are already there. I.E. There are 40 more images in “Land and Air”, 40 of the original images and 40 of “- version 2”. Interestingly, the originals and “- version 2” images are identical – they are both cropped and adjusted.
    I’m confused as to why there are “- version 2” images when they are the same (with crops and adjustments) as version "1”. What I expected was to just have the 40 images I selected out and arranged in the Album “Photo Album” and the original 40 in Smart Album “Land and Air” not duplicated and would (or perhaps would not?) reflect the crops and adjustments, and keywording.
    How should I be doing this? What am I doing wrong?

    Beardheart wrote:
    The problem is that when I open a new project and try to use that loop, the loop doesn't appear in the loop browser.
    http://www.bulletsandbones.com/GB/GBFAQ.html#missingloops ?
    (Let the page FULLY load. The link to your answer is at the top of your screen)
    I assumed a loop added to the library would be available for all users
    no, only the user that created it
    and all projects,
    see the first link
    if I could just export this loop as a wav file
    GB only exports AIFF, AAC, and mp3, however you can convert them to a wav if you need to:
    http://www.bulletsandbones.com/GB/GBFAQ.html#converttowav
    (Let the page FULLY load. The link to your answer is at the top of your screen)
    to the desktop or something and then pull it into the new project, but I can't find any way to do that.
    export the part you want:
    http://www.bulletsandbones.com/GB/GBFAQ.html#exportsections
    (Let the page FULLY load. The link to your answer is at the top of your screen)
    and import that:
    http://www.bulletsandbones.com/GB/GBFAQ.html#importaudio
    (Let the page FULLY load. The link to your answer is at the top of your screen)
    I looked under /Library/Audio/Apple Loops/Apple/Apple Loops for Garageband {...} and that folder is full of loops, but not the one I have created.
    http://www.bulletsandbones.com/GB/GBFAQ.html#myloopsstored
    (Let the page FULLY load. The link to your answer is at the top of your screen)

  • Help with NetBeans 4.0

    Hello - I was wondering if there is anyone here who knows the inside of the Netbeans IDE pretty well. I'm using it at work where all our software is installed on a network. The network drive which it is installed and running off of we do not have write access to.
    Well I notice problems where I was unable to add libraries as well as for some reason it kept saying missing junit library. Another problem is I tried to switch from JDK 1.4 to JDK 1.5 but when I did it still didn't recognize some of the new code features such as the foreach command.
    Well I was wondering if I copied the install directory over to a drive I can write to would this solve the problem? Is there anything that I would have to modify in the directory to make sure everything is pointing correctly? Also how do I fix the code insight when switching to JDK 1.5?
    I know this sucks - I haven't received admin rights yet to install locally so this is the best I can do for now.
    Thanks,
    Dan

    anyone?I'm pretty sure that Netbeans 4.0 did not have full support for JDK1.5. You have to move to Netbeans 4.1 .
    p.s. In my opinion, Netbeans 4.0 was unusable.

  • Internal compilation error

    I have got the following error message while compiling a small Java application:
    "Internal compilation error, terminated with a fatal exception". I am using EA1. Need help.
    Thanks...

    I am having the same problem. I cannot find the "use JavaC" checkbox that you refer of.
    I am using J2SDK1.4.2_10 and the base installation of 10g (10.1.2 - production).
    I set the "SetJavaHome" variable in the jdev.conf file correctly
    I installed jDeveloper into the directory "c:\jdev"
    I have set the JAVA_HOME and the CLASSPATH variables.
    I tried to uninstall everything and install the 10g FULL install with jdk1.4.2_06 (10.1.2 - production) but had the same problem.
    Still the same error every time I try to compile i simple "Hello World" program.
    Also the "Profiles->Development->Libraries" tab in the "Tools->Project Properties" causes a null pointer exception when I try to select it.
    Any help would be appreciated. I need to get this up and running as soon as possible.

  • Is there a Quicktime movie Jukebox plugin or software option available?

    I currently air television programing on my commercial cable channel by using a Mac in my studio playing a single eight hour full quality quicktime movie file in full screen loop. The video and audio are then feed to a single slingbox in the office. The sling box is programed for remote viewing and is picked by another Mac at the cable company header. That computer then feeds the full screen quicktime video and audio into the cable company modulator, which broadcast the looped full quality quicktime that is running in loop at the studio.
    PROBLEM - In order to update and revise footage I have to create another 70 GB full quality quicktime file with the new content. If I were able to create mutipule smaller individual full quality quicktime files and play them thru a juke box solution with loop I could then just replace the individual smaller quicktime program files individually without having to crate a complete new huge full quality quicktime file. Bottom line is there a way to duplicate the iTune random and loop play found for audio files in itunes for Quicktime Movies. Any ideas would be greatly appreciated.

    You'll need this plugin.
    http://www.hamburgpromedia.com/products/mxf4mac/FCP-X-support/Final-Cut-Pro-X-su pport.php

  • Mic Sampling - Smallest Sample size?

    I presumed if I use line.read(), it will return as soon as it reads the number of bytes requested, however I'm finding that it won't return until a much larger sample has been taken.
    I initialize AudioFormat: (rate = 44100)
    return new AudioFormat(rate, 16, 1, true, false);
    I run this in a full-out loop:
    int available = line.available();
    System.out.println(line.available());
    int read = line.read(tmp, 0, 916);
    What I see is that line.available will reach some number around 10k and then actually start returning samples, here's a typical output:
    11016
    10100
    9184
    8268
    7352
    6436
    5520
    4604
    3688
    2772
    1856
    940
    24
    (notice it decreases by 916 each time, as if no new samples are coming in)
    Its apparently waiting until it has a certain number of samples and then "releasing" them to the line.read() method. Doing some testing, apparently if I wait until .available() >= 2756, I can actually obtain just that number of samples. I see that 2756 is 44.1k / 16. HOWEVER, if I put 2756 in the .read() line above, it still waits until it gets to about 10k samples before "releasing" the data, it only works if I test the .available() for having 2756 bytes.
    I'm trying to do close to real-time data analysis, but if it waits to release the samples, I have to wait too, I'd really like to get to 916 sample frame (of the most recent data of course). Is this the API, my hardware, or is there a better way/API? Funny because on Android this is not a problem at all, it notifies me at the rate I choose.
    Help!,
    J

    803100 wrote:
    I realized that I could change the buffer size smaller by using line.open(..., bufferSize), that seems to do the trick. However, now that its so small, how do I know if I'm losing bytes?Why would you be losing bytes?

  • Shuffle icon from most recent update rendered next to useless !!

    I love my 64g touch very much. I do construction work & it is vital to the work day. Well since the most recent update which i downloaded & installed like 2 weeks ago the "shuffle" icon is a choice between either shuffle or repeat 1 song over & over for eternity. Before the it was a choice between loop album (?)(which is what i need to get again), loop 1 song, or shuffle. Before this most recent update i was able to click a very small icon that sat above the displayed album cover & set "shuffle" to my liking by clicking the icon, NOW I CANNOT !! Now i get 1 of 2 settings, either the repeat 1 song for eternity setting (which has got to be the most useless setting ever) or the completely random shuffle of which i have no control or desire to use. I SIMPLY WANT TO LOOP THE ENTIRE ALBUM THAT I AM LISTENING TO LIKE I USED TO BE ABLE TO DO JUST 2 WEEKS AGO (but then my 2 year old son messed with my ipod & i lost the setting that i liked))!!
    Please help !! Thank you

    Ok, just to help anyone else who might face tis situation:
    I was wrong!! The blue or white loop selection icon is still there. Take your iPod & hold it so the longer side is standing up vertically, get it so that you can see an album cover while a song is playing, underneath the second counter on the left side of the screen there will be a loop (either white or blue), tap it. This will give you one of 3 settings, here are there descriptions:
    Full Blue Loop: Continuous loop of current album or playlist
    Full Blue Loop with a small 1: Loop 1 song
    White Loop: Loop is now off.
    I hope this helps someone out there !! I broke down & went to the apple store & got help, i couldnt find the answer here (or so i thought lol!!).

  • JDeveloper 10.1.3 with SUSE 10.0  halted

    I have experience in JDeveloper (10.1.3) with Win2000.
    Now I tried to install that sama (10.1.3) to Open SUSE Linux 10.0
    Oracle recommends Red Hat Enterprise Linux 3.0.
    I did not get JDeveloper to go longer than first mini-screen: "Oracle JDeveloper 10g
    Productivity with Choise" and developper stopped.
    Have any experience of JDev with SUSE (10.0)?

    Java: jdk1.5.0_06
    I deleted JDeveloper after earlier message and now downloaded new but without jdk/java.
    chmod +x <jdev_install>/BC4J/bin/bc4j2oc4j ´folder/file does not exists.
    java -jar oc4j.jar -install announced that somithing is deprecated and
    adviced of OC4J administrator password (something).
    <jdev_install>/j2ee/home/application-deployments does not exist.
    I Increaced full PATH to jdk1.5.0_06/bin: , but not to jdk1.5.0_06:
    I started <jdev_install>/jdev/bin/jdev with Nautilus filebrowser + rigth click Open
    as Terminal
    Asked path to jdk1.5.0_06
    and started as in Win2000 (fonts are not suitable)

Maybe you are looking for