akshattandon / projectlombok

Automatically exported from code.google.com/p/projectlombok
0 stars 0 forks source link

1.14.0 slowing down Eclipse (SpringTool Suite Edition) #682

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
I went and updated my lombok to 1.14.0 yesterday afternoon. I noticed fairly 
quickly that my Eclipse slowed down considerably when making changes to files. 
Researching it a bit further this morning I found that in the eclipse log there 
is a lot of error messages for lombok starting at when I upgraded. Attached is 
the related log file.

Original issue reported on code.google.com by shawn.tu...@gmail.com on 28 May 2014 at 4:31

Attachments:

GoogleCodeExporter commented 9 years ago
Dang. Can't reproduce, but that's definitely from the new code in 1.14 that 
attempts to find the lombok.config related to your source directory.

Which eclipse version are you using, exactly? Is there anything particularly 
special about that project's set up? For example, is it a so-called 'linked' 
resource (example: is the directory of the project someplace else, other than 
as a direct subdirectory to your workspace dir?)

Eclipse has a really _REALLY_ weirdo idea of how to make strings that refer to 
resources in the workspace, and clearly we missed something.

Original comment by reini...@gmail.com on 30 May 2014 at 12:30

GoogleCodeExporter commented 9 years ago
It is a Spring Tool Suite version of Eclipse version 3.5.1 (
http://spring.io/tools). The project in question was a normal maven
project. If you need any specific information just tell me where to find it
and I can share it.

Original comment by shawn.tu...@gmail.com on 30 May 2014 at 12:35

GoogleCodeExporter commented 9 years ago
Okay, I have an edge release version that won't produce quite so many errors, 
but it 'works' by basically not supporting lombok.config at all in your 
particular setup, which is of course not good.  For now this edge release will 
log whenever this failure occurs, because we really do need to figure out when 
this happens and how to get an absolute path.

Give it a shot and report back? Thanks a bunch for letting us know!

http://projectlombok.org/download-edge.html

If this doesn't lead anywhere useful I'm going to try and reproduce your 
situation, but there are tons of variables here, so that would take a long time.

Original comment by reini...@gmail.com on 30 May 2014 at 1:03

GoogleCodeExporter commented 9 years ago
So far this morning no errors are showing up. I did notice some lag on initial 
loading of a source file. As well I am noticing some odd syntax highlighting on 
the lombok annotations. Attached shows the @Slf4j annotation in an italicized 
black font instead of the normal slightly brown font. As well when I added a 
@Getter annotation on the sender it was with a blue font instead of the normal 
font. If I go back to 1.12.x the fonts show up normally.

Original comment by shawn.tu...@gmail.com on 30 May 2014 at 4:29

Attachments:

GoogleCodeExporter commented 9 years ago
So after using my Eclipse for the day I have not seen any errors show up in the 
log. Other than the weird colouring of the lombok annotations it seems to be 
stable. If you want me to try another edge build that would output more 
information and actually error again I don't have a problem trying it.

Original comment by shawn.tu...@gmail.com on 30 May 2014 at 9:25

GoogleCodeExporter commented 9 years ago
With my old Eclipse 3.7.2, I was having quite some problems and tons of "Path 
must include project and resource name" messages, too. Now (using the current 
master), they're gone. The colors aren't really weird, it's just that some 
areas (sometimes nearly everything) get all gray. Clicking around usually 
relocates the area or makes it disappear.

Original comment by Maaarti...@gmail.com on 31 May 2014 at 4:50

GoogleCodeExporter commented 9 years ago
This is NOT fixed at all, we merely hid the problem. The issue is that we try 
to find, as a sibling file to your source file, the file 'lombok.config', and 
there are some fancy scenarios where this doesn't work. So far we know of at 
least these 3:

* In javac, with some as yet unknown scenario probably involving maven.
* In eclipse, with a 'virtual file' that is simply being tossed through the 
parser for some source arithmatic. For example when refactoring or save actions 
or scala plugin stuff.
* In eclipse/rational rose, with the 'jazz' sourcecontrol system, where files 
aren't officially hosted on disk at all, but instead at URL 
'sourcecontrol://jazz/etc', which we don't know how to resolve.

The quick and dirty non-fix for all of these scenarios is to just not look for 
lombok.config at all but this is _NOT A SOLUTION_: The lombok config system is 
here to stay and we can't just randomly decide it's too hard to find it and 
stop there. However, that is exactly what the edge release currently does - 
hence, not a fix.

