Bug 128617 - Memory leaks when using the gtk-qt theme engine
Summary: Memory leaks when using the gtk-qt theme engine
Status: RESOLVED WONTFIX
Alias: None
Product: Platform
Classification: Eclipse Project
Component: SWT (show other bugs)
Version: 3.1   Edit
Hardware: PC Linux-GTK
: P3 critical (vote)
Target Milestone: ---   Edit
Assignee: Billy Biggs CLA
QA Contact:
URL:
Whiteboard:
Keywords: performance
Depends on:
Blocks:
 
Reported: 2006-02-20 06:26 EST by J Decker CLA
Modified: 2014-03-25 19:51 EDT (History)
9 users (show)

See Also:


Attachments
Screenshot (110.05 KB, image/jpeg)
2006-02-21 15:01 EST, J Decker CLA
no flags Details
small SWT test app (760 bytes, text/plain)
2006-03-06 15:23 EST, Shaun Senecal CLA
no flags Details
GTK test app, mimicing SWT test app (337.82 KB, application/octet-stream)
2006-04-06 18:09 EDT, Shaun Senecal CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description J Decker CLA 2006-02-20 06:26:57 EST
After working a couple of hours with Eclipse, the xserver (X Window System Version 6.8.2 (Ubuntu 6.8.2-77 2005101017452)) has allocated a large amount of memory for Eclipse (Version 3.1.0, Build I20050627-1435, JVM java.version=1.4.2-02, Blackdown Java-Linux, -ws gtk).

Eclipse plugins:
- CDT 3.0.1
- Subclipse 0.9.105

--- top shows: ---
Mem:   1026948k total,  1006952k used,    19996k free,     6336k buffers
Swap:  1799272k total,   597428k used,  1201844k free,    85784k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  nFLT COMMAND
 8504 root      15   0 1190m 478m 3132 S 23.4 47.8   7:36.46 2878 Xorg
12458 <auser>   16   0  525m 262m  12m S  1.0 26.1   8:14.62 1100 java
---
Process 12458 being eclipse.

--- xrestop shows: ---
xrestop - Display: localhost:0
          Monitoring 26 clients. XErrors: 23
          Pixmaps:  937942K total, Other:     231K total, All:  938174K total

res-base Wins  GCs Fnts Pxms Misc   Pxm mem  Other   Total   PID Identifier
3000000   763  138    1 9978  214   921398K     27K 921425K 12458
1800000    35   12    1  125 2344     6134K     57K   6191K   ?   KDE Desktop
---

Although, I've searched the web, I have not clue, why it is possible that eclipse allocated 1GIG! of memory from the xserver.

I have reproduced this a lot of times, shut down other applications. I would greatly appreciate any help.

Thanks,
Joe

Additional Information:

--- pmap ---
8504:   /usr/X11R6/bin/X -nolisten tcp :0 vt7 -auth /var/run/xauth/A:0-lXXjFy
00000000    640K rwxs-    [ shmid=0x10000 ]
000a0000    128K rwxs-  /dev/mem
000c0000    192K rwxs-  /dev/mem
000f0000     64K r-xs-  /dev/mem
08048000   1548K r-x--  /usr/X11R6/bin/Xorg
081cb000    200K rwx--  /usr/X11R6/bin/Xorg
081fd000 943004K rwx--    [ anon ]
a6d27000   1324K rwx--    [ anon ]
a6e72000    384K rwxs-    [ shmid=0x4b8008 ]
a6ed2000    384K rwxs-    [ shmid=0x4b0004 ]
a6f32000    384K rwxs-    [ shmid=0x4a8007 ]
a6f92000     12K rwxs-    [ shmid=0x4a0006 ]
a6f95000    384K rwxs-    [ shmid=0x498005 ]
a7055000   5744K rwx--    [ anon ]
a79bd000    384K rwxs-    [ shmid=0x100002 ]
a7a1d000    384K rwxs-    [ shmid=0xf8001 ]
a7a7d000    220K rwx--    [ anon ]
a7ad0000    252K rwx--    [ anon ]
a7bbc000    472K rwx--    [ anon ]
a7c32000     64K rwxs-  /dev/mem
a7c42000 262144K rwxs-  /dev/mem
b7c42000    512K rwxs-  /dev/mem
b7cc2000      8K rwxs-  /dev/dri/card0
b7cc4000    640K rwxs-    [ shmid=0x10000 ]
b7d64000    336K rwx--    [ anon ]
b7db8000   1184K r-x--  /lib/tls/i686/cmov/libc-2.3.5.so
b7ee0000     16K rwx--  /lib/tls/i686/cmov/libc-2.3.5.so
b7ee4000      8K rwx--    [ anon ]
b7ee6000     40K r-x--  /lib/libgcc_s.so.1
b7ef0000      4K rwx--  /lib/libgcc_s.so.1
b7ef1000      8K r-x--  /lib/tls/i686/cmov/libdl-2.3.5.so
b7ef3000      4K rwx--  /lib/tls/i686/cmov/libdl-2.3.5.so
b7ef4000     12K r-x--  /usr/lib/libXdmcp.so.6.0.0
b7ef7000      4K rwx--  /usr/lib/libXdmcp.so.6.0.0
b7ef8000      8K r-x--  /usr/lib/libXau.so.6.0.0
b7efa000      4K rwx--  /usr/lib/libXau.so.6.0.0
b7efb000      4K rwx--    [ anon ]
b7efc000    132K r-x--  /lib/tls/i686/cmov/libm-2.3.5.so
b7f1d000      4K rwx--  /lib/tls/i686/cmov/libm-2.3.5.so
b7f1e000     76K r-x--  /usr/lib/libz.so.1.2.3
b7f31000      4K rwx--  /usr/lib/libz.so.1.2.3
b7f4d000     12K rwx--    [ anon ]
b7f50000     84K r-x--  /lib/ld-2.3.5.so
b7f65000      4K rwx--  /lib/ld-2.3.5.so
bfe4f000     88K rwx--    [ stack ]
ffffe000      4K -----    [ anon ]
 total  1221512K

--- xorg.conf ---
Section "Device"
    Identifier  "Intel Corporation Intel Default Card"
    Driver      "i810"
    BusID       "PCI:0:2:0"
EndSection
Section "Module"
    Load    "bitmap"
    Load    "dbe"
    Load    "ddc"
    Load    "dri"
    Load    "extmod"
    Load    "freetype"
    Load    "glx"
    Load    "int10"
    Load    "record"
    Load    "type1"
    Load    "vbe"
EndSection

Section "DRI"
    Mode    0666
EndSection

--- eclipse configuration ---
*** Date: Mon Feb 20 12:24:40 CET 2006

