Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Eclipse Platform » [Fwd: Re: EventLoopProgressMonitor.isCanceled produce a strange refresh]
[Fwd: Re: EventLoopProgressMonitor.isCanceled produce a strange refresh] [message #328732] Tue, 03 June 2008 08:20 Go to next message
Eclipse UserFriend
Originally posted by: laurent.legoff.geensy.com

Hi,
this message have been posted in emf newsgroup first.
Pplease have you got an answer for that problem?

thanks for help

laurent

-------- Message original --------
Sujet: Re: EventLoopProgressMonitor.isCanceled produce a strange refresh
Date: Mon, 02 Jun 2008 16:48:25 +0200
De: Laurent Le Goff <laurent.legoff@geensy.com>
Organisation: EclipseCorner
Forum :: eclipse.tools.emf
Références: <g210pk$fka$1@build.eclipse.org>
Hi all,

I don't know if it is an EMF bug or platform eclipse bug. But I try
here. When there is a long running task that take a transaction Lock
*sometimes* when Lock try to uiSafeAcquire(boolean) there's an
indirect refresh or runEventLoop, this is indirectly due to the dialog
box displaying current blocking running task that block UI Event. This
can cause a infinite loop in the event loop or a warning in the error
log (ColumnViewer.isBusy).

Where is the bug, in EMF or in my code or in EventLoopProgressMonitor
class, I'm lost.


thanks in avance

Laurent


see stack traces below:

Display.readAndDispatch() line: 3293
EventLoopProgressMonitor.runEventLoop() line: 123
EventLoopProgressMonitor.isCanceled() line: 97
ThreadJob.isCanceled(IProgressMonitor) line: 132
ThreadJob.joinRun(IProgressMonitor) line: 167
ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
line: 87
JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
225
Lock.uiSafeAcquire(boolean) line: 403





org.eclipse.equinox.launcher.Main at localhost:1563
Thread [main] (Suspended)
OS.WaitMessage() line: not available [native method]
Display.sleep() line: 4070
EventDetailsDialog(Window).runEventLoop(Shell) line: 821
EventDetailsDialog(Window).open() line: 796
EventDetailsDialog.open() line: 184
EventDetailsDialogAction.run() line: 91
LogView$12.doubleClick(DoubleClickEvent) line: 394
StructuredViewer$1.run() line: 799
SafeRunner.run(ISafeRunnable) line: 37
Platform.run(ISafeRunnable) line: 857
JFaceUtil$1.run(ISafeRunnable) line: 46
SafeRunnable.run(ISafeRunnable) line: 199
TreeViewer(StructuredViewer).fireDoubleClick(DoubleClickEven t)
line: 797

TreeViewer(AbstractTreeViewer).handleDoubleSelect(SelectionE vent) line:
1387
StructuredViewer$4.widgetDefaultSelected(SelectionEvent) line:
1173
OpenStrategy.fireDefaultSelectionEvent(SelectionEvent) line: 237
OpenStrategy.access$0(OpenStrategy, SelectionEvent) line: 234
OpenStrategy$1.handleEvent(Event) line: 295
EventTable.sendEvent(Event) line: 66
Tree(Widget).sendEvent(Event) line: 938
Display.runDeferredEvents() line: 3682
Display.readAndDispatch() line: 3293
EventLoopProgressMonitor.runEventLoop() line: 123
EventLoopProgressMonitor.isCanceled() line: 97
ThreadJob.isCanceled(IProgressMonitor) line: 132
ThreadJob.joinRun(IProgressMonitor) line: 167
ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
line: 87
JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
225
Lock.uiSafeAcquire(boolean) line: 403
TransactionalEditingDomainImpl.acquire(InternalTransaction)
line: 512
TransactionalEditingDomainImpl.activate(InternalTransaction)
line: 440
TransactionImpl.start() line: 176
TransactionalEditingDomainImpl.startTransaction(boolean, Map)
line: 356
TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255

GceContentProvider(TransactionalAdapterFactoryContentProvide r).run(RunnableWithResult)

line: 70

GceContentProvider(TransactionalAdapterFactoryContentProvide r).inputChanged(Viewer,

Object, Object) line: 157
TableViewer(ContentViewer).setInput(Object) line: 247
TableViewer(StructuredViewer).setInput(Object) line: 1606

BundlesView(Gce21BrowsingViewPart).adjustInputAndSetSelectio n(Object)
line: 531

BundlesView(Gce21BrowsingViewPart).selectionChanged(IWorkben chPart,
ISelection) line: 707

PageSelectionService(AbstractSelectionService).firePostSelec tion(IWorkbenchPart,

ISelection) line: 179

PageSelectionService(AbstractSelectionService).setActivePart (IWorkbenchPart)

line: 289

WorkbenchPagePartList.fireActivePartChanged(IWorkbenchPartRe ference,
IWorkbenchPartReference) line: 59

WorkbenchPagePartList(PartList).setActivePart(IWorkbenchPart Reference)
line: 126
WorkbenchPage.setActivePart(IWorkbenchPart) line: 3402
WorkbenchPage.requestActivation(IWorkbenchPart) line: 2946
ViewPane(PartPane).requestActivation() line: 265
ViewPane(PartPane).handleEvent(Event) line: 229
EventTable.sendEvent(Event) line: 66
Composite(Widget).sendEvent(Event) line: 938
Composite(Widget).sendEvent(int, Event, boolean) line: 962
Composite(Widget).sendEvent(int) line: 943
Shell.setActiveControl(Control) line: 1273
Shell.WM_MOUSEACTIVATE(int, int) line: 2015
Shell(Control).windowProc(int, int, int, int) line: 3713
Shell(Canvas).windowProc(int, int, int, int) line: 291
Shell(Decorations).windowProc(int, int, int, int) line: 1554
Shell.windowProc(int, int, int, int) line: 1753
Display.windowProc(int, int, int, int) line: 4364
OS.DefWindowProcW(int, int, int, int) line: not available
[native method]
OS.DefWindowProc(int, int, int, int) line: 2260
Composite(Scrollable).callWindowProc(int, int, int, int) line:
77
Composite(Control).windowProc(int, int, int, int) line: 3760
Display.windowProc(int, int, int, int) line: 4364
OS.DefWindowProcW(int, int, int, int) line: not available
[native method]
OS.DefWindowProc(int, int, int, int) line: 2260
Composite(Scrollable).callWindowProc(int, int, int, int) line:
77
Composite(Control).windowProc(int, int, int, int) line: 3760
Display.windowProc(int, int, int, int) line: 4364
OS.DefWindowProcW(int, int, int, int) line: not available
[native method]
OS.DefWindowProc(int, int, int, int) line: 2260
Composite(Scrollable).callWindowProc(int, int, int, int) line:
77
Composite(Control).windowProc(int, int, int, int) line: 3760
Display.windowProc(int, int, int, int) line: 4364
OS.DefWindowProcW(int, int, int, int) line: not available
[native method]
OS.DefWindowProc(int, int, int, int) line: 2260
Composite(Scrollable).callWindowProc(int, int, int, int) line:
77
Composite(Control).windowProc(int, int, int, int) line: 3760
Display.windowProc(int, int, int, int) line: 4364
OS.DefWindowProcW(int, int, int, int) line: not available
[native method]
OS.DefWindowProc(int, int, int, int) line: 2260
Tree.callWindowProc(int, int, int, int) line: 1450
Tree.windowProc(int, int, int, int) line: 5368
Display.windowProc(int, int, int, int) line: 4364
OS.CallWindowProcW(int, int, int, int, int) line: not available
[native method]
OS.CallWindowProc(int, int, int, int, int) line: 2179
Tree.callWindowProc(int, int, int, int) line: 1541
Tree(Control).windowProc(int, int, int, int) line: 3760
Tree.windowProc(int, int, int, int) line: 5370
Display.windowProc(int, int, int, int) line: 4364
OS.PeekMessageW(MSG, int, int, int, int) line: not available
[native method]
OS.PeekMessage(MSG, int, int, int, int) line: 2769
Display.readAndDispatch() line: 3288
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: 169
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: 508
Main.basicRun(String[]) line: 447
Main.run(String[]) line: 1173
Main.main(String[]) line: 1148
Main.main(String[]) line: 1148
<not responding>
<not responding>
waiting for: EventManager$EventThread (id=22)
Object.wait(long) line: not available [native method]
EventManager$EventThread(Object).wait() line: 485
EventManager$EventThread.getNextEvent() line: 355
EventManager$EventThread.run() line: 293
<not responding>
waiting for: EventManager$EventThread (id=24)
Object.wait(long) line: not available [native method]
EventManager$EventThread(Object).wait() line: 485
EventManager$EventThread.getNextEvent() line: 355
EventManager$EventThread.run() line: 293
<not responding>
waiting for: OfflineCachingStorage$CacheFlushJob (id=114)
Object.wait(long) line: not available [native method]
OfflineCachingStorage$CacheFlushJob(Object).wait() line: 485
OfflineCachingStorage$CacheFlushJob.run(IProgressMonitor) line:
238
Worker.run() line: 55
Thread [Worker-1] (Suspended)
owns: TransactionImpl (id=106)
waiting for: Object (id=105)
Object.wait(long) line: not available [native method]
ThreadJob.joinRun(IProgressMonitor) line: 189
ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
line: 87
JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
225
Lock.uiSafeAcquire(boolean) line: 403
TransactionalEditingDomainImpl.acquire(InternalTransaction)
line: 512
TransactionalEditingDomainImpl.activate(InternalTransaction)
line: 440
TransactionImpl.start() line: 176
TransactionalEditingDomainImpl.startTransaction(boolean, Map)
line: 356
TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255

TransactionalAdapterFactoryContentProvider.run(RunnableWithR esult) line:
70
TransactionalAdapterFactoryContentProvider.inputChanged(View er,
Object, Object) line: 157
BasicExplorerContentProvider$1.run(IProgressMonitor) line: 202
Worker.run() line: 55
<not responding>
waiting for: TaskQueue (id=113)
Object.wait(long) line: not available [native method]
TimerThread.mainLoop() line: 509
TimerThread.run() line: 462
<not responding>
waiting for: IndexManager (id=112)
Object.wait(long) line: not available [native method]
IndexManager(Object).wait() line: 485
IndexManager(JobManager).run() line: 369
Thread.run() line: 619
<not responding>
waiting for: TaskQueue (id=107)
Object.wait(long) line: not available [native method]
TimerThread.mainLoop() line: 509
TimerThread.run() line: 462
<not responding>
waiting for: DirtyRegionQueue (id=111)
Object.wait(long) line: not available [native method]
AbstractReconciler$BackgroundThread.run() line: 176
Thread [Worker-2] (Suspended)
owns: TransactionImpl (id=110)
waiting for: Semaphore (id=109)
Object.wait(long) line: not available [native method]
Semaphore.acquire(long) line: 38
OrderedLock.doAcquire(Semaphore, long) line: 169
OrderedLock.acquire(long) line: 105
OrderedLock.acquire() line: 82
Lock.uiSafeAcquire(boolean) line: 401
TransactionalEditingDomainImpl.acquire(InternalTransaction)
line: 512
TransactionalEditingDomainImpl.activate(InternalTransaction)
line: 440
TransactionImpl.start() line: 176
TransactionalEditingDomainImpl.startTransaction(boolean, Map)
line: 356
TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255
TransactionalEditingDomainImpl.broadcastUnbatched(Notificati on)
line: 740
TransactionChangeRecorder.appendNotification(Notification)
line: 293

TransactionChangeRecorder.processResourceNotification(Notifi cation)
line: 254
TransactionChangeRecorder.notifyChanged(Notification) line: 220
XMIResourceImpl(BasicNotifierImpl).eNotify(Notification) line:
247
XMIResourceImpl(ResourceImpl).setModified(boolean) line: 1645
XMIResourceImpl(ResourceImpl).save(OutputStream, Map<?,?>)
line: 1267
XMIResourceImpl(ResourceImpl).save(Map<?,?>) line: 964
EcoreResourceUtil.saveModel(EObject, Map<?,?>) line: 318
EcoreWorkspaceUtil.saveModel(EObject, Map<?,?>) line: 243
EcoreWorkspaceUtil$3.runInWorkspace(IProgressMonitor) line: 260


<not responding>
waiting for: Queue$Wait (id=108)
Object.wait(long) line: not available [native method]
Queue$Wait.waitFor(long) line: 322
Lock.acquire(long, boolean) line: 273
Lock$AcquireJob.run(IProgressMonitor) line: 762
Worker.run() line: 55
Thread [Worker-4] (Suspended)
owns: TransactionImpl (id=117)
waiting for: Object (id=105)
Object.wait(long) line: not available [native method]
ThreadJob.joinRun(IProgressMonitor) line: 189
ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
line: 87
JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
225
Lock.uiSafeAcquire(boolean) line: 403
TransactionalEditingDomainImpl.acquire(InternalTransaction)
line: 512
TransactionalEditingDomainImpl.activate(InternalTransaction)
line: 440
TransactionImpl.start() line: 176
TransactionalEditingDomainImpl.startTransaction(boolean, Map)
line: 356
TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255

TransactionalAdapterFactoryContentProvider.run(RunnableWithR esult) line:
70
TransactionalAdapterFactoryContentProvider.inputChanged(View er,
Object, Object) line: 157
BasicExplorerContentProvider$1.run(IProgressMonitor) line: 202
Worker.run() line: 55
Thread [Worker-5] (Suspended)
owns: TransactionImpl (id=124)
waiting for: Object (id=105)
Object.wait(long) line: not available [native method]
ThreadJob.joinRun(IProgressMonitor) line: 189
ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
line: 87
JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
225
Lock.uiSafeAcquire(boolean) line: 403
TransactionalEditingDomainImpl.acquire(InternalTransaction)
line: 512
TransactionalEditingDomainImpl.activate(InternalTransaction)
line: 440
TransactionImpl.start() line: 176
TransactionalEditingDomainImpl.startTransaction(boolean, Map)
line: 356
TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255

TransactionalAdapterFactoryContentProvider.run(RunnableWithR esult) line:
70
TransactionalAdapterFactoryContentProvider.inputChanged(View er,
Object, Object) line: 157
BasicExplorerContentProvider$1.run(IProgressMonitor) line: 202
Worker.run() line: 55
<not responding>
waiting for: TaskListSaveManager$TaskListSaverJob (id=127)
Object.wait(long) line: not available [native method]
TaskListSaveManager$TaskListSaverJob(Object).wait() line: 485
TaskListSaveManager$TaskListSaverJob.run(IProgressMonitor)
line: 280
Worker.run() line: 55
<not responding>
waiting for: TaskQueue (id=120)
Object.wait(long) line: not available [native method]
TimerThread.mainLoop() line: 509
TimerThread.run() line: 462
<not responding>
Thread.sleep(long) line: not available [native method]
ActivityTimerThread.run() line: 64
<not responding>
waiting for: Queue$Wait (id=119)
Object.wait(long) line: not available [native method]
Queue$Wait.waitFor(long) line: 322
Lock.acquire(long, boolean) line: 273
Lock$AcquireJob.run(IProgressMonitor) line: 762
Worker.run() line: 55
<not responding>
waiting for: Queue$Wait (id=123)
Object.wait(long) line: not available [native method]
Queue$Wait.waitFor(long) line: 322
Lock.acquire(long, boolean) line: 273
Lock$AcquireJob.run(IProgressMonitor) line: 762
Worker.run() line: 55
Thread [Worker-9] (Suspended)
owns: TransactionImpl (id=130)
waiting for: Object (id=105)
Object.wait(long) line: not available [native method]
ThreadJob.joinRun(IProgressMonitor) line: 189
ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
line: 87
JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
225
Lock.uiSafeAcquire(boolean) line: 403
TransactionalEditingDomainImpl.acquire(InternalTransaction)
line: 512
TransactionalEditingDomainImpl.activate(InternalTransaction)
line: 440
TransactionImpl.start() line: 176
TransactionalEditingDomainImpl.startTransaction(boolean, Map)
line: 356
TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255
ResourceChangedListener.resourceChanged(IResourceChangeEvent )
line: 38
NotificationManager$2.run() line: 282
SafeRunner.run(ISafeRunnable) line: 37
<unknown receiving type>(<unknown declaring
type>).broadcastPostChange() <unknown line number>
<unknown receiving type>(<unknown declaring
type>).endOperation(ISchedulingRule, boolean, IProgressMonitor) <unknown
line number>
<unknown receiving type>(<unknown declaring
type>).run(IWorkspaceRunnable, ISchedulingRule, int, IProgressMonitor)
<unknown line number>
<unknown receiving type>(<unknown declaring
type>).run(IProgressMonitor) <unknown line number>
Worker.run() line: 55


<not responding>
waiting for: WorkerPool (id=122)
Object.wait(long) line: not available [native method]
WorkerPool.sleep(long) line: 185
WorkerPool.startJob(Worker) line: 217
Worker.run() line: 51
Thread [Worker-11] (Suspended)
owns: TransactionImpl (id=129)
waiting for: Semaphore (id=128)
Object.wait(long) line: not available [native method]
Semaphore.acquire(long) line: 38
OrderedLock.doAcquire(Semaphore, long) line: 169
OrderedLock.acquire(long) line: 105
OrderedLock.acquire() line: 82
Lock.uiSafeAcquire(boolean) line: 401
TransactionalEditingDomainImpl.acquire(InternalTransaction)
line: 512
TransactionalEditingDomainImpl.activate(InternalTransaction)
line: 440
TransactionImpl.start() line: 176
TransactionalEditingDomainImpl.startTransaction(boolean, Map)
line: 356
TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255

TransactionChangeRecorder.processResourceNotification(Notifi cation)
line: 254
TransactionChangeRecorder.notifyChanged(Notification) line: 220
XMIResourceImpl(BasicNotifierImpl).eNotify(Notification) line:
247
XMIResourceImpl(ResourceImpl).setModified(boolean) line: 1645
XMIResourceImpl(ResourceImpl).save(OutputStream, Map<?,?>)
line: 1267
XMIResourceImpl(ResourceImpl).save(Map<?,?>) line: 964
EcoreResourceUtil.saveModel(EObject, Map<?,?>) line: 318
EcoreWorkspaceUtil.saveModel(EObject, Map<?,?>) line: 243
EcoreWorkspaceUtil$3.runInWorkspace(IProgressMonitor) line: 260

EcoreWorkspaceUtil$3(InternalWorkspaceJob).run(IProgressMoni tor) line: 38
Worker.run() line: 55


<not responding>
waiting for: Queue$Wait (id=116)
Object.wait(long) line: not available [native method]
Queue$Wait.waitFor(long) line: 322
Lock.acquire(long, boolean) line: 273
Lock$AcquireJob.run(IProgressMonitor) line: 762
Worker.run() line: 55
<not responding>
waiting for: Queue$Wait (id=121)
Object.wait(long) line: not available [native method]
Queue$Wait.waitFor(long) line: 322
Lock.acquire(long, boolean) line: 273
Lock$AcquireJob.run(IProgressMonitor) line: 762
Worker.run() line: 55
<not responding>
waiting for: Queue$Wait (id=118)
Object.wait(long) line: not available [native method]
Queue$Wait.waitFor(long) line: 322
Lock.acquire(long, boolean) line: 273
Lock$AcquireJob.run(IProgressMonitor) line: 762
Worker.run() line: 55
<not responding>
waiting for: Object (id=105)
Object.wait(long) line: not available [native method]
ThreadJob.joinRun(IProgressMonitor) line: 189
ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
line: 87
JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
225
StringPoolJob.run(IProgressMonitor) line: 99
Worker.run() line: 55
<not responding>
waiting for: ReferenceQueue$Lock (id=131)
Object.wait(long) line: not available [native method]
ReferenceQueue<T>.remove(long) line: 116
MultiThreadedHttpConnectionManager$ReferenceQueueThread.run( )
line: 1082
<not responding>
waiting for: WorkerPool (id=122)
Object.wait(long) line: not available [native method]
WorkerPool.sleep(long) line: 185
WorkerPool.startJob(Worker) line: 217
Worker.run() line: 51


**************************************

java.lang.RuntimeException
at
org.eclipse.jface.viewers.ColumnViewer.isBusy(ColumnViewer.j ava:79)
at
org.eclipse.jface.viewers.ColumnViewer.update(ColumnViewer.j ava:551)
at
org.eclipse.ui.navigator.CommonViewer.update(CommonViewer.ja va:428)
at
org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvid er$ViewerRefresh.refresh(AdapterFactoryContentProvider.java: 480)
at
org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvid er$ViewerRefresh.run(AdapterFactoryContentProvider.java:451)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:3 5)
at
org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchr onizer.java:123)
at
org.eclipse.swt.widgets.Display.runAsyncMessages(Display.jav a:3659)
at
org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3296)
at
org.eclipse.ui.internal.dialogs.EventLoopProgressMonitor.run EventLoop(EventLoopProgressMonitor.java:123)
at
org.eclipse.ui.internal.dialogs.EventLoopProgressMonitor.isC anceled(EventLoopProgressMonitor.java:97)
at
org.eclipse.core.internal.jobs.ThreadJob.isCanceled(ThreadJo b.java:132)
at
org.eclipse.core.internal.jobs.ThreadJob.joinRun(ThreadJob.j ava:167)
at
org.eclipse.core.internal.jobs.ImplicitJobs.begin(ImplicitJo bs.java:87)
at
org.eclipse.core.internal.jobs.JobManager.beginRule(JobManag er.java:225)
at
org.eclipse.emf.transaction.util.Lock.uiSafeAcquire(Lock.jav a:404)
at
org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.acquire(TransactionalEditingDomainImpl.java:512)
at
org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.activate(TransactionalEditingDomainImpl.java:440)
at
org.eclipse.emf.transaction.impl.TransactionImpl.start(Trans actionImpl.java:176)
at
org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.startTransaction(TransactionalEditingDomainImpl.java:356 )
at
org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.runExclusive(TransactionalEditingDomainImpl.java:255)
at
org.eclipse.emf.transaction.ui.provider.TransactionalAdapter FactoryLabelProvider.run(TransactionalAdapterFactoryLabelPro vider.java:64)
at
org.eclipse.emf.transaction.ui.provider.TransactionalAdapter FactoryLabelProvider.getText(TransactionalAdapterFactoryLabe lProvider.java:136)
at
com.geensys.ecl.emf.explorer.BasicExplorerLabelProvider.getT ext(BasicExplorerLabelProvider.java:61)
at
org.eclipse.ui.internal.navigator.NavigatorContentServiceLab elProvider.findUpdateLabel(NavigatorContentServiceLabelProvi der.java:327)
at
org.eclipse.ui.internal.navigator.NavigatorContentServiceLab elProvider.updateLabel(NavigatorContentServiceLabelProvider. java:309)
at
org.eclipse.jface.viewers.DecoratingLabelProvider.updateLabe l(DecoratingLabelProvider.java:345)
at
org.eclipse.jface.viewers.WrappedViewerLabelProvider.update( WrappedViewerLabelProvider.java:183)
at
org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn. java:135)
at
org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:911)
at
org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeR unnable.run(AbstractTreeViewer.java:97)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.runtime.Platform.run(Platform.java:857)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:46)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:19 9)
at
org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:991)
at
org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRun nable.run(StructuredViewer.java:466)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.runtime.Platform.run(Platform.java:857)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:46)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:19 9)
at
org.eclipse.jface.viewers.StructuredViewer.updateItem(Struct uredViewer.java:2026)
at
org.eclipse.jface.viewers.StructuredViewer.internalUpdate(St ructuredViewer.java:2009)
at
org.eclipse.jface.viewers.StructuredViewer.update(Structured Viewer.java:1953)
at
org.eclipse.jface.viewers.ColumnViewer.update(ColumnViewer.j ava:553)
at
org.eclipse.ui.navigator.CommonViewer.update(CommonViewer.ja va:428)
at
org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvid er$ViewerRefresh.refresh(AdapterFactoryContentProvider.java: 480)
at
org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvid er$ViewerRefresh.run(AdapterFactoryContentProvider.java:451)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:3 5)
at
org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchr onizer.java:123)
at
org.eclipse.swt.widgets.Display.runAsyncMessages(Display.jav a:3659)
at
org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3296)
at
org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2389)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:22 19)
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(Work bench.java:461)
at
org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
at
org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplication.java:106)
at
org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:169)
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(EclipseS tarter.java:363)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:176)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java: 508)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447)
at org.eclipse.equinox.launcher.Main.run(Main.java:1173)
at org.eclipse.equinox.launcher.Main.main(Main.java:1148)
Re: [Fwd: Re: EventLoopProgressMonitor.isCanceled produce a strange refresh] [message #328733 is a reply to message #328732] Tue, 03 June 2008 11:08 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: merks.ca.ibm.com

Laurent,

This question really requires some attention from Christian and the EMF
newsgroup is the place he's most likely to see your question. It looks
like the something is trying to update a view, something is trying to
process a double click, all while a background thread is busy saving a
file. I'll prompt him when I see him online later today...


Laurent Le Goff wrote:
> Hi,
> this message have been posted in emf newsgroup first.
> Pplease have you got an answer for that problem?
>
> thanks for help
>
> laurent
>
> -------- Message original --------
> Sujet: Re: EventLoopProgressMonitor.isCanceled produce a strange refresh
> Date: Mon, 02 Jun 2008 16:48:25 +0200
> De: Laurent Le Goff <laurent.legoff@geensy.com>
> Organisation: EclipseCorner
> Forum :: eclipse.tools.emf
> Références: <g210pk$fka$1@build.eclipse.org>
> Hi all,
>
> I don't know if it is an EMF bug or platform eclipse bug. But I try
> here. When there is a long running task that take a transaction Lock
> *sometimes* when Lock try to uiSafeAcquire(boolean) there's an
> indirect refresh or runEventLoop, this is indirectly due to the dialog
> box displaying current blocking running task that block UI Event. This
> can cause a infinite loop in the event loop or a warning in the error
> log (ColumnViewer.isBusy).
>
> Where is the bug, in EMF or in my code or in EventLoopProgressMonitor
> class, I'm lost.
>
>
> thanks in avance
>
> Laurent
>
>
> see stack traces below:
>
> Display.readAndDispatch() line: 3293
> EventLoopProgressMonitor.runEventLoop() line: 123
> EventLoopProgressMonitor.isCanceled() line: 97
> ThreadJob.isCanceled(IProgressMonitor) line: 132
> ThreadJob.joinRun(IProgressMonitor) line: 167
> ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
> line: 87
> JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
> 225
> Lock.uiSafeAcquire(boolean) line: 403
>
>
>
>
>
> org.eclipse.equinox.launcher.Main at localhost:1563
> Thread [main] (Suspended)
> OS.WaitMessage() line: not available [native method]
> Display.sleep() line: 4070
> EventDetailsDialog(Window).runEventLoop(Shell) line: 821
> EventDetailsDialog(Window).open() line: 796
> EventDetailsDialog.open() line: 184
> EventDetailsDialogAction.run() line: 91
> LogView$12.doubleClick(DoubleClickEvent) line: 394
> StructuredViewer$1.run() line: 799
> SafeRunner.run(ISafeRunnable) line: 37
> Platform.run(ISafeRunnable) line: 857
> JFaceUtil$1.run(ISafeRunnable) line: 46
> SafeRunnable.run(ISafeRunnable) line: 199
> TreeViewer(StructuredViewer).fireDoubleClick(DoubleClickEven t)
> line: 797
>
> TreeViewer(AbstractTreeViewer).handleDoubleSelect(SelectionE vent) line:
> 1387
> StructuredViewer$4.widgetDefaultSelected(SelectionEvent) line:
> 1173
> OpenStrategy.fireDefaultSelectionEvent(SelectionEvent) line: 237
> OpenStrategy.access$0(OpenStrategy, SelectionEvent) line: 234
> OpenStrategy$1.handleEvent(Event) line: 295
> EventTable.sendEvent(Event) line: 66
> Tree(Widget).sendEvent(Event) line: 938
> Display.runDeferredEvents() line: 3682
> Display.readAndDispatch() line: 3293
> EventLoopProgressMonitor.runEventLoop() line: 123
> EventLoopProgressMonitor.isCanceled() line: 97
> ThreadJob.isCanceled(IProgressMonitor) line: 132
> ThreadJob.joinRun(IProgressMonitor) line: 167
> ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
> line: 87
> JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
> 225
> Lock.uiSafeAcquire(boolean) line: 403
> TransactionalEditingDomainImpl.acquire(InternalTransaction)
> line: 512
> TransactionalEditingDomainImpl.activate(InternalTransaction)
> line: 440
> TransactionImpl.start() line: 176
> TransactionalEditingDomainImpl.startTransaction(boolean, Map)
> line: 356
> TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255
>
> GceContentProvider(TransactionalAdapterFactoryContentProvide r).run(RunnableWithResult)
>
> line: 70
>
> GceContentProvider(TransactionalAdapterFactoryContentProvide r).inputChanged(Viewer,
>
> Object, Object) line: 157
> TableViewer(ContentViewer).setInput(Object) line: 247
> TableViewer(StructuredViewer).setInput(Object) line: 1606
>
> BundlesView(Gce21BrowsingViewPart).adjustInputAndSetSelectio n(Object)
> line: 531
>
> BundlesView(Gce21BrowsingViewPart).selectionChanged(IWorkben chPart,
> ISelection) line: 707
>
> PageSelectionService(AbstractSelectionService).firePostSelec tion(IWorkbenchPart,
>
> ISelection) line: 179
>
> PageSelectionService(AbstractSelectionService).setActivePart (IWorkbenchPart)
>
> line: 289
>
> WorkbenchPagePartList.fireActivePartChanged(IWorkbenchPartRe ference,
> IWorkbenchPartReference) line: 59
>
> WorkbenchPagePartList(PartList).setActivePart(IWorkbenchPart Reference)
> line: 126
> WorkbenchPage.setActivePart(IWorkbenchPart) line: 3402
> WorkbenchPage.requestActivation(IWorkbenchPart) line: 2946
> ViewPane(PartPane).requestActivation() line: 265
> ViewPane(PartPane).handleEvent(Event) line: 229
> EventTable.sendEvent(Event) line: 66
> Composite(Widget).sendEvent(Event) line: 938
> Composite(Widget).sendEvent(int, Event, boolean) line: 962
> Composite(Widget).sendEvent(int) line: 943
> Shell.setActiveControl(Control) line: 1273
> Shell.WM_MOUSEACTIVATE(int, int) line: 2015
> Shell(Control).windowProc(int, int, int, int) line: 3713
> Shell(Canvas).windowProc(int, int, int, int) line: 291
> Shell(Decorations).windowProc(int, int, int, int) line: 1554
> Shell.windowProc(int, int, int, int) line: 1753
> Display.windowProc(int, int, int, int) line: 4364
> OS.DefWindowProcW(int, int, int, int) line: not available
> [native method]
> OS.DefWindowProc(int, int, int, int) line: 2260
> Composite(Scrollable).callWindowProc(int, int, int, int) line:
> 77
> Composite(Control).windowProc(int, int, int, int) line: 3760
> Display.windowProc(int, int, int, int) line: 4364
> OS.DefWindowProcW(int, int, int, int) line: not available
> [native method]
> OS.DefWindowProc(int, int, int, int) line: 2260
> Composite(Scrollable).callWindowProc(int, int, int, int) line:
> 77
> Composite(Control).windowProc(int, int, int, int) line: 3760
> Display.windowProc(int, int, int, int) line: 4364
> OS.DefWindowProcW(int, int, int, int) line: not available
> [native method]
> OS.DefWindowProc(int, int, int, int) line: 2260
> Composite(Scrollable).callWindowProc(int, int, int, int) line:
> 77
> Composite(Control).windowProc(int, int, int, int) line: 3760
> Display.windowProc(int, int, int, int) line: 4364
> OS.DefWindowProcW(int, int, int, int) line: not available
> [native method]
> OS.DefWindowProc(int, int, int, int) line: 2260
> Composite(Scrollable).callWindowProc(int, int, int, int) line:
> 77
> Composite(Control).windowProc(int, int, int, int) line: 3760
> Display.windowProc(int, int, int, int) line: 4364
> OS.DefWindowProcW(int, int, int, int) line: not available
> [native method]
> OS.DefWindowProc(int, int, int, int) line: 2260
> Tree.callWindowProc(int, int, int, int) line: 1450
> Tree.windowProc(int, int, int, int) line: 5368
> Display.windowProc(int, int, int, int) line: 4364
> OS.CallWindowProcW(int, int, int, int, int) line: not available
> [native method]
> OS.CallWindowProc(int, int, int, int, int) line: 2179
> Tree.callWindowProc(int, int, int, int) line: 1541
> Tree(Control).windowProc(int, int, int, int) line: 3760
> Tree.windowProc(int, int, int, int) line: 5370
> Display.windowProc(int, int, int, int) line: 4364
> OS.PeekMessageW(MSG, int, int, int, int) line: not available
> [native method]
> OS.PeekMessage(MSG, int, int, int, int) line: 2769
> Display.readAndDispatch() line: 3288
> 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: 169
> 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: 508
> Main.basicRun(String[]) line: 447
> Main.run(String[]) line: 1173
> Main.main(String[]) line: 1148
> Main.main(String[]) line: 1148
> <not responding>
> <not responding>
> waiting for: EventManager$EventThread (id=22)
> Object.wait(long) line: not available [native method]
> EventManager$EventThread(Object).wait() line: 485
> EventManager$EventThread.getNextEvent() line: 355
> EventManager$EventThread.run() line: 293
> <not responding>
> waiting for: EventManager$EventThread (id=24)
> Object.wait(long) line: not available [native method]
> EventManager$EventThread(Object).wait() line: 485
> EventManager$EventThread.getNextEvent() line: 355
> EventManager$EventThread.run() line: 293
> <not responding>
> waiting for: OfflineCachingStorage$CacheFlushJob (id=114)
> Object.wait(long) line: not available [native method]
> OfflineCachingStorage$CacheFlushJob(Object).wait() line: 485
> OfflineCachingStorage$CacheFlushJob.run(IProgressMonitor) line:
> 238
> Worker.run() line: 55
> Thread [Worker-1] (Suspended)
> owns: TransactionImpl (id=106)
> waiting for: Object (id=105)
> Object.wait(long) line: not available [native method]
> ThreadJob.joinRun(IProgressMonitor) line: 189
> ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
> line: 87
> JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
> 225
> Lock.uiSafeAcquire(boolean) line: 403
> TransactionalEditingDomainImpl.acquire(InternalTransaction)
> line: 512
> TransactionalEditingDomainImpl.activate(InternalTransaction)
> line: 440
> TransactionImpl.start() line: 176
> TransactionalEditingDomainImpl.startTransaction(boolean, Map)
> line: 356
> TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255
>
> TransactionalAdapterFactoryContentProvider.run(RunnableWithR esult) line:
> 70
> TransactionalAdapterFactoryContentProvider.inputChanged(View er,
> Object, Object) line: 157
> BasicExplorerContentProvider$1.run(IProgressMonitor) line: 202
> Worker.run() line: 55
> <not responding>
> waiting for: TaskQueue (id=113)
> Object.wait(long) line: not available [native method]
> TimerThread.mainLoop() line: 509
> TimerThread.run() line: 462
> <not responding>
> waiting for: IndexManager (id=112)
> Object.wait(long) line: not available [native method]
> IndexManager(Object).wait() line: 485
> IndexManager(JobManager).run() line: 369
> Thread.run() line: 619
> <not responding>
> waiting for: TaskQueue (id=107)
> Object.wait(long) line: not available [native method]
> TimerThread.mainLoop() line: 509
> TimerThread.run() line: 462
> <not responding>
> waiting for: DirtyRegionQueue (id=111)
> Object.wait(long) line: not available [native method]
> AbstractReconciler$BackgroundThread.run() line: 176
> Thread [Worker-2] (Suspended)
> owns: TransactionImpl (id=110)
> waiting for: Semaphore (id=109)
> Object.wait(long) line: not available [native method]
> Semaphore.acquire(long) line: 38
> OrderedLock.doAcquire(Semaphore, long) line: 169
> OrderedLock.acquire(long) line: 105
> OrderedLock.acquire() line: 82
> Lock.uiSafeAcquire(boolean) line: 401
> TransactionalEditingDomainImpl.acquire(InternalTransaction)
> line: 512
> TransactionalEditingDomainImpl.activate(InternalTransaction)
> line: 440
> TransactionImpl.start() line: 176
> TransactionalEditingDomainImpl.startTransaction(boolean, Map)
> line: 356
> TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255
> TransactionalEditingDomainImpl.broadcastUnbatched(Notificati on)
> line: 740
> TransactionChangeRecorder.appendNotification(Notification)
> line: 293
>
> TransactionChangeRecorder.processResourceNotification(Notifi cation)
> line: 254
> TransactionChangeRecorder.notifyChanged(Notification) line: 220
> XMIResourceImpl(BasicNotifierImpl).eNotify(Notification) line:
> 247
> XMIResourceImpl(ResourceImpl).setModified(boolean) line: 1645
> XMIResourceImpl(ResourceImpl).save(OutputStream, Map<?,?>)
> line: 1267
> XMIResourceImpl(ResourceImpl).save(Map<?,?>) line: 964
> EcoreResourceUtil.saveModel(EObject, Map<?,?>) line: 318
> EcoreWorkspaceUtil.saveModel(EObject, Map<?,?>) line: 243
> EcoreWorkspaceUtil$3.runInWorkspace(IProgressMonitor) line: 260
>
>
> <not responding>
> waiting for: Queue$Wait (id=108)
> Object.wait(long) line: not available [native method]
> Queue$Wait.waitFor(long) line: 322
> Lock.acquire(long, boolean) line: 273
> Lock$AcquireJob.run(IProgressMonitor) line: 762
> Worker.run() line: 55
> Thread [Worker-4] (Suspended)
> owns: TransactionImpl (id=117)
> waiting for: Object (id=105)
> Object.wait(long) line: not available [native method]
> ThreadJob.joinRun(IProgressMonitor) line: 189
> ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
> line: 87
> JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
> 225
> Lock.uiSafeAcquire(boolean) line: 403
> TransactionalEditingDomainImpl.acquire(InternalTransaction)
> line: 512
> TransactionalEditingDomainImpl.activate(InternalTransaction)
> line: 440
> TransactionImpl.start() line: 176
> TransactionalEditingDomainImpl.startTransaction(boolean, Map)
> line: 356
> TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255
>
> TransactionalAdapterFactoryContentProvider.run(RunnableWithR esult) line:
> 70
> TransactionalAdapterFactoryContentProvider.inputChanged(View er,
> Object, Object) line: 157
> BasicExplorerContentProvider$1.run(IProgressMonitor) line: 202
> Worker.run() line: 55
> Thread [Worker-5] (Suspended)
> owns: TransactionImpl (id=124)
> waiting for: Object (id=105)
> Object.wait(long) line: not available [native method]
> ThreadJob.joinRun(IProgressMonitor) line: 189
> ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
> line: 87
> JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
> 225
> Lock.uiSafeAcquire(boolean) line: 403
> TransactionalEditingDomainImpl.acquire(InternalTransaction)
> line: 512
> TransactionalEditingDomainImpl.activate(InternalTransaction)
> line: 440
> TransactionImpl.start() line: 176
> TransactionalEditingDomainImpl.startTransaction(boolean, Map)
> line: 356
> TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255
>
> TransactionalAdapterFactoryContentProvider.run(RunnableWithR esult) line:
> 70
> TransactionalAdapterFactoryContentProvider.inputChanged(View er,
> Object, Object) line: 157
> BasicExplorerContentProvider$1.run(IProgressMonitor) line: 202
> Worker.run() line: 55
> <not responding>
> waiting for: TaskListSaveManager$TaskListSaverJob (id=127)
> Object.wait(long) line: not available [native method]
> TaskListSaveManager$TaskListSaverJob(Object).wait() line: 485
> TaskListSaveManager$TaskListSaverJob.run(IProgressMonitor)
> line: 280
> Worker.run() line: 55
> <not responding>
> waiting for: TaskQueue (id=120)
> Object.wait(long) line: not available [native method]
> TimerThread.mainLoop() line: 509
> TimerThread.run() line: 462
> <not responding>
> Thread.sleep(long) line: not available [native method]
> ActivityTimerThread.run() line: 64
> <not responding>
> waiting for: Queue$Wait (id=119)
> Object.wait(long) line: not available [native method]
> Queue$Wait.waitFor(long) line: 322
> Lock.acquire(long, boolean) line: 273
> Lock$AcquireJob.run(IProgressMonitor) line: 762
> Worker.run() line: 55
> <not responding>
> waiting for: Queue$Wait (id=123)
> Object.wait(long) line: not available [native method]
> Queue$Wait.waitFor(long) line: 322
> Lock.acquire(long, boolean) line: 273
> Lock$AcquireJob.run(IProgressMonitor) line: 762
> Worker.run() line: 55
> Thread [Worker-9] (Suspended)
> owns: TransactionImpl (id=130)
> waiting for: Object (id=105)
> Object.wait(long) line: not available [native method]
> ThreadJob.joinRun(IProgressMonitor) line: 189
> ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
> line: 87
> JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
> 225
> Lock.uiSafeAcquire(boolean) line: 403
> TransactionalEditingDomainImpl.acquire(InternalTransaction)
> line: 512
> TransactionalEditingDomainImpl.activate(InternalTransaction)
> line: 440
> TransactionImpl.start() line: 176
> TransactionalEditingDomainImpl.startTransaction(boolean, Map)
> line: 356
> TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255
> ResourceChangedListener.resourceChanged(IResourceChangeEvent )
> line: 38
> NotificationManager$2.run() line: 282
> SafeRunner.run(ISafeRunnable) line: 37
> <unknown receiving type>(<unknown declaring
> type>).broadcastPostChange() <unknown line number>
> <unknown receiving type>(<unknown declaring
> type>).endOperation(ISchedulingRule, boolean, IProgressMonitor) <unknown
> line number>
> <unknown receiving type>(<unknown declaring
> type>).run(IWorkspaceRunnable, ISchedulingRule, int, IProgressMonitor)
> <unknown line number>
> <unknown receiving type>(<unknown declaring
> type>).run(IProgressMonitor) <unknown line number>
> Worker.run() line: 55
>
>
> <not responding>
> waiting for: WorkerPool (id=122)
> Object.wait(long) line: not available [native method]
> WorkerPool.sleep(long) line: 185
> WorkerPool.startJob(Worker) line: 217
> Worker.run() line: 51
> Thread [Worker-11] (Suspended)
> owns: TransactionImpl (id=129)
> waiting for: Semaphore (id=128)
> Object.wait(long) line: not available [native method]
> Semaphore.acquire(long) line: 38
> OrderedLock.doAcquire(Semaphore, long) line: 169
> OrderedLock.acquire(long) line: 105
> OrderedLock.acquire() line: 82
> Lock.uiSafeAcquire(boolean) line: 401
> TransactionalEditingDomainImpl.acquire(InternalTransaction)
> line: 512
> TransactionalEditingDomainImpl.activate(InternalTransaction)
> line: 440
> TransactionImpl.start() line: 176
> TransactionalEditingDomainImpl.startTransaction(boolean, Map)
> line: 356
> TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255
>
> TransactionChangeRecorder.processResourceNotification(Notifi cation)
> line: 254
> TransactionChangeRecorder.notifyChanged(Notification) line: 220
> XMIResourceImpl(BasicNotifierImpl).eNotify(Notification) line:
> 247
> XMIResourceImpl(ResourceImpl).setModified(boolean) line: 1645
> XMIResourceImpl(ResourceImpl).save(OutputStream, Map<?,?>)
> line: 1267
> XMIResourceImpl(ResourceImpl).save(Map<?,?>) line: 964
> EcoreResourceUtil.saveModel(EObject, Map<?,?>) line: 318
> EcoreWorkspaceUtil.saveModel(EObject, Map<?,?>) line: 243
> EcoreWorkspaceUtil$3.runInWorkspace(IProgressMonitor) line: 260
>
> EcoreWorkspaceUtil$3(InternalWorkspaceJob).run(IProgressMoni tor) line: 38
> Worker.run() line: 55
>
>
> <not responding>
> waiting for: Queue$Wait (id=116)
> Object.wait(long) line: not available [native method]
> Queue$Wait.waitFor(long) line: 322
> Lock.acquire(long, boolean) line: 273
> Lock$AcquireJob.run(IProgressMonitor) line: 762
> Worker.run() line: 55
> <not responding>
> waiting for: Queue$Wait (id=121)
> Object.wait(long) line: not available [native method]
> Queue$Wait.waitFor(long) line: 322
> Lock.acquire(long, boolean) line: 273
> Lock$AcquireJob.run(IProgressMonitor) line: 762
> Worker.run() line: 55
> <not responding>
> waiting for: Queue$Wait (id=118)
> Object.wait(long) line: not available [native method]
> Queue$Wait.waitFor(long) line: 322
> Lock.acquire(long, boolean) line: 273
> Lock$AcquireJob.run(IProgressMonitor) line: 762
> Worker.run() line: 55
> <not responding>
> waiting for: Object (id=105)
> Object.wait(long) line: not available [native method]
> ThreadJob.joinRun(IProgressMonitor) line: 189
> ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
> line: 87
> JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
> 225
> StringPoolJob.run(IProgressMonitor) line: 99
> Worker.run() line: 55
> <not responding>
> waiting for: ReferenceQueue$Lock (id=131)
> Object.wait(long) line: not available [native method]
> ReferenceQueue<T>.remove(long) line: 116
> MultiThreadedHttpConnectionManager$ReferenceQueueThread.run( )
> line: 1082
> <not responding>
> waiting for: WorkerPool (id=122)
> Object.wait(long) line: not available [native method]
> WorkerPool.sleep(long) line: 185
> WorkerPool.startJob(Worker) line: 217
> Worker.run() line: 51
>
>
> **************************************
>
> java.lang.RuntimeException
> at
> org.eclipse.jface.viewers.ColumnViewer.isBusy(ColumnViewer.j ava:79)
> at
> org.eclipse.jface.viewers.ColumnViewer.update(ColumnViewer.j ava:551)
> at
> org.eclipse.ui.navigator.CommonViewer.update(CommonViewer.ja va:428)
> at
> org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvid er$ViewerRefresh.refresh(AdapterFactoryContentProvider.java: 480)
>
> at
> org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvid er$ViewerRefresh.run(AdapterFactoryContentProvider.java:451)
>
> at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:3 5)
> at
> org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchr onizer.java:123)
>
> at
> org.eclipse.swt.widgets.Display.runAsyncMessages(Display.jav a:3659)
> at
> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3296)
> at
> org.eclipse.ui.internal.dialogs.EventLoopProgressMonitor.run EventLoop(EventLoopProgressMonitor.java:123)
>
> at
> org.eclipse.ui.internal.dialogs.EventLoopProgressMonitor.isC anceled(EventLoopProgressMonitor.java:97)
>
> at
> org.eclipse.core.internal.jobs.ThreadJob.isCanceled(ThreadJo b.java:132)
> at
> org.eclipse.core.internal.jobs.ThreadJob.joinRun(ThreadJob.j ava:167)
> at
> org.eclipse.core.internal.jobs.ImplicitJobs.begin(ImplicitJo bs.java:87)
> at
> org.eclipse.core.internal.jobs.JobManager.beginRule(JobManag er.java:225)
> at
> org.eclipse.emf.transaction.util.Lock.uiSafeAcquire(Lock.jav a:404)
> at
> org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.acquire(TransactionalEditingDomainImpl.java:512)
>
> at
> org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.activate(TransactionalEditingDomainImpl.java:440)
>
> at
> org.eclipse.emf.transaction.impl.TransactionImpl.start(Trans actionImpl.java:176)
>
> at
> org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.startTransaction(TransactionalEditingDomainImpl.java:356 )
>
> at
> org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.runExclusive(TransactionalEditingDomainImpl.java:255)
>
> at
> org.eclipse.emf.transaction.ui.provider.TransactionalAdapter FactoryLabelProvider.run(TransactionalAdapterFactoryLabelPro vider.java:64)
>
> at
> org.eclipse.emf.transaction.ui.provider.TransactionalAdapter FactoryLabelProvider.getText(TransactionalAdapterFactoryLabe lProvider.java:136)
>
> at
> com.geensys.ecl.emf.explorer.BasicExplorerLabelProvider.getT ext(BasicExplorerLabelProvider.java:61)
>
> at
> org.eclipse.ui.internal.navigator.NavigatorContentServiceLab elProvider.findUpdateLabel(NavigatorContentServiceLabelProvi der.java:327)
>
> at
> org.eclipse.ui.internal.navigator.NavigatorContentServiceLab elProvider.updateLabel(NavigatorContentServiceLabelProvider. java:309)
>
> at
> org.eclipse.jface.viewers.DecoratingLabelProvider.updateLabe l(DecoratingLabelProvider.java:345)
>
> at
> org.eclipse.jface.viewers.WrappedViewerLabelProvider.update( WrappedViewerLabelProvider.java:183)
>
> at
> org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn. java:135)
> at
> org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:911)
>
> at
> org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeR unnable.run(AbstractTreeViewer.java:97)
>
> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
> at org.eclipse.core.runtime.Platform.run(Platform.java:857)
> at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:46)
> at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:19 9)
> at
> org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:991)
>
> at
> org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRun nable.run(StructuredViewer.java:466)
>
> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
> at org.eclipse.core.runtime.Platform.run(Platform.java:857)
> at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:46)
> at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:19 9)
> at
> org.eclipse.jface.viewers.StructuredViewer.updateItem(Struct uredViewer.java:2026)
>
> at
> org.eclipse.jface.viewers.StructuredViewer.internalUpdate(St ructuredViewer.java:2009)
>
> at
> org.eclipse.jface.viewers.StructuredViewer.update(Structured Viewer.java:1953)
>
> at
> org.eclipse.jface.viewers.ColumnViewer.update(ColumnViewer.j ava:553)
> at
> org.eclipse.ui.navigator.CommonViewer.update(CommonViewer.ja va:428)
> at
> org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvid er$ViewerRefresh.refresh(AdapterFactoryContentProvider.java: 480)
>
> at
> org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvid er$ViewerRefresh.run(AdapterFactoryContentProvider.java:451)
>
> at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:3 5)
> at
> org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchr onizer.java:123)
>
> at
> org.eclipse.swt.widgets.Display.runAsyncMessages(Display.jav a:3659)
> at
> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3296)
> at
> org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2389)
> at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
> at
> org.eclipse.ui.internal.Workbench.access$4(Workbench.java:22 19)
> 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(Work bench.java:461)
>
> at
> org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
> at
> org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplication.java:106)
>
> at
> org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:169)
>
> 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(EclipseS tarter.java:363)
>
> at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:176)
>
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
> Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at
> org.eclipse.equinox.launcher.Main.invokeFramework(Main.java: 508)
> at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447)
> at org.eclipse.equinox.launcher.Main.run(Main.java:1173)
> at org.eclipse.equinox.launcher.Main.main(Main.java:1148)
Re: [Fwd: Re: EventLoopProgressMonitor.isCanceled produce a strange refresh] [message #328737 is a reply to message #328733] Tue, 03 June 2008 13:06 Go to previous message
Eclipse UserFriend
Originally posted by: cdamus.zeligsoft.com

--=-ryLKLW6t/2yDDg8+J8ZP
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Hi, Ed,

You don't need to prompt me by special channels. I keep up with the
newsgroups as well as I am able, given the multifarious demands on my
time. I keep hoping, also, that others with experience in the EMF
technologies (incl. Transaction) will pitch in some support.

Thanks,

Christian


On Tue, 2008-06-03 at 07:08 -0400, Ed Merks wrote:

> Laurent,
>=20
> This question really requires some attention from Christian and the EMF=20
> newsgroup is the place he's most likely to see your question. It looks=20
> like the something is trying to update a view, something is trying to=20
> process a double click, all while a background thread is busy saving a=20
> file. I'll prompt him when I see him online later today...
>=20
>=20
> Laurent Le Goff wrote:
> > Hi,
> > this message have been posted in emf newsgroup first.
> > Pplease have you got an answer for that problem?
> >
> > thanks for help
> >
> > laurent
> >
> > -------- Message original --------
> > Sujet: Re: EventLoopProgressMonitor.isCanceled produce a strange refres=
h
> > Date: Mon, 02 Jun 2008 16:48:25 +0200
> > De: Laurent Le Goff <laurent.legoff@geensy.com>
> > Organisation: EclipseCorner
> > Forum :: eclipse.tools.emf
> > R=C3=A9f=C3=A9rences: <g210pk$fka$1@build.eclipse.org>
> > Hi all,
> >
> > I don't know if it is an EMF bug or platform eclipse bug. But I try
> > here. When there is a long running task that take a transaction Lock
> > *sometimes* when Lock try to uiSafeAcquire(boolean) there's an
> > indirect refresh or runEventLoop, this is indirectly due to the dialog
> > box displaying current blocking running task that block UI Event. This
> > can cause a infinite loop in the event loop or a warning in the error
> > log (ColumnViewer.isBusy).
> >
> > Where is the bug, in EMF or in my code or in EventLoopProgressMonitor
> > class, I'm lost.
> >
> >
> > thanks in avance
> >
> > Laurent
> >
> >
> > see stack traces below:
> >
> > Display.readAndDispatch() line: 3293
> > EventLoopProgressMonitor.runEventLoop() line: 123
> > EventLoopProgressMonitor.isCanceled() line: 97
> > ThreadJob.isCanceled(IProgressMonitor) line: 132
> > ThreadJob.joinRun(IProgressMonitor) line: 167
> > ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
> > line: 87
> > JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
> > 225
> > Lock.uiSafeAcquire(boolean) line: 403
> >
> >
> >
> >
> >
> > org.eclipse.equinox.launcher.Main at localhost:1563
> > Thread [main] (Suspended)
> > OS.WaitMessage() line: not available [native method]
> > Display.sleep() line: 4070
> > EventDetailsDialog(Window).runEventLoop(Shell) line: 821
> > EventDetailsDialog(Window).open() line: 796
> > EventDetailsDialog.open() line: 184
> > EventDetailsDialogAction.run() line: 91
> > LogView$12.doubleClick(DoubleClickEvent) line: 394
> > StructuredViewer$1.run() line: 799
> > SafeRunner.run(ISafeRunnable) line: 37
> > Platform.run(ISafeRunnable) line: 857
> > JFaceUtil$1.run(ISafeRunnable) line: 46
> > SafeRunnable.run(ISafeRunnable) line: 199
> > TreeViewer(StructuredViewer).fireDoubleClick(DoubleClickEven t)
> > line: 797
> >
> > TreeViewer(AbstractTreeViewer).handleDoubleSelect(SelectionE vent) line:
> > 1387
> > StructuredViewer$4.widgetDefaultSelected(SelectionEvent) line:
> > 1173
> > OpenStrategy.fireDefaultSelectionEvent(SelectionEvent) line: 23=
7
> > OpenStrategy.access$0(OpenStrategy, SelectionEvent) line: 234
> > OpenStrategy$1.handleEvent(Event) line: 295
> > EventTable.sendEvent(Event) line: 66
> > Tree(Widget).sendEvent(Event) line: 938
> > Display.runDeferredEvents() line: 3682
> > Display.readAndDispatch() line: 3293
> > EventLoopProgressMonitor.runEventLoop() line: 123
> > EventLoopProgressMonitor.isCanceled() line: 97
> > ThreadJob.isCanceled(IProgressMonitor) line: 132
> > ThreadJob.joinRun(IProgressMonitor) line: 167
> > ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
> > line: 87
> > JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
> > 225
> > Lock.uiSafeAcquire(boolean) line: 403
> > TransactionalEditingDomainImpl.acquire(InternalTransaction)
> > line: 512
> > TransactionalEditingDomainImpl.activate(InternalTransaction)
> > line: 440
> > TransactionImpl.start() line: 176
> > TransactionalEditingDomainImpl.startTransaction(boolean, Map)
> > line: 356
> > TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255
> >
> > GceContentProvider(TransactionalAdapterFactoryContentProvide r).run(Runn=
ableWithResult)=20
> >
> > line: 70
> >
> > GceContentProvider(TransactionalAdapterFactoryContentProvide r).inputCha=
nged(Viewer,=20
> >
> > Object, Object) line: 157
> > TableViewer(ContentViewer).setInput(Object) line: 247
> > TableViewer(StructuredViewer).setInput(Object) line: 1606
> >
> > BundlesView(Gce21BrowsingViewPart).adjustInputAndSetSelectio n(Object)
> > line: 531
> >
> > BundlesView(Gce21BrowsingViewPart).selectionChanged(IWorkben chPart,
> > ISelection) line: 707
> >
> > PageSelectionService(AbstractSelectionService).firePostSelec tion(IWorkb=
enchPart,=20
> >
> > ISelection) line: 179
> >
> > PageSelectionService(AbstractSelectionService).setActivePart (IWorkbench=
Part)=20
> >
> > line: 289
> >
> > WorkbenchPagePartList.fireActivePartChanged(IWorkbenchPartRe ference,
> > IWorkbenchPartReference) line: 59
> >
> > WorkbenchPagePartList(PartList).setActivePart(IWorkbenchPart Reference)
> > line: 126
> > WorkbenchPage.setActivePart(IWorkbenchPart) line: 3402
> > WorkbenchPage.requestActivation(IWorkbenchPart) line: 2946
> > ViewPane(PartPane).requestActivation() line: 265
> > ViewPane(PartPane).handleEvent(Event) line: 229
> > EventTable.sendEvent(Event) line: 66
> > Composite(Widget).sendEvent(Event) line: 938
> > Composite(Widget).sendEvent(int, Event, boolean) line: 962
> > Composite(Widget).sendEvent(int) line: 943
> > Shell.setActiveControl(Control) line: 1273
> > Shell.WM_MOUSEACTIVATE(int, int) line: 2015
> > Shell(Control).windowProc(int, int, int, int) line: 3713
> > Shell(Canvas).windowProc(int, int, int, int) line: 291
> > Shell(Decorations).windowProc(int, int, int, int) line: 1554
> > Shell.windowProc(int, int, int, int) line: 1753
> > Display.windowProc(int, int, int, int) line: 4364
> > OS.DefWindowProcW(int, int, int, int) line: not available
> > [native method]
> > OS.DefWindowProc(int, int, int, int) line: 2260
> > Composite(Scrollable).callWindowProc(int, int, int, int) line:
> > 77
> > Composite(Control).windowProc(int, int, int, int) line: 3760
> > Display.windowProc(int, int, int, int) line: 4364
> > OS.DefWindowProcW(int, int, int, int) line: not available
> > [native method]
> > OS.DefWindowProc(int, int, int, int) line: 2260
> > Composite(Scrollable).callWindowProc(int, int, int, int) line:
> > 77
> > Composite(Control).windowProc(int, int, int, int) line: 3760
> > Display.windowProc(int, int, int, int) line: 4364
> > OS.DefWindowProcW(int, int, int, int) line: not available
> > [native method]
> > OS.DefWindowProc(int, int, int, int) line: 2260
> > Composite(Scrollable).callWindowProc(int, int, int, int) line:
> > 77
> > Composite(Control).windowProc(int, int, int, int) line: 3760
> > Display.windowProc(int, int, int, int) line: 4364
> > OS.DefWindowProcW(int, int, int, int) line: not available
> > [native method]
> > OS.DefWindowProc(int, int, int, int) line: 2260
> > Composite(Scrollable).callWindowProc(int, int, int, int) line:
> > 77
> > Composite(Control).windowProc(int, int, int, int) line: 3760
> > Display.windowProc(int, int, int, int) line: 4364
> > OS.DefWindowProcW(int, int, int, int) line: not available
> > [native method]
> > OS.DefWindowProc(int, int, int, int) line: 2260
> > Tree.callWindowProc(int, int, int, int) line: 1450
> > Tree.windowProc(int, int, int, int) line: 5368
> > Display.windowProc(int, int, int, int) line: 4364
> > OS.CallWindowProcW(int, int, int, int, int) line: not available
> > [native method]
> > OS.CallWindowProc(int, int, int, int, int) line: 2179
> > Tree.callWindowProc(int, int, int, int) line: 1541
> > Tree(Control).windowProc(int, int, int, int) line: 3760
> > Tree.windowProc(int, int, int, int) line: 5370
> > Display.windowProc(int, int, int, int) line: 4364
> > OS.PeekMessageW(MSG, int, int, int, int) line: not available
> > [native method]
> > OS.PeekMessage(MSG, int, int, int, int) line: 2769
> > Display.readAndDispatch() line: 3288
> > 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: 169
> > 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: 508
> > Main.basicRun(String[]) line: 447
> > Main.run(String[]) line: 1173
> > Main.main(String[]) line: 1148
> > Main.main(String[]) line: 1148
> > <not responding>
> > <not responding>
> > waiting for: EventManager$EventThread (id=3D22)
> > Object.wait(long) line: not available [native method]
> > EventManager$EventThread(Object).wait() line: 485
> > EventManager$EventThread.getNextEvent() line: 355
> > EventManager$EventThread.run() line: 293
> > <not responding>
> > waiting for: EventManager$EventThread (id=3D24)
> > Object.wait(long) line: not available [native method]
> > EventManager$EventThread(Object).wait() line: 485
> > EventManager$EventThread.getNextEvent() line: 355
> > EventManager$EventThread.run() line: 293
> > <not responding>
> > waiting for: OfflineCachingStorage$CacheFlushJob (id=3D114)
> > Object.wait(long) line: not available [native method]
> > OfflineCachingStorage$CacheFlushJob(Object).wait() line: 485
> > OfflineCachingStorage$CacheFlushJob.run(IProgressMonitor) line:
> > 238
> > Worker.run() line: 55
> > Thread [Worker-1] (Suspended)
> > owns: TransactionImpl (id=3D106)
> > waiting for: Object (id=3D105)
> > Object.wait(long) line: not available [native method]
> > ThreadJob.joinRun(IProgressMonitor) line: 189
> > ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
> > line: 87
> > JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
> > 225
> > Lock.uiSafeAcquire(boolean) line: 403
> > TransactionalEditingDomainImpl.acquire(InternalTransaction)
> > line: 512
> > TransactionalEditingDomainImpl.activate(InternalTransaction)
> > line: 440
> > TransactionImpl.start() line: 176
> > TransactionalEditingDomainImpl.startTransaction(boolean, Map)
> > line: 356
> > TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255
> >
> > TransactionalAdapterFactoryContentProvider.run(RunnableWithR esult) line=
:
> > 70
> > TransactionalAdapterFactoryContentProvider.inputChanged(View er,
> > Object, Object) line: 157
> > BasicExplorerContentProvider$1.run(IProgressMonitor) line: 202
> > Worker.run() line: 55
> > <not responding>
> > waiting for: TaskQueue (id=3D113)
> > Object.wait(long) line: not available [native method]
> > TimerThread.mainLoop() line: 509
> > TimerThread.run() line: 462
> > <not responding>
> > waiting for: IndexManager (id=3D112)
> > Object.wait(long) line: not available [native method]
> > IndexManager(Object).wait() line: 485
> > IndexManager(JobManager).run() line: 369
> > Thread.run() line: 619
> > <not responding>
> > waiting for: TaskQueue (id=3D107)
> > Object.wait(long) line: not available [native method]
> > TimerThread.mainLoop() line: 509
> > TimerThread.run() line: 462
> > <not responding>
> > waiting for: DirtyRegionQueue (id=3D111)
> > Object.wait(long) line: not available [native method]
> > AbstractReconciler$BackgroundThread.run() line: 176
> > Thread [Worker-2] (Suspended)
> > owns: TransactionImpl (id=3D110)
> > waiting for: Semaphore (id=3D109)
> > Object.wait(long) line: not available [native method]
> > Semaphore.acquire(long) line: 38
> > OrderedLock.doAcquire(Semaphore, long) line: 169
> > OrderedLock.acquire(long) line: 105
> > OrderedLock.acquire() line: 82
> > Lock.uiSafeAcquire(boolean) line: 401
> > TransactionalEditingDomainImpl.acquire(InternalTransaction)
> > line: 512
> > TransactionalEditingDomainImpl.activate(InternalTransaction)
> > line: 440
> > TransactionImpl.start() line: 176
> > TransactionalEditingDomainImpl.startTransaction(boolean, Map)
> > line: 356
> > TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255
> > TransactionalEditingDomainImpl.broadcastUnbatched(Notificati on)
> > line: 740
> > TransactionChangeRecorder.appendNotification(Notification)
> > line: 293
> >
> > TransactionChangeRecorder.processResourceNotification(Notifi cation)
> > line: 254
> > TransactionChangeRecorder.notifyChanged(Notification) line: 220
> > XMIResourceImpl(BasicNotifierImpl).eNotify(Notification) line:
> > 247
> > XMIResourceImpl(ResourceImpl).setModified(boolean) line: 1645
> > XMIResourceImpl(ResourceImpl).save(OutputStream, Map<?,?>)
> > line: 1267
> > XMIResourceImpl(ResourceImpl).save(Map<?,?>) line: 964
> > EcoreResourceUtil.saveModel(EObject, Map<?,?>) line: 318
> > EcoreWorkspaceUtil.saveModel(EObject, Map<?,?>) line: 243
> > EcoreWorkspaceUtil$3.runInWorkspace(IProgressMonitor) line: 260
> >
> >
> > <not responding>
> > waiting for: Queue$Wait (id=3D108)
> > Object.wait(long) line: not available [native method]
> > Queue$Wait.waitFor(long) line: 322
> > Lock.acquire(long, boolean) line: 273
> > Lock$AcquireJob.run(IProgressMonitor) line: 762
> > Worker.run() line: 55
> > Thread [Worker-4] (Suspended)
> > owns: TransactionImpl (id=3D117)
> > waiting for: Object (id=3D105)
> > Object.wait(long) line: not available [native method]
> > ThreadJob.joinRun(IProgressMonitor) line: 189
> > ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
> > line: 87
> > JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
> > 225
> > Lock.uiSafeAcquire(boolean) line: 403
> > TransactionalEditingDomainImpl.acquire(InternalTransaction)
> > line: 512
> > TransactionalEditingDomainImpl.activate(InternalTransaction)
> > line: 440
> > TransactionImpl.start() line: 176
> > TransactionalEditingDomainImpl.startTransaction(boolean, Map)
> > line: 356
> > TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255
> >
> > TransactionalAdapterFactoryContentProvider.run(RunnableWithR esult) line=
:
> > 70
> > TransactionalAdapterFactoryContentProvider.inputChanged(View er,
> > Object, Object) line: 157
> > BasicExplorerContentProvider$1.run(IProgressMonitor) line: 202
> > Worker.run() line: 55
> > Thread [Worker-5] (Suspended)
> > owns: TransactionImpl (id=3D124)
> > waiting for: Object (id=3D105)
> > Object.wait(long) line: not available [native method]
> > ThreadJob.joinRun(IProgressMonitor) line: 189
> > ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
> > line: 87
> > JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
> > 225
> > Lock.uiSafeAcquire(boolean) line: 403
> > TransactionalEditingDomainImpl.acquire(InternalTransaction)
> > line: 512
> > TransactionalEditingDomainImpl.activate(InternalTransaction)
> > line: 440
> > TransactionImpl.start() line: 176
> > TransactionalEditingDomainImpl.startTransaction(boolean, Map)
> > line: 356
> > TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255
> >
> > TransactionalAdapterFactoryContentProvider.run(RunnableWithR esult) line=
:
> > 70
> > TransactionalAdapterFactoryContentProvider.inputChanged(View er,
> > Object, Object) line: 157
> > BasicExplorerContentProvider$1.run(IProgressMonitor) line: 202
> > Worker.run() line: 55
> > <not responding>
> > waiting for: TaskListSaveManager$TaskListSaverJob (id=3D127)
> > Object.wait(long) line: not available [native method]
> > TaskListSaveManager$TaskListSaverJob(Object).wait() line: 485
> > TaskListSaveManager$TaskListSaverJob.run(IProgressMonitor)
> > line: 280
> > Worker.run() line: 55
> > <not responding>
> > waiting for: TaskQueue (id=3D120)
> > Object.wait(long) line: not available [native method]
> > TimerThread.mainLoop() line: 509
> > TimerThread.run() line: 462
> > <not responding>
> > Thread.sleep(long) line: not available [native method]
> > ActivityTimerThread.run() line: 64
> > <not responding>
> > waiting for: Queue$Wait (id=3D119)
> > Object.wait(long) line: not available [native method]
> > Queue$Wait.waitFor(long) line: 322
> > Lock.acquire(long, boolean) line: 273
> > Lock$AcquireJob.run(IProgressMonitor) line: 762
> > Worker.run() line: 55
> > <not responding>
> > waiting for: Queue$Wait (id=3D123)
> > Object.wait(long) line: not available [native method]
> > Queue$Wait.waitFor(long) line: 322
> > Lock.acquire(long, boolean) line: 273
> > Lock$AcquireJob.run(IProgressMonitor) line: 762
> > Worker.run() line: 55
> > Thread [Worker-9] (Suspended)
> > owns: TransactionImpl (id=3D130)
> > waiting for: Object (id=3D105)
> > Object.wait(long) line: not available [native method]
> > ThreadJob.joinRun(IProgressMonitor) line: 189
> > ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
> > line: 87
> > JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
> > 225
> > Lock.uiSafeAcquire(boolean) line: 403
> > TransactionalEditingDomainImpl.acquire(InternalTransaction)
> > line: 512
> > TransactionalEditingDomainImpl.activate(InternalTransaction)
> > line: 440
> > TransactionImpl.start() line: 176
> > TransactionalEditingDomainImpl.startTransaction(boolean, Map)
> > line: 356
> > TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255
> > ResourceChangedListener.resourceChanged(IResourceChangeEvent )
> > line: 38
> > NotificationManager$2.run() line: 282
> > SafeRunner.run(ISafeRunnable) line: 37
> > <unknown receiving type>(<unknown declaring
> > type>).broadcastPostChange() <unknown line number>
> > <unknown receiving type>(<unknown declaring
> > type>).endOperation(ISchedulingRule, boolean, IProgressMonitor) <unknow=
n
> > line number>
> > <unknown receiving type>(<unknown declaring
> > type>).run(IWorkspaceRunnable, ISchedulingRule, int, IProgressMonitor)
> > <unknown line number>
> > <unknown receiving type>(<unknown declaring
> > type>).run(IProgressMonitor) <unknown line number>
> > Worker.run() line: 55
> >
> >
> > <not responding>
> > waiting for: WorkerPool (id=3D122)
> > Object.wait(long) line: not available [native method]
> > WorkerPool.sleep(long) line: 185
> > WorkerPool.startJob(Worker) line: 217
> > Worker.run() line: 51
> > Thread [Worker-11] (Suspended)
> > owns: TransactionImpl (id=3D129)
> > waiting for: Semaphore (id=3D128)
> > Object.wait(long) line: not available [native method]
> > Semaphore.acquire(long) line: 38
> > OrderedLock.doAcquire(Semaphore, long) line: 169
> > OrderedLock.acquire(long) line: 105
> > OrderedLock.acquire() line: 82
> > Lock.uiSafeAcquire(boolean) line: 401
> > TransactionalEditingDomainImpl.acquire(InternalTransaction)
> > line: 512
> > TransactionalEditingDomainImpl.activate(InternalTransaction)
> > line: 440
> > TransactionImpl.start() line: 176
> > TransactionalEditingDomainImpl.startTransaction(boolean, Map)
> > line: 356
> > TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255
> >
> > TransactionChangeRecorder.processResourceNotification(Notifi cation)
> > line: 254
> > TransactionChangeRecorder.notifyChanged(Notification) line: 220
> > XMIResourceImpl(BasicNotifierImpl).eNotify(Notification) line:
> > 247
> > XMIResourceImpl(ResourceImpl).setModified(boolean) line: 1645
> > XMIResourceImpl(ResourceImpl).save(OutputStream, Map<?,?>)
> > line: 1267
> > XMIResourceImpl(ResourceImpl).save(Map<?,?>) line: 964
> > EcoreResourceUtil.saveModel(EObject, Map<?,?>) line: 318
> > EcoreWorkspaceUtil.saveModel(EObject, Map<?,?>) line: 243
> > EcoreWorkspaceUtil$3.runInWorkspace(IProgressMonitor) line: 260
> >
> > EcoreWorkspaceUtil$3(InternalWorkspaceJob).run(IProgressMoni tor) line: =
38
> > Worker.run() line: 55
> >
> >
> > <not responding>
> > waiting for: Queue$Wait (id=3D116)
> > Object.wait(long) line: not available [native method]
> > Queue$Wait.waitFor(long) line: 322
> > Lock.acquire(long, boolean) line: 273
> > Lock$AcquireJob.run(IProgressMonitor) line: 762
> > Worker.run() line: 55
> > <not responding>
> > waiting for: Queue$Wait (id=3D121)
> > Object.wait(long) line: not available [native method]
> > Queue$Wait.waitFor(long) line: 322
> > Lock.acquire(long, boolean) line: 273
> > Lock$AcquireJob.run(IProgressMonitor) line: 762
> > Worker.run() line: 55
> > <not responding>
> > waiting for: Queue$Wait (id=3D118)
> > Object.wait(long) line: not available [native method]
> > Queue$Wait.waitFor(long) line: 322
> > Lock.acquire(long, boolean) line: 273
> > Lock$AcquireJob.run(IProgressMonitor) line: 762
> > Worker.run() line: 55
> > <not responding>
> > waiting for: Object (id=3D105)
> > Object.wait(long) line: not available [native method]
> > ThreadJob.joinRun(IProgressMonitor) line: 189
> > ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)
> > line: 87
> > JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:
> > 225
> > StringPoolJob.run(IProgressMonitor) line: 99
> > Worker.run() line: 55
> > <not responding>
> > waiting for: ReferenceQueue$Lock (id=3D131)
> > Object.wait(long) line: not available [native method]
> > ReferenceQueue<T>.remove(long) line: 116
> > MultiThreadedHttpConnectionManager$ReferenceQueueThread.run( )
> > line: 1082
> > <not responding>
> > waiting for: WorkerPool (id=3D122)
> > Object.wait(long) line: not available [native method]
> > WorkerPool.sleep(long) line: 185
> > WorkerPool.startJob(Worker) line: 217
> > Worker.run() line: 51
> >
> >
> > **************************************
> >
> > java.lang.RuntimeException
> > at
> > org.eclipse.jface.viewers.ColumnViewer.isBusy(ColumnViewer.j ava:79)
> > at
> > org.eclipse.jface.viewers.ColumnViewer.update(ColumnViewer.j ava:551)
> > at
> > org.eclipse.ui.navigator.CommonViewer.update(CommonViewer.ja va:428)
> > at
> > org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvid er$ViewerRe=
fresh.refresh(AdapterFactoryContentProvider.java:480)=20
> >
> > at
> > org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvid er$ViewerRe=
fresh.run(AdapterFactoryContentProvider.java:451)=20
> >
> > at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:3 =
5)
> > at
> > org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchr onizer.java=
:123)=20
> >
> > at
> > org.eclipse.swt.widgets.Display.runAsyncMessages(Display.jav a:3659)
> > at
> > org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3296)
> > at
> > org.eclipse.ui.internal.dialogs.EventLoopProgressMonitor.run EventLoop(E=
ventLoopProgressMonitor.java:123)=20
> >
> > at
> > org.eclipse.ui.internal.dialogs.EventLoopProgressMonitor.isC anceled(Eve=
ntLoopProgressMonitor.java:97)=20
> >
> > at
> > org.eclipse.core.internal.jobs.ThreadJob.isCanceled(ThreadJo b.java:132)
> > at
> > org.eclipse.core.internal.jobs.ThreadJob.joinRun(ThreadJob.j ava:167)
> > at
> > org.eclipse.core.internal.jobs.ImplicitJobs.begin(ImplicitJo bs.java:87)
> > at
> > org.eclipse.core.internal.jobs.JobManager.beginRule(JobManag er.java:225=
)
> > at
> > org.eclipse.emf.transaction.util.Lock.uiSafeAcquire(Lock.jav a:404)
> > at
> > org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.acquire=
(TransactionalEditingDomainImpl.java:512)=20
> >
> > at
> > org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.activat=
e(TransactionalEditingDomainImpl.java:440)=20
> >
> > at
> > org.eclipse.emf.transaction.impl.TransactionImpl.start(Trans actionImpl.=
java:176)=20
> >
> > at
> > org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.startTr=
ansaction(TransactionalEditingDomainImpl.java:356)=20
> >
> > at
> > org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.runExcl=
usive(TransactionalEditingDomainImpl.java:255)=20
> >
> > at
> > org.eclipse.emf.transaction.ui.provider.TransactionalAdapter FactoryLabe=
lProvider.run(TransactionalAdapterFactoryLabelProvider.java: 64)=20
> >
> > at
> > org.eclipse.emf.transaction.ui.provider.TransactionalAdapter FactoryLabe=
lProvider.getText(TransactionalAdapterFactoryLabelProvider.j ava:136)=20
> >
> > at
> > com.geensys.ecl.emf.explorer.BasicExplorerLabelProvider.getT ext(BasicEx=
plorerLabelProvider.java:61)=20
> >
> > at
> > org.eclipse.ui.internal.navigator.NavigatorContentServiceLab elProvider.=
findUpdateLabel(NavigatorContentServiceLabelProvider.java:32 7)=20
> >
> > at
> > org.eclipse.ui.internal.navigator.NavigatorContentServiceLab elProvider.=
updateLabel(NavigatorContentServiceLabelProvider.java:309)=2 0
> >
> > at
> > org.eclipse.jface.viewers.DecoratingLabelProvider.updateLabe l(Decoratin=
gLabelProvider.java:345)=20
> >
> > at
> > org.eclipse.jface.viewers.WrappedViewerLabelProvider.update( WrappedView=
erLabelProvider.java:183)=20
> >
> > at
> > org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn. java:135)
> > at
> > org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeV=
iewer.java:911)=20
> >
> > at
> > org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeR unnable.run=
(AbstractTreeViewer.java:97)=20
> >
> > at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
> > at org.eclipse.core.runtime.Platform.run(Platform.java:857)
> > at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:46)
> > at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:19 =
9)
> > at
> > org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeV=
iewer.java:991)=20
> >
> > at
> > org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRun nable.run(S=
tructuredViewer.java:466)=20
> >
> > at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
> > at org.eclipse.core.runtime.Platform.run(Platform.java:857)
> > at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:46)
> > at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:19 =
9)
> > at
> > org.eclipse.jface.viewers.StructuredViewer.updateItem(Struct uredViewer.=
java:2026)=20
> >
> > at
> > org.eclipse.jface.viewers.StructuredViewer.internalUpdate(St ructuredVie=
wer.java:2009)=20
> >
> > at
> > org.eclipse.jface.viewers.StructuredViewer.update(Structured Viewer.java=
:1953)=20
> >
> > at
> > org.eclipse.jface.viewers.ColumnViewer.update(ColumnViewer.j ava:553)
> > at
> > org.eclipse.ui.navigator.CommonViewer.update(CommonViewer.ja va:428)
> > at
> > org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvid er$ViewerRe=
fresh.refresh(AdapterFactoryContentProvider.java:480)=20
> >
> > at
> > org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvid er$ViewerRe=
fresh.run(AdapterFactoryContentProvider.java:451)=20
> >
> > at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:3 =
5)
> > at
> > org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchr onizer.java=
:123)=20
> >
> > at
> > org.eclipse.swt.widgets.Display.runAsyncMessages(Display.jav a:3659)
> > at
> > org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3296)
> > at
> > org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2389)
> > at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
> > at=20
> > org.eclipse.ui.internal.Workbench.access$4(Workbench.java:22 19)
> > at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466)
> > at
> > org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java=
:289)=20
> >
> > at
> > org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:=
461)=20
> >
> > at
> > org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
> > at
> > org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplica=
tion.java:106)=20
> >
> > at
> > org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.=
java:169)=20
> >
> > at
> > org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .runApplica=
tion(EclipseAppLauncher.java:106)=20
> >
> > at
> > org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .start(Ecli=
pseAppLauncher.java:76)=20
> >
> > at
> > org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java=
:363)=20
> >
> > at
> > org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java=
:176)=20
> >
> > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> > at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> > at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown=20
> > Source)
> > at java.lang.reflect.Method.invoke(Unknown Source)
> > at=20
> > org.eclipse.equinox.launcher.Main.invokeFramework(Main.java: 508)
> > at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447)
> > at org.eclipse.equinox.launcher.Main.run(Main.java:1173)
> > at org.eclipse.equinox.launcher.Main.main(Main.java:1148)