We're currently looking into how to detect these scenarios, and, optimally, 
figure out how to still find lombok.config. This is an extremely difficult task 
because for a lot of the above scenarios, we do not have a system to reproduce, 
and it takes a lot of effort to create it (example: Installing rational whatsit 
with jazz and all that, well, that's a lot of work, obviously). So, it'll be 
slow going and require a lot of feedback.

We're calling it a night for now. Progress on our research is on public branch:

https://github.com/rzwitserloot/lombok/tree/configResolutionInEclipse

In the mean time we have the rather acute problem that 1.14.0 is causing tons 
of show-stopping problems, so most likely we'll push a release out the door 
soon that'll catch these issues and instead post a warning in the eclipse log 
imploring the user to get back to us.

Original comment by r.spilker on 3 Jun 2014 at 10:30

GoogleCodeExporter commented 9 years ago
About the sourcecontrol://jazz urls: thate are some pointers in:
- https://bugs.eclipse.org/bugs/show_bug.cgi?id=378882
- https://bugs.eclipse.org/bugs/show_bug.cgi?id=403480

Original comment by r.spilker on 11 Jun 2014 at 10:00

GoogleCodeExporter commented 9 years ago
Issue 698 has been merged into this issue.

Original comment by r.spilker on 24 Jun 2014 at 6:46

GoogleCodeExporter commented 9 years ago
More feedback on this. I am now running 1.14.2 in my environment and while it 
isn't slowing down Eclipse the same way it was in the past it is still showing 
times when it is slow. The good thing is that when it is slow I can look at the 
Error Log and see that it is actually lombok trying to do something. I have 
been able to reproduce the problem for one situation:

1. Have a project that is a git repository
2. Modify a .java file in the project
3. Bring up the commit dialog
4. Double click the changed file to bring up the compare dialog

At this moment you should see a dialog saying that it is loading the compare 
but it takes it a brief second or two before the comparison dialog shows up. If 
you then look at the Error Log you will see entries like the one below.

eclipse.buildId=3.5.1.201405030657-RELEASE-e43
java.version=1.7.0_40
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US
Framework arguments:  -product org.springsource.sts.ide
Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product 
org.springsource.sts.ide

This is a continuation of log file 
C:\Development\Workspaces\sts-3.5.x\.metadata\.bak_0.log
Created Time: 2014-06-25 12:41:28.475

Warning
Wed Jun 25 14:12:37 PDT 2014
Finding 'lombok.config' file failed for ''

java.lang.IllegalArgumentException: Path must include project and resource 
name: /
    at org.eclipse.core.runtime.Assert.isLegal(Assert.java:63)
    at org.eclipse.core.internal.resources.Workspace.newResource(Workspace.java:2170)
    at org.eclipse.core.internal.resources.Container.getFile(Container.java:208)
    at lombok.eclipse.EclipseAST$EclipseWorkspaceBasedFileResolver.resolve(EclipseAST.java:154)
    at lombok.eclipse.EclipseAST.getAbsoluteFileLocation(EclipseAST.java:92)
    at lombok.core.LombokConfiguration$1.createResolver(LombokConfiguration.java:50)
    at lombok.core.LombokConfiguration.read(LombokConfiguration.java:44)
    at lombok.core.AST.readConfiguration(AST.java:422)
    at lombok.core.handlers.HandlerUtil.handleFlagUsage(HandlerUtil.java:91)
    at lombok.eclipse.handlers.HandleSetter.handle(HandleSetter.java:122)
    at lombok.eclipse.HandlerLibrary$AnnotationHandlerContainer.handle(HandlerLibrary.java:106)
    at lombok.eclipse.HandlerLibrary.handleAnnotation(HandlerLibrary.java:233)
    at lombok.eclipse.TransformEclipseAST$AnnotationVisitor.visitAnnotationOnField(TransformEclipseAST.java:189)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:99)
    at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:189)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:68)
    at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:189)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:63)
    at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:189)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:58)
    at lombok.eclipse.EclipseAST.traverse(EclipseAST.java:182)
    at lombok.eclipse.TransformEclipseAST.go(TransformEclipseAST.java:175)
    at lombok.eclipse.TransformEclipseAST.transform(TransformEclipseAST.java:140)
    at lombok.eclipse.TransformEclipseAST.transform_swapped(TransformEclipseAST.java:93)
    at org.eclipse.jdt.internal.compiler.parser.Parser.endParse(Parser.java:9872)
    at org.eclipse.jdt.internal.core.util.CommentRecorderParser.endParse(CommentRecorderParser.java:116)
    at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:11043)
    at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:11267)
    at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:11224)
    at org.eclipse.jdt.internal.compiler.parser.Parser.dietParse(Parser.java:9645)
    at org.eclipse.jdt.core.dom.CompilationUnitResolver.parse(CompilationUnitResolver.java:507)
    at org.eclipse.jdt.core.dom.ASTParser.internalCreateAST(ASTParser.java:1202)
    at org.eclipse.jdt.core.dom.ASTParser.createAST(ASTParser.java:809)
    at org.eclipse.jdt.internal.ui.compare.JavaStructureCreator.createStructureComparator(JavaStructureCreator.java:301)
    at org.eclipse.jdt.internal.ui.compare.JavaStructureCreator.createStructureComparator(JavaStructureCreator.java:260)
    at org.eclipse.compare.structuremergeviewer.StructureCreator.internalCreateStructure(StructureCreator.java:121)
    at org.eclipse.compare.structuremergeviewer.StructureCreator.access$0(StructureCreator.java:109)
    at org.eclipse.compare.structuremergeviewer.StructureCreator$1.run(StructureCreator.java:96)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    at org.eclipse.compare.internal.Utilities.runInUIThread(Utilities.java:859)
    at org.eclipse.compare.structuremergeviewer.StructureCreator.createStructure(StructureCreator.java:102)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$StructureInfo.createStructure(StructureDiffViewer.java:155)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$StructureInfo.refresh(StructureDiffViewer.java:133)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$StructureInfo.setInput(StructureDiffViewer.java:104)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.compareInputChanged(StructureDiffViewer.java:347)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$2.run(StructureDiffViewer.java:74)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$6.run(StructureDiffViewer.java:322)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.compareInputChanged(StructureDiffViewer.java:319)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.compareInputChanged(StructureDiffViewer.java:307)
    at org.eclipse.jdt.internal.ui.compare.JavaStructureDiffViewer.compareInputChanged(JavaStructureDiffViewer.java:165)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.inputChanged(StructureDiffViewer.java:278)
    at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:280)
    at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1690)
    at org.eclipse.compare.CompareViewerSwitchingPane.setInput(CompareViewerSwitchingPane.java:277)
    at org.eclipse.compare.internal.CompareStructureViewerSwitchingPane.setInput(CompareStructureViewerSwitchingPane.java:132)
    at org.eclipse.compare.CompareEditorInput.feedInput(CompareEditorInput.java:747)
    at org.eclipse.compare.CompareEditorInput.createContents(CompareEditorInput.java:555)
    at org.eclipse.compare.internal.CompareDialog.createDialogArea(CompareDialog.java:175)
    at org.eclipse.jface.dialogs.Dialog.createContents(Dialog.java:775)
    at org.eclipse.jface.window.Window.create(Window.java:432)
    at org.eclipse.jface.dialogs.Dialog.create(Dialog.java:1104)
    at org.eclipse.jface.window.Window.open(Window.java:791)
    at org.eclipse.compare.internal.CompareDialog.open(CompareDialog.java:196)
    at org.eclipse.compare.internal.CompareUIPlugin$4.run(CompareUIPlugin.java:1391)
    at org.eclipse.compare.internal.CompareUIPlugin.syncExec(CompareUIPlugin.java:1401)
    at org.eclipse.compare.internal.CompareUIPlugin.internalOpenDialog(CompareUIPlugin.java:1394)
    at org.eclipse.compare.internal.CompareUIPlugin.openCompareDialog(CompareUIPlugin.java:575)
    at org.eclipse.compare.CompareUI.openCompareDialog(CompareUI.java:211)
    at org.eclipse.egit.ui.internal.CompareUtils.compareHeadWithWorkspace(CompareUtils.java:392)
    at org.eclipse.egit.ui.internal.dialogs.CommitDialog.compare(CommitDialog.java:1271)
    at org.eclipse.egit.ui.internal.dialogs.CommitDialog.access$0(CommitDialog.java:1264)
    at org.eclipse.egit.ui.internal.dialogs.CommitDialog$CommitItemSelectionListener.widgetDefaultSelected(CommitDialog.java:301)
    at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:119)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4170)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3759)
    at org.eclipse.jface.window.Window.runEventLoop(Window.java:826)
    at org.eclipse.jface.window.Window.open(Window.java:802)
    at org.eclipse.egit.ui.internal.commit.CommitUI.commit(CommitUI.java:179)
    at org.eclipse.egit.ui.internal.actions.CommitActionHandler.execute(CommitActionHandler.java:54)
    at org.eclipse.egit.ui.internal.actions.RepositoryAction.run(RepositoryAction.java:76)
    at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:251)
    at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
    at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
    at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4170)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3759)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1113)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:997)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:140)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:611)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:567)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1450)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1426)

Original comment by shawn.tu...@gmail.com on 25 Jun 2014 at 9:19

GoogleCodeExporter commented 9 years ago
We've created a new edge release: http://projectlombok.org/download-edge.html

Original comment by r.spilker on 26 Jun 2014 at 9:07

GoogleCodeExporter commented 9 years ago
Any feedback is appreciated...

Original comment by r.spilker on 26 Jun 2014 at 9:08

GoogleCodeExporter commented 9 years ago
A little better with the latest edge build. Before the error would show up 
about 10-15 times in the log at the same time. Now it only shows up about 6-8 
times. Similar error:

eclipse.buildId=3.5.1.201405030657-RELEASE-e43
java.version=1.7.0_40
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US
Framework arguments:  -product org.springsource.sts.ide
Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product 
org.springsource.sts.ide

Warning
Thu Jun 26 13:54:50 PDT 2014
Finding 'lombok.config' file failed for ''