*** Platform Details:

*** System properties:
eclipse.application=org.eclipse.ui.ide.workbench
eclipse.buildId=I20050627-1435
eclipse.commands=-os
linux
-ws
gtk
-arch
x86
-launcher
/opt/eclipse/eclipse
-name
Eclipse
-showsplash
600
-exitdata
3f0003
-vm
/usr/bin/java
eclipse.product=org.eclipse.sdk.ide
eclipse.startTime=1140431634235
eclipse.vm=/usr/bin/java
eclipse.vmargs=-Xms40m
-Xmx256m
-jar
/opt/eclipse/startup.jar
eof=eof
file.encoding=UTF-8
file.encoding.pkg=sun.io
file.separator=/
java.awt.graphicsenv=sun.awt.X11GraphicsEnvironment
java.awt.printerjob=sun.print.PSPrinterJob
java.class.path=/opt/eclipse/startup.jar
java.class.version=48.0
java.endorsed.dirs=/usr/lib/j2se/1.4/jre/lib/endorsed
java.ext.dirs=/usr/lib/j2se/1.4/jre/lib/ext:/usr/lib/j2se/ext
java.home=/usr/lib/j2se/1.4/jre
java.io.tmpdir=/tmp
java.library.path=/usr/lib/j2se/1.4/jre/lib/i386/client:/usr/lib/j2se/1.4/jre/lib/i386:/usr/lib/j2se/1.4/jre/../lib/i386:/usr/lib:/lib:/usr/lib/j2se/i386:/usr/lib/jni
java.runtime.name=Java(TM) 2 Runtime Environment, Standard Edition
java.runtime.version=Blackdown-1.4.2-02
java.specification.name=Java Platform API Specification
java.specification.vendor=Sun Microsystems Inc.
java.specification.version=1.4
java.util.prefs.PreferencesFactory=java.util.prefs.FileSystemPreferencesFactory
java.vendor=Blackdown Java-Linux Team
java.vendor.url=http://www.blackdown.org/
java.vendor.url.bug=http://www.blackdown.org/cgi-bin/jdk
java.version=1.4.2-02
java.vm.info=mixed mode
java.vm.name=Java HotSpot(TM) Client VM
java.vm.specification.name=Java Virtual Machine Specification
java.vm.specification.vendor=Sun Microsystems Inc.
java.vm.specification.version=1.0
java.vm.vendor=Blackdown Java-Linux Team
java.vm.version=Blackdown-1.4.2-02
line.separator=

org.osgi.framework.bootdelegation=*
org.osgi.framework.executionenvironment=J2SE-1.4
org.osgi.framework.language=en
org.osgi.framework.os.name=Linux
org.osgi.framework.os.version=2.6.12-10-686
org.osgi.framework.processor=i386
org.osgi.framework.system.packages=javax.accessibility,javax.crypto,javax.crypto.interfaces,javax.crypto.spec,javax.imageio,javax.imageio.event,javax.imageio.metadata,javax.imageio.plugins.jpeg,javax.imageio.spi,javax.imageio.stream,javax.naming,javax.naming.directory,javax.naming.event,javax.naming.ldap,javax.naming.spi,javax.net,javax.net.ssl,javax.print,javax.print.attribute,javax.print.attribute.standard,javax.print.event,javax.rmi,javax.rmi.CORBA,javax.security.auth,javax.security.auth.callback,javax.security.auth.kerberos,javax.security.auth.login,javax.security.auth.spi,javax.security.auth.x500,javax.security.cert,javax.sound.midi,javax.sound.midi.spi,javax.sound.sampled,javax.sound.sampled.spi,javax.sql,javax.swing,javax.swing.border,javax.swing.colorchooser,javax.swing.event,javax.swing.filechooser,javax.swing.plaf,javax.swing.plaf.basic,javax.swing.plaf.metal,javax.swing.plaf.multi,javax.swing.table,javax.swing.text,javax.swing.text.html,javax.swing.text.html.parser,javax.swing.text.rtf,javax.swing.tree,javax.swing.undo,javax.transaction,javax.transaction.xa,javax.xml.parsers,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.transform.stream,org.ietf.jgss,org.omg.CORBA,org.omg.CORBA_2_3,org.omg.CORBA_2_3.portable,org.omg.CORBA.DynAnyPackage,org.omg.CORBA.ORBPackage,org.omg.CORBA.portable,org.omg.CORBA.TypeCodePackage,org.omg.CosNaming,org.omg.CosNaming.NamingContextExtPackage,org.omg.CosNaming.NamingContextPackage,org.omg.Dynamic,org.omg.DynamicAny,org.omg.DynamicAny.DynAnyFactoryPackage,org.omg.DynamicAny.DynAnyPackage,org.omg.IOP,org.omg.IOP.CodecFactoryPackage,org.omg.IOP.CodecPackage,org.omg.Messaging,org.omg.PortableInterceptor,org.omg.PortableInterceptor.ORBInitInfoPackage,org.omg.PortableServer,org.omg.PortableServer.CurrentPackage,org.omg.PortableServer.POAManagerPackage,org.omg.PortableServer.POAPackage,org.omg.PortableServer.portable,org.omg.PortableServer.ServantLocatorPackage,org.omg.SendingContext,org.omg.stub.java.rmi,org.w3c.dom,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers
org.osgi.framework.vendor=Eclipse
org.osgi.framework.version=1.3.0
org.osgi.supports.framework.extension=true
org.xml.sax.driver=org.apache.crimson.parser.XMLReaderImpl
os.arch=i386
os.name=Linux
os.version=2.6.12-10-686
osgi.arch=x86
osgi.bundles=org.eclipse.core.runtime@2:start, org.eclipse.update.configurator@3:start
osgi.bundlestore=/opt/eclipse/configuration/org.eclipse.osgi/bundles
osgi.configuration.area=file:/opt/eclipse/configuration/
osgi.framework=file:/opt/eclipse/plugins/org.eclipse.osgi_3.1.0.jar
osgi.framework.beginningstartlevel=1
osgi.framework.shape=jar
osgi.framework.version=3.0.0
osgi.install.area=file:/opt/eclipse/
osgi.instance.area=file:/home/auser/workspace/
osgi.instance.area.default=file:/home/auser/workspace/
osgi.logfile=/home/auser/workspace/.metadata/.log
osgi.manifest.cache=/opt/eclipse/configuration/org.eclipse.osgi/manifests
osgi.nl=en_US
osgi.os=linux
osgi.splashLocation=/opt/eclipse/plugins/org.eclipse.platform_3.1.0/splash.bmp
osgi.splashPath=platform:/base/plugins/org.eclipse.platform
osgi.syspath=/opt/eclipse/plugins
osgi.ws=gtk
path.separator=:
sun.arch.data.model=32
sun.boot.class.path=/usr/lib/j2se/1.4/jre/lib/rt.jar:/usr/lib/j2se/1.4/jre/lib/i18n.jar:/usr/lib/j2se/1.4/jre/lib/sunrsasign.jar:/usr/lib/j2se/1.4/jre/lib/jsse.jar:/usr/lib/j2se/1.4/jre/lib/jce.jar:/usr/lib/j2se/1.4/jre/lib/charsets.jar:/usr/lib/j2se/1.4/jre/classes
sun.boot.library.path=/usr/lib/j2se/1.4/jre/lib/i386
sun.cpu.endian=little
sun.cpu.isalist=
sun.io.unicode.encoding=UnicodeLittle
sun.java2d.fontpath=
sun.net.client.defaultConnectTimeout=60000
sun.net.client.defaultReadTimeout=60000
sun.os.patch.level=unknown
user.country=US
user.dir=/home/auser
user.home=/home/auser
user.language=en
user.name=auser
user.timezone=Europe/someCity
vendor=Apache Software Foundation
vendor-url=http://xml.apache.org/xalan-j
version=2.4.1

