Community
Participate
Working Groups
Given an ant script containing something like: <property name="remoteFile" value="\\download.eclipse.org\file.properties"/> <property file="${remoteFile}" /> Then any edits to this file result in very long delays where the UI is locked and unresponsive. This is caused by ant reconciler holding getting a lock on the file (in AntModel#reconcile) and the UI waiting for that lock (SynchronizableDocument#getLineOfOffset) while the reconciler tries to get the remote file to load its properties. Call stack looks something like this: Thread [main] (Suspended) SynchronizableDocument.getLineOfOffset(int) line: 397 TextSelection.getEndLine() line: 145 RevertLineAction(QuickDiffRestoreAction).computeLine(boolean) line: 174 RevertLineAction(QuickDiffRestoreAction).computeEnablement() line: 123 RevertLineAction.computeEnablement() line: 45 RevertLineAction(QuickDiffRestoreAction).update() line: 99 RevertLineAction(QuickDiffRestoreAction).selectionChanged(SelectionChangedEvent) line: 107 AntEditor$StatusLineSourceViewer(TextViewer).firePostSelectionChanged(SelectionChangedEvent) line: 2741 AntEditor$StatusLineSourceViewer(TextViewer).firePostSelectionChanged(int, int) line: 2689 TextViewer$5.run() line: 2668 Display.runTimer(int) line: 4140 Display.messageProc(int, int, int, int) line: 3246 OS.DispatchMessageW(MSG) line: not available [native method] OS.DispatchMessage(MSG) line: 2458 Display.readAndDispatch() line: 3628 Daemon Thread [org.eclipse.ant.internal.ui.editor.text.NotifyingReconciler] (Suspended) WinNTFileSystem.getBooleanAttributes(File) line: not available [native method] File.exists() line: 702 Property.loadFile(File) line: 454 Property.execute() line: 391 UnknownElement.execute() line: 288 AntPropertyNode.configure(boolean) line: 103 AntModel.resolveBuildfile() line: 511 AntModel.parseDocument(IDocument) line: 331 AntModel.reconcile() line: 267 XMLReconcilingStrategy.internalReconcile() line: 43 XMLReconcilingStrategy.reconcile(IRegion) line: 56 NotifyingReconciler(MonoReconciler).process(DirtyRegion) line: 77 NotifyingReconciler.process(DirtyRegion) line: 39 AbstractReconciler$BackgroundThread.run() line: 206 I would suggest attempting to determine if the file is local before loading it.
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet. If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant.
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet. As such, we're closing this bug. If you have further information on the current state of the bug, please add it and reopen this bug. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant. -- The automated Eclipse Genie.