Community
Participate
Working Groups
In a workspace with no *.mtl files no projects with an Acceleo nature I see Thread [main] (Suspended (breakpoint at line 265 in AcceleoPackageRegistry)) owns: WorkspaceModifyDelegatingOperation (id=2858) AcceleoPackageRegistry.registerEcorePackages(String, ResourceSet) line: 265 AcceleoCommonPlugin$WorkspaceEcoreListener.resourceChanged(IResourceChangeEvent) line: 509 NotificationManager$1.run() line: 291 SafeRunner.run(ISafeRunnable) line: 42 NotificationManager.notify(ResourceChangeListenerList$ListenerEntry[], IResourceChangeEvent, boolean) line: 285 NotificationManager.broadcastChanges(ElementTree, ResourceChangeEvent, boolean) line: 149 Workspace.broadcastPostChange() line: 396 Workspace.endOperation(ISchedulingRule, boolean, IProgressMonitor) line: 1531 Workspace.run(IWorkspaceRunnable, ISchedulingRule, int, IProgressMonitor) line: 2354 WorkspaceModifyDelegatingOperation(WorkspaceModifyOperation).run(IProgressMonitor) line: 118 WorkspaceOperationRunner.run(IRunnableWithProgress, ISchedulingRule) line: 75 WorkspaceOperationRunner.run(boolean, boolean, IRunnableWithProgress) line: 65 OCLinEcoreDocumentProvider(AbstractDocumentProvider).executeOperation(AbstractDocumentProvider$DocumentProviderOperation, IProgressMonitor) line: 551 OCLinEcoreDocumentProvider(AbstractDocumentProvider).saveDocument(IProgressMonitor, Object, IDocument, boolean) line: 629 XtextEditor(AbstractTextEditor).performSave(boolean, IProgressMonitor) line: 5068 XtextEditor(AbstractTextEditor).doSave(IProgressMonitor) line: 4858 demonstrating the activation of a VERY expensive activity when Acceleo should be doing nothing.
Still a problem in Kepler RC1.
Hi Ed, I worked on it, a first iteration is provided through https://git.eclipse.org/r/#/c/14729/ It makes things way faster in general when the workspace has many Ecore files (or big ones) which are not required by the Acceleo compilation.For instance, one rebuild a Java class in a project went from 3min50sec to 3sec. I'll let the bug open for now as right now, Acceleo still precompute things and index the workspace as soon as its plugin is loaded and we might be more lazy than that. It's just that it's doing it way faster not loading un-necessary Ecore files.
It's very difficult to be sure about any performance measures since Xtext Bug 412305 is also devastating. Once that's fixed it may be possible to move on and see if there is an EGIT/builder problem too. Bug 412634 is another that contributes to dreadful observed behaviour.
Cédric's work has been integrated in the master branch. It will be available in Acceleo 3.4.1.
Here is the build : http://download.eclipse.org/modeling/m2t/acceleo/updates/milestones/3.4/S201308011403
Feel free to reopen if you have further information.
Closing resolved bugs