*** Features:
org.eclipse.cdt (3.0.1) "Eclipse C/C++ Development Tools"
org.eclipse.cdt.sdk (3.0.1) "Eclipse C/C++ Development Tools SDK"
org.eclipse.cdt.source (3.0.1) "Eclipse C/C++ Development Tools (Source)"
org.eclipse.jdt (3.1.0) "Eclipse Java Development Tools"
org.eclipse.jdt.source (3.1.0) "Eclipse Java Development Tools SDK"
org.eclipse.pde (3.1.0) "Eclipse Plug-in Development Environment"
org.eclipse.pde.source (3.1.0) "Eclipse Plug-in Development Environment Developer Resources"
org.eclipse.platform (3.1.0) "Eclipse Platform"
org.eclipse.platform.source (3.1.0) "Eclipse Platform Plug-in Developer Resources"
org.eclipse.rcp (3.1.0) "Eclipse RCP"
org.eclipse.rcp.source (3.1.0) "Eclipse RCP Plug-in Developer Resources"
org.eclipse.sdk (3.1.0) "Eclipse Project SDK"
org.tigris.subversion.subclipse (0.9.105) "Subclipse"

*** Plug-in Registry:
com.patternbox.eclipse.editor (1.1.4) "Patternbox Plugin" [Resolved]
org.apache.ant (1.6.5) "Apache Ant" [Resolved]
org.apache.lucene (1.4.3) "Apache Lucene" [Resolved]
org.eclipse.ant.core (3.1.0) "Ant Build Tool Core" [Resolved]
org.eclipse.ant.ui (3.1.0) "Ant UI" [Resolved]
org.eclipse.cdt (3.0.1) "Eclipse C/C++ Development Tools" [Resolved]
org.eclipse.cdt.core (3.0.1) "C/C++ Development Tools Core" [Active]
org.eclipse.cdt.core.linux (3.0.1) "C/C++ Development Tools Core for Linux" [Resolved]
org.eclipse.cdt.core.linux.x86 (3.0.1) "X86 Fragment" [Resolved]
org.eclipse.cdt.debug.core (3.0.1) "C/C++ Development Tools Debug Model" [Active]
org.eclipse.cdt.debug.mi.core (3.0.1) "C/C++ Development Tools GDB/MI CDI Debugger Core" [Resolved]
org.eclipse.cdt.debug.mi.ui (3.0.1) "C/C++ Development Tools GDB/MI CDI Debugger UI" [Resolved]
org.eclipse.cdt.debug.ui (3.0.1) "C/C++ Development Tools Debugger UI" [Active]
org.eclipse.cdt.doc.isv (3.0.1) "C/C++ Plugin Developer Guide" [Resolved]
org.eclipse.cdt.doc.user (3.0.1) "C/C++ Development User Guide" [Resolved]
org.eclipse.cdt.launch (3.0.1) "C/C++ Development Tools Launching Support" [Active]
org.eclipse.cdt.make.core (3.0.1) "C/C++ Standard make Build Core" [Active]
org.eclipse.cdt.make.ui (3.0.1) "C/C++ Standard make Build UI" [Active]
org.eclipse.cdt.managedbuilder.core (3.0.1) "C/C++ Managed Builder Core" [Active]
org.eclipse.cdt.managedbuilder.gnu.ui (3.0.1) "GNU Managed Build Definitions" [Resolved]
org.eclipse.cdt.managedbuilder.ui (3.0.1) "C/C++ Managed Builder UI" [Active]
org.eclipse.cdt.refactoring (3.0.1) "C/C++ Refactoring" [Resolved]
org.eclipse.cdt.sdk (3.0.1) "Eclipse C/C++ Development Tools SDK" [Resolved]
org.eclipse.cdt.source (3.0.1) "Eclipse C/C++ Development Tools (Source)" [Resolved]
org.eclipse.cdt.source.linux.gtk.x86 (3.0.1) "Eclipse C/C++ Development Tools (Source)" [Resolved]
org.eclipse.cdt.ui (3.0.1) "C/C++ Development Tools UI" [Active]
org.eclipse.compare (3.1.0) "Compare Support" [Active]
org.eclipse.core.boot (3.1.0) "Core Boot" [Resolved]
org.eclipse.core.commands (3.1.0) "Commands" [Active]
org.eclipse.core.expressions (3.1.0) "Expression Language" [Active]
org.eclipse.core.filebuffers (3.1.0) "File Buffers" [Active]
org.eclipse.core.resources (3.1.0) "Core Resource Management" [Active]
org.eclipse.core.resources.compatibility (3.1.0) "Core Resource Management Compatibility Fragment" [Resolved]
org.eclipse.core.resources.linux (3.1.0) "Core Resource Management Linux Fragment" [Resolved]
org.eclipse.core.runtime (3.1.0) "Core Runtime" [Active]
org.eclipse.core.runtime.compatibility (3.1.0) "Core Runtime Plug-in Compatibility" [Active]
org.eclipse.core.variables (3.1.0) "Core Variables" [Active]
org.eclipse.debug.core (3.1.0) "Debug Core" [Active]
org.eclipse.debug.ui (3.1.0) "Debug UI" [Active]
org.eclipse.help (3.1.0) "Help System Core" [Active]
org.eclipse.help.appserver (3.1.0) "Help Application Server" [Resolved]
org.eclipse.help.base (3.1.0) "Help System Base" [Resolved]
org.eclipse.help.ui (3.1.0) "Help System UI" [Resolved]
org.eclipse.help.webapp (3.1.0) "Help System Webapp" [Resolved]
org.eclipse.jdt (3.1.0) "Eclipse Java Development Tools" [Resolved]
org.eclipse.jdt.core (3.1.0) "Java Development Tools Core" [Resolved]
org.eclipse.jdt.debug (3.1.0) "JDI Debug Model" [Resolved]
org.eclipse.jdt.debug.ui (3.1.0) "JDI Debug UI" [Resolved]
org.eclipse.jdt.doc.isv (3.1.0) "Eclipse JDT Plug-in Developer Guide" [Resolved]
org.eclipse.jdt.doc.user (3.1.0) "Eclipse Java Development User Guide" [Resolved]
org.eclipse.jdt.junit (3.1.0) "Java Development Tools JUnit support" [Resolved]
org.eclipse.jdt.junit.runtime (3.1.0) "Java Development Tools JUnit runtime support" [Resolved]
org.eclipse.jdt.launching (3.1.0) "Java Development Tools Launching Support" [Resolved]
org.eclipse.jdt.source (3.1.0) "Eclipse Java Development Tools SDK" [Resolved]
org.eclipse.jdt.ui (3.1.0) "Java Development Tools UI" [Resolved]
org.eclipse.jface (3.1.0) "JFace" [Active]
org.eclipse.jface.text (3.1.0) "JFace Text" [Active]
org.eclipse.ltk.core.refactoring (3.1.0) "Refactoring Core" [Resolved]
org.eclipse.ltk.ui.refactoring (3.1.0) "Refactoring UI" [Resolved]
org.eclipse.osgi.services (3.1.0) "OSGi Release 3 Services" [Resolved]
org.eclipse.osgi.util (3.1.0) "OSGi R3 Utility Classes" [Resolved]
org.eclipse.pde (3.1.0) "Eclipse Plug-in Development Environment" [Resolved]
org.eclipse.pde.build (3.1.0) "Plug-in Development Environment Build Support" [Resolved]
org.eclipse.pde.core (3.1.0) "Plug-in Development Core" [Resolved]
org.eclipse.pde.doc.user (3.1.0) "Eclipse Plug-in Development User Guide" [Resolved]
org.eclipse.pde.junit.runtime (3.1.0) "PDE JUnit Plug-in Test" [Resolved]
org.eclipse.pde.runtime (3.1.0) "Plug-in Development Environment Runtime" [Resolved]
org.eclipse.pde.source (3.1.0) "Eclipse Plug-in Development Environment Developer Resources" [Resolved]
org.eclipse.pde.ui (3.1.0) "Plug-in Development UI" [Resolved]
org.eclipse.platform (3.1.0) "Eclipse Platform" [Resolved]
org.eclipse.platform.doc.isv (3.1.0) "Eclipse Platform Plug-in Developer Guide" [Resolved]
org.eclipse.platform.doc.user (3.1.0) "Eclipse Workbench User Guide" [Resolved]
org.eclipse.platform.source (3.1.0) "Eclipse Platform Plug-in Developer Resources" [Resolved]
org.eclipse.platform.source.linux.gtk.x86 (3.1.0) "Eclipse Platform Plug-in Developer Resources" [Resolved]
org.eclipse.rcp (3.1.0) "Eclipse RCP" [Resolved]
org.eclipse.rcp.source (3.1.0) "Eclipse RCP Plug-in Developer Resources" [Resolved]
org.eclipse.rcp.source.linux.gtk.x86 (3.1.0) "Eclipse RCP Plug-in Developer Resources" [Resolved]
org.eclipse.sdk (3.1.0) "Eclipse Project SDK" [Resolved]
org.eclipse.search (3.1.0) "Search Support" [Active]
org.eclipse.swt (3.1.0) "Standard Widget Toolkit" [Resolved]
org.eclipse.swt.gtk.linux.x86 (3.1.0) "Standard Widget Toolkit for GTK 2.0" [Resolved]
org.eclipse.team.core (3.1.0) "Team Support Core" [Active]
org.eclipse.team.cvs.core (3.1.0) "CVS Team Provider Core" [Active]
org.eclipse.team.cvs.ssh (3.1.0) "CVS SSH Core" [Resolved]
org.eclipse.team.cvs.ssh2 (3.1.0) "CVS SSH2" [Active]
org.eclipse.team.cvs.ui (3.1.0) "CVS Team Provider UI" [Active]
org.eclipse.team.ui (3.1.0) "Team Support UI" [Active]
org.eclipse.text (3.1.0) "Text" [Active]
org.eclipse.tomcat (4.1.30.1) "Tomcat Wrapper" [Resolved]
org.eclipse.ui (3.1.0) "Eclipse UI" [Active]
org.eclipse.ui.browser (3.1.0) "Browser Support" [Resolved]
org.eclipse.ui.cheatsheets (3.1.0) "Cheat Sheets" [Resolved]
org.eclipse.ui.console (3.1.0) "Console" [Active]
org.eclipse.ui.editors (3.1.0) "Default Text Editor" [Active]
org.eclipse.ui.externaltools (3.1.0) "External Tools" [Active]
org.eclipse.ui.forms (3.1.0) "Eclipse Forms" [Active]
org.eclipse.ui.ide (3.1.0) "Eclipse IDE UI" [Active]
org.eclipse.ui.intro (3.1.0) "Welcome Framework" [Resolved]
org.eclipse.ui.presentations.r21 (3.1.0) "R21 Presentation Plug-in" [Resolved]
org.eclipse.ui.views (3.1.0) "Views" [Active]
org.eclipse.ui.workbench (3.1.0) "Workbench" [Active]
org.eclipse.ui.workbench.compatibility (3.1.0) "Workbench Compatibility" [Resolved]
org.eclipse.ui.workbench.texteditor (3.1.0) "Text Editor Framework" [Active]
org.eclipse.update.configurator (3.1.0) "Install/Update Configurator" [Active]
org.eclipse.update.core (3.1.0) "Install/Update Core" [Active]
org.eclipse.update.core.linux (3.1.0) "Install/Update Core for Linux" [Resolved]
org.eclipse.update.scheduler (3.1.0) "Automatic Updates Scheduler" [Active]
org.eclipse.update.ui (3.1.0) "Install/Update UI" [Active]
org.gna.eclox.core (0.4.3) "Eclox Source Documentation Plug-in" [Active]
org.gna.eclox.help (0.4.3) "Eclox Help Plug-in" [Resolved]
org.junit (3.8.1) "JUnit Testing Framework" [Resolved]
org.tigris.subversion.subclipse (0.9.105) "Subclipse" [Resolved]
org.tigris.subversion.subclipse.core (0.9.105) "SVN Team Provider Core" [Active]
org.tigris.subversion.subclipse.ui (0.9.105) "SVN Team Provider UI" [Active]
system.bundle (3.1.0) "OSGi System Bundle" [Active]