java.lang.IllegalArgumentException: Path must include project and resource 
name: /
    at org.eclipse.core.runtime.Assert.isLegal(Assert.java:63)
    at org.eclipse.core.internal.resources.Workspace.newResource(Workspace.java:2170)
    at org.eclipse.core.internal.resources.Container.getFile(Container.java:208)
    at lombok.eclipse.EclipseAST$EclipseWorkspaceBasedFileResolver.resolve(EclipseAST.java:159)
    at lombok.eclipse.EclipseAST.getAbsoluteFileLocation(EclipseAST.java:97)
    at lombok.core.LombokConfiguration$1.createResolver(LombokConfiguration.java:50)
    at lombok.core.LombokConfiguration.read(LombokConfiguration.java:44)
    at lombok.core.AST.readConfiguration(AST.java:422)
    at lombok.core.handlers.HandlerUtil.handleFlagUsage(HandlerUtil.java:105)
    at lombok.eclipse.handlers.HandleLog$HandleSlf4jLog.handle(HandleLog.java:216)
    at lombok.eclipse.HandlerLibrary$AnnotationHandlerContainer.handle(HandlerLibrary.java:106)
    at lombok.eclipse.HandlerLibrary.handleAnnotation(HandlerLibrary.java:233)
    at lombok.eclipse.TransformEclipseAST$AnnotationVisitor.visitAnnotationOnType(TransformEclipseAST.java:209)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:96)
    at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:194)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:63)
    at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:194)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:58)
    at lombok.eclipse.EclipseAST.traverse(EclipseAST.java:187)
    at lombok.eclipse.TransformEclipseAST.go(TransformEclipseAST.java:175)
    at lombok.eclipse.TransformEclipseAST.transform(TransformEclipseAST.java:140)
    at lombok.eclipse.TransformEclipseAST.transform_swapped(TransformEclipseAST.java:93)
    at org.eclipse.jdt.internal.compiler.parser.Parser.endParse(Parser.java:9872)
    at org.eclipse.jdt.internal.core.util.CommentRecorderParser.endParse(CommentRecorderParser.java:116)
    at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:11043)
    at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:11267)
    at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:11224)
    at org.eclipse.jdt.internal.compiler.parser.Parser.dietParse(Parser.java:9645)
    at org.eclipse.jdt.core.dom.CompilationUnitResolver.parse(CompilationUnitResolver.java:507)
    at org.eclipse.jdt.core.dom.ASTParser.internalCreateAST(ASTParser.java:1202)
    at org.eclipse.jdt.core.dom.ASTParser.createAST(ASTParser.java:809)
    at org.eclipse.jdt.internal.ui.compare.JavaStructureCreator.createStructureComparator(JavaStructureCreator.java:301)
    at org.eclipse.jdt.internal.ui.compare.JavaStructureCreator.createStructureComparator(JavaStructureCreator.java:260)
    at org.eclipse.compare.structuremergeviewer.StructureCreator.internalCreateStructure(StructureCreator.java:121)
    at org.eclipse.compare.structuremergeviewer.StructureCreator.access$0(StructureCreator.java:109)
    at org.eclipse.compare.structuremergeviewer.StructureCreator$1.run(StructureCreator.java:96)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    at org.eclipse.compare.internal.Utilities.runInUIThread(Utilities.java:859)
    at org.eclipse.compare.structuremergeviewer.StructureCreator.createStructure(StructureCreator.java:102)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$StructureInfo.createStructure(StructureDiffViewer.java:155)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$StructureInfo.refresh(StructureDiffViewer.java:133)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$StructureInfo.setInput(StructureDiffViewer.java:104)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.compareInputChanged(StructureDiffViewer.java:347)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$2.run(StructureDiffViewer.java:74)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$6.run(StructureDiffViewer.java:322)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.compareInputChanged(StructureDiffViewer.java:319)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.compareInputChanged(StructureDiffViewer.java:307)
    at org.eclipse.jdt.internal.ui.compare.JavaStructureDiffViewer.compareInputChanged(JavaStructureDiffViewer.java:165)
    at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.inputChanged(StructureDiffViewer.java:278)
    at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:280)
    at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1690)
    at org.eclipse.compare.CompareViewerSwitchingPane.setInput(CompareViewerSwitchingPane.java:277)
    at org.eclipse.compare.internal.CompareStructureViewerSwitchingPane.setInput(CompareStructureViewerSwitchingPane.java:132)
    at org.eclipse.compare.CompareEditorInput.feedInput(CompareEditorInput.java:747)
    at org.eclipse.compare.CompareEditorInput.createContents(CompareEditorInput.java:555)
    at org.eclipse.compare.internal.CompareDialog.createDialogArea(CompareDialog.java:175)
    at org.eclipse.jface.dialogs.Dialog.createContents(Dialog.java:775)
    at org.eclipse.jface.window.Window.create(Window.java:432)
    at org.eclipse.jface.dialogs.Dialog.create(Dialog.java:1104)
    at org.eclipse.jface.window.Window.open(Window.java:791)
    at org.eclipse.compare.internal.CompareDialog.open(CompareDialog.java:196)
    at org.eclipse.compare.internal.CompareUIPlugin$4.run(CompareUIPlugin.java:1391)
    at org.eclipse.compare.internal.CompareUIPlugin.syncExec(CompareUIPlugin.java:1401)
    at org.eclipse.compare.internal.CompareUIPlugin.internalOpenDialog(CompareUIPlugin.java:1394)
    at org.eclipse.compare.internal.CompareUIPlugin.openCompareDialog(CompareUIPlugin.java:575)
    at org.eclipse.compare.CompareUI.openCompareDialog(CompareUI.java:211)
    at org.eclipse.egit.ui.internal.CompareUtils.compareHeadWithWorkspace(CompareUtils.java:392)
    at org.eclipse.egit.ui.internal.dialogs.CommitDialog.compare(CommitDialog.java:1271)
    at org.eclipse.egit.ui.internal.dialogs.CommitDialog.access$0(CommitDialog.java:1264)
    at org.eclipse.egit.ui.internal.dialogs.CommitDialog$CommitItemSelectionListener.widgetDefaultSelected(CommitDialog.java:301)
    at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:119)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4170)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3759)
    at org.eclipse.jface.window.Window.runEventLoop(Window.java:826)
    at org.eclipse.jface.window.Window.open(Window.java:802)
    at org.eclipse.egit.ui.internal.commit.CommitUI.commit(CommitUI.java:179)
    at org.eclipse.egit.ui.internal.actions.CommitActionHandler.execute(CommitActionHandler.java:54)
    at org.eclipse.egit.ui.internal.actions.RepositoryAction.run(RepositoryAction.java:76)
    at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:251)
    at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
    at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
    at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4170)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3759)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1113)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:997)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:140)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:611)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:567)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1450)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1426)

Original comment by shawn.tu...@gmail.com on 26 Jun 2014 at 8:56

GoogleCodeExporter commented 9 years ago
For what it's worth, this definitely seems to be source control/git related, 
today I worked with two projects for a few hours and had no issues, and then 
worked on a third and had massive slowdown problems and the above mentioned log 
messages. All in the same Eclipse and the same workspace, all having the same 
lombok dependency in their pom.xml. The only difference between them was the 
third project being a git project.

Original comment by joerg.st...@gmail.com on 5 Jul 2014 at 3:04

GoogleCodeExporter commented 9 years ago
I can confirm this is still a problem with Luna RC3 and git projects. 

It also seems to slow down code completion horrifically compared to 12.6

Original comment by matthew....@import.io on 6 Jul 2014 at 1:27