--=-ryLKLW6t/2yDDg8+J8ZP
Content-Type: text/html; charset=utf-8

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
<META NAME="GENERATOR" CONTENT="GtkHTML/3.16.0">
</HEAD>
<BODY>
Hi, Ed,<BR>
<BR>
You don't need to prompt me by special channels.&nbsp; I keep up with the newsgroups as well as I am able, given the multifarious demands on my time.&nbsp; I keep hoping, also, that others with experience in the EMF technologies (incl. Transaction) will pitch in some support.<BR>
<BR>
Thanks,<BR>
<BR>
Christian<BR>
<BR>
<BR>
On Tue, 2008-06-03 at 07:08 -0400, Ed Merks wrote:
<BLOCKQUOTE TYPE=CITE>
<PRE>
<FONT COLOR="#000000">Laurent,</FONT>

<FONT COLOR="#000000">This question really requires some attention from Christian and the EMF </FONT>
<FONT COLOR="#000000">newsgroup is the place he's most likely to see your question. It looks </FONT>
<FONT COLOR="#000000">like the something is trying to update a view, something is trying to </FONT>
<FONT COLOR="#000000">process a double click, all while a background thread is busy saving a </FONT>
<FONT COLOR="#000000">file. I'll prompt him when I see him online later today...</FONT>