*** User Preferences:

*** Current Install Configuration:
Install configuration:
 Last changed on Jan 24, 2006
 Location: file:/opt/eclipse/configuration/org.eclipse.update/platform.xml

 Configured sites:
  platform:/base/

 Configured features:
  ID: org.eclipse.platform, Version: 3.1.0
  ID: org.eclipse.jdt, Version: 3.1.0
  ID: org.eclipse.jdt.source, Version: 3.1.0
  ID: org.eclipse.pde.source, Version: 3.1.0
  ID: org.eclipse.sdk, Version: 3.1.0
  ID: org.eclipse.rcp.source, Version: 3.1.0
  ID: org.eclipse.cdt, Version: 3.0.1
  ID: org.eclipse.rcp, Version: 3.1.0
  ID: org.eclipse.platform.source, Version: 3.1.0
  ID: org.eclipse.cdt.sdk, Version: 3.0.1
  ID: org.eclipse.pde, Version: 3.1.0
  ID: org.tigris.subversion.subclipse, Version: 0.9.105
  ID: org.gna.eclox, Version: 0.4.3
  ID: org.eclipse.cdt.source, Version: 3.0.1

 Configured plug-ins:
  file:/opt/eclipse/plugins/org.eclipse.jdt.ui_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.pde.build_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.platform.source_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.rcp_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.ui.externaltools_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.ui.console_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.ltk.ui.refactoring_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.core.commands_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.ui_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.jdt_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.team.cvs.core_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.osgi.services_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.jdt.debug.ui_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.swt_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.jdt.junit.runtime_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.core.filebuffers_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.core.runtime.compatibility_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.ui.workbench.texteditor_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.tomcat_4.1.30.1/
  file:/opt/eclipse/plugins/org.eclipse.team.ui_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.help.appserver_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.jdt.launching_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.platform_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.rcp.source.linux.gtk.x86_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.team.cvs.ui_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.pde.ui_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.rcp.source_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.jdt.doc.isv_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.core.resources.compatibility_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.debug.core_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.ui.views_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.osgi.util_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.search_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.debug.ui_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.ui.ide_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.help_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.platform.doc.isv_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.jdt.doc.user_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.jdt.source_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.pde_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.jface_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.pde.doc.user_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.ui.intro_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.ant.core_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.help.base_3.1.0.jar
  file:/opt/eclipse/plugins/org.junit_3.8.1/
  file:/opt/eclipse/plugins/org.eclipse.jface.text_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.update.configurator_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.osgi_3.1.0.jar
  file:/opt/eclipse/plugins/org.apache.ant_1.6.5/
  file:/opt/eclipse/plugins/org.eclipse.platform.source.linux.gtk.x86_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.text_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.ant.ui_3.1.0.jar
  file:/opt/eclipse/plugins/org.apache.lucene_1.4.3/
  file:/opt/eclipse/plugins/org.eclipse.team.cvs.ssh2_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.help.ui_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.jdt.junit_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.platform.doc.user_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.core.expressions_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.ui.editors_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.update.scheduler_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.core.resources_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.ui.presentations.r21_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.jdt.debug_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.pde.source_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.team.cvs.ssh_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.team.core_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.ui.workbench.compatibility_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.pde.junit.runtime_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.sdk_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.core.boot_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.pde.core_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.swt.gtk.linux.x86_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.help.webapp_3.1.0/
  file:/opt/eclipse/plugins/org.eclipse.ui.browser_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.compare_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.ltk.core.refactoring_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.pde.runtime_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.ui.workbench_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.update.core.linux_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.core.variables_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.jdt.core_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.update.core_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.ui.forms_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.core.runtime_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.core.resources.linux_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.update.ui_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.ui.cheatsheets_3.1.0.jar
  file:/opt/eclipse/plugins/org.eclipse.cdt.core_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.ui_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.debug.core_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.debug.mi.core_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.debug.ui_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.launch_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.debug.mi.ui_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.doc.user_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.core.linux_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.make.core_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.make.ui_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.managedbuilder.core_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.managedbuilder.ui_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.core.linux.x86_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.managedbuilder.gnu.ui_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.refactoring_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.source_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.source.linux.gtk.x86_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.sdk_3.0.1/
  file:/opt/eclipse/plugins/org.eclipse.cdt.doc.isv_3.0.1/
  file:/opt/eclipse/plugins/com.patternbox.eclipse_1.1.4/
  file:/opt/eclipse/plugins/org.gna.eclox.core_0.4.3/
  file:/opt/eclipse/plugins/org.gna.eclox.help_0.4.3/
  file:/opt/eclipse/plugins/org.tigris.subversion.subclipse.core_0.9.105/
  file:/opt/eclipse/plugins/org.tigris.subversion.subclipse.ui_0.9.105/
  file:/opt/eclipse/plugins/org.tigris.subversion.subclipse_0.9.105/