GoogleCodeExporter commented 9 years ago
I have exactly the same effect. This applies to version 1.14.0, 1.14.2 and 
1.14.4. I use a clean version of Eclipse Luna JavaEE Full Release. The 
environment is so slow that you can not work and the only solution is to go 
back to version 1.12.6.

Original comment by gsolec...@gmail.com on 15 Jul 2014 at 7:47

GoogleCodeExporter commented 9 years ago
To help the developers... Whenever it is slow go check out the Error Log and 
see if there is any Lombok errors. If so copy them here and help track down the 
roots of this problem.

Original comment by shawn.tu...@gmail.com on 15 Jul 2014 at 8:15

GoogleCodeExporter commented 9 years ago
No errors, but lots of lombok.config not found kind of messages...

Original comment by matthew....@import.io on 15 Jul 2014 at 4:30

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
Those messages are what the issue is so copy one of them here so they can take 
a look.

Original comment by shawn.tu...@gmail.com on 15 Jul 2014 at 4:45

GoogleCodeExporter commented 9 years ago
I'm using the following: -

eclipse.buildId=4.3.2.M20140221-1700
java.version=1.7.0_21
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US
Framework arguments:  -product org.eclipse.epp.package.jee.product
Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product 
org.eclipse.epp.package.jee.product

The lombok version is

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.9.2
Created-By: 1.7.0_45-b18 (Oracle Corporation)
Premain-Class: lombok.core.Agent
Agent-Class: lombok.core.Agent
Can-Redefine-Classes: true
Main-Class: lombok.core.Main
Lombok-Version: 1.14.4

The stacktrace is

!ENTRY org.eclipse.jdt.core 2 0 2014-07-17 14:46:33.470
!MESSAGE Finding 'lombok.config' file failed for 'Abc.java'
!STACK 0
java.lang.IllegalArgumentException: Path must include project and resource 
name: /Abc.java
    at org.eclipse.core.runtime.Assert.isLegal(Assert.java:63)
    at org.eclipse.core.internal.resources.Workspace.newResource(Workspace.java:2137)
    at org.eclipse.core.internal.resources.Container.getFile(Container.java:208)
    at lombok.eclipse.EclipseAST$EclipseWorkspaceBasedFileResolver.resolve(EclipseAST.java:159)
    at lombok.eclipse.EclipseAST.getAbsoluteFileLocation(EclipseAST.java:97)
    at lombok.core.LombokConfiguration$1.createResolver(LombokConfiguration.java:50)
    at lombok.core.LombokConfiguration.read(LombokConfiguration.java:44)
    at lombok.core.AST.readConfiguration(AST.java:422)
    at lombok.eclipse.handlers.HandleLog.processAnnotation(HandleLog.java:63)
    at lombok.eclipse.handlers.HandleLog$HandleSlf4jLog.handle(HandleLog.java:217)
    at lombok.eclipse.HandlerLibrary$AnnotationHandlerContainer.handle(HandlerLibrary.java:106)
    at lombok.eclipse.HandlerLibrary.handleAnnotation(HandlerLibrary.java:233)
    at lombok.eclipse.TransformEclipseAST$AnnotationVisitor.visitAnnotationOnType(TransformEclipseAST.java:209)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:96)
    at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:194)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:63)
    at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:194)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:58)
    at lombok.eclipse.EclipseAST.traverse(EclipseAST.java:187)
    at lombok.eclipse.TransformEclipseAST.go(TransformEclipseAST.java:175)
    at lombok.eclipse.TransformEclipseAST.transform(TransformEclipseAST.java:140)
    at lombok.eclipse.TransformEclipseAST.transform_swapped(TransformEclipseAST.java:93)
    at org.eclipse.jdt.internal.compiler.parser.Parser.endParse(Parser.java:9882)
    at org.eclipse.jdt.internal.core.util.CommentRecorderParser.endParse(CommentRecorderParser.java:116)
    at org.eclipse.jdt.internal.compiler.SourceElementParser.endParse(SourceElementParser.java:733)
    at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:11054)
    at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:11278)
    at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:11235)
    at org.eclipse.jdt.internal.compiler.SourceElementParser.parseCompilationUnit(SourceElementParser.java:953)
    at org.eclipse.jdt.internal.core.SourceMapper.mapSource(SourceMapper.java:1435)
    at org.eclipse.jdt.internal.core.SourceMapper.mapSource(SourceMapper.java:1370)
    at org.eclipse.jdt.internal.core.BinaryMethod.getParameterNames(BinaryMethod.java:255)
    at org.eclipse.jdt.internal.codeassist.InternalCompletionProposal.findMethodParameterNames(InternalCompletionProposal.java:312)
    at org.eclipse.jdt.internal.codeassist.InternalCompletionProposal.findParameterNames(InternalCompletionProposal.java:1440)
    at org.eclipse.jdt.ui.text.java.CompletionProposalLabelProvider.appendUnboundedParameterList(CompletionProposalLabelProvider.java:113)
    at org.eclipse.jdt.ui.text.java.CompletionProposalLabelProvider.createMethodProposalLabel(CompletionProposalLabelProvider.java:272)
    at org.eclipse.jdt.ui.text.java.CompletionProposalLabelProvider.createStyledLabel(CompletionProposalLabelProvider.java:570)
    at org.eclipse.jdt.internal.ui.text.java.LazyJavaCompletionProposal.computeDisplayString(LazyJavaCompletionProposal.java:263)
    at org.eclipse.jdt.internal.ui.text.java.LazyJavaCompletionProposal.getDisplayString(LazyJavaCompletionProposal.java:246)
    at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.isValidPrefix(AbstractJavaCompletionProposal.java:804)
    at org.eclipse.jdt.internal.ui.text.java.LazyJavaCompletionProposal.isValidPrefix(LazyJavaCompletionProposal.java:378)
    at org.eclipse.jdt.internal.ui.text.java.JavaMethodCompletionProposal.isValidPrefix(JavaMethodCompletionProposal.java:289)
    at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.validate(AbstractJavaCompletionProposal.java:756)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup.computeFilteredProposals(CompletionProposalPopup.java:1522)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup.access$4(CompletionProposalPopup.java:1484)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup$1.run(CompletionProposalPopup.java:382)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup.getSelectedProposal(CompletionProposalPopup.java:892)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup.verifyKey(CompletionProposalPopup.java:1367)
    at org.eclipse.jface.text.contentassist.ContentAssistant$InternalListener.verifyKey(ContentAssistant.java:808)
    at org.eclipse.jface.text.TextViewer$VerifyKeyListenersManager.verifyKey(TextViewer.java:491)
    at org.eclipse.swt.custom.StyledTextListener.handleEvent(StyledTextListener.java:66)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4353)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1061)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1085)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1070)
    at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:782)
    at org.eclipse.swt.custom.StyledText.handleKeyDown(StyledText.java:5981)
    at org.eclipse.swt.custom.StyledText$7.handleEvent(StyledText.java:5663)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4353)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1061)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1085)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1070)
    at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1112)
    at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1108)
    at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1529)
    at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:4722)
    at org.eclipse.swt.widgets.Canvas.WM_CHAR(Canvas.java:343)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4610)
    at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:339)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:5023)
    at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2549)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3759)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:135)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:382)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:236)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1465)

Original comment by charlee...@gmail.com on 17 Jul 2014 at 8:08