<FONT COLOR="#000000">Laurent Le Goff wrote:</FONT>
<FONT COLOR="#000000">&gt; Hi,</FONT>
<FONT COLOR="#000000">&gt; this message have been posted in emf newsgroup first.</FONT>
<FONT COLOR="#000000">&gt; Pplease have you got an answer for that problem?</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; thanks for help</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; laurent</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; -------- Message original --------</FONT>
<FONT COLOR="#000000">&gt; Sujet: Re: EventLoopProgressMonitor.isCanceled produce a strange refresh</FONT>
<FONT COLOR="#000000">&gt; Date: Mon, 02 Jun 2008 16:48:25 +0200</FONT>
<FONT COLOR="#000000">&gt; De: Laurent Le Goff &lt;<A HREF="mailto:laurent.legoff@geensy.com">laurent.legoff@geensy.com</A>&gt;</FONT>
<FONT COLOR="#000000">&gt; Organisation: EclipseCorner</FONT>
<FONT COLOR="#000000">&gt; Forum :: eclipse.tools.emf</FONT>
<FONT COLOR="#000000">&gt; R&#233;f&#233;rences: &lt;<A HREF="mailto:g210pk$fka$1@build.eclipse.org">g210pk$fka$1@build.eclipse.org</A>&gt;</FONT>
<FONT COLOR="#000000">&gt; Hi all,</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; I don't know if it is an EMF bug or platform eclipse bug. But I try</FONT>
<FONT COLOR="#000000">&gt; here. When there is a long running task that take a transaction Lock</FONT>
<FONT COLOR="#000000">&gt; *sometimes* when Lock try to uiSafeAcquire(boolean) there's an</FONT>
<FONT COLOR="#000000">&gt; indirect refresh or runEventLoop, this is indirectly due to the dialog</FONT>
<FONT COLOR="#000000">&gt; box displaying current blocking running task that block UI Event. This</FONT>
<FONT COLOR="#000000">&gt; can cause a infinite loop in the event loop or a warning in the error</FONT>
<FONT COLOR="#000000">&gt; log (ColumnViewer.isBusy).</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; Where is the bug, in EMF or in my code or in EventLoopProgressMonitor</FONT>
<FONT COLOR="#000000">&gt; class, I'm lost.</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; thanks in avance</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; Laurent</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; see stack traces below:</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; Display.readAndDispatch() line: 3293</FONT>
<FONT COLOR="#000000">&gt; EventLoopProgressMonitor.runEventLoop() line: 123</FONT>
<FONT COLOR="#000000">&gt; EventLoopProgressMonitor.isCanceled() line: 97</FONT>
<FONT COLOR="#000000">&gt; ThreadJob.isCanceled(IProgressMonitor) line: 132</FONT>
<FONT COLOR="#000000">&gt; ThreadJob.joinRun(IProgressMonitor) line: 167</FONT>
<FONT COLOR="#000000">&gt; ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)</FONT>
<FONT COLOR="#000000">&gt; line: 87</FONT>
<FONT COLOR="#000000">&gt; JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:</FONT>
<FONT COLOR="#000000">&gt; 225</FONT>
<FONT COLOR="#000000">&gt; Lock.uiSafeAcquire(boolean) line: 403</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; org.eclipse.equinox.launcher.Main at localhost:1563</FONT>
<FONT COLOR="#000000">&gt; Thread [main] (Suspended)</FONT>
<FONT COLOR="#000000">&gt; OS.WaitMessage() line: not available [native method]</FONT>
<FONT COLOR="#000000">&gt; Display.sleep() line: 4070</FONT>
<FONT COLOR="#000000">&gt; EventDetailsDialog(Window).runEventLoop(Shell) line: 821</FONT>
<FONT COLOR="#000000">&gt; EventDetailsDialog(Window).open() line: 796</FONT>
<FONT COLOR="#000000">&gt; EventDetailsDialog.open() line: 184</FONT>
<FONT COLOR="#000000">&gt; EventDetailsDialogAction.run() line: 91</FONT>
<FONT COLOR="#000000">&gt; LogView$12.doubleClick(DoubleClickEvent) line: 394</FONT>
<FONT COLOR="#000000">&gt; StructuredViewer$1.run() line: 799</FONT>
<FONT COLOR="#000000">&gt; SafeRunner.run(ISafeRunnable) line: 37</FONT>
<FONT COLOR="#000000">&gt; Platform.run(ISafeRunnable) line: 857</FONT>
<FONT COLOR="#000000">&gt; JFaceUtil$1.run(ISafeRunnable) line: 46</FONT>
<FONT COLOR="#000000">&gt; SafeRunnable.run(ISafeRunnable) line: 199</FONT>
<FONT COLOR="#000000">&gt; TreeViewer(StructuredViewer).fireDoubleClick(DoubleClickEven t) </FONT>
<FONT COLOR="#000000">&gt; line: 797</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; TreeViewer(AbstractTreeViewer).handleDoubleSelect(SelectionE vent) line:</FONT>
<FONT COLOR="#000000">&gt; 1387</FONT>
<FONT COLOR="#000000">&gt; StructuredViewer$4.widgetDefaultSelected(SelectionEvent) line:</FONT>
<FONT COLOR="#000000">&gt; 1173</FONT>
<FONT COLOR="#000000">&gt; OpenStrategy.fireDefaultSelectionEvent(SelectionEvent) line: 237</FONT>
<FONT COLOR="#000000">&gt; OpenStrategy.access$0(OpenStrategy, SelectionEvent) line: 234</FONT>
<FONT COLOR="#000000">&gt; OpenStrategy$1.handleEvent(Event) line: 295</FONT>
<FONT COLOR="#000000">&gt; EventTable.sendEvent(Event) line: 66</FONT>
<FONT COLOR="#000000">&gt; Tree(Widget).sendEvent(Event) line: 938</FONT>
<FONT COLOR="#000000">&gt; Display.runDeferredEvents() line: 3682</FONT>
<FONT COLOR="#000000">&gt; Display.readAndDispatch() line: 3293</FONT>
<FONT COLOR="#000000">&gt; EventLoopProgressMonitor.runEventLoop() line: 123</FONT>
<FONT COLOR="#000000">&gt; EventLoopProgressMonitor.isCanceled() line: 97</FONT>
<FONT COLOR="#000000">&gt; ThreadJob.isCanceled(IProgressMonitor) line: 132</FONT>
<FONT COLOR="#000000">&gt; ThreadJob.joinRun(IProgressMonitor) line: 167</FONT>
<FONT COLOR="#000000">&gt; ImplicitJobs.begin(ISchedulingRule, IProgressMonitor, boolean)</FONT>
<FONT COLOR="#000000">&gt; line: 87</FONT>
<FONT COLOR="#000000">&gt; JobManager.beginRule(ISchedulingRule, IProgressMonitor) line:</FONT>
<FONT COLOR="#000000">&gt; 225</FONT>
<FONT COLOR="#000000">&gt; Lock.uiSafeAcquire(boolean) line: 403</FONT>
<FONT COLOR="#000000">&gt; TransactionalEditingDomainImpl.acquire(InternalTransaction)</FONT >
<FONT COLOR="#000000">&gt; line: 512</FONT>
<FONT COLOR="#000000">&gt; TransactionalEditingDomainImpl.activate(InternalTransaction) </FONT>
<FONT COLOR="#000000">&gt; line: 440</FONT>
<FONT COLOR="#000000">&gt; TransactionImpl.start() line: 176</FONT>
<FONT COLOR="#000000">&gt; TransactionalEditingDomainImpl.startTransaction(boolean, Map)</FONT>
<FONT COLOR="#000000">&gt; line: 356</FONT>
<FONT COLOR="#000000">&gt; TransactionalEditingDomainImpl.runExclusive(Runnable) line: 255</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; GceContentProvider(TransactionalAdapterFactoryContentProvide r).run(RunnableWithResult) </FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; line: 70</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; GceContentProvider(TransactionalAdapterFactoryContentProvide r).inputChanged(Viewer, </FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; Object, Object) line: 157</FONT>
<FONT COLOR="#000000">&gt; TableViewer(ContentViewer).setInput(Object) line: 247</FONT>
<FONT COLOR="#000000">&gt; TableViewer(StructuredViewer).setInput(Object) line: 1606</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; BundlesView(Gce21BrowsingViewPart).adjustInputAndSetSelectio n(Object) </FONT>
<FONT COLOR="#000000">&gt; line: 531</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; BundlesView(Gce21BrowsingViewPart).selectionChanged(IWorkben chPart, </FONT>
<FONT COLOR="#000000">&gt; ISelection) line: 707</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; PageSelectionService(AbstractSelectionService).firePostSelec tion(IWorkbenchPart, </FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; ISelection) line: 179</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; PageSelectionService(AbstractSelectionService).setActivePart (IWorkbenchPart) </FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; line: 289</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; WorkbenchPagePartList.fireActivePartChanged(IWorkbenchPartRe ference, </FONT>
<FONT COLOR="#000000">&gt; IWorkbenchPartReference) line: 59</FONT>
<FONT COLOR="#000000">&gt;</FONT>
<FONT COLOR="#000000">&gt; WorkbenchPagePartList(PartList).setActivePart(IWorkbenchPart Reference) </FONT>
<FONT COLOR="#000000">&gt; line: 126</FONT>
<FONT COLOR="#000000">&gt; WorkbenchPage.setActivePart(IWorkbenchPart) line: 3402</FONT>
<FONT COLOR="#000000">&gt; WorkbenchPage.requestActivation(IWorkbenchPart) line: 2946</FONT>
<FONT COLOR="#000000">&gt; ViewPane(PartPane).requestActivation() line: 265</FONT>
<FONT COLOR="#000000">&gt; ViewPane(PartPane).handleEvent(Event) line: 229</FONT>
<FONT COLOR="#000000">&gt; EventTable.sendEvent(Event) line: 66</FONT>
<FONT COLOR="#000000">&gt; Composite(Widget).sendEvent(Event) line: 938</FONT>
<FONT COLOR="#000000">&gt; Composite(Widget).sendEvent(int, Event, boolean) line: 962</FONT>
<FONT COLOR="#000000">&gt; Composite(Widget).sendEvent(int) line: 943</FONT>
<FONT COLOR="#000000">&gt; Shell.setActiveControl(Control) line: 1273</FONT>
<FONT COLOR="#000000">&gt; Shell.WM_MOUSEACTIVATE(int, int) line: 2015</FONT>
<FONT COLOR="#000000">&gt; Shell(Control).windowProc(int, int, int, int) line: 3713</FONT>
<FONT COLOR="#000000">&gt; Shell(Canvas).windowProc(int, int, int, int) line: 291</FONT>
<FONT COLOR="#000000">&gt; Shell(Decorations).windowProc(int, int, int, int) line: 1554</FONT>
<FONT COLOR="#000000">&gt; Shell.windowProc(int, int, int, int) line: 1753</FONT>
<FONT COLOR="#000000">&gt; Display.windowProc(int, int, int, int) line: 4364</FONT>
<FONT COLOR="#000000">&gt; OS.DefWindowProcW(int, int, int, int) line: not available</FONT>
<FONT COLOR="#000000">&gt; [native method]</FONT>
<FONT COLOR="#000000">&gt; OS.DefWindowProc(int, int, int, int) line: 2260</FONT>
<FONT COLOR="#000000">&gt; Composite(Scrollable).callWindowProc(int, int, int, int) line:</FONT>
<FONT COLOR="#000000">&gt; 77</FONT>
<FONT COLOR="#000000">&gt; Composite(Control).windowProc(int, int, int, int) line: 3760</FONT>
<FONT COLOR="#000000">&gt; Display.windowProc(int, int, int, int) line: 4364</FONT>
<FONT COLOR="#000000">&gt; OS.DefWindowProcW(int, int, int, int) line: not available</FONT>
<FONT COLOR="#000000">&gt; [native method]</FONT>
<FONT COLOR="#000000">&gt; OS.DefWindowProc(int, int, int, int) line: 2260</FONT>
<FONT COLOR="#000000">&gt; Composite(Scrollable).callWindowProc(int, int, int, int) line:</FONT>
<FONT COLOR="#000000">&gt; 77</FONT>
<FONT COLOR="#000000">&gt; Composite(Control).windowProc(int, int, int, int) line: 3760</FONT>
<FONT COLOR="#000000">&gt; Display.windowProc(int, int, int, int) line: 4364</FONT>
<FONT COLOR="#000000">&gt; OS.DefWindowProcW(int, int, int, int) line: not available</FONT>
<FONT COLOR="#000000">&gt; [native method]</FONT>
<FONT COLOR="#000000">&gt; OS.DefWindowProc(int, int, int, int) line: 2260</FONT>
<FONT COLOR="#000000">&gt; Composite(Scrollable).callWindowProc(int, int, int, int) line:</FONT>
<FONT COLOR="#000000">&gt; 77</FONT>
<FONT COLOR="#000000">&gt; Composite(Control).windowProc(int, int, int, int) line: 3760</FONT>
<FONT COLOR="#000000">&gt; Display.windowProc(int, int, int, int) line: 4364</FONT>
<FONT COLOR="#000000">&gt; OS.DefWindowProcW(int, int, int, int) line: not available</FONT>
<FONT COLOR="#000000">&gt; [native method]</FONT>
<FONT COLOR="#000000">&gt; OS.DefWindowProc(int, int, int, int) line: 2260</FONT>
<FONT COLOR="#000000">&gt; Composite(Scrollable).callWindowProc(int, int, int, int) line:</FONT>
<FONT COLOR="#000000">&gt; 77</FONT>
<FONT COLOR="#000000">&gt; Composite(Control).windowProc(int, int, int, int) line: 3760</FONT>
<FONT COLOR="#000000">&gt; Display.windowProc(int, int, int, int) line: 4364</FONT>
<FONT COLOR="#000000">&gt; OS.DefWindowProcW(int, int, int, int) line: not available</FONT>
<FONT COLOR="#000000">&gt; [native method]</FONT>
<FONT COLOR="#000000">&gt; OS.DefWindowProc(int, int, int, int) line: 2260</FONT>
<FONT COLOR="#000000">&gt; Tree.callWindowProc(int, int, int, int) line: 1450</FONT>
<FONT COLOR="#000000">&gt; Tree.windowProc(int, int, int, int) line: 5368</FONT>
<FONT COLOR="#000000">&gt; Display.windowProc(int, int, int, int) line: 4364</FONT>
<FONT COLOR="#000000">&gt; OS.CallWindowProcW(int, int, int, int, int) line: not available</FONT>
<FONT COLOR="#000000">&gt; [native method]</FONT>
<FONT COLOR="#000000">&gt; OS.CallWindowProc(int, int, int, int, int) line: 2179</FONT>
<FONT COLOR="#000000">&gt; Tree.callWindowProc(int, int, int, int) line: 1541</FONT>
<FONT COLOR="#000000">&gt; Tree(Control).windowProc(int, int, int, int) line: 3760</FONT>
<FONT COLOR="#000000">&gt; Tree.windowProc(int, int, int, int) line: 5370</FONT>
<FONT COLOR="#000000">&gt; Display.windowProc(int, int, int, int) line: 4364</FONT>
<FONT COLOR="#000000">&gt; OS.PeekMessageW(MSG, int, int, int, int) line: not available</FONT>
<FONT COLOR="#000000">&gt; [native method]</FONT>
<FONT COLOR="#000000">&gt; OS.PeekMessage(MSG, int, int, int, int) line: 2769</FONT>
<FONT COLOR="#000000">&gt; Display.readAndDispatch() line: 3288</FONT>
<FONT COLOR="#000000">&gt; Workbench.runEventLoop(Window$IExceptionHandler, Display) line:</FONT>
<FONT COLOR="#000000">&gt; 2389</FONT>
<FONT COLOR="#000000">&gt; Workbench.runUI() line: 2353</FONT>
<FONT COLOR="#000000">&gt; Workbench.access$4(Workbench) line: 2219</FONT>
<FONT COLOR="#000000&qu
Previous Topic:Eclipse 3.3 for solaris x86
Next Topic:.syncinfo is deleted RDZ
Goto Forum:
  


Current Time: Wed Jun 26 19:33:15 GMT 2024

Powered by FUDForum. Page generated in 0.03933 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top