Comment 1 John Arthorne CLA 2006-02-20 13:37:44 EST
If it's xorg that is taking the memory, then it could be a leak of SWT resources by some plugin.  Moving to SWT, where they may be able to help diagnose this further.
Comment 2 John Arthorne CLA 2006-02-20 13:40:00 EST
CCing Doug, who I believe is also an UBuntu user.
Comment 3 J Decker CLA 2006-02-20 14:51:57 EST
I have done some additional testing.

Since it is an xserver issue, I have switched drivers from "i810" to "vesa" to see if it is a driver issue.

The situation appears to be a little better since some of the memory gets freed after shutting down eclipse.

the leak though is still present:
---- before shutting down eclipse ---
xrestop - Display: localhost:0
          Monitoring 27 clients. XErrors: 0
          Pixmaps: 1061293K total, Other:     267K total, All: 1061561K total

res-base Wins  GCs Fnts Pxms Misc   Pxm mem  Other   Total   PID Identifier
3000000  1031  138    1 11191  288   1036264K     35K 1036299K   ?   C/C++ - Logger.h - Eclipse SDK

--- top before ---
Mem:   1026948k total,  1009304k used,    17644k free,    19676k buffers
Swap:  1799272k total,   738872k used,  1060400k free,   115176k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  nFLT COMMAND
29304 root      15   0 1071m 488m 2428 S 16.5 48.7  30:13.95  11k Xorg
 4478 auser    15   0  538m 165m  11m S  0.0 16.5   7:22.75  992 java
 5341 auser    15   0  124m  48m  15m S  0.0  4.9   1:50.30  226 firefox-bin