GoogleCodeExporter commented 9 years ago
I am now using Spring Tool Suite 1.6 (Eclipse 4.4). I am noticing the below 
error in the log. This happens whenever I save a class file.

null
org.eclipse.jdt.core
Warning
Fri Jul 18 14:23:34 PDT 2014
Finding 'lombok.config' file failed for ''

java.lang.IllegalArgumentException: Path must include project and resource 
name: /
    at org.eclipse.core.runtime.Assert.isLegal(Assert.java:63)
    at org.eclipse.core.internal.resources.Workspace.newResource(Workspace.java:2137)
    at org.eclipse.core.internal.resources.Container.getFile(Container.java:208)
    at lombok.eclipse.EclipseAST$EclipseWorkspaceBasedFileResolver.resolve(EclipseAST.java:159)
    at lombok.eclipse.EclipseAST.getAbsoluteFileLocation(EclipseAST.java:97)
    at lombok.core.LombokConfiguration$1.createResolver(LombokConfiguration.java:50)
    at lombok.core.LombokConfiguration.read(LombokConfiguration.java:44)
    at lombok.core.AST.readConfiguration(AST.java:422)
    at lombok.core.handlers.HandlerUtil.handleFlagUsage(HandlerUtil.java:91)
    at lombok.eclipse.handlers.HandleSetter.handle(HandleSetter.java:122)
    at lombok.eclipse.HandlerLibrary$AnnotationHandlerContainer.handle(HandlerLibrary.java:106)
    at lombok.eclipse.HandlerLibrary.handleAnnotation(HandlerLibrary.java:233)
    at lombok.eclipse.TransformEclipseAST$AnnotationVisitor.visitAnnotationOnField(TransformEclipseAST.java:189)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:99)
    at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:194)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:68)
    at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:194)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:63)
    at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:194)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:58)
    at lombok.eclipse.EclipseAST.traverse(EclipseAST.java:187)
    at lombok.eclipse.TransformEclipseAST.go(TransformEclipseAST.java:175)
    at lombok.eclipse.TransformEclipseAST.transform(TransformEclipseAST.java:140)
    at lombok.eclipse.TransformEclipseAST.transform_swapped(TransformEclipseAST.java:93)
    at org.eclipse.jdt.internal.compiler.parser.Parser.endParse(Parser.java:9882)
    at org.eclipse.jdt.internal.core.util.CommentRecorderParser.endParse(CommentRecorderParser.java:116)
    at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:11054)
    at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:11278)
    at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:11235)
    at org.eclipse.jdt.internal.compiler.parser.Parser.dietParse(Parser.java:9655)
    at org.eclipse.jdt.core.dom.CompilationUnitResolver.parse(CompilationUnitResolver.java:507)
    at org.eclipse.jdt.core.dom.ASTParser.internalCreateAST(ASTParser.java:1202)
    at org.eclipse.jdt.core.dom.ASTParser.createAST(ASTParser.java:809)
    at org.eclipse.jdt.internal.ui.compare.JavaStructureCreator.createStructureComparator(JavaStructureCreator.java:301)
    at org.eclipse.jdt.internal.ui.compare.JavaStructureCreator.createStructureComparator(JavaStructureCreator.java:260)
    at org.eclipse.compare.structuremergeviewer.StructureCreator.internalCreateStructure(StructureCreator.java:121)
    at org.eclipse.compare.structuremergeviewer.StructureCreator.access$0(StructureCreator.java:109)
    at org.eclipse.compare.structuremergeviewer.StructureCreator$1.run(StructureCreator.java:96)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    at org.eclipse.compare.internal.Utilities$4.run(Utilities.java:863)
    at org.eclipse.ui.internal.UILockListener.doPendingWork(UILockListener.java:167)
    at org.eclipse.ui.internal.UISynchronizer$3.run(UISynchronizer.java:165)
    at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
    at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:136)
    at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4147)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3764)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:135)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:382)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:236)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:483)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1438)

Original comment by shawn.tu...@gmail.com on 18 Jul 2014 at 9:25

GoogleCodeExporter commented 9 years ago
I too am experiencing this unworkable slowdown with eclipse content assist.
win7, 16gb,  oracle jdk 1.7.0_60-b19, Eclipse 4.4.0 (luna), lombok 1.14.4

  I had no other errors except the !MESSAGE Finding 'lombok.config' file failed for 'myfile.java'

so I generated a lombok.config, and placed it into the workspace root and 
restarted eclipse.
no more errors, but eclipse still dog slow.

I have just 2 projects in my workspace, they are both pretty small, but they 
are also both git projects, and eclipse moves these outside the usual workspace 
directory.
After hunting around for cause/solutions to this, it seems that eclipse git is 
likely the key to this issue.

I also just for kicks, created a new workspace, generated a new maven web 
project, and added lombok 1.14.4.
it worked just fine, no lag at all.

I hope this issue gets fixed soon. lombok 1.12.6 doesn't work in my luna 
eclipse at all.

Original comment by jeaco...@gmail.com on 7 Aug 2014 at 1:22

GoogleCodeExporter commented 9 years ago
Same here:

