Community
Participate
Working Groups
Eclipse 3.2 One of my colleagues had a crash today after copying and pasting some very long text from one editor to another. Unfortunately he doesn't remember which editor it was but probably the WTP HTML editor. But the interesting thing is that not any of the traces point to the specific error but to JFace text. Thus, I'm reporting it here. The error log is very long but it's all related to that error. Looks like Eclipse was in some loop and got unstable et all. After the crash the workspace was corrupted and I had to assist him via VNC to restore it properly. As far as we could tell after that, no project file had been damaged.
Created attachment 46434 [details] Log file from the session This is the log file from the complete crashed sessions. It all starts with a tiny message. !MESSAGE "Paste" did not complete normally. Please see the log for more information.
The log says: eclipse.buildId=unknown Are sure it was R3.2? Marking as INVALID since the initial NPE at: org.eclipse.jface.text.DefaultPositionUpdater.update(line 227) is not possible to have with Eclipse SDK. Possible reasons: - incorrect install, e.g. copied new build over existing install - JIT bug - bug in another plug-in that sets fOriginalPosition to 'null' (not very likely)
(In reply to comment #2) > The log says: eclipse.buildId=unknown > Are sure it was R3.2? Yes I am. It's our internal distribution with some branding. :) Note that eclipse.buildId is just a property read from config.ini which is intentionally not set in our distribution. > Possible reasons: > - incorrect install, e.g. copied new build over existing install > - JIT bug > - bug in another plug-in that sets fOriginalPosition to 'null' (not very > likely) As reason one can be excluded (I told and force the guys to always rename an existing directory and unzip the distribution into an empty directory) it must be either a JIT bug or a problem in the other editor. :( Daniel, can you do something to prevent another plug-in from setting fOriginalPosition to null?
>Daniel, can you do something to prevent another plug-in from setting >fOriginalPosition to null? No, it is protected for performance reasons.
*** Bug 180728 has been marked as a duplicate of this bug. ***
This bug seems to be still around. I am having this problem with Eclipse 3.3. The original bug report was not for Eclipse 3.3, should I therefore rather open a new bug tracker entry for this? Distribution: Eclipse for RCP/Plug-in Developers - Linux (152 MB) Additional Plugins: only Polarion Subversive SVN 1.1.7 (not sure if I also had to install some data tools plugins due to subversive plugin dependencies) OS: Linux 2.6.22.5 @ Debian Etch Context: I was editing a plain text file with the eclipse text editor and got this exception while typing. I've encountered the exception 3 or 4 times so far. But I was not yet able to reproduce it. Last time it happened while pasting data into the same text file (also using the text editor, stack trace was identical). Error Log: !ENTRY org.eclipse.ui 4 0 2007-09-04 10:48:26.549 !MESSAGE Unhandled event loop exception !STACK 0 java.lang.NullPointerException at org.eclipse.jface.text.DefaultPositionUpdater.update(DefaultPositionUpdater.java:233) at org.eclipse.jface.text.AbstractDocument.updatePositions(AbstractDocument.java:1133) at org.eclipse.jface.text.AbstractDocument.updateDocumentStructures(AbstractDocument.java:644) at org.eclipse.jface.text.AbstractDocument.fireDocumentChanged(AbstractDocument.java:720) at org.eclipse.jface.text.AbstractDocument.replace(AbstractDocument.java:1081) at org.eclipse.core.internal.filebuffers.SynchronizableDocument.replace(SynchronizableDocument.java:147) at org.eclipse.jface.text.AbstractDocument.replace(AbstractDocument.java:1091) at org.eclipse.core.internal.filebuffers.SynchronizableDocument.replace(SynchronizableDocument.java:133) at org.eclipse.jface.text.DefaultDocumentAdapter.replaceTextRange(DefaultDocumentAdapter.java:248) at org.eclipse.swt.custom.StyledText.modifyContent(StyledText.java:5757) at org.eclipse.swt.custom.StyledText.sendKeyEvent(StyledText.java:6500) at org.eclipse.swt.custom.StyledText.doContent(StyledText.java:2155) at org.eclipse.swt.custom.StyledText.handleKey(StyledText.java:5029) at org.eclipse.swt.custom.StyledText.handleKeyDown(StyledText.java:5054) at org.eclipse.swt.custom.StyledText$7.handleEvent(StyledText.java:4800) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1101) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1125) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1110) at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1137) at org.eclipse.swt.widgets.Widget.gtk_key_press_event(Widget.java:663) at org.eclipse.swt.widgets.Control.gtk_key_press_event(Control.java:2533) at org.eclipse.swt.widgets.Composite.gtk_key_press_event(Composite.java:679) at org.eclipse.swt.widgets.Widget.windowProc(Widget.java:1486) at org.eclipse.swt.widgets.Control.windowProc(Control.java:4234) at org.eclipse.swt.widgets.Display.windowProc(Display.java:3973) at org.eclipse.swt.internal.gtk.OS._gtk_main_do_event(Native Method) at org.eclipse.swt.internal.gtk.OS.gtk_main_do_event(OS.java:5593) at org.eclipse.swt.widgets.Display.eventProc(Display.java:1192) at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native Method) at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:1487) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2969) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2389) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2219) at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:461) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:106) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:153) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:504) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:443) at org.eclipse.equinox.launcher.Main.run(Main.java:1169) Configuration Details: *** Date: Tuesday, 4 September 2007 12:07:16 GMT+00:00 *** Platform Details: *** System properties: eclipse.buildId=I20070621-1340 eclipse.commands=-os linux -ws gtk -arch x86 -showsplash /opt/eclipse-pde//plugins/org.eclipse.platform_3.3.0.v20070613/splash.bmp -launcher /opt/eclipse-pde/eclipse -name Eclipse --launcher.library /opt/eclipse-pde/plugins/org.eclipse.equinox.launcher.gtk.linux.x86_1.0.0.v20070606/eclipse_1017a.so -startup /opt/eclipse-pde/plugins/org.eclipse.equinox.launcher_1.0.0.v20070606.jar -vm /opt/jdk1.6.0_02/jre/bin/../lib/i386/client/libjvm.so eclipse.ee.install.verify=false eclipse.product=org.eclipse.sdk.ide eclipse.startTime=1188907297914 eclipse.vm=/opt/jdk1.6.0_02/jre/bin/../lib/i386/client/libjvm.so eclipse.vmargs=-Xms40m -Xmx512m -Dosgi.bundlefile.limit=100 -Djava.class.path=/opt/eclipse-pde/plugins/org.eclipse.equinox.launcher_1.0.0.v20070606.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-pde/plugins/org.eclipse.equinox.launcher_1.0.0.v20070606.jar java.class.version=50.0 java.endorsed.dirs=/opt/jdk1.6.0_02/jre/lib/endorsed java.ext.dirs=/opt/jdk1.6.0_02/jre/lib/ext:/usr/java/packages/lib/ext java.home=/opt/jdk1.6.0_02/jre java.io.tmpdir=/tmp java.library.path=/opt/jdk1.6.0_02/jre/lib/i386/client::/opt/jdk1.6.0_02/jre/lib/i386:::/usr/java/packages/lib/i386:/lib:/usr/lib java.runtime.name=Java(TM) SE Runtime Environment java.runtime.version=1.6.0_02-b05 java.specification.name=Java Platform API Specification java.specification.vendor=Sun Microsystems Inc. java.specification.version=1.6 java.vendor=Sun Microsystems Inc. java.vendor.url=http://java.sun.com/ java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport.cgi java.version=1.6.0_02 java.vm.info=mixed mode, sharing 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=Sun Microsystems Inc. java.vm.version=1.6.0_02-b05 line.separator= org.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog org.apache.commons.logging.simplelog.log.httpclient.wire.header=off org.apache.commons.logging.simplelog.log.org.apache.commons.httpclient=off org.eclipse.equinox.launcher.splash.handle=134727680 org.eclipse.equinox.launcher.splash.location=/opt/eclipse-pde//plugins/org.eclipse.platform_3.3.0.v20070613/splash.bmp org.osgi.framework.executionenvironment=OSGi/Minimum-1.0,OSGi/Minimum-1.1,JRE-1.1,J2SE-1.2,J2SE-1.3,J2SE-1.4,J2SE-1.5,JavaSE-1.6 org.osgi.framework.language=en org.osgi.framework.os.name=Linux org.osgi.framework.os.version=2.6.22.5 org.osgi.framework.processor=i386 org.osgi.framework.system.packages=javax.accessibility,javax.activation,javax.activity,javax.annotation,javax.annotation.processing,javax.crypto,javax.crypto.interfaces,javax.crypto.spec,javax.imageio,javax.imageio.event,javax.imageio.metadata,javax.imageio.plugins.bmp,javax.imageio.plugins.jpeg,javax.imageio.spi,javax.imageio.stream,javax.jws,javax.jws.soap,javax.lang.model,javax.lang.model.element,javax.lang.model.type,javax.lang.model.util,javax.management,javax.management.loading,javax.management.modelmbean,javax.management.monitor,javax.management.openmbean,javax.management.relation,javax.management.remote,javax.management.remote.rmi,javax.management.timer,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.rmi.ssl,javax.script,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.security.sasl,javax.sound.midi,javax.sound.midi.spi,javax.sound.sampled,javax.sound.sampled.spi,javax.sql,javax.sql.rowset,javax.sql.rowset.serial,javax.sql.rowset.spi,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.plaf.synth,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.tools,javax.transaction,javax.transaction.xa,javax.xml,javax.xml.bind,javax.xml.bind.annotation,javax.xml.bind.annotation.adapters,javax.xml.bind.attachment,javax.xml.bind.helpers,javax.xml.bind.util,javax.xml.crypto,javax.xml.crypto.dom,javax.xml.crypto.dsig,javax.xml.crypto.dsig.dom,javax.xml.crypto.dsig.keyinfo,javax.xml.crypto.dsig.spec,javax.xml.datatype,javax.xml.namespace,javax.xml.parsers,javax.xml.soap,javax.xml.stream,javax.xml.stream.events,javax.xml.stream.util,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.transform.stax,javax.xml.transform.stream,javax.xml.validation,javax.xml.ws,javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.ws.http,javax.xml.ws.soap,javax.xml.ws.spi,javax.xml.xpath,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.w3c.dom.bootstrap,org.w3c.dom.events,org.w3c.dom.ls,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers org.osgi.framework.vendor=Eclipse org.osgi.framework.version=1.4.0 org.osgi.supports.framework.extension=true org.osgi.supports.framework.fragment=true org.osgi.supports.framework.requirebundle=true os.arch=i386 os.name=Linux os.version=2.6.22.5 osgi.arch=x86 osgi.bundlefile.limit=100 osgi.bundles=org.eclipse.equinox.common@2:start, org.eclipse.update.configurator@3:start, org.eclipse.core.runtime@start osgi.bundlestore=/opt/eclipse-pde/configuration/org.eclipse.osgi/bundles osgi.compatibility.bootdelegation=true osgi.configuration.area=file:/opt/eclipse-pde/configuration/ osgi.framework=file:/opt/eclipse-pde/plugins/org.eclipse.osgi_3.3.0.v20070530.jar osgi.framework.beginningstartlevel=1 osgi.framework.shape=jar osgi.framework.version=3.3.0.v20070530 osgi.install.area=file:/opt/eclipse-pde/ osgi.instance.area=file:/home/... osgi.instance.area.default=file:/home/... osgi.logfile=/home/... osgi.manifest.cache=/opt/eclipse-pde/configuration/org.eclipse.osgi/manifests osgi.nl=en_GB osgi.os=linux osgi.splashLocation=/opt/eclipse-pde//plugins/org.eclipse.platform_3.3.0.v20070613/splash.bmp osgi.splashPath=platform:/base/plugins/org.eclipse.platform osgi.syspath=/opt/eclipse-pde/plugins osgi.ws=gtk path.separator=: sun.arch.data.model=32 sun.boot.class.path=/opt/jdk1.6.0_02/jre/lib/resources.jar:/opt/jdk1.6.0_02/jre/lib/rt.jar:/opt/jdk1.6.0_02/jre/lib/sunrsasign.jar:/opt/jdk1.6.0_02/jre/lib/jsse.jar:/opt/jdk1.6.0_02/jre/lib/jce.jar:/opt/jdk1.6.0_02/jre/lib/charsets.jar:/opt/jdk1.6.0_02/jre/classes sun.boot.library.path=/opt/jdk1.6.0_02/jre/lib/i386 sun.cpu.endian=little sun.cpu.isalist= sun.io.unicode.encoding=UnicodeLittle sun.jnu.encoding=UTF-8 sun.management.compiler=HotSpot Client Compiler sun.os.patch.level=unknown user.country=GB user.dir=/home/... user.home=/home/... user.language=en user.name=... user.timezone=GMT If needed, I can provide a complete list of all installed plugins and versions. But it's basically a plain Eclipse RCP install + Subversive (incl. dependencies).
You can continue to paste your info here. So far we have no steps and hence there's not much we can do.
But if some other code is indeed setting fOriginalPosition to null, wouldn't an additional guard which reinitializes fOriginalPosition, if needed, be a working quick fix? i.e. change: > fOriginalPosition.offset= fPosition.offset; to: > if (fOriginalPosition == null) > fOriginalPosition = new Position(0, 0); > fOriginalPosition.offset= fPosition.offset; (though moving the check above the for loop would probably be better) in: org.eclipse.jface.text.DefaultPositionUpdater.update(DefaultPositionUpdater.java:233) And fPosition can't be null here either? Are these values ever accessed concurrently by multiple threads?
We don't add guards if you don't know why the NPE happens. This just hides an error at some other place.
The error does seem to occur quite often lately, maybe I'll be able to reproduce it in the long run. It happened again today and I noticed that there are some mylyn related exceptions in the error log, could they be related to this issue? Errors (stack traces shortened): !ENTRY org.eclipse.osgi 2 0 2007-09-05 07:45:22.658 !MESSAGE While loading class "org.eclipse.mylyn.internal.tasks.ui.ITaskHighlighter", thread "Thread[Worker-0,5,main]" timed out waiting (5000ms) for thread "Thread[Worker-2,5,main]" to finish starting bundle "update@plugins/org.eclipse.mylyn.task s.ui_2.0.0.v20070627-1400.jar [303]". To avoid deadlock, thread "Thread[Worker-0,5,main]" is proceeding but "org.eclipse.my lyn.internal.tasks.ui.ITaskHighlighter" may not be fully initialized. !STACK 0 org.osgi.framework.BundleException: State change in progress for bundle "update@plugins/org.eclipse.mylyn.tasks.ui_2.0.0.v2 0070627-1400.jar" by thread "Worker-2". at org.eclipse.osgi.framework.internal.core.AbstractBundle.beginStateChange(AbstractBundle.java:1141) ... !ENTRY org.eclipse.osgi 2 0 2007-09-05 07:45:27.694 !MESSAGE While loading class "org.eclipse.mylyn.internal.context.ui.actions.ContextMenuContributor", thread "Thread[Worker- 2,5,main]" timed out waiting (5000ms) for thread "Thread[Worker-0,5,main]" to finish starting bundle "update@plugins/org.ec lipse.mylyn.context.ui_2.0.0.v20070627-1400.jar [334]". To avoid deadlock, thread "Thread[Worker-2,5,main]" is proceeding b ut "org.eclipse.mylyn.internal.context.ui.actions.ContextMenuContributor" may not be fully initialized. !STACK 0 org.osgi.framework.BundleException: State change in progress for bundle "update@plugins/org.eclipse.mylyn.context.ui_2.0.0. v20070627-1400.jar" by thread "Worker-0". at org.eclipse.osgi.framework.internal.core.AbstractBundle.beginStateChange(AbstractBundle.java:1141) ... !ENTRY org.eclipse.osgi 2 0 2007-09-05 07:45:27.712 !MESSAGE While loading class "org.eclipse.mylyn.internal.tasks.ui.TaskListColorsAndFonts", thread "Thread[Worker-0,5,main]" timed out waiting (5000ms) for thread "Thread[Worker-2,5,main]" to finish starting bundle "update@plugins/org.eclipse.myly n.tasks.ui_2.0.0.v20070627-1400.jar [303]". To avoid deadlock, thread "Thread[Worker-0,5,main]" is proceeding but "org.ecli pse.mylyn.internal.tasks.ui.TaskListColorsAndFonts" may not be fully initialized. !STACK 0 org.osgi.framework.BundleException: State change in progress for bundle "update@plugins/org.eclipse.mylyn.tasks.ui_2.0.0.v2 0070627-1400.jar" by thread "Worker-2". at org.eclipse.osgi.framework.internal.core.AbstractBundle.beginStateChange(AbstractBundle.java:1141) ... !ENTRY org.eclipse.osgi 2 0 2007-09-05 07:45:32.791 !MESSAGE While loading class "org.eclipse.mylyn.tasks.ui.TasksUiPlugin", thread "Thread[main,6,main]" timed out waiting (50 00ms) for thread "Thread[Worker-2,5,main]" to finish starting bundle "update@plugins/org.eclipse.mylyn.tasks.ui_2.0.0.v2007 0627-1400.jar [303]". To avoid deadlock, thread "Thread[main,6,main]" is proceeding but "org.eclipse.mylyn.tasks.ui.TasksUi Plugin" may not be fully initialized. !STACK 0 org.osgi.framework.BundleException: State change in progress for bundle "update@plugins/org.eclipse.mylyn.tasks.ui_2.0.0.v2 0070627-1400.jar" by thread "Worker-2". at org.eclipse.osgi.framework.internal.core.AbstractBundle.beginStateChange(AbstractBundle.java:1141) ... !ENTRY org.eclipse.osgi 2 0 2007-09-05 07:45:37.855 !MESSAGE While loading class "org.eclipse.mylyn.tasks.ui.TaskListManager", thread "Thread[main,6,main]" timed out waiting ( 5000ms) for thread "Thread[Worker-2,5,main]" to finish starting bundle "update@plugins/org.eclipse.mylyn.tasks.ui_2.0.0.v20 070627-1400.jar [303]". To avoid deadlock, thread "Thread[main,6,main]" is proceeding but "org.eclipse.mylyn.tasks.ui.TaskL istManager" may not be fully initialized. !STACK 0 org.osgi.framework.BundleException: State change in progress for bundle "update@plugins/org.eclipse.mylyn.tasks.ui_2.0.0.v2 0070627-1400.jar" by thread "Worker-2". at org.eclipse.osgi.framework.internal.core.AbstractBundle.beginStateChange(AbstractBundle.java:1141) ... !ENTRY org.eclipse.ui 4 0 2007-09-05 07:47:04.824 !MESSAGE Unhandled event loop exception !STACK 0 java.lang.NullPointerException at org.eclipse.jface.text.DefaultPositionUpdater.update(DefaultPositionUpdater.java:233) ... Any ideas?
Hard to say but I doubt it.
Recently got a new exception which might be related to this problem. It's the first time I've seen this exception though. eclipse.buildId=I20070621-1340 java.version=1.6.0_02 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=en_GB Command-line arguments: -os linux -ws gtk -arch x86 Error Thu Sep 06 13:55:55 GMT 2007 Unhandled event loop exception java.lang.ArrayIndexOutOfBoundsException: 503 at org.eclipse.jface.text.rules.FastPartitioner.documentChanged2(FastPartitioner.java:307) at org.eclipse.jface.text.AbstractDocument.updateDocumentStructures(AbstractDocument.java:633) at org.eclipse.jface.text.AbstractDocument.fireDocumentChanged(AbstractDocument.java:720) at org.eclipse.jface.text.AbstractDocument.replace(AbstractDocument.java:1081) at org.eclipse.core.internal.filebuffers.SynchronizableDocument.replace(SynchronizableDocument.java:151) at org.eclipse.jface.text.AbstractDocument.replace(AbstractDocument.java:1091) at org.eclipse.core.internal.filebuffers.SynchronizableDocument.replace(SynchronizableDocument.java:137) at org.eclipse.jface.text.projection.ProjectionTextStore.replace(ProjectionTextStore.java:111) at org.eclipse.jface.text.AbstractDocument.replace(AbstractDocument.java:1074) at org.eclipse.jface.text.AbstractDocument.replace(AbstractDocument.java:1091) at org.eclipse.jface.text.projection.ProjectionDocument.replace(ProjectionDocument.java:618) at org.eclipse.jface.text.DefaultDocumentAdapter.replaceTextRange(DefaultDocumentAdapter.java:248) at org.eclipse.swt.custom.StyledText.modifyContent(StyledText.java:5757) at org.eclipse.swt.custom.StyledText.sendKeyEvent(StyledText.java:6500) at org.eclipse.swt.custom.StyledText.doContent(StyledText.java:2155) at org.eclipse.swt.custom.StyledText.handleKey(StyledText.java:5029) at org.eclipse.swt.custom.StyledText.handleKeyDown(StyledText.java:5054) at org.eclipse.swt.custom.StyledText$7.handleEvent(StyledText.java:4800) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1101) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1125) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1110) at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1137) at org.eclipse.swt.widgets.Widget.gtk_key_press_event(Widget.java:663) at org.eclipse.swt.widgets.Control.gtk_key_press_event(Control.java:2533) at org.eclipse.swt.widgets.Composite.gtk_key_press_event(Composite.java:679) at org.eclipse.swt.widgets.Widget.windowProc(Widget.java:1486) at org.eclipse.swt.widgets.Control.windowProc(Control.java:4234) at org.eclipse.swt.widgets.Display.windowProc(Display.java:3973) at org.eclipse.swt.internal.gtk.OS._gtk_main_do_event(Native Method) at org.eclipse.swt.internal.gtk.OS.gtk_main_do_event(OS.java:5593) at org.eclipse.swt.widgets.Display.eventProc(Display.java:1192) at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native Method) at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:1487) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2969) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2389) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2219) at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:461) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:106) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:153) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:504) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:443) at org.eclipse.equinox.launcher.Main.run(Main.java:1169)
Ok, I was finally able to catch the exception in a debugger run. It seems as if it is not fOriginalPosition that is null, but one of the elements of the Position array which is returned by org.eclipse.jface.text.IDocument#getPositions(java.lang.String). I don't quite see how that could have happened though. If I understand correctly, there shouldn't be any concurrency issues when using a SynchronizableDocument. But a race condition is the only explanation which I can come up with right now though. However, when looking at the SynchronizableDocument implementation it will only synchronise access, if there exists a lockObject. But in this stack dump, lockObject is null. Which means that no synchronisation code is executed. If the execution of AbstractDocument's org.eclipse.jface.text.IDocument#getPositions(java.lang.String) implementation would be interrupted between these two lines > Position[] positions= new Position[c.size()]; > c.toArray(positions); by another thread which removed an element from the positions list for that position category, that would result in the failure described in this bug report. So is the real defect here that the text editor fails to correctly set a lock object for the document then? Here is some of the data which I extracted from the debugger. Unfortunately when catching an NPE it stops at the end of the method, and the Position array value is thus no longer accessible. I tried using a conditional breakpoint but it was way too slow (~30sec delay per key press) to be of any use. Thread [main] (Suspended (exception NullPointerException)) DefaultPositionUpdater.update(DocumentEvent) line: 244 SynchronizableDocument(AbstractDocument).updatePositions(DocumentEvent) line: 1133 SynchronizableDocument(AbstractDocument).updateDocumentStructures(DocumentEvent) line: 644 SynchronizableDocument(AbstractDocument).fireDocumentChanged(DocumentEvent) line: 720 SynchronizableDocument(AbstractDocument).replace(int, int, String, long) line: 1081 SynchronizableDocument.replace(int, int, String, long) line: 147 SynchronizableDocument(AbstractDocument).replace(int, int, String) line: 1091 SynchronizableDocument.replace(int, int, String) line: 133 DefaultDocumentAdapter.replaceTextRange(int, int, String) line: 248 StyledText.modifyContent(Event, boolean) line: 5757 StyledText.sendKeyEvent(Event) line: 6500 StyledText.doBackspace() line: 2111 StyledText.invokeAction(int) line: 5645 StyledText.handleKey(Event) line: 5033 StyledText.handleKeyDown(Event) line: 5054 StyledText$7.handleEvent(Event) line: 4800 EventTable.sendEvent(Event) line: 66 StyledText(Widget).sendEvent(Event) line: 1101 StyledText(Widget).sendEvent(int, Event, boolean) line: 1125 StyledText(Widget).sendEvent(int, Event) line: 1110 StyledText(Widget).sendKeyEvent(int, GdkEventKey) line: 1137 StyledText(Widget).gtk_key_press_event(int, int) line: 663 StyledText(Control).gtk_key_press_event(int, int) line: 2533 StyledText(Composite).gtk_key_press_event(int, int) line: 679 StyledText(Widget).windowProc(int, int, int) line: 1486 StyledText(Control).windowProc(int, int, int) line: 4234 Display.windowProc(int, int, int) line: 3973 OS._gtk_main_do_event(int) line: not available [native method] OS.gtk_main_do_event(int) line: 5593 Display.eventProc(int, int) line: 1192 OS._g_main_context_iteration(int, boolean) line: not available [native method] OS.g_main_context_iteration(int, boolean) line: 1487 Display.readAndDispatch() line: 2969 Workbench.runEventLoop(Window$IExceptionHandler, Display) line: 2389 Workbench.runUI() line: 2353 Workbench.access$4(Workbench) line: 2219 Workbench$4.run() line: 466 Realm.runWithDefault(Realm, Runnable) line: 289 Workbench.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 461 PlatformUI.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 149 IDEApplication.start(IApplicationContext) line: 106 EclipseAppHandle.run(Object) line: 153 EclipseAppLauncher.runApplication(Object) line: 106 EclipseAppLauncher.start(Object) line: 76 EclipseStarter.run(Object) line: 363 EclipseStarter.run(String[], Runnable) line: 176 NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method] NativeMethodAccessorImpl.invoke(Object, Object[]) line: 39 DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25 Method.invoke(Object, Object...) line: 597 Main.invokeFramework(String[], URL[]) line: 504 Main.basicRun(String[]) line: 443 Main.run(String[]) line: 1169 Main.main(String[]) line: 1144 this DefaultPositionUpdater (id=76) fCategory "__dflt_position_category" fDocument null fLength 1 fOffset 23 fOriginalPosition Position (id=110) isDeleted false length 9 offset 91829 fPosition null fReplaceLength 0 event DocumentEvent (id=104) fDocument SynchronizableDocument (id=89) fAcceptPostNotificationReplaces true fDeferredDocumentEvent null fDocumentListeners ListenerList (id=148) fDocumentPartitioners null fDocumentPartitioningChangedEvent null fDocumentPartitioningListeners ListenerList (id=151) fDocumentRewriteSession null fDocumentRewriteSessionListeners ArrayList<E> (id=154) fFindReplaceDocumentAdapter null fInitialLineDelimiter null fLockObject null fModificationStamp 2982 fNextModificationStamp 2982 fPositions HashMap<K,V> (id=127) entrySet null keySet null loadFactor 0.75 modCount 4 size 4 table HashMap$Entry<K,V>[16] (id=170) [1] HashMap$Entry<K,V> (id=187) [3] HashMap$Entry<K,V> (id=189) hash 1533465763 value ArrayList<E> (id=242) elementData Object[1529] (id=247) [0...99] ... [1300...1399] ... [1360] Position (id=567) isDeleted false length 5 offset 91822 [1361] Position (id=568) isDeleted false length 9 offset 91828 [1362] null ... ... [1500...1528] modCount 4442 size 1362 [8] HashMap$Entry<K,V> (id=202) [11] HashMap$Entry<K,V> (id=207) threshold 12 values null fPositionUpdaters ArrayList<E> (id=162) fPostNotificationChanges null fPrenotifiedDocumentListeners ListenerList (id=165) fReentranceCount 0 fStoppedCount 0 fStoppedListenerNotification 0 fStore CopyOnWriteTextStore (id=365) fTracker DefaultLineTracker (id=367) fLength 1 fModificationStamp 2982 fOffset 23 fText ""
>The error does seem to occur quite often lately, We've never seen this here. I suspect some other plug-in might cause this.
Well, as you can see I do not have any 3rd party plugins installed besides the polarion subversive SVN client. So you believe that the polarion SVN client is the cause for this failure? *** Features: org.eclipse.cvs (1.0.0.v20070606-7C79_79EI99g_Y9e) "Eclipse CVS Client" org.eclipse.cvs.source (1.0.0.v20070606-7C79_79EI99g_Y9e) "Eclipse CVS Client SDK" org.eclipse.emf.common (2.3.0.v200706262000) "EMF Common" org.eclipse.emf.common.ui (2.3.0.v200706262000) "EMF Common UI" org.eclipse.emf.ecore (2.3.0.v200706262000) "EMF Ecore" org.eclipse.emf.ecore.edit (2.3.0.v200706262000) "EMF Ecore Edit Support" org.eclipse.emf.edit (2.3.0.v200706262000) "EMF Edit" org.eclipse.emf.edit.ui (2.3.0.v200706262000) "EMF Edit UI" org.eclipse.gef (3.3.0.v20070620) "Graphical Editing Framework" org.eclipse.jdt (3.3.0.v20070606-0010-7o7jCHEFpPoqQYvnXqejeR) "Eclipse Java Development Tools" org.eclipse.jdt.source (3.3.0.v20070606-0010-7o7jCHEFpPoqQYvnXqejeR) "Eclipse Java Development Tools SDK" org.eclipse.mylyn_feature (2.0.0.v20070627-1400) "Mylyn" org.eclipse.mylyn.bugzilla_feature (2.0.0.v20070627-1400) "Mylyn" org.eclipse.mylyn.context_feature (2.0.0.v20070627-1400) "Mylyn" org.eclipse.mylyn.ide_feature (2.0.0.v20070627-1400) "Mylyn" org.eclipse.mylyn.java_feature (2.0.0.v20070628-1000) "Mylyn" org.eclipse.mylyn.pde_feature (2.0.0.v20070627-1400) "Mylyn" org.eclipse.pde (3.3.0.v20070607-7N7M-DUUEF6Ez0H46IcCC) "Eclipse Plug-in Development Environment" org.eclipse.pde.source (3.3.0.v20070607-7N7M-DUUEF6Ez0H46IcCC) "Eclipse Plug-in Development Environment Developer Resources" org.eclipse.platform (3.3.0.v20070612-_19UEkLEzwsdF9jSqQ-G) "Eclipse Platform" org.eclipse.platform.source (3.3.0.v20070612-_19UEkLEzwsdF9jSqQ-G) "Eclipse Platform Plug-in Developer Resources" org.eclipse.rcp (3.3.0.v20070607-8y8eE8NEbsN3X6PjWS8HPNG) "Eclipse RCP" org.eclipse.rcp.source (3.3.0.v20070607-8y8eE8NEbsN3X6PjWS8HPNG) "Eclipse RCP Plug-in Developer Resources" org.eclipse.sdk (3.3.0.v20070607-7M7J-BIolz-OcxWxvWAPSfLPqevO) "Eclipse Project SDK" org.eclipse.xsd (2.3.0.v200706262000) "XML Schema Infoset Model (XSD)" org.eclipse.xsd.edit (2.3.0.v200706262000) "XML Schema Edit Framework" org.polarion.team.svn.client.javasvn (1.1.3) "JavaSVN-based client for Subversive SVN Team Provider" org.polarion.team.svn.client.javasvn.source (1.1.3) "pluginName" org.polarion.team.svn.client.svnkit (1.1.7) "SVNKit-based client for Subversive SVN Team Provider" org.polarion.team.svn.client.svnkit.source (1.1.7) "pluginName" org.polarion.team.svn.mylyn (1.0.8) "Subversive Integration for the Mylyn Project" org.polarion.team.svn.mylyn.source (1.0.8) "pluginName" org.polarion.team.svn.nl1.sources (1.0.1) "pluginName" org.polarion.team.svn.projectset.source (1.0.4) "pluginName" org.polarion.team.svn.resource.ignore.rules.jdt (1.0.3) "Subversive JDT Ignore Recommendations" org.polarion.team.svn.resource.ignore.rules.jdt.source (1.0.3) "pluginName" org.polarion.team.svn.sources (1.1.7) "pluginName" *** Plug-in Registry: com.ibm.icu (3.6.1.v20070417) "International Components for Unicode for Java (ICU4J)" [Active] com.ibm.icu.source (3.6.1.v20070417) "International Components for Unicode for Java (ICU4J) source plug-in" [Resolved] com.jcraft.jsch (0.1.31) "JSch" [Resolved] javax.servlet (2.4.0.v200706111738) "Servlet API Bundle" [Resolved] javax.servlet.jsp (2.0.0.v200706191603) "Java Server Pages API Bundle" [Resolved] javax.servlet.jsp.source (2.0.0.v200706191603) "Java Server Pages API Source Bundle" [Resolved] javax.servlet.source (2.4.0.v200706111738) "Servlet API Source Bundle" [Resolved] org.apache.ant (1.7.0.v200706080842) "Apache Ant" [Resolved] org.apache.ant.source (1.7.0.v200706080842) "Apache Ant Source" [Resolved] org.apache.commons.el (1.0.0.v200706111724) "Apache Commons JSP 2.0 Expression Language Interpreter" [Resolved] org.apache.commons.el.source (1.0.0.v200706111724) "Apache Commons JSP 2.0 Expression Language Interpreter Source" [Resolved] org.apache.commons.logging (1.0.4.v200706111724) "Apache Commons Logging Plug-in" [Resolved] org.apache.commons.logging.source (1.0.4.v200706111724) "Apache Commons Logging Plug-in Source" [Resolved] org.apache.jasper (5.5.17.v200706111724) "Apache Jasper 2 Plug-in" [Resolved] org.apache.jasper.source (5.5.17.v200706111724) "Apache Jasper 2 Source Plug-in" [Resolved] org.apache.lucene (1.9.1.v200706111724) "Apache Lucene" [Resolved] org.apache.lucene.analysis (1.9.1.v200706181610) "Apache Lucene Analysis" [Resolved] org.apache.lucene.analysis.source (1.9.1.v200706181610) "Apache Lucene Analysis Source" [Resolved] org.apache.lucene.source (1.9.1.v200706111724) "Apache Lucene Source" [Resolved] org.apache.xerces (2.8.0.v200705301630) "Apache Xerces-J" [Resolved] org.apache.xml.resolver (1.1.0.v200705310020) "Apache XmlResolver" [Resolved] org.eclipse.ant.core (3.1.200.v20070522) "Ant Build Tool Core" [Starting] org.eclipse.ant.ui (3.2.100.v20070511) "Ant UI" [Active] org.eclipse.compare (3.3.0.I20070606) "Compare Support" [Active] org.eclipse.core.boot (3.1.100.v20060603) "Core Boot" [Starting] org.eclipse.core.commands (3.3.0.I20070605-0010) "Commands" [Resolved] org.eclipse.core.contenttype (3.2.100.v20070319) "Eclipse Content Mechanism" [Active] org.eclipse.core.databinding (1.0.0.I20070606-0010) "JFace Data Binding" [Resolved] org.eclipse.core.databinding.beans (1.0.0.I20070606-0010) "JFace Data Binding for JavaBeans" [Resolved] org.eclipse.core.expressions (3.3.0.v20070606-0010) "Expression Language" [Active] org.eclipse.core.filebuffers (3.3.0.v20070606-0010) "File Buffers" [Active] org.eclipse.core.filesystem (1.1.0.v20070606) "Core File Systems" [Active] org.eclipse.core.filesystem.linux.x86 (1.1.0.v20070416) "Core File System for Linux" [Resolved] org.eclipse.core.jobs (3.3.0.v20070423) "Eclipse Jobs Mechanism" [Active] org.eclipse.core.net (1.0.0.I20070531) "Internet Connection Management" [Active] org.eclipse.core.resources (3.3.0.v20070604) "Core Resource Management" [Active] org.eclipse.core.resources.compatibility (3.2.100.v20070502) "Core Resource Management Compatibility Fragment" [Resolved] org.eclipse.core.runtime (3.3.100.v20070530) "Core Runtime" [Active] org.eclipse.core.runtime.compatibility (3.1.200.v20070502) "Core Runtime Plug-in Compatibility" [Active] org.eclipse.core.runtime.compatibility.auth (3.2.100.v20070502) "Authorization Compatibility Plug-in" [Active] org.eclipse.core.runtime.compatibility.registry (3.2.100.v20070316) "Eclipse Registry Compatibility Fragment" [Resolved] org.eclipse.core.variables (3.2.0.v20070426) "Core Variables" [Active] org.eclipse.cvs (1.0.0.v20070606) "Eclipse CVS Client" [Starting] org.eclipse.cvs.source (1.0.0.v20070606-7C79_79EI99g_Y9e) "Eclipse CVS Client SDK" [Resolved] org.eclipse.debug.core (3.3.0.v20070607-1800) "Debug Core" [Active] org.eclipse.debug.ui (3.3.0.v20070607-1800) "Debug UI" [Active] org.eclipse.draw2d (3.2.100.v20070529) "Graphical Editing Framework Draw2d" [Starting] org.eclipse.emf.common (2.3.0.v200706262000) "EMF Common" [Starting] org.eclipse.emf.common.ui (2.3.0.v200706262000) "EMF Common UI" [Starting] org.eclipse.emf.ecore (2.3.0.v200706262000) "EMF Ecore" [Starting] org.eclipse.emf.ecore.change (2.3.0.v200706262000) "EMF Ecore Change Model" [Starting] org.eclipse.emf.ecore.change.edit (2.3.0.v200706262000) "EMF Ecore Change Edit Support" [Starting] org.eclipse.emf.ecore.edit (2.3.0.v200706262000) "EMF Ecore Edit Support" [Starting] org.eclipse.emf.ecore.xmi (2.3.0.v200706262000) "EMF XMI" [Starting] org.eclipse.emf.edit (2.3.0.v200706262000) "EMF Edit" [Starting] org.eclipse.emf.edit.ui (2.3.0.v200706262000) "EMF Edit UI" [Starting] org.eclipse.equinox.app (1.0.0.v20070606) "Equinox Application Container" [Active] org.eclipse.equinox.common (3.3.0.v20070426) "Common Eclipse Runtime" [Active] org.eclipse.equinox.http.jetty (1.0.0.v20070607) "Jetty Http Service" [Starting] org.eclipse.equinox.http.registry (1.0.0.v20070608) "Http Service Registry Extensions" [Resolved] org.eclipse.equinox.http.servlet (1.0.0.v20070606) "Http Services Servlet" [Starting] org.eclipse.equinox.jsp.jasper (1.0.0.v20070607) "Jasper Jsp Support Bundle" [Starting] org.eclipse.equinox.jsp.jasper.registry (1.0.0.v20070607) "Jasper Jsp Registry Support Plug-in" [Starting] org.eclipse.equinox.launcher (1.0.0.v20070606) "Equinox Launcher" [Resolved] org.eclipse.equinox.launcher.gtk.linux.x86 (1.0.0.v20070606) "Equinox Launcher Linux X86 Fragment" [Resolved] org.eclipse.equinox.preferences (3.2.100.v20070522) "Eclipse Preferences Mechanism" [Active] org.eclipse.equinox.registry (3.3.0.v20070522) "Extension Registry Support" [Active] org.eclipse.gef (3.2.100.v20070620) "Graphical Editing Framework" [Starting] org.eclipse.help (3.3.0.v20070524) "Help System Core" [Active] org.eclipse.help.appserver (3.1.200.v20070510) "Help Application Server" [Starting] org.eclipse.help.base (3.3.0.v20070606) "Help System Base" [Starting] org.eclipse.help.ui (3.3.0.v20070530) "Help System UI" [Starting] org.eclipse.help.webapp (3.3.0.v20070607) "Help System Webapp" [Starting] org.eclipse.jdt (3.3.0.v20070607-1300) "Eclipse Java Development Tools" [Resolved] org.eclipse.jdt.apt.core (3.3.0.v20070607-1200) "Java Annotation Processing Core" [Active] org.eclipse.jdt.apt.pluggable.core (1.0.0.v20070529-2100) "Java Compiler Apt IDE" [Starting] org.eclipse.jdt.apt.ui (3.3.0.v20070430-1135) "Java Annotation Processing UI" [Starting] org.eclipse.jdt.compiler.apt (1.0.0.v20070510-2000) "Java Compiler Apt" [Resolved] org.eclipse.jdt.compiler.tool (1.0.0.v_771) "Java Compiler Tool Support" [Resolved] org.eclipse.jdt.core (3.3.0.v_771) "Java Development Tools Core" [Active] org.eclipse.jdt.core.manipulation (1.1.0.v20070606-0010) "Java Code Manipulation Functionality" [Active] org.eclipse.jdt.debug (3.3.0.v20070530a) "JDI Debug Model" [Active] org.eclipse.jdt.debug.ui (3.2.100.v20070531-1800) "JDI Debug UI" [Active] org.eclipse.jdt.doc.isv (3.3.0.v20070613) "Eclipse JDT Plug-in Developer Guide" [Starting] org.eclipse.jdt.doc.user (3.3.0.v20070608-1300) "Eclipse Java Development User Guide" [Starting] org.eclipse.jdt.junit (3.3.0.v20070606-0010) "Java Development Tools JUnit support" [Active] org.eclipse.jdt.junit.runtime (3.3.0.v20070606-0010) "Java Development Tools JUnit runtime support" [Resolved] org.eclipse.jdt.junit4.runtime (1.0.100.v20070606-0010) "Java Development Tools JUnit4 runtime support" [Resolved] org.eclipse.jdt.launching (3.3.0.v20070510) "Java Development Tools Launching Support" [Active] org.eclipse.jdt.source (3.3.0.v20070606-0010-7o7jCHEFpPoqQYvnXqejeR) "Eclipse Java Development Tools SDK" [Resolved] org.eclipse.jdt.ui (3.3.0.v20070607-0010) "Java Development Tools UI" [Active] org.eclipse.jem.util (2.0.0.v200705302225) "Java EMF Model Utilities" [Starting] org.eclipse.jface (3.3.0.I20070606-0010) "JFace" [Active] org.eclipse.jface.databinding (1.1.0.I20070606-0010) "JFace Data Binding for SWT and JFace" [Resolved] org.eclipse.jface.text (3.3.0.v20070606-0010) "JFace Text" [Resolved] org.eclipse.jsch.core (1.0.0.I20070426) "JSch Core" [Active] org.eclipse.jsch.ui (1.0.0.I20070525) "JSch UI" [Starting] org.eclipse.ltk.core.refactoring (3.3.0.v20070606-0010) "Refactoring Core" [Active] org.eclipse.ltk.ui.refactoring (3.3.0.v20070606-0010) "Refactoring UI" [Active] org.eclipse.mylar (2.0.0.v20070627-1400) "Mylyn Compatibility Plug-in" [Starting] org.eclipse.mylar.bugzilla.core (2.0.0.v20070627-1400) "Mylyn Compatibility Bugzilla Connector Core Plug-in" [Starting] org.eclipse.mylar.bugzilla.ui (2.0.0.v20070627-1400) "Mylyn Compatibility Bugzilla Client Ui Plug-in" [Starting] org.eclipse.mylar.context.core (2.0.0.v20070627-1400) "Mylyn Compatibility Context Core Plug-in" [Starting] org.eclipse.mylar.context.ui (2.0.0.v20070627-1400) "Mylyn Compatibility UI Plug-in" [Starting] org.eclipse.mylar.doc (2.0.0.v20070627-1400) "Mylyn Compatibility Documentation Plug-in" [Starting] org.eclipse.mylar.ide (2.0.0.v20070627-1400) "Mylyn Compatibility Ide Plug-in" [Starting] org.eclipse.mylar.java (2.0.0.v20070627-1400) "Mylyn Compatibility Java Plug-in" [Starting] org.eclipse.mylar.jira.core (2.0.0.v20070627-1400) "Mylyn Compatibility JIRA Core Plug-in" [Starting] org.eclipse.mylar.jira.ui (2.0.0.v20070627-1400) "Mylyn Compatibility JIRA UI Plug-in" [Starting] org.eclipse.mylar.monitor.core (2.0.0.v20070627-1400) "Mylyn Compatibility Monitor Core Plug-in" [Resolved] org.eclipse.mylar.monitor.ui (2.0.0.v20070627-1400) "Mylyn Compatibility Monitor UI Plug-in" [Starting] org.eclipse.mylar.monitor.usage (2.0.0.v20070627-1400) "Mylyn Compatibility Usage Monitor Plug-in" [Starting] org.eclipse.mylar.resources (2.0.0.v20070627-1400) "Mylyn Compatibility Resources Plugin" [Starting] org.eclipse.mylar.tasks.core (2.0.0.v20070627-1400) "Mylyn Compatibility Tasks Core Plug-in" [Starting] org.eclipse.mylar.tasks.ui (2.0.0.v20070627-1400) "Mylyn Compatibility Tasks UI Plug-in" [Starting] org.eclipse.mylar.tasks.web (2.0.0.v20070627-1400) "Mylyn Compatibility Web Tasks Plug-in" [Starting] org.eclipse.mylar.team (2.0.0.v20070627-1400) "Mylyn Compatibility Team Plug-in" [Starting] org.eclipse.mylar.trac.core (2.0.0.v20070627-1400) "Mylyn Compatibility Trac Core Plug-in" [Starting] org.eclipse.mylar.trac.ui (2.0.0.v20070627-1400) "Mylyn Compatibility Trac UI Plug-in" [Starting] org.eclipse.mylar.web (2.0.0.v20070627-1400) "Mylyn Compatibility Web Plug-in" [Starting] org.eclipse.mylyn (2.0.0.v20070627-1400) "Mylyn" [Starting] org.eclipse.mylyn.bugzilla.core (2.0.0.v20070627-1400) "Mylyn Bugzilla Connector Core" [Active] org.eclipse.mylyn.bugzilla.ide (2.0.0.v20070627-1400) "Mylyn Bugzilla Connector IDE" [Active] org.eclipse.mylyn.bugzilla.ui (2.0.0.v20070627-1400) "Mylyn Bugzilla Connector UI" [Active] org.eclipse.mylyn.compatibility (2.0.0.v20070627-1400) "Java 5 Compatibility Checker" [Active] org.eclipse.mylyn.context.core (2.0.0.v20070627-1400) "Mylyn Context Core" [Active] org.eclipse.mylyn.context.ui (2.0.0.v20070627-1400) "Mylyn Context UI" [Active] org.eclipse.mylyn.help.ui (2.0.0.v20070627-1400) "Mylyn Help" [Starting] org.eclipse.mylyn.ide.ant (2.0.0.v20070627-1400) "Mylyn Ant UI Plug-in" [Active] org.eclipse.mylyn.ide.ui (2.0.0.v20070627-1400) "Mylyn IDE UI" [Active] org.eclipse.mylyn.java.ui (2.0.0.v20070628-1000) "Mylyn Java" [Active] org.eclipse.mylyn.monitor.core (2.0.0.v20070627-1400) "Mylyn Monitor Core" [Resolved] org.eclipse.mylyn.monitor.ui (2.0.0.v20070627-1400) "Mylyn Monitor UI" [Active] org.eclipse.mylyn.pde.ui (2.0.0.v20070627-1400) "Mylyn PDE UI Plug-in" [Active] org.eclipse.mylyn.resources.ui (2.0.0.v20070627-1400) "Mylyn Resources UI" [Active] org.eclipse.mylyn.tasks.core (2.0.0.v20070627-1400) "Mylyn Tasks Core" [Active] org.eclipse.mylyn.tasks.ui (2.0.0.v20070627-1400) "Mylyn Tasks UI" [Active] org.eclipse.mylyn.team.cvs (2.0.0.v20070627-1400) "Mylyn Team CVS Plug-in" [Resolved] org.eclipse.mylyn.team.ui (2.0.0.v20070627-1400) "Mylyn Team UI" [Active] org.eclipse.mylyn.web.core (2.0.0.v20070627-1400) "Mylyn Web Core Plug-in" [Active] org.eclipse.mylyn.web.ui (2.0.0.v20070627-1400) "Mylyn Web UI" [Starting] org.eclipse.osgi (3.3.0.v20070530) "OSGi System Bundle" [Active] org.eclipse.osgi.services (3.1.200.v20070605) "OSGi Release 4.0.1 Services" [Resolved] org.eclipse.osgi.util (3.1.200.v20070605) "OSGi Release 4.0.1 Utility Classes" [Resolved] org.eclipse.pde (3.3.0.v20070608-1300) "Eclipse Plug-in Development Environment" [Active] org.eclipse.pde.build (3.3.0.v20070612) "Plug-in Development Environment Build Support" [Active] org.eclipse.pde.core (3.3.0.v20070608-1300) "Plug-in Development Core" [Active] org.eclipse.pde.doc.user (3.3.0.v20070614-0800) "Eclipse Plug-in Development User Guide" [Resolved] org.eclipse.pde.junit.runtime (3.3.0.v20070608-1300) "PDE JUnit Plug-in Test" [Resolved] org.eclipse.pde.runtime (3.3.0.v20070608-1300) "Plug-in Development Environment Runtime" [Starting] org.eclipse.pde.source (3.3.0.v20070607-7N7M-DUUEF6Ez0H46IcCC) "Eclipse Plug-in Development Environment Developer Resources" [Resolved] org.eclipse.pde.ui (3.3.0.v20070608-1300) "Plug-in Development UI" [Active] org.eclipse.pde.ui.templates (3.3.0.v20070608-1300) "PDE Templates" [Starting] org.eclipse.platform (3.3.0.v20070613) "Eclipse Platform" [Starting] org.eclipse.platform.doc.isv (3.3.0.v20070621) "Eclipse Platform Plug-in Developer Guide" [Starting] org.eclipse.platform.doc.user (3.3.0.I20070615-1300) "Eclipse Workbench User Guide" [Starting] org.eclipse.platform.source (3.3.0.v20070612-_19UEkLEzwsdF9jSqQ-G) "Eclipse Platform Plug-in Developer Resources" [Resolved] org.eclipse.platform.source.linux.gtk.x86 (3.3.0.v20070612-_19UEkLEzwsdF9jSqQ-G) "Eclipse Platform Plug-in Developer Resources" [Resolved] org.eclipse.rcp (3.2.0.v20070612) "Eclipse RCP" [Starting] org.eclipse.rcp.source (3.3.0.v20070607-8y8eE8NEbsN3X6PjWS8HPNG) "Eclipse RCP Plug-in Developer Resources" [Resolved] org.eclipse.rcp.source.linux.gtk.x86 (3.3.0.v20070607-8y8eE8NEbsN3X6PjWS8HPNG) "Eclipse RCP Plug-in Developer Resources" [Resolved] org.eclipse.sdk (3.3.0.v20070613) "Eclipse Project SDK" [Starting] org.eclipse.search (3.3.0.v20070606-0010) "Search Support" [Active] org.eclipse.swt (3.3.0.v3345g) "Standard Widget Toolkit" [Resolved] org.eclipse.swt.gtk.linux.x86 (3.3.0.v3345f) "Standard Widget Toolkit for GTK 2.0" [Resolved] org.eclipse.team.core (3.3.0.I20070607) "Team Support Core" [Active] org.eclipse.team.cvs.core (3.3.0.I20070607) "CVS Team Provider Core" [Active] org.eclipse.team.cvs.ssh (3.2.100.I20061208) "CVS SSH Core" [Starting] org.eclipse.team.cvs.ssh2 (3.2.100.I20070604) "CVS SSH2" [Active] org.eclipse.team.cvs.ui (3.3.0.I20070607) "CVS Team Provider UI" [Active] org.eclipse.team.ui (3.3.0.I20070607) "Team Support UI" [Active] org.eclipse.text (3.3.0.v20070606-0010) "Text" [Resolved] org.eclipse.tomcat (4.1.230.v20070531) "Tomcat Wrapper" [Starting] org.eclipse.ui (3.3.0.I20070614-0800) "Eclipse UI" [Active] org.eclipse.ui.browser (3.2.100.v20070524A) "Browser Support" [Starting] org.eclipse.ui.cheatsheets (3.3.0.v20070507) "Cheat Sheets" [Starting] org.eclipse.ui.console (3.2.0.v20070530) "Console" [Active] org.eclipse.ui.editors (3.3.0.v20070606-0010) "Default Text Editor" [Active] org.eclipse.ui.externaltools (3.1.200.v20070416) "External Tools" [Active] org.eclipse.ui.forms (3.3.0.v20070511) "Eclipse Forms" [Active] org.eclipse.ui.ide (3.3.0.I20070620) "Eclipse IDE UI" [Active] org.eclipse.ui.ide.application (1.0.0.I20070530-0100) "Eclipse IDE UI Application" [Resolved] org.eclipse.ui.intro (3.2.100.v20070530) "Welcome Framework" [Starting] org.eclipse.ui.intro.universal (3.2.100.v20070530A) "Universal Welcome" [Starting] org.eclipse.ui.navigator (3.3.0.I20070605-0010) "Common Navigator View" [Starting] org.eclipse.ui.navigator.resources (3.3.0.I20070605-0010) "Navigator Workbench Components" [Starting] org.eclipse.ui.net (1.0.0.I20070516) "Internet Connection Management UI" [Active] org.eclipse.ui.presentations.r21 (3.2.100.I20070605-0010) "R21 Presentation Plug-in" [Starting] org.eclipse.ui.views (3.2.100.I20070319-0010) "Views" [Active] org.eclipse.ui.views.properties.tabbed (3.3.0.I20070605-0010) "Tabbed Properties View" [Starting] org.eclipse.ui.workbench (3.3.0.I20070608-1100) "Workbench" [Active] org.eclipse.ui.workbench.compatibility (3.2.0.I20070319-0010) "Workbench Compatibility" [Resolved] org.eclipse.ui.workbench.texteditor (3.3.0.v20070606-0010) "Text Editor Framework" [Active] org.eclipse.update.configurator (3.2.100.v20070615) "Install/Update Configurator" [Active] org.eclipse.update.core (3.2.100.v20070615) "Install/Update Core" [Active] org.eclipse.update.core.linux (3.2.0.v20070615) "Install/Update Core for Linux" [Resolved] org.eclipse.update.scheduler (3.2.100.v20070615) "Automatic Updates Scheduler" [Active] org.eclipse.update.ui (3.2.100.v20070615) "Install/Update UI" [Starting] org.eclipse.wst.command.env (1.0.203.v200705302225) "Environment Command Framework (headless)" [Starting] org.eclipse.wst.command.env.core (1.0.202.v200705302225) "Environment Command Framework (core)" [Resolved] org.eclipse.wst.command.env.infopop (1.0.3.v200706110217) "Web services UI" [Starting] org.eclipse.wst.command.env.ui (1.0.202.v200705302225) "Environment Command Framework (GUI)" [Starting] org.eclipse.wst.common.core (1.1.101.v200706120315) "WST Common Core Plug-in" [Starting] org.eclipse.wst.common.emf (1.1.103.v200706071630) "EMF Utilities" [Starting] org.eclipse.wst.common.emfworkbench.integration (1.1.103.v200706071630) "EMF Workbench Edit Plug-in" [Starting] org.eclipse.wst.common.environment (1.0.200.v200705302225) "Enviornment Plug-in" [Starting] org.eclipse.wst.common.frameworks (1.1.102.v200706071630) "Common Frameworks" [Starting] org.eclipse.wst.common.frameworks.ui (1.1.100.v200706071630) "WTP UI Plug-in" [Starting] org.eclipse.wst.common.infopop (1.0.2.v200706110217) "Common WST infopops" [Starting] org.eclipse.wst.common.modulecore (1.1.102.v200706071630) "Modulecore Plug-in" [Starting] org.eclipse.wst.common.project.facet.core (1.2.0.v200706071740) "Project Facet Core" [Starting] org.eclipse.wst.common.project.facet.ui (1.2.0.v200706071742) "Project Facet UI" [Starting] org.eclipse.wst.common.snippets (1.1.101.v200705302225) "Snippets View" [Starting] org.eclipse.wst.common.ui (1.1.200.v200705302225) "Eclipse Base UI extensions" [Starting] org.eclipse.wst.common.ui.properties (1.0.102.v200706120315) "Common Properties UI" [Starting] org.eclipse.wst.common.uriresolver (1.1.201.v200705302225) "Common URI Resolver Framework" [Starting] org.eclipse.wst.dtd.core (1.1.101.v200705302225) "Structured Source DTD Core" [Starting] org.eclipse.wst.dtd.ui (1.0.201.v200705302225) "SSE DTD Source Editor" [Starting] org.eclipse.wst.dtd.ui.infopop (1.0.2.v200706110217) "DTD Editor infopops" [Resolved] org.eclipse.wst.dtdeditor.doc.user (1.0.300.v200705302225) "DTD Editor documentation" [Resolved] org.eclipse.wst.internet.cache (1.0.201.v200705302225) "Cache URI Resolver Plug-in" [Starting] org.eclipse.wst.sse.core (1.1.201.v200706212223) "Structured Text Model" [Active] org.eclipse.wst.sse.doc.user (1.0.300.v200705302225) "Structured text editor and snippets documentation" [Resolved] org.eclipse.wst.sse.ui (1.0.302.v200706192034) "Structured Source Editor" [Starting] org.eclipse.wst.sse.ui.infopop (1.0.102.v200706110217) "SSE infopops" [Resolved] org.eclipse.wst.standard.schemas (1.0.1.v200705302225) "Standard Schemas and DTDs" [Resolved] org.eclipse.wst.validation (1.1.101.v200706071630) "Validation Framework" [Starting] org.eclipse.wst.validation.infopop (1.0.202.v200706110217) "WST validation infopop plug-in" [Resolved] org.eclipse.wst.validation.ui (1.1.102.v200706071630) "Validation Framework UI" [Starting] org.eclipse.wst.xml.core (1.1.200.v200706120811) "Structured Source XML Model" [Active] org.eclipse.wst.xml.ui (1.0.300.v200705302225) "XML UI Plugin" [Starting] org.eclipse.wst.xml.ui.infopop (1.0.2.v200706110217) "XML infopops" [Resolved] org.eclipse.wst.xmleditor.doc.user (1.0.300.v200705302225) "XML editor" [Resolved] org.eclipse.wst.xsd.core (1.1.200.v200705302225) "XSD Core Plugin" [Starting] org.eclipse.wst.xsd.ui (1.2.0.v200706131840) "XML Schema Editor" [Starting] org.eclipse.wst.xsdeditor.doc.user (1.0.300.v200705302225) "XML schema editor" [Resolved] org.eclipse.xsd (2.3.0.v200706262000) "XML Schema Infoset Model (XSD)" [Starting] org.eclipse.xsd.edit (2.3.0.v200706262000) "XML Schema Edit Framework" [Starting] org.junit (3.8.2.v200706111738) "JUnit Testing Framework" [Resolved] org.junit.source (3.8.2.v200706111738) "JUnit Testing Framework Source" [Resolved] org.junit4 (4.3.1) "JUnit Testing Framework Version 4" [Resolved] org.mortbay.jetty (5.1.11.v200706111724) "Jetty WebServer" [Resolved] org.mortbay.jetty.source (5.1.11.v200706111724) "Jetty WebServer Source" [Resolved] org.polarion.team.svn.client.javahl (1.1.5) "JavaHL-based client for Subversive SVN Team Provider" [Active] org.polarion.team.svn.client.javahl.win32 (1.1.4) "fragmentName" [Resolved] org.polarion.team.svn.client.javasvn (1.1.3) "JavaSVN-based client for Subversive SVN Team Provider" [Active] org.polarion.team.svn.client.javasvn.source (1.1.3) "pluginName" [Resolved] org.polarion.team.svn.client.svnkit (1.1.7) "SVNKit-based client for Subversive SVN Team Provider" [Active] org.polarion.team.svn.client.svnkit.source (1.1.7) "pluginName" [Resolved] org.polarion.team.svn.core (1.1.7) "Subversive SVN Team Provider Core Plug-in" [Active] org.polarion.team.svn.help (1.1.7) "Subversive SVN Team Provider User Guide Plug-in" [Starting] org.polarion.team.svn.mylyn (1.0.8) "Subversive Integration for the Mylyn Project" [Active] org.polarion.team.svn.mylyn.source (1.0.8) "pluginName" [Resolved] org.polarion.team.svn.nl1.sources (1.0.1) "pluginName" [Resolved] org.polarion.team.svn.projectset.source (1.0.4) "pluginName" [Resolved] org.polarion.team.svn.resource.ignore.rules.jdt (1.0.3) "Subversive JDT Ignore Recommendations" [Active] org.polarion.team.svn.resource.ignore.rules.jdt.source (1.0.3) "pluginName" [Resolved] org.polarion.team.svn.sources (1.1.7) "pluginName" [Resolved] org.polarion.team.svn.ui (1.1.7) "Subversive SVN Team Provider UI Plug-in" [Active]
>Well, as you can see I do not have any 3rd party plugins installed besides the Not true - there's tons of stuff you have installed on top of the Eclipse SDK (EMF, WTP, Mylin, etc.).
Ah, ok. A misunderstanding then. I didn't count them as 3rd party plugins as they are all eclipse projects. Wouldn't the eclipse bugtracker be the correct place for this issue then? No matter which of the eclipse plugins caused it? Anyway, I'll try if I can reproduce the problem with a vanilla eclipse install.
> Wouldn't the eclipse bugtracker be the correct place for >this issue then? No matter which of the eclipse plugins caused it? Sure, but as you can see there are many different components. I did not say it is not a Platform Text bug but so far I can't reproduce.
I've written a Junit4 test case which reproduces the failure on my system (it may take a long time, it is basically a large number of edits with random delays). I can reproduce the failure with the following pretty minimal eclipse configuration. So it doesn't seem to be related to any of the extra plugins. *** Features: org.eclipse.jdt (3.3.0.v20070606-0010-7o7jCHEFpPoqQYvnXqejeR) "Eclipse Java Development Tools" org.eclipse.sdk (3.3.0.v20070607-7M7J-BIolz-OcxWxvWAPSfLPqevO) "Eclipse Project SDK" *** Plug-in Registry: com.ibm.icu (3.6.1.v20070417) "International Components for Unicode for Java (ICU4J)" [Active] javax.servlet (2.4.0.v200706111738) "Servlet API Bundle" [Resolved] org.apache.commons.logging (1.0.4.v200706111724) "Apache Commons Logging Plug-in" [Resolved] org.apache.lucene (1.9.1.v200706111724) "Apache Lucene" [Resolved] org.apache.lucene.analysis (1.9.1.v200706181610) "Apache Lucene Analysis" [Resolved] org.eclipse.ant.core (3.1.200.v20070522) "Ant Build Tool Core" [Starting] org.eclipse.compare (3.3.0.I20070606) "Compare Support" [Starting] org.eclipse.core.commands (3.3.0.I20070605-0010) "Commands" [Resolved] org.eclipse.core.contenttype (3.2.100.v20070319) "Eclipse Content Mechanism" [Active] org.eclipse.core.databinding (1.0.0.I20070606-0010) "JFace Data Binding" [Resolved] org.eclipse.core.databinding.beans (1.0.0.I20070606-0010) "JFace Data Binding for JavaBeans" [Resolved] org.eclipse.core.expressions (3.3.0.v20070606-0010) "Expression Language" [Active] org.eclipse.core.filebuffers (3.3.0.v20070606-0010) "File Buffers" [Active] org.eclipse.core.filesystem (1.1.0.v20070606) "Core File Systems" [Active] org.eclipse.core.filesystem.linux.x86 (1.1.0.v20070416) "Core File System for Linux" [Resolved] org.eclipse.core.jobs (3.3.0.v20070423) "Eclipse Jobs Mechanism" [Active] org.eclipse.core.net (1.0.0.I20070531) "Internet Connection Management" [Active] org.eclipse.core.resources (3.3.0.v20070604) "Core Resource Management" [Active] org.eclipse.core.resources.compatibility (3.2.100.v20070502) "Core Resource Management Compatibility Fragment" [Resolved] org.eclipse.core.runtime (3.3.100.v20070530) "Core Runtime" [Active] org.eclipse.core.runtime.compatibility (3.1.200.v20070502) "Core Runtime Plug-in Compatibility" [Active] org.eclipse.core.runtime.compatibility.auth (3.2.100.v20070502) "Authorization Compatibility Plug-in" [Active] org.eclipse.core.runtime.compatibility.registry (3.2.100.v20070316) "Eclipse Registry Compatibility Fragment" [Resolved] org.eclipse.core.variables (3.2.0.v20070426) "Core Variables" [Starting] org.eclipse.debug.core (3.3.0.v20070607-1800) "Debug Core" [Active] org.eclipse.debug.ui (3.3.0.v20070607-1800) "Debug UI" [Active] org.eclipse.draw2d (3.2.100.v20070529) "Graphical Editing Framework Draw2d" [Starting] org.eclipse.equinox.app (1.0.0.v20070606) "Equinox Application Container" [Active] org.eclipse.equinox.common (3.3.0.v20070426) "Common Eclipse Runtime" [Active] org.eclipse.equinox.http.jetty (1.0.0.v20070607) "Jetty Http Service" [Starting] org.eclipse.equinox.http.servlet (1.0.0.v20070606) "Http Services Servlet" [Starting] org.eclipse.equinox.launcher (1.0.0.v20070606) "Equinox Launcher" [Resolved] org.eclipse.equinox.launcher.gtk.linux.x86 (1.0.0.v20070606) "Equinox Launcher Linux X86 Fragment" [Resolved] org.eclipse.equinox.preferences (3.2.100.v20070522) "Eclipse Preferences Mechanism" [Active] org.eclipse.equinox.registry (3.3.0.v20070522) "Extension Registry Support" [Active] org.eclipse.help (3.3.0.v20070524) "Help System Core" [Active] org.eclipse.help.base (3.3.0.v20070606) "Help System Base" [Starting] org.eclipse.help.ui (3.3.0.v20070530) "Help System UI" [Starting] org.eclipse.jdt (3.3.0.v20070607-1300) "Eclipse Java Development Tools" [Resolved] org.eclipse.jdt.compiler.apt (1.0.0.v20070510-2000) "Java Compiler Apt" [Resolved] org.eclipse.jdt.compiler.tool (1.0.0.v_771) "Java Compiler Tool Support" [Resolved] org.eclipse.jdt.core (3.3.0.v_771) "Java Development Tools Core" [Active] org.eclipse.jdt.core.manipulation (1.1.0.v20070606-0010) "Java Code Manipulation Functionality" [Active] org.eclipse.jdt.debug (3.3.0.v20070530a) "JDI Debug Model" [Starting] org.eclipse.jdt.junit.runtime (3.3.0.v20070606-0010) "Java Development Tools JUnit runtime support" [Resolved] org.eclipse.jdt.junit4.runtime (1.0.100.v20070606-0010) "Java Development Tools JUnit4 runtime support" [Resolved] org.eclipse.jdt.launching (3.3.0.v20070510) "Java Development Tools Launching Support" [Active] org.eclipse.jdt.ui (3.3.0.v20070607-0010) "Java Development Tools UI" [Active] org.eclipse.jface (3.3.0.I20070606-0010) "JFace" [Active] org.eclipse.jface.databinding (1.1.0.I20070606-0010) "JFace Data Binding for SWT and JFace" [Resolved] org.eclipse.jface.text (3.3.0.v20070606-0010) "JFace Text" [Resolved] org.eclipse.ltk.core.refactoring (3.3.0.v20070606-0010) "Refactoring Core" [Starting] org.eclipse.ltk.ui.refactoring (3.3.0.v20070606-0010) "Refactoring UI" [Starting] org.eclipse.osgi (3.3.0.v20070530) "OSGi System Bundle" [Active] org.eclipse.osgi.services (3.1.200.v20070605) "OSGi Release 4.0.1 Services" [Resolved] org.eclipse.osgi.util (3.1.200.v20070605) "OSGi Release 4.0.1 Utility Classes" [Resolved] org.eclipse.pde.junit.runtime (3.3.0.v20070608-1300) "PDE JUnit Plug-in Test" [Resolved] org.eclipse.sdk (3.3.0.v20070613) "Eclipse Project SDK" [Starting] org.eclipse.search (3.3.0.v20070606-0010) "Search Support" [Starting] org.eclipse.swt (3.3.0.v3345g) "Standard Widget Toolkit" [Resolved] org.eclipse.swt.gtk.linux.x86 (3.3.0.v3345f) "Standard Widget Toolkit for GTK 2.0" [Resolved] org.eclipse.team.core (3.3.0.I20070607) "Team Support Core" [Active] org.eclipse.team.ui (3.3.0.I20070607) "Team Support UI" [Active] org.eclipse.text (3.3.0.v20070606-0010) "Text" [Resolved] org.eclipse.ui (3.3.0.I20070614-0800) "Eclipse UI" [Active] org.eclipse.ui.cheatsheets (3.3.0.v20070507) "Cheat Sheets" [Starting] org.eclipse.ui.console (3.2.0.v20070530) "Console" [Starting] org.eclipse.ui.editors (3.3.0.v20070606-0010) "Default Text Editor" [Active] org.eclipse.ui.forms (3.3.0.v20070511) "Eclipse Forms" [Starting] org.eclipse.ui.ide (3.3.0.I20070620) "Eclipse IDE UI" [Active] org.eclipse.ui.ide.application (1.0.0.I20070530-0100) "Eclipse IDE UI Application" [Resolved] org.eclipse.ui.intro (3.2.100.v20070530) "Welcome Framework" [Starting] org.eclipse.ui.navigator (3.3.0.I20070605-0010) "Common Navigator View" [Starting] org.eclipse.ui.navigator.resources (3.3.0.I20070605-0010) "Navigator Workbench Components" [Starting] org.eclipse.ui.views (3.2.100.I20070319-0010) "Views" [Active] org.eclipse.ui.views.properties.tabbed (3.3.0.I20070605-0010) "Tabbed Properties View" [Starting] org.eclipse.ui.workbench (3.3.0.I20070608-1100) "Workbench" [Active] org.eclipse.ui.workbench.texteditor (3.3.0.v20070606-0010) "Text Editor Framework" [Active] org.eclipse.update.configurator (3.2.100.v20070615) "Install/Update Configurator" [Active] org.eclipse.update.core (3.2.100.v20070615) "Install/Update Core" [Starting] org.eclipse.update.core.linux (3.2.0.v20070615) "Install/Update Core for Linux" [Resolved] org.eclipse.update.ui (3.2.100.v20070615) "Install/Update UI" [Starting] org.junit (3.8.2.v200706111738) "JUnit Testing Framework" [Resolved] org.junit4 (4.3.1) "JUnit Testing Framework Version 4" [Resolved] org.mortbay.jetty (5.1.11.v200706111724) "Jetty WebServer" [Resolved] TestPlugin (1.0.0) "TestPlugin Plug-in" [Active]
>I've written a Junit4 test case which reproduces the failure on my system (it >may take a long time, it is basically a large number of edits with random >delays). Good, that will help us to reproduce the bug then. Please attach it here. Also, "long time" depends on your view on things - are we talking about seconds or hours?
Created attachment 79969 [details] JUnit4 test case which reproduces the failure on my system - READ THE COMMENT This is a small plugin project which contains a JUnit4 test case that reproduces the failure on my system. Notes: - English (could be any language but German) spell checking needs to be enabled (you need to see the red lines below most of the words in the text) - The defect is a race condition. The test case tries to create the failure condition by doing an endless number of edits with random delays. On my system it can take between one second and a couple of hours to reproduce the failure. Most of the time I get a failure within the first 15 minutes though. - This was tested on a dual-core system. Things might be different on a single-core system.
Another note about the test case. I just tried it with 3.3.1 (M20070921-1145) and it will be very unlikely to reproduce the bug on such a system because the number of spellcheck suggestions is now limited. However, if the limits on the spelling preferences page are increased as much as possible, the test case will still reproduce the issue.
3.3.1.1 still has this issue. I'd suggest changing the status of this entry from RESOLVED to REOPENED. The problem here is that a file opened in a TextEditor will lead to a SynchronizableDocument which does not have its lock object initialised. I am not familiar with the IDocumentProvider code base but it seems that for a java file, CompilationUnitDocumentProvider.createFileInfo(Object) calls TextFileDocumentProvider.setUpSynchronization(FileInfo) which in turn calls SynchronizableDocument.setLockObject(Object). For a text file on the other hand, TextFileDocumentProvider.createFileInfo(Object) never calls TextFileDocumentProvider.setUpSynchronization(FileInfo) and thus SynchronizableDocument.setLockObject(Object) is never called. Is there any reason why a text document should not be synchronised? As CompilationUnitDocumentProvider extends TextFileDocumentProvider, changing this in TextFileDocumentProvider might be a bit problematic. But a new sub-class, i.e. SynchronizableTextFileDocumentProvider, could be used for the TextEditor, couldn't it? I understand that this might not be high on the priority list. However, we're still experiencing multiple TextEditor crashes per day, which are most likely all caused by the fact that the documents are not being synchronised. Thanks a lot. MfG H. Meyer
.
I got this too today: 1. Open text editor with 'Faust - Der Tragoedie erster Teil' 2. Enable spell checking with English dict 3. Set max spell errors to 9999 4. Show spelling errors in vertical ruler (and only there) 5. Now start typing, saving, typing new lines, saving, ... like a maniac for a few seconds, exception is drown and editor is unusable Also got this: java.lang.IndexOutOfBoundsException: Index: 9469, Size: 9469 at java.util.ArrayList.RangeCheck(ArrayList.java:546) at java.util.ArrayList.get(ArrayList.java:321) at org.eclipse.jface.text.AbstractDocument.removePosition(AbstractDocument.java:1003) at org.eclipse.core.internal.filebuffers.SynchronizableDocument.removePosition(SynchronizableDocument.java:203) at org.eclipse.jface.text.AbstractDocument.removePosition(AbstractDocument.java:1015) at org.eclipse.jface.text.TextViewer.setMark(TextViewer.java:4591) at org.eclipse.ui.texteditor.IncrementalFindTarget.beginSession(IncrementalFindTarget.java:305) at org.eclipse.ui.texteditor.IncrementalFindAction.run(IncrementalFindAction.java:100) Looks like we have a synchronization issue
*** Bug 211509 has been marked as a duplicate of this bug. ***
(In reply to comment #26) > *** Bug 211509 has been marked as a duplicate of this bug. *** Hi Daniel Reading what the other had seen on their cases, i try to edit other program, shorter than the one how has the issue (This one has more than 4000 line of code) and let me work normally, then i disable the spell cheking function on the editor, a went back to the firsto program and let me work as well, i think maybe the spell cheking function when detects too many words mispelled, can handle it and blocks the editor. For now i can work like this, because i don't need the spell cheking function, (my work is in cobol and i dont have a compiler on my pc). Thanks for the support, if you find some way of fix this, please let me know. Thanks again Iván Rojas
*** Bug 213292 has been marked as a duplicate of this bug. ***
Could not reproduce using steps form comment 21 and comment 25 on my single core machine. I then modified the priority of threads randomly and can now easily reproduce.
*** Bug 208157 has been marked as a duplicate of this bug. ***
*** This bug has been marked as a duplicate of bug 142715 ***
Does this seem to be an issue with the lock object initialisation in TextFileDocumentProvider after all? Or did you find a defect elsewhere? Is this likely to be fixed in 3.4? Greetings H. Meyer
The fix is in HEAD. There were two issues: the lock object not being set in some cases (most subclasses did this so far) and a hole when the annotation model was taken from the file buffer and not from createAnnotationModel(IFile).