--- xrestop after ---
xrestop - Display: localhost:0
          Monitoring 27 clients. XErrors: 26
          Pixmaps:   27952K total, Other:     193K total, All:   28145K total

res-base Wins  GCs Fnts Pxms Misc   Pxm mem  Other   Total   PID Identifier
3200000   336  155    1  888  213    18756K     17K  18774K   ?   Bug 128617 - xserver (Xorg) allocates a large amount of memory - Mozilla Firefox
1800000    35   12    1  120 1755     6113K     43K   6157K   ?   KDE Desktop

--- top after ---
Mem:   1026948k total,   776936k used,   250012k free,    23480k buffers
Swap:  1799272k total,   718084k used,  1081188k free,   130600k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  nFLT COMMAND
29304 root      15   0  938m 405m 1856 S 26.4 40.4  32:48.31  13k Xorg
 5341 auser    16   0  133m  59m  19m S  0.0  6.0   2:11.80  344 firefox-bi

------------------
Comment 4 Douglas Pollock CLA 2006-02-20 14:52:51 EST
No, I'm not an ubuntu user.  However, could you run a small application called "wininfo" (http://www.freedesktop.org/wiki/Software_2fwininfo)?  It gives information about whichever application's window is under the mouse.  Most interesting would be the "Server Resources" tab.  You might be able to tell us where all the resources are going (e.g., pixmaps, fonts, etc.).
Comment 5 J Decker CLA 2006-02-20 15:10:38 EST
I have reported the bug to the ubuntu folks as well https://launchpad.net/distros/ubuntu/+source/xorg/+bug/32176
Comment 6 J Decker CLA 2006-02-20 15:12:02 EST
First of all, thanks for the replies.

I have run wininfo. Though, I think, "xrestop" shows almost the same information. The output of "xrestop" is shown above.

I have copied the output of both cases (two different runs):
--- xrestop 1 ---
xrestop - Display: localhost:0
          Monitoring 26 clients. XErrors: 23
          Pixmaps:  937942K total, Other:     231K total, All:  938174K total

res-base Wins  GCs Fnts Pxms Misc   Pxm mem  Other   Total   PID Identifier
3000000   763  138    1 9978  214   921398K     27K 921425K 12458
1800000    35   12    1  125 2344     6134K     57K   6191K   ?   KDE Desktop

... the JVM has pid 12458
--- xrestop 2 ---
xrestop - Display: localhost:0
          Monitoring 27 clients. XErrors: 0
          Pixmaps: 1061293K total, Other:     267K total, All: 1061561K total

res-base Wins  GCs Fnts Pxms Misc   Pxm mem  Other   Total   PID Identifier
3000000  1031  138    1 11191  288   1036264K     35K 1036299K   ?   C/C++ -
Logger.h - Eclipse SDK

--------

I think, the Pxm mem (pixmaps) part is the issue here.
Comment 7 Billy Biggs CLA 2006-02-21 00:12:03 EST
Some plugin is likely leaking SWT Images.

Can you try running Eclipse for a while with CDT disabled?

Can you watch in xrestop while you use Eclipse to see what actions
trigger lots of pixmaps to be created?
Comment 8 J Decker CLA 2006-02-21 15:01:20 EST
Created attachment 35096 [details]
Screenshot

I have not disabled CDT, yet, since I am soley coding C++...

I thought, that the problem was resolved. Though, suddenly, xorg allocated 1.7G of memory for eclipse (see screenshot). I was moving stuff around in my svn repository, so the compiler produced a lot of errors when I tried to compile my application. Though, I cannot say what exactly allocates so many pixmaps.
Comment 9 J Decker CLA 2006-02-23 18:41:54 EST
Hi,

the problem is still not resolved. I have watched wininfo to see what actions trigger memory allocation. Though, I really cannot say what specifically takes the memory away.

I am working with CDT. I might be able to disable it and run eclipse without CDT. But, since I am not working then, this might not be a real situation.

I really like eclipse but this is a nightmare... what if it is CDT thats leaking? Could it be a specific problem with my system here?

I always thought, Java apps cannot leak memory. But I know, SWT uses native libs and the JVM itself is not the issue here.

I would appreaciate your comments,
Joe

---------- top -----------
Mem:   1026948k total,   974964k used,    51984k free,     5376k buffers
Swap:  1799272k total,  1442648k used,   356624k free,    57800k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  nFLT COMMAND
19303 root      15   0 1804m 645m 2380 S  8.0 64.4  17:55.67  206 Xorg
30306 user    15   0  555m 106m 9.8m S  0.0 10.6  11:34.67  889 java

--------- xrestop ----------
xrestop - Display: localhost:0
          Monitoring 27 clients. XErrors: 0
          Pixmaps: 1813874K total, Other:     320K total, All: 1814194K total

res-base Wins  GCs Fnts Pxms Misc   Pxm mem  Other   Total   PID Identifier
3400000  1815  138    1 18861  379   1794258K     55K 1794313K   ?   C/C++ - SomeFile.h - Eclipse SDK
Comment 10 J Decker CLA 2006-02-23 19:12:53 EST
Ok, I have done some more investigation:

Here's what I found out. Every time when I run the (developed) program within eclipse, about 2.5 MByte of pixmaps get allocated due to the console output.
--- before run ---
res-base Wins  GCs Fnts Pxms Misc   Pxm mem  Other   Total   PID Identifier
2e00000   543  138    1 2446  171   182881K     20K 182902K   ?   C/C++ - Graph.h - Eclipse SDK
-------------------
--- after run --- 
res-base Wins  GCs Fnts Pxms Misc   Pxm mem  Other   Total   PID Identifier
2e00000   543  138    1 2471  171   185381K     20K 185402K   ?   C/C++ - Graph.h - Eclipse SDK
-------------------
The console output is only textual, though stderr is automatically colored red.

One thing: I have turned on CDT's "Always clean console before building".

Could the console output be the issue here?

Cheers
Comment 11 Douglas Pollock CLA 2006-02-24 10:46:23 EST
I thought it might be the progress dialog/view, but it doesn't seem likely.  (I've run some tests on 3.1 and 3.2.)  I've done some tests with launching, and again I see nothing.

Interesting, it is exactly 25 pixmaps being leaked at exactly 2500KB total.  This is exactly 100KB per pixmap (if they are all equal).  Do you have any views or editors open that are displaying images?
Comment 12 J Decker CLA 2006-02-28 17:19:20 EST
As far as I know, I do not have views or windows open that display images. Thanks for all your efforts so far. In order to have another main pillar, I am in the progress of switching back to vim and gnu autotools build system. Maybe, I have time to debug CDT further.
Comment 13 Shaun Senecal CLA 2006-03-02 14:01:50 EST
I am experiencing the exact same problem, however, I am not using CDT.  Everyone else around here is running RHEL3 which uses XFree86 instead of Xorg (I am on Ubuntu Breezy).  For whatever reason, XFree86 doesn't seem to display this problem.

