Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 312543 - cvs update or commit causes dead lock
Summary: cvs update or commit causes dead lock
Status: CLOSED DUPLICATE of bug 311863
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Team (show other bugs)
Version: 3.6   Edit
Hardware: PC Linux
: P3 critical (vote)
Target Milestone: ---   Edit
Assignee: Platform Team Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-05-12 04:03 EDT by Steffen Pingel CLA
Modified: 2010-05-17 11:31 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Steffen Pingel CLA 2010-05-12 04:03:56 EDT
After updating to Eclipse 3.6M7 (SDK) I have run into dead locks while updating from or comitting to CVS from the Synhronize view (see below).

Version: 3.6.0
Build id: I20100429-1549

Full thread dump Java HotSpot(TM) Client VM (16.3-b01 mixed mode, sharing):

"TimeoutOutputStream" daemon prio=10 tid=0xb2a43800 nid=0x5425 in Object.wait() [0xab4fc000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        at java.lang.Object.wait(Object.java:485)
        at org.eclipse.team.internal.core.streams.TimeoutOutputStream.writeUntilDone(TimeoutOutputStream.java:240)
        - locked <0x5fa00068> (a org.eclipse.team.internal.core.streams.TimeoutOutputStream)
        at org.eclipse.team.internal.core.streams.TimeoutOutputStream.runThread(TimeoutOutputStream.java:195)
        at org.eclipse.team.internal.core.streams.TimeoutOutputStream.access$0(TimeoutOutputStream.java:193)
        at org.eclipse.team.internal.core.streams.TimeoutOutputStream$1.run(TimeoutOutputStream.java:66)
        at java.lang.Thread.run(Thread.java:619)

"TimeoutInputStream" daemon prio=10 tid=0xb3206800 nid=0x5424 in Object.wait() [0xab1be000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        at java.io.PipedInputStream.read(PipedInputStream.java:310)
        - locked <0x5fa00118> (a com.jcraft.jsch.Channel$MyPipedInputStream)
        at java.io.PipedInputStream.read(PipedInputStream.java:361)
        - locked <0x5fa00118> (a com.jcraft.jsch.Channel$MyPipedInputStream)
        at java.io.FilterInputStream.read(FilterInputStream.java:116)
        at org.eclipse.team.internal.core.streams.TimeoutInputStream.readUntilDone(TimeoutInputStream.java:269)
        at org.eclipse.team.internal.core.streams.TimeoutInputStream.runThread(TimeoutInputStream.java:218)
        at org.eclipse.team.internal.core.streams.TimeoutInputStream.access$0(TimeoutInputStream.java:216)
        at org.eclipse.team.internal.core.streams.TimeoutInputStream$1.run(TimeoutInputStream.java:65)
        at java.lang.Thread.run(Thread.java:619)

"Worker-84" prio=10 tid=0xac3a8c00 nid=0x5263 in Object.wait() [0xab302000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        at org.eclipse.ui.internal.Semaphore.acquire(Semaphore.java:43)
        - locked <0x5fa02298> (a org.eclipse.ui.internal.Semaphore)
        at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:168)
        at org.eclipse.swt.widgets.Display.syncExec(Display.java:4280)
        at org.eclipse.team.internal.ui.Utils.syncExec(Utils.java:871)
        at org.eclipse.team.internal.ui.Utils.syncExec(Utils.java:866)
        at org.eclipse.team.internal.ccvs.ui.mappings.ChangeSetContentProvider$CollectorListener.resourcesChanged(ChangeSetContentProvider.java:139)
        at org.eclipse.team.internal.core.subscribers.ChangeSetManager$5.run(ChangeSetManager.java:202)
        at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
        at org.eclipse.team.internal.core.subscribers.ChangeSetManager.fireResourcesChangedEvent(ChangeSetManager.java:197)
        at org.eclipse.team.internal.core.subscribers.ActiveChangeSetManager.handleSyncSetChange(ActiveChangeSetManager.java:254)
        at org.eclipse.team.internal.core.subscribers.ActiveChangeSetManager.diffsChanged(ActiveChangeSetManager.java:97)
        at org.eclipse.team.core.diff.provider.DiffTree$1.run(DiffTree.java:247)
        at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
        at org.eclipse.team.core.diff.provider.DiffTree.fireChanges(DiffTree.java:239)
        at org.eclipse.team.core.diff.provider.DiffTree.endInput(DiffTree.java:221)
        at org.eclipse.team.internal.core.subscribers.SubscriberChangeSetManager$EventHandler.endDispatch(SubscriberChangeSetManager.java:142)
        at org.eclipse.team.internal.core.subscribers.SubscriberChangeSetManager$EventHandler.doDispatchEvents(SubscriberChangeSetManager.java:92)
        at org.eclipse.team.internal.core.BackgroundEventHandler.dispatchEvents(BackgroundEventHandler.java:394)
        at org.eclipse.team.internal.core.BackgroundEventHandler.processEvents(BackgroundEventHandler.java:374)
        at org.eclipse.team.internal.core.BackgroundEventHandler$1.run(BackgroundEventHandler.java:203)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)


"Worker-83" prio=10 tid=0xac579800 nid=0x5262 in Object.wait() [0xab409000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        at org.eclipse.core.internal.jobs.Semaphore.acquire(Semaphore.java:38)
        - locked <0x5fa02520> (a org.eclipse.core.internal.jobs.Semaphore)
        at org.eclipse.core.internal.jobs.OrderedLock.doAcquire(OrderedLock.java:175)
        at org.eclipse.core.internal.jobs.OrderedLock.acquire(OrderedLock.java:109)
        at org.eclipse.core.internal.jobs.OrderedLock.acquire(OrderedLock.java:83)
        at org.eclipse.team.internal.ccvs.core.resources.EclipseSynchronizer.beginOperation(EclipseSynchronizer.java:556)
        at org.eclipse.team.internal.ccvs.core.resources.EclipseSynchronizer.setSyncBytes(EclipseSynchronizer.java:316)
        at org.eclipse.team.internal.ccvs.core.resources.EclipseResource.setSyncBytes(EclipseResource.java:198)
        at org.eclipse.team.internal.ccvs.core.resources.EclipseFile.setSyncBytes(EclipseFile.java:580)
        at org.eclipse.team.internal.ccvs.core.resources.EclipseFile.setSyncInfo(EclipseFile.java:565)
        at org.eclipse.team.internal.ccvs.core.resources.EclipseFile.checkedIn(EclipseFile.java:513)
        at org.eclipse.team.internal.ccvs.core.client.CheckedInHandler.handle(CheckedInHandler.java:52)
        at org.eclipse.team.internal.ccvs.core.client.Request.executeRequest(Request.java:220)
        at org.eclipse.team.internal.ccvs.core.client.Command.doExecute(Command.java:413)
        at org.eclipse.team.internal.ccvs.core.client.Command$1.run(Command.java:326)
        at org.eclipse.team.internal.ccvs.core.resources.EclipseSynchronizer.run(EclipseSynchronizer.java:1481)
        at org.eclipse.team.internal.ccvs.core.resources.EclipseResource$2.run(EclipseResource.java:262)
        at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1975)
        at org.eclipse.team.internal.ccvs.core.resources.EclipseResource.run(EclipseResource.java:259)
        at org.eclipse.team.internal.ccvs.core.client.Command.execute(Command.java:338)
        at org.eclipse.team.internal.ccvs.core.client.Command.execute(Command.java:804)
        at org.eclipse.team.internal.ccvs.ui.operations.AddOperation.add(AddOperation.java:199)
        at org.eclipse.team.internal.ccvs.ui.operations.AddOperation.execute(AddOperation.java:66)
        at org.eclipse.team.internal.ccvs.ui.operations.RepositoryProviderOperation.execute(RepositoryProviderOperation.java:275)
        at org.eclipse.team.internal.ccvs.ui.operations.RepositoryProviderOperation.execute(RepositoryProviderOperation.java:251)
        at org.eclipse.team.internal.ccvs.ui.operations.RepositoryProviderOperation.execute(RepositoryProviderOperation.java:205)
        at org.eclipse.team.internal.ccvs.ui.operations.CVSOperation.run(CVSOperation.java:81)
        at org.eclipse.team.internal.ccvs.ui.wizards.CommitWizard$AddAndCommitOperation.execute(CommitWizard.java:99)
        at org.eclipse.team.internal.ccvs.ui.operations.CVSOperation.run(CVSOperation.java:81)
        at org.eclipse.team.internal.ui.actions.JobRunnableContext.run(JobRunnableContext.java:144)
        at org.eclipse.team.internal.ui.actions.JobRunnableContext$ResourceJob.runInWorkspace(JobRunnableContext.java:72)
        at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

"Connect thread dev.eclipse.org session" prio=10 tid=0xabf68400 nid=0x48c8 runnable [0xb3427000]
   java.lang.Thread.State: RUNNABLE
        at java.net.SocketInputStream.socketRead0(Native Method)
        at java.net.SocketInputStream.read(SocketInputStream.java:129)
        at com.jcraft.jsch.IO.getByte(IO.java:82)
        at com.jcraft.jsch.Session.read(Session.java:809)
        at com.jcraft.jsch.Session.run(Session.java:1193)
        at java.lang.Thread.run(Thread.java:619)
"main" prio=10 tid=0x08624c00 nid=0x793e in Object.wait() [0xbf8c5000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        at org.eclipse.core.internal.jobs.Semaphore.acquire(Semaphore.java:38)
        - locked <0x5443f988> (a org.eclipse.core.internal.jobs.Semaphore)
        at org.eclipse.core.internal.jobs.OrderedLock.doAcquire(OrderedLock.java:175)
        at org.eclipse.core.internal.jobs.OrderedLock.acquire(OrderedLock.java:109)
        at org.eclipse.core.internal.jobs.OrderedLock.acquire(OrderedLock.java:83)
        at org.eclipse.team.internal.ccvs.core.resources.EclipseSynchronizer.beginOperation(EclipseSynchronizer.java:556)
        at org.eclipse.team.internal.ccvs.core.resources.EclipseSynchronizer.getSyncBytes(EclipseSynchronizer.java:274)
        at org.eclipse.team.internal.ccvs.core.resources.EclipseResource.getSyncBytes(EclipseResource.java:190)
        at org.eclipse.team.internal.ccvs.core.resources.EclipseResource.isManaged(EclipseResource.java:149)
        at org.eclipse.team.internal.ccvs.ui.CVSLightweightDecorator.decorate(CVSLightweightDecorator.java:310)
        at org.eclipse.team.internal.ccvs.ui.CVSLightweightDecorator.decorate(CVSLightweightDecorator.java:241)
        at org.eclipse.team.internal.ccvs.ui.subscriber.CVSParticipantLabelDecorator.getDecoration(CVSParticipantLabelDecorator.java:94)
        at org.eclipse.team.internal.ccvs.ui.subscriber.CVSParticipantLabelDecorator.decorateText(CVSParticipantLabelDecorator.java:67)
        at org.eclipse.team.internal.ui.synchronize.MultiLabelDecorator.decorateText(MultiLabelDecorator.java:43)
        at org.eclipse.jface.viewers.DecoratingStyledCellLabelProvider.getStyledText(DecoratingStyledCellLabelProvider.java:203)
        at org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.update(DelegatingStyledCellLabelProvider.java:103)
        at org.eclipse.jface.viewers.DecoratingStyledCellLabelProvider.update(DecoratingStyledCellLabelProvider.java:134)
        at org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn.java:152)
        at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:916)
        at org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeRunnable.run(AbstractTreeViewer.java:102)
        at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
        at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
        at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
        at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:996)
        at org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRunnable.run(StructuredViewer.java:481)
        at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
        at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
        at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
        at org.eclipse.jface.viewers.StructuredViewer.updateItem(StructuredViewer.java:2141)
        at org.eclipse.jface.viewers.AbstractTreeViewer.updateChildren(AbstractTreeViewer.java:2671)
        at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1849)
        at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:717)
        at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1856)
        at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:717)
        at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1856)
        at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:717)
        at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1824)
        at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1781)
        at org.eclipse.ui.navigator.CommonViewer.internalRefresh(CommonViewer.java:561)
        at org.eclipse.team.internal.ui.mapping.CommonViewerAdvisor$NavigableCommonViewer.internalRefresh(CommonViewerAdvisor.java:60)
        at org.eclipse.jface.viewers.StructuredViewer$8.run(StructuredViewer.java:1514)
        at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1422)
        at org.eclipse.jface.viewers.TreeViewer.preservingSelection(TreeViewer.java:403)
        at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1383)
        at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1512)
        at org.eclipse.jface.viewers.ColumnViewer.refresh(ColumnViewer.java:548)
        at org.eclipse.ui.navigator.CommonViewer.refresh(CommonViewer.java:350)
        at org.eclipse.team.internal.ccvs.ui.mappings.ChangeSetContentProvider$7.run(ChangeSetContentProvider.java:143)
        at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
        at org.eclipse.team.internal.ui.Utils$6.run(Utils.java:874)
        at org.eclipse.ui.internal.UILockListener.doPendingWork(UILockListener.java:164)
        at org.eclipse.ui.internal.UISynchronizer$3.run(UISynchronizer.java:158)
        at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
        at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)
        - locked <0x5fa03560> (a org.eclipse.swt.widgets.RunnableLock)
        at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3515)
        at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3162)
        at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2601)
        at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2565)
        at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2399)
        at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:669)
        at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
        at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:662)
        at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
        at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
        at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
        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:619)
        at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574)
        at org.eclipse.equinox.launcher.Main.run(Main.java:1407)
Comment 1 Remy Suen CLA 2010-05-12 05:48:55 EDT
May be the same problem as bug 308235.
Comment 2 John Arthorne CLA 2010-05-17 11:31:04 EDT

*** This bug has been marked as a duplicate of bug 311863 ***