Ahoj, díky za průzkum, zkusím se od toho odpíchnout dál.
Martin Dne 9.9.2014 8:08, Jiri Klement napsal(a): > Ahoj, > > kouknul jsem na ten heapdump v Eclipse memory analyzer. Problem je, ze > JTree, ktera zobrazuje seznam provedenych prikazu v JOSM je prilis > velka - priblizne 16k sirka i vyska. Takze kdyz zkousi udelat buffer > na vykresleni, tak ma 16k*16k*4=1GB (a to jenom pro vykresleni jednoho > radku) + pamet v GTK, kterou v dumpu neuvidim. > > Netusim, proc je to tak velke, ale zkusil bych ten dialog se seznamem > prikazu schovat a zkontrolovat konfiguraci, jestli se tam nejakym > omylem nedostali nesmyslne rozmery. > > -- > Jirka > > 2014-09-09 0:59 GMT+02:00 Martin Švec - OSM <[email protected]>: >> Ahoj, >>>> (2) Občas JOSM po kliknutí naráz vyžere celý heap Javy a současně pár >>>> giga paměti X server procesu. Zabitím JOSM procesu se vše zas uvolní. >>>> Zkouším ještě předchozí verzi JOSM, jestli není bug spíš někde mezi >>>> nejnovějším >JOSM, Xserverem a nvidia driverem. >>> Pust josm s paremetry -Xmx2048m -XX:+HeapDumpOnOutOfMemoryError >>> (pripadne mensi heap, jde o to, aby pri te chybe pretekl). JOSM spadne >>> a udela java<pid>.hprof soubor s heapdumpem, do kteryho pak muzem >>> kouknout, co sezralo veskerou pamet. V heapdumpu bude citelna veskera >>> pamet JOSM, takze jestli jeste nepouzivas OsmAuth, tak na nej prejdi, >>> jinak by slo (snadno) vycist tvoje heslo. >> >> Heapdump je k dispozici zde: http://uloz.to/xKexoVkr/java-pid9395-hprof-bz2 >> >> JOSM verze 7480 s -Xmx1500m -XX:+HeapDumpOnOutOfMemoryError >> -XX:HeapDumpPath=/tmp -jar josm-tested.jar >> >> java version "1.8.0_11" >> Java(TM) SE Runtime Environment (build 1.8.0_11-b12) >> Java HotSpot(TM) 64-Bit Server VM (build 25.11-b03, mixed mode) >> >> Koukal jsem do dumpu přes JVisualVM ale žádný jasný leak nevidím. Total >> bytes: 89 251 549 taky rozhodně neodpovídá tomu, co reálně sežral josm >> proces. Pořád ve mě roste podezření, že to žere něco mimo VM Javy, například >> GTK. Mám 6 GB RAM + 4 GB swapu a byl problém vůbec ten dump vyrobit. Při >> -Xmx2000m a vyšších si vzal josm proces přes 8 GB RAM a sejmul ho OOM >> killer, než stihl něco uložit. Stack při OutOfMemoryErroru je pokaždé >> stejný: >> >> ----------------------------------------- >> java.lang.OutOfMemoryError: Java heap space >> Dumping heap to /tmp/java_pid9395.hprof ... >> Heap dump file created [103911020 bytes in 1,262 secs] >> CHYBA: java.lang.OutOfMemoryError: Java heap space >> java.lang.OutOfMemoryError: Java heap space >> at java.awt.image.DataBufferInt.<init>(DataBufferInt.java:75) >> at >> com.sun.java.swing.plaf.gtk.GTKEngine.finishPainting(GTKEngine.java:589) >> at >> com.sun.java.swing.plaf.gtk.GTKEngine.finishPainting(GTKEngine.java:580) >> at >> com.sun.java.swing.plaf.gtk.GTKPainter.paintTreeCellBackground(GTKPainter.java:1181) >> at javax.swing.plaf.synth.SynthTreeUI.paintRow(SynthTreeUI.java:554) >> at javax.swing.plaf.synth.SynthTreeUI.paint(SynthTreeUI.java:359) >> at javax.swing.plaf.synth.SynthTreeUI.update(SynthTreeUI.java:271) >> at javax.swing.JComponent.paintComponent(JComponent.java:777) >> at javax.swing.JComponent.paint(JComponent.java:1053) >> at javax.swing.JComponent.paintChildren(JComponent.java:886) >> at javax.swing.JComponent.paint(JComponent.java:1062) >> at javax.swing.JComponent.paintChildren(JComponent.java:886) >> at javax.swing.JComponent.paint(JComponent.java:1062) >> at javax.swing.JViewport.paint(JViewport.java:744) >> at javax.swing.JComponent.paintChildren(JComponent.java:886) >> at javax.swing.JComponent.paint(JComponent.java:1062) >> at javax.swing.JComponent.paintToOffscreen(JComponent.java:5217) >> at >> javax.swing.BufferStrategyPaintManager.paint(BufferStrategyPaintManager.java:290) >> at javax.swing.RepaintManager.paint(RepaintManager.java:1252) >> at javax.swing.JComponent._paintImmediately(JComponent.java:5165) >> at javax.swing.JComponent.paintImmediately(JComponent.java:4976) >> at javax.swing.RepaintManager$3.run(RepaintManager.java:811) >> at javax.swing.RepaintManager$3.run(RepaintManager.java:794) >> at java.security.AccessController.doPrivileged(Native Method) >> at >> java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75) >> at >> javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:794) >> at >> javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:769) >> at >> javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:718) >> at javax.swing.RepaintManager.access$1100(RepaintManager.java:62) >> at >> javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1680) >> at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) >> at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:744) >> >> Martin >> > _______________________________________________ > Talk-cz mailing list > [email protected] > https://lists.openstreetmap.org/listinfo/talk-cz _______________________________________________ Talk-cz mailing list [email protected] https://lists.openstreetmap.org/listinfo/talk-cz