I am going to try to eliminate as many plugin's as possible (using the M5 release) to see if I can isolate where the problem is occuring.  I also want to try using a newer version of Xorg.  It's a little suspicious that the XFree86 folks arent seeing this problem at all.
Comment 14 Shaun Senecal CLA 2006-03-02 15:07:54 EST
Just a small update...

It seems to be tied to cleaning or building somehow.  I just installed a fresh&clean build of M5 and reimported my projects.  Along the way, I have been using ps to monitor the Xorg process.  Everything was going along as expected, until the projects started to build.  Each time a build (or a clean?) was initiated I would see ~2MB increase in the resident size of the Xorg process.  I also noticed that switching between the "Problems" and "Declarations" tab during the build would also cause additional jumps in memory usage (also ~2MB each).
Comment 15 Douglas Pollock CLA 2006-03-02 15:23:46 EST
(In reply to comment #14)
> I also noticed that switching between the "Problems" and "Declarations" tab
> during the build would also cause additional jumps in memory usage (also
> ~2MB each).

If you close the Problems view (and keep it closed), do you see the same memory spikes?
Comment 16 Shaun Senecal CLA 2006-03-02 16:26:41 EST
Ya, the same spikes happen.  I have closed all of the views down there, and the same problem is happening.  However, I just noticed that simply going to "Project"->"Clean..." causes ~700K spike.  Each time the "Clean" dialog is opened, another 700K is allocated, but never seems to return when you close the dialog (by cancelling or cleaning).  Then, as the "Cleaning Workspace" and "Building WOrkspace" dialogs come up, more spikes are seen.  It looks like the "Cleaning Workspace" dialog causes ~1.6M spike and the "Building Workspace" dialog causes ~90K.

I havent tried debugging into it yet, so I dont know that it is the dialogs that are causing the problem, but since the issue is with Xorg I'm guessing its related.
Comment 17 Billy Biggs CLA 2006-03-02 16:39:13 EST
Shaun, it is wrong to assume that huge memory use by Xorg is a bug
in Xorg.  Xorg allocates memory for pixmaps as requested by X
applications.  Memory spikes are almost always client bugs, not
bugs in the X server itself.  If xrestop shows the memory is used by
Eclipse, it is an Eclipse bug.

Also, if you are seeing high X pixmap use and you are not using CDT,
it is likely this is not the same problem as reported in this bug report.
More information is required to know for sure.
Comment 18 Shaun Senecal CLA 2006-03-02 16:58:49 EST
I didnt mean to imply the problem was actually in Xorg, but that it was tied to the way it is being used.  Either way, I have run xrestop and I can see that Eclipse is using more and more Pixmap memory every time a dialog is opened.  Currently, xrestop is displaying:

res-base Wins  GCs Fnts Pxms Misc   Pxm mem  Other   Total   PID Identifier
2c00000   436  139    1 1048  728    62892K     31K  62923K   ?   Java - BDPException.java - Eclipse SDK

Once I open the "Find" dialog it becomes:

res-base Wins  GCs Fnts Pxms Misc   Pxm mem  Other   Total   PID Identifier
2c00000   494  139    1 1059  742    64092K     33K  64125K   ?   Java - BDPException.java - Eclipse SDK

and stays that way after the dialog has been closed.  Eventually there are hundreds of megs associated with these pixmaps. 


As for CDT... It could be that these problems arent related, but I didnt think this bug had been determined to be in CDT.  Since the behaviour I'm seeing seems to happen with any dialog, I assume it would affect CDT the same way.  If you would like me to create a new bug for this issue, let me know.

Is there any other information I can get for you right now?
Comment 19 Shaun Senecal CLA 2006-03-06 15:23:07 EST
Created attachment 35784 [details]
small SWT test app

when run under Ubuntu (Breezy), this test app will continually allocate X resources, slowly bringing the box down
Comment 20 Shaun Senecal CLA 2006-03-06 15:30:24 EST
Has anyone been able to reproduce this?  It seems to be specific to using Ubuntu (well, the libs it uses), since I am unable to reproduce the behaviour on RHAS4.   I am also not able to reproduce the behaviour by remotely running Eclipse from the AS4 box and displaying to my Ubuntu box.  However, when Eclipse (or the little test app I have created) is run from Ubuntu, the number of pixmaps generated continuately grows as the user uses the GUI.  Below are the lib versions of the X servers used and the GTK2.0 libs.

Ubuntu box:
X Window System Version 6.8.2 (Ubuntu 6.8.2-77 20051010174523 root@vernadsky.buildd)
Release Date: 9 February 2005
X Protocol Version 11, Revision 0, Release 6.8.2
Build Operating System: Linux 2.6.10 i686 [ELF]
Current Operating System: Linux vanssenecal02 2.6.12-10-686 #1 Mon Feb 13 12:18:37 UTC 2006 i686
Build Date: 10 October 2005

GTK2.0  v2.8.6


RedHat AS4 box:
X Window System Version 6.8.2
Release Date: 9 February 2005
X Protocol Version 11, Revision 0, Release 6.8.2
Build Operating System: Linux 2.6.9-1.906_ELsmp i686 [ELF]
Current Operating System: Linux van-w-01-msiege 2.6.9-11.ELsmp #1 SMP Fri May 20 18:26:27 EDT 2005 i686
Build Date: 13 May 2005
Build Host: tweety.build.redhat.com

GTK2.0  v2.4.13

Attached is a little SWT test app that creates a FileDialog, then calls open() in a loop.  When this app is run from Ubuntu, resources are allocated by the X process each time open() is called.  However, on the AS4 box, no additional resources are allocated each time open() is called.  Using xrestop, you can see that on Ubuntu the number of pixmaps generated continues to grow each time a button is clicked.

I'm guessing it has something to do with the way SWT interacts with GTK and differences in the GTK versions.  I tried to mimic the SWT behaviour in a C++/GTK application and the same increase in pixmaps was observed.  The difference between the C++ app and the SWT app was that after the test app was closed, the X resources where returned to the system.

Should a new bug be entered for this, or do you feel the issues are related?
Comment 21 Douglas Pollock CLA 2006-03-06 15:39:58 EST
> when run under Ubuntu (Breezy), this test app will continually allocate X
> resources, slowly bringing the box down

I cannot reproduce using GTK+ 2.8.8 and X.org 6.8.2.  I tried with both Sun 1.5.0_04 and Blackdown 1.4.1.

J Decker: Does this test app reproduce the problem for you as well?
Comment 22 J Decker CLA 2006-03-07 04:51:35 EST
what libs do i have to include? it says "The import org.eclipse cannot be resolved"...
Comment 23 Douglas Pollock CLA 2006-03-07 10:16:55 EST
(In reply to comment #22)
> what libs do i have to include? it says "The import org.eclipse cannot be
> resolved"...

http://www.eclipse.org/swt/eclipse.php

(If you have PDE installed, then you can Import "Existing Plug-ins and Fragments" instead of "Existing Projects into Workspace".  This avoids requiring to download the SWT ZIP file.)
Comment 24 Andrew Barr CLA 2006-03-31 13:11:54 EST
I think this bug is what is happening to me with the Azureus BitTorrent client on Linux i686 (2.6.16) -- Debian unstable. I have tried GNU Java (4.1/1.4.2), Blackdown Java (1.4.2), and Sun Java (1.5.0 update 6) and when Azureus is running under all three of them the Xorg server process slowly and steadily eats up memory until the kernel begins killing processes for lack of memory. X.org server is 7.0. This doesn't appear to happen with the Motif libraries, only the GTK+ ones, but I can't get the UI to work properly with Motif.

Just my 2 cents.
Comment 25 Shaun Senecal CLA 2006-04-06 13:04:53 EDT
(In reply to comment #24)
> I think this bug is what is happening to me with the Azureus BitTorrent client
> on Linux i686 (2.6.16) -- Debian unstable. I have tried GNU Java (4.1/1.4.2),
> Blackdown Java (1.4.2), and Sun Java (1.5.0 update 6) and when Azureus is
> running under all three of them the Xorg server process slowly and steadily
> eats up memory until the kernel begins killing processes for lack of memory.
> X.org server is 7.0. This doesn't appear to happen with the Motif libraries,
> only the GTK+ ones, but I can't get the UI to work properly with Motif.
> 
> Just my 2 cents.
> 


Yep, I'm 99.99% sure its the same problem (much like Ivory soap).  The bug should probably have been logged with Ubuntu, since the problem looks like its a leak in GTK (or one of its dependencies).  I was able to simulate the leak using the attached GTK test app, so the problem isnt specific to SWT.  If you try newer versions of GTK, the problem goes away.  I'm just counting the days until Dapper is released and I can update.

This bug against SWT can probably be closed.

Comment 26 Billy Biggs CLA 2006-04-06 17:59:08 EDT
Which app are you talking about, the SWT one linked above?
Comment 27 Shaun Senecal CLA 2006-04-06 18:09:57 EDT
Created attachment 37946 [details]
GTK test app, mimicing SWT test app

seems to show a pixmap resource leak when using GTK v2.8.6
Comment 28 Shaun Senecal CLA 2006-04-06 18:11:36 EDT
(In reply to comment #26)
> Which app are you talking about, the SWT one linked above?
> 

Sorry, I thought I had attached the GTK app as well as the SWT app.  I created a mini GTK app to try to mimic what SWT was doing and you could see the pixmap resources continually growing the same way it does in SWT.  I will attach the app now.
Comment 29 J Decker CLA 2006-04-07 04:05:12 EDT
I am running the gtk test app ... I am just running it, non-interactive - does the memory leak appear this way?

I recently upgraded to Ubuntu Dapper (Testing). 

the pixmaps count is steady so the leak does not appear ...
3400000    39  129    1   33   48     1785K      6K   1791K   ?   gtktest 

I have not tested eclipse on dapper since I moved back to vim/autoconf/gdb/esvn, etc.
Comment 30 J Decker CLA 2006-04-07 04:09:04 EDT
if I continuously click on cancel, the app allocates pixmaps ... I am not into gtk programming, so I don't know if this is normal behaviour

after about 10 clicks on cancel, xrestop shows, so the pixmaps count went up from 33 to 308...
res-base Wins  GCs Fnts Pxms Misc   Pxm mem  Other   Total   PID Identifier
3400000    43  134    1  308  326    24863K     12K  24875K   ?   gtktest
Comment 31 Billy Biggs CLA 2006-04-07 12:11:17 EDT
Federico would know.
Comment 32 Shaun Senecal CLA 2006-04-07 12:46:20 EDT
I'm not a GTK programmer either, so it's possible that there is a bug in my GTK test app.  However, the behaviour it exhibits is the same as the SWT test app.  As you click on the buttons, the number of pixmaps steadily climbs.  When you do the same thing on different versions of GTK, the number of pixmaps does not continue to climb.

Does this issue occur in Dapper (Testing) as well?  What version of GTK is being used?
Comment 33 Federico Mena Quintero CLA 2006-04-07 13:27:41 EDT
Question for someone who actually has this problem:  what GTK+ theme are you running, what version of GTK+, and which distribution?
Comment 34 Bruno Costa CLA 2006-04-07 18:32:09 EDT
(In reply to comment #33)
> Question for someone who actually has this problem:  what GTK+ theme are you
> running, what version of GTK+, and which distribution?
> 

Hi,

I noticed the memleak when I started to use the gtk-qt theme engine (v0.60), no memory leak with clearlooks here. Ubuntu Breezy Badger 5.10, gtk+-2.8.6, eclipse 3.2

Comment 35 Shaun Senecal CLA 2006-04-07 20:40:30 EDT
(In reply to comment #34)
> (In reply to comment #33)
> > Question for someone who actually has this problem:  what GTK+ theme are you
> > running, what version of GTK+, and which distribution?
> > 
> 
> Hi,
> 
> I noticed the memleak when I started to use the gtk-qt theme engine (v0.60), no
> memory leak with clearlooks here. Ubuntu Breezy Badger 5.10, gtk+-2.8.6,
> eclipse 3.2
> 


Same deal here.  gtk-qt, gtk+ v2.8.6, all on Ubuntu Breezy
Comment 36 Andrew Barr CLA 2006-04-07 21:13:41 EDT
I am also using GTK-Qt.
Comment 37 Federico Mena Quintero CLA 2006-04-07 21:44:25 EDT
The gtk-qt engine is an extremely buggy piece of crap :(  Please use another theme.
Comment 38 Billy Biggs CLA 2006-04-08 00:25:18 EDT
Closing - yet another bug due to the gtk-qt theme engine.

Please file this at bugs.freedesktop.org against the gtk-qt
component.

Thanks Federico.
Comment 39 J Decker CLA 2006-04-10 06:08:29 EDT
I am also using gtk-qt ... so it all boils down to changing themes. Thanks.