!ENTRY org.eclipse.jdt.core 2 0 2014-08-10 22:30:14.077
!MESSAGE Finding 'lombok.config' file failed for 'InsertApplicationMB.java'
!STACK 0
java.lang.IllegalArgumentException: Path must include project and resource 
name: /InsertApplicationMB.java
    at org.eclipse.core.runtime.Assert.isLegal(Assert.java:63)
    at org.eclipse.core.internal.resources.Workspace.newResource(Workspace.java:2170)
    at org.eclipse.core.internal.resources.Container.getFile(Container.java:208)
    at lombok.eclipse.EclipseAST$EclipseWorkspaceBasedFileResolver.resolve(EclipseAST.java:159)
    at lombok.eclipse.EclipseAST.getAbsoluteFileLocation(EclipseAST.java:97)
    at lombok.core.LombokConfiguration$1.createResolver(LombokConfiguration.java:50)
    at lombok.core.LombokConfiguration.read(LombokConfiguration.java:44)
    at lombok.core.AST.readConfiguration(AST.java:422)
    at lombok.core.handlers.HandlerUtil.toAccessorName(HandlerUtil.java:286)
    at lombok.core.handlers.HandlerUtil.toSetterName(HandlerUtil.java:254)
    at lombok.eclipse.handlers.EclipseHandlerUtil.toSetterName(EclipseHandlerUtil.java:970)
    at lombok.eclipse.handlers.HandleSetter.createSetterForField(HandleSetter.java:167)
    at lombok.eclipse.handlers.HandleSetter.createSetterForFields(HandleSetter.java:149)
    at lombok.eclipse.handlers.HandleSetter.handle(HandleSetter.java:133)
    at lombok.eclipse.HandlerLibrary$AnnotationHandlerContainer.handle(HandlerLibrary.java:106)
    at lombok.eclipse.HandlerLibrary.handleAnnotation(HandlerLibrary.java:233)
    at lombok.eclipse.TransformEclipseAST$AnnotationVisitor.visitAnnotationOnField(TransformEclipseAST.java:189)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:99)
    at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:194)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:68)
    at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:194)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:63)
    at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:194)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:58)
    at lombok.eclipse.EclipseAST.traverse(EclipseAST.java:187)
    at lombok.eclipse.TransformEclipseAST.go(TransformEclipseAST.java:175)
    at lombok.eclipse.TransformEclipseAST.transform(TransformEclipseAST.java:140)
    at lombok.eclipse.TransformEclipseAST.transform_swapped(TransformEclipseAST.java:93)
    at org.eclipse.jdt.internal.compiler.parser.Parser.endParse(Parser.java:9872)
    at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:11043)
    at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:11267)
    at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:11224)
    at org.eclipse.jdt.internal.compiler.parser.Parser.dietParse(Parser.java:9645)
    at org.eclipse.jdt.internal.core.search.matching.MatchLocator.parseAndBuildBindings(MatchLocator.java:1669)
    at org.eclipse.jdt.internal.core.search.matching.MatchLocator.locateMatches(MatchLocator.java:1096)
    at org.eclipse.jdt.internal.core.search.matching.MatchLocator.locateMatches(MatchLocator.java:1201)
    at org.eclipse.jdt.internal.core.search.matching.MatchLocator.locateMatches(MatchLocator.java:1333)
    at org.eclipse.jdt.internal.core.search.JavaSearchParticipant.locateMatches(JavaSearchParticipant.java:122)
    at org.eclipse.jdt.internal.core.search.BasicSearchEngine.findMatches(BasicSearchEngine.java:232)
    at org.eclipse.jdt.internal.core.search.BasicSearchEngine.search(BasicSearchEngine.java:516)
    at org.eclipse.jdt.core.search.SearchEngine.search(SearchEngine.java:584)
    at org.eclipse.jst.jsf.core.jsfappconfig.AnnotationJSFAppConfigProvider.findAnnotatedComponents(AnnotationJSFAppConfigProvider.java:130)
    at org.eclipse.jst.jsf.core.jsfappconfig.AnnotationJSFAppConfigProvider.discoverFacesConfig(AnnotationJSFAppConfigProvider.java:108)
    at org.eclipse.jst.jsf.core.jsfappconfig.AnnotationJSFAppConfigProvider.getFacesConfigModel(AnnotationJSFAppConfigProvider.java:74)
    at org.eclipse.jst.jsf.core.jsfappconfig.internal.AbstractJSFAppConfigManager$6.run(AbstractJSFAppConfigManager.java:281)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.jst.jsf.core.jsfappconfig.internal.AbstractJSFAppConfigManager.getFacesConfigModels(AbstractJSFAppConfigManager.java:274)
    at org.eclipse.jst.jsf.core.jsfappconfig.JSFAppConfigManager.getFacesConfigModels(JSFAppConfigManager.java:76)
    at org.eclipse.jst.jsf.core.jsfappconfig.internal.AbstractJSFAppConfigManager.getApplications(AbstractJSFAppConfigManager.java:471)
    at org.eclipse.jst.jsf.core.jsfappconfig.JSFAppConfigManager.getApplications(JSFAppConfigManager.java:100)
    at org.eclipse.jst.jsf.core.jsfappconfig.internal.JSFAppConfigManagerFactory.createNewInstance(JSFAppConfigManagerFactory.java:66)
    at org.eclipse.jst.jsf.core.jsfappconfig.internal.JSFAppConfigManagerFactory.createNewInstance(JSFAppConfigManagerFactory.java:1)
    at org.eclipse.jst.jsf.common.internal.resource.ResourceSingletonObjectManager.getInstance(ResourceSingletonObjectManager.java:90)
    at org.eclipse.jst.jsf.core.jsfappconfig.internal.JSFAppConfigManagerFactory.getJSFAppConfigManagerInstance(JSFAppConfigManagerFactory.java:41)
    at org.eclipse.jst.jsf.designtime.internal.symbols.ConfigBasedDTVariableResolver.retrieveDecorativeVariableResolvers(ConfigBasedDTVariableResolver.java:118)
    at org.eclipse.jst.jsf.designtime.internal.symbols.ConfigBasedDTVariableResolver.resolveVariable(ConfigBasedDTVariableResolver.java:94)
    at org.eclipse.jst.jsf.designtime.resolver.SymbolContextResolver.getVariable(SymbolContextResolver.java:61)
    at org.eclipse.jst.jsf.core.internal.contentassist.el.SymbolResolveUtil.getSymbolForVariable(SymbolResolveUtil.java:56)
    at org.eclipse.jst.jsf.core.internal.contentassist.el.ContentAssistParser$PrefixVisitor.getSymbolInfo(ContentAssistParser.java:182)
    at org.eclipse.jst.jsf.core.internal.contentassist.el.ContentAssistParser.getSymbolInfo(ContentAssistParser.java:83)
    at org.eclipse.jst.jsf.ui.internal.jspeditor.JSPSourceUtil.determineSymbolInfo(JSPSourceUtil.java:103)
    at org.eclipse.jst.jsf.ui.internal.jspeditor.AbstractELHyperlinkDetector.detectHyperlinks(AbstractELHyperlinkDetector.java:68)
    at org.eclipse.jst.jsf.ui.internal.jspeditor.AbstractELHyperlinkDetector.detectHyperlinks(AbstractELHyperlinkDetector.java:55)
    at org.eclipse.ui.texteditor.HyperlinkDetectorRegistry$HyperlinkDetectorDelegate.detectHyperlinks(HyperlinkDetectorRegistry.java:80)
    at org.eclipse.jface.text.hyperlink.HyperlinkManager.findHyperlinks(HyperlinkManager.java:289)
    at org.eclipse.jface.text.hyperlink.HyperlinkManager.findHyperlinks(HyperlinkManager.java:261)
    at org.eclipse.jface.text.hyperlink.HyperlinkManager.mouseMove(HyperlinkManager.java:469)
    at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:212)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4170)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3759)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1113)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:997)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:140)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:611)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:567)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181)
    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:636)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1450)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1426)

Original comment by rinaldo90 on 11 Aug 2014 at 1:52

GoogleCodeExporter commented 9 years ago
We can reproduce the gigantic pile of errors, but we can't reproduce the 
slowdown effect.

We removed the thing that generates all the errors (generating stack traces, as 
well as all the code that runs before the error occurs, is all skipped now, 
very quickly, if the error _would_ occur); we think that should help a lot with 
the slowdown but we can't test that because we can't reproduce the slowdown 
aspect.

Please give this edge release a try and report back? Many thanks!

http://projectlombok.org/download-edge.html

Original comment by reini...@gmail.com on 15 Aug 2014 at 11:52

GoogleCodeExporter commented 9 years ago
edge version made no difference for me.
one thing I will note is that whilst I am using git in eclipse, I do NOT have 
git installed on my machine, hence I see a couple of egit warnings.
I tried unpacking the portable msysgit and setting the system path 
appropriately which got rid of the following warning, but has done absolutely 
nothing to fix the frustratingly slow eclipse assist.

eclipse.buildId=4.4.0.I20140606-1215
java.version=1.7.0_60
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_AU
Framework arguments:  -product org.eclipse.epp.package.jee.product
Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product 
org.eclipse.epp.package.jee.product

!ENTRY org.eclipse.egit.ui 2 0 2014-08-18 09:01:15.487
!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of 
native Git. Hence EGit can't respect system level
Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the 
native Git installation directory.
The most important of these settings is core.autocrlf. Git for Windows by 
default sets this parameter to true in
this system level configuration. The Git installation location can be 
configured on the
Team > Git > Configuration preference page's 'System Settings' tab.
This warning can be switched off on the Team > Git > Confirmations and Warnings 
preference page.

Original comment by jeaco...@gmail.com on 18 Aug 2014 at 12:07

GoogleCodeExporter commented 9 years ago
I have the same issue on Eclipse 4.4, lombok 1.14.4, on JSE8 :

!MESSAGE Finding 'lombok.config' file failed for 'JiraExportPluginResource.java'
!STACK 0
java.lang.IllegalArgumentException: Path must include project and resource 
name: /JiraExportPluginResource.java
    at org.eclipse.core.runtime.Assert.isLegal(Assert.java:63)
    at org.eclipse.core.internal.resources.Workspace.newResource(Workspace.java:2137)
    at org.eclipse.core.internal.resources.Container.getFile(Container.java:208)
    at lombok.eclipse.EclipseAST$EclipseWorkspaceBasedFileResolver.resolve(EclipseAST.java:159)
    at lombok.eclipse.EclipseAST.getAbsoluteFileLocation(EclipseAST.java:97)
    at lombok.core.LombokConfiguration$1.createResolver(LombokConfiguration.java:50)
    at lombok.core.LombokConfiguration.read(LombokConfiguration.java:44)
    at lombok.core.AST.readConfiguration(AST.java:422)
    at lombok.eclipse.handlers.HandleLog.processAnnotation(HandleLog.java:60)
    at lombok.eclipse.handlers.HandleLog$HandleSlf4jLog.handle(HandleLog.java:217)
    at lombok.eclipse.HandlerLibrary$AnnotationHandlerContainer.handle(HandlerLibrary.java:106)
    at lombok.eclipse.HandlerLibrary.handleAnnotation(HandlerLibrary.java:233)
    at lombok.eclipse.TransformEclipseAST$AnnotationVisitor.visitAnnotationOnType(TransformEclipseAST.java:209)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:96)
    at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:194)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:63)
    at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:194)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:58)
    at lombok.eclipse.EclipseAST.traverse(EclipseAST.java:187)
    at lombok.eclipse.TransformEclipseAST.go(TransformEclipseAST.java:175)
    at lombok.eclipse.TransformEclipseAST.transform(TransformEclipseAST.java:140)
    at lombok.eclipse.TransformEclipseAST.transform_swapped(TransformEclipseAST.java:93)
    at org.eclipse.jdt.internal.compiler.parser.Parser.endParse(Parser.java:9882)

Original comment by fabrice....@gmail.com on 19 Aug 2014 at 1:23

GoogleCodeExporter commented 9 years ago
We have another edge release. This one lets you both do some fine grained 
debugging to see if config loading is the problem, as well as disable the whole 
config system to check if things are then back to normal speed. Make sure to 
read the changelog to see how to turn these options on; by default this edge 
release is no different from the last!

http://projectlombok.org/download-edge.html

Original comment by r.spilker on 20 Aug 2014 at 11:10

GoogleCodeExporter commented 9 years ago
Issue 728 has been merged into this issue.

Original comment by r.spilker on 22 Aug 2014 at 11:03

GoogleCodeExporter commented 9 years ago
The edge release plus the -Dlombok.disableConfig brings my eclipse luna back to 
normal performance!

Original comment by gilgames...@gmail.com on 27 Aug 2014 at 4:54

GoogleCodeExporter commented 9 years ago
+1 "The edge release plus the -Dlombok.disableConfig brings my eclipse luna 
back to normal performance!"

What will the fix be?
How about an option to search top-down for config files in eclipse.ini?  Then 
in lombok.config an option to not search sub-folders?

Original comment by Justin.H...@maluuba.com on 27 Aug 2014 at 5:39

GoogleCodeExporter commented 9 years ago
Using the edge release with -Dlombok.disableConfig give me an issue with 
@RequiredArgsConstructor:

Lombok annotation handler class 
lombok.eclipse.handlers.HandleConstructor$HandleRequiredArgsConstructor failed

java.lang.NullPointerException
    at lombok.eclipse.handlers.EclipseHandlerUtil.removePrefixFromField(EclipseHandlerUtil.java:1050)
    at lombok.eclipse.handlers.HandleConstructor.createConstructor(HandleConstructor.java:320)
    at lombok.eclipse.handlers.HandleConstructor.generateConstructor(HandleConstructor.java:236)
    at lombok.eclipse.handlers.HandleConstructor$HandleRequiredArgsConstructor.handle(HandleConstructor.java:109)
    at lombok.eclipse.HandlerLibrary$AnnotationHandlerContainer.handle(HandlerLibrary.java:106)
    at lombok.eclipse.HandlerLibrary.handleAnnotation(HandlerLibrary.java:233)
    at lombok.eclipse.TransformEclipseAST$AnnotationVisitor.visitAnnotationOnType(TransformEclipseAST.java:209)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:96)
    at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:212)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:63)
    at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:212)
    at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:58)
    at lombok.eclipse.EclipseAST.traverse(EclipseAST.java:205)
    at lombok.eclipse.TransformEclipseAST.go(TransformEclipseAST.java:175)
    at lombok.eclipse.TransformEclipseAST.transform(TransformEclipseAST.java:140)
    at lombok.eclipse.TransformEclipseAST.transform_swapped(TransformEclipseAST.java:93)
    at org.eclipse.jdt.internal.compiler.parser.Parser.endParse(Parser.java:9882)
    at org.eclipse.jdt.internal.core.util.CommentRecorderParser.endParse(CommentRecorderParser.java:116)
    at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:11054)
...

Original comment by Justin.H...@maluuba.com on 27 Aug 2014 at 7:59

GoogleCodeExporter commented 9 years ago
Yeah, After a clean and Build ALL, I get the same issues as in #32 too.

Original comment by gilgames...@gmail.com on 1 Sep 2014 at 4:49

GoogleCodeExporter commented 9 years ago
If I have a look at Line 1049 of 
lombok.eclipse.handlers.EclipseHandlerUtil.removePrefixFromField, a 

field.getAst().readConfiguration(ConfigurationKeys.ACCESSORS_PREFIX); is done. 
But since we've set -Dlombok.disableConfig there is no configuration 
field.getAst().readConfiguration can work upon and that will lead to the 
variable prefixes be set to null. This would cause in Line 1050 the 
NullPointerException (!prefixes.isEmpty())

Original comment by gilgames...@gmail.com on 1 Sep 2014 at 5:00

GoogleCodeExporter commented 9 years ago
I made a fork and tried the fix. I don't get the error above in my Eclipse any 
longer. In the attachment is a build with my fix. Maybe give it a try.

Original comment by gilgames...@gmail.com on 2 Sep 2014 at 7:54

Attachments:

GoogleCodeExporter commented 9 years ago
Release v1.14.6 is now out and official. We fixed the issue with 
-Dlombok.disableConfig causing NPEs, and more importantly, we probably fixed 
the slowdown issue entirely, but, we're not 100% sure on that (as we can't 
reproduce it).

To those suffering from the issue, give v1.14.6 a shot, and post 
-Dlombok.timeConfig results if you can. Thanks!

Original comment by reini...@gmail.com on 2 Sep 2014 at 9:46

GoogleCodeExporter commented 9 years ago
Unfortunately things are not better. I have put back the -Dlombok.disableConfig 
and the code completion works again.

Here the results from the -Dlombok.timeConfig:

!ENTRY org.eclipse.jdt.core 1 0 2014-09-04 16:48:00.003
!MESSAGE lombok.config [16:47] {324 101 7288 484 336 155 58 16 6 2} total 
calls: 8770 total time: 33882

!ENTRY org.eclipse.jdt.core 1 0 2014-09-04 16:48:00.009
!MESSAGE lombok.config [16:47] {324 101 7288 484 336 155 58 16 6 2} total 
calls: 8770 total time: 33882

!ENTRY org.eclipse.jdt.core 1 0 2014-09-04 16:48:00.012
!MESSAGE lombok.config [16:47] {324 101 7288 484 336 155 58 16 6 2} total 
calls: 8770 total time: 33882

!ENTRY org.eclipse.jdt.ui 2 0 2014-09-04 16:48:23.686
!MESSAGE The 'org.eclipse.jdt.ui.JavaAllCompletionProposalComputer' proposal 
computer from the 'org.eclipse.jdt.ui' plug-in did not complete normally. The 
extension took too long to return from the 'computeCompletionProposals()' 
operation.

!ENTRY org.eclipse.jdt.core 1 0 2014-09-04 16:49:00.005
!MESSAGE lombok.config [16:48] {5995 691 13986 236 1598 164 35 10 5 0} total 
calls: 22720 total time: 56424

!ENTRY org.eclipse.jdt.ui 2 0 2014-09-04 16:49:00.459
!MESSAGE The 'org.eclipse.jdt.ui.JavaAllCompletionProposalComputer' proposal 
computer from the 'org.eclipse.jdt.ui' plug-in did not complete normally. The 
extension took too long to return from the 'computeCompletionProposals()' 
operation.

!ENTRY org.eclipse.jdt.ui 2 0 2014-09-04 16:49:21.664
!MESSAGE The 'org.eclipse.jdt.ui.JavaAllCompletionProposalComputer' proposal 
computer from the 'org.eclipse.jdt.ui' plug-in did not complete normally. The 
extension took too long to return from the 'computeCompletionProposals()' 
operation.

Original comment by gilgames...@gmail.com on 4 Sep 2014 at 2:58

GoogleCodeExporter commented 9 years ago
Also still slow for me. Here's the output of my log file:

!ENTRY org.eclipse.jdt.core 1 0 2014-09-07 09:17:00.012
!MESSAGE lombok.config [09:16] {9006 0 0 0 476 2 0 0 0 0} total calls: 9484 
total time: 7488

!ENTRY org.eclipse.jdt.core 1 0 2014-09-07 09:18:07.810
!MESSAGE lombok.config [09:17] {3756 0 0 0 159 0 1 0 0 0} total calls: 3916 
total time: 2528

!ENTRY org.eclipse.jdt.core 1 0 2014-09-07 09:18:21.901
!MESSAGE Initialized histogram tracker for 'lombok.config'

!ENTRY org.eclipse.jdt.ui 2 0 2014-09-07 09:18:36.391
!MESSAGE The 
'org.eclipse.recommenders.completion.rcp.javaCompletionProposalComputer.intellig
ent' proposal computer from the 'org.eclipse.recommenders.completion.rcp' 
plug-in did not complete normally. The extension took too long to return from 
the 'computeCompletionProposals()' operation.

!ENTRY org.eclipse.m2e.logback.appender 2 0 2014-09-07 09:18:44.132
!MESSAGE Using platform encoding (Cp1252 actually) to copy filtered resources, 
i.e. build is platform dependent!

!ENTRY org.eclipse.m2e.logback.appender 2 0 2014-09-07 09:18:44.161
!MESSAGE Using platform encoding (Cp1252 actually) to copy filtered resources, 
i.e. build is platform dependent!

!ENTRY org.eclipse.jdt.core 1 0 2014-09-07 09:19:02.310
!MESSAGE lombok.config [09:18] {39000 70469 2755 53 152 31 9 0 0 1} total 
calls: 112470 total time: 80195

Original comment by shams.asari@gmail.com on 7 Sep 2014 at 8:20

GoogleCodeExporter commented 9 years ago
Still happening to me - Mac OS, Eclipse Luna

Original comment by gvm...@gmail.com on 10 Sep 2014 at 3:21

Attachments:

GoogleCodeExporter commented 9 years ago
Eclipse works fine when MyController.java uses (imports) 5 DTO classes, each 
with @Data @NoArgsConstructor @AllArgsConstructor.
But Eclipse starts to slow down when increasing the number of imports.

Original comment by gdvtcl2...@gmail.com on 16 Sep 2014 at 2:04

GoogleCodeExporter commented 9 years ago
1.14.8 is a _huge_ improvement over the previous 1.14.x series, but still 
almost half again as slow as 1.12.6.  This is w/o Eclipse:  a large-ish (1152 
source files) Maven-based project.  My times for running "mvn compile" on a 
clean project are:

Lombok      Time (s)
---------------------
1.12.6      21
1.14.4      317
1.14.6      316
1.14.8      35

The bugfix present in 1.14.8 clearly has a pretty significant effect on I/O, 
but the Lombok config system even w/o the bug adds a lot of overhead to the 
compilation process.

Original comment by bengunnink on 16 Sep 2014 at 2:36

GoogleCodeExporter commented 9 years ago
Just tested 1.14.8, it's still a lot slower than 1.12.6 .

Original comment by lira...@gmail.com on 16 Sep 2014 at 2:25

GoogleCodeExporter commented 9 years ago
1.14.8 is working a lot better than any other build since the 1.12.x builds. 
Here is the latest logs:

!ENTRY org.eclipse.jdt.core 1 0 2014-09-17 15:59:18.487
!MESSAGE lombok.config [15:47] {1014 65 1 0 1 0 0 0 0 0} total calls: 1081 
total time: 79

!ENTRY org.eclipse.jdt.core 1 0 2014-09-17 16:00:05.412
!MESSAGE lombok.config [15:59] {9466 527 0 0 0 2 1 0 0 0} total calls: 9996 
total time: 617

!ENTRY org.eclipse.jdt.core 1 0 2014-09-17 16:00:23.935
!MESSAGE Initialized histogram tracker for 'lombok.config'

!ENTRY org.eclipse.jdt.core 1 0 2014-09-17 16:01:05.224
!MESSAGE lombok.config [16:00] {5104 270 0 0 0 1 0 0 0 0} total calls: 5375 
total time: 295

!ENTRY org.eclipse.jdt.core 1 0 2014-09-17 16:02:19.070
!MESSAGE lombok.config [16:01] {8177 428 0 0 0 3 0 0 0 0} total calls: 8608 
total time: 487

!ENTRY org.eclipse.jdt.core 1 0 2014-09-17 16:03:04.125
!MESSAGE lombok.config [16:02] {3756 181 0 0 0 0 0 0 0 0} total calls: 3937 
total time: 181

!ENTRY org.eclipse.jdt.core 1 0 2014-09-17 16:04:01.258
!MESSAGE lombok.config [16:03] {7122 402 0 0 1 2 0 0 0 0} total calls: 7527 
total time: 453

!ENTRY org.eclipse.jdt.core 1 0 2014-09-17 16:05:38.163
!MESSAGE lombok.config [16:04] {8844 474 0 0 2 1 0 0 0 1} total calls: 9322 
total time: 1093

!ENTRY org.eclipse.jdt.core 1 0 2014-09-17 16:06:01.508
!MESSAGE lombok.config [16:05] {3740 206 0 0 0 1 0 0 0 0} total calls: 3947 
total time: 224

Original comment by shawn.tu...@gmail.com on 18 Sep 2014 at 7:44