Multiple Eclipse UI freeze with Lombok stacktrace in the log

84 views
Skip to first unread message

foal

unread,
Mar 25, 2022, 4:15:06 AMMar 25
to Project Lombok
Hi, 

I have STS 4.14 based on Eclipse 4.23 and Lombok v1.18.23 "Edgy Guinea Pig" - 2022-03-17.

I see the UI freeze very often (each several minutes) and log contains multiple records

```
!ENTRY org.eclipse.ui.monitoring 2 0 2022-03-25 08:38:11.711
!MESSAGE UI freeze of 0,73s at 08:38:10.979
!SUBENTRY 1 org.eclipse.ui.monitoring 1 0 2022-03-25 08:38:11.711
!MESSAGE Sample at 08:38:11.312 (+0,333s)
Thread 'main' tid=1 (RUNNABLE)
!STACK 0
Stack Trace
        at lombok.core.AST.fieldsOf(AST.java:234)
        at lombok.eclipse.EclipseAST.drill(EclipseAST.java:532)
        at lombok.eclipse.EclipseAST.buildStatement(EclipseAST.java:527)
        at lombok.eclipse.EclipseAST.buildTree(EclipseAST.java:367)
        at lombok.eclipse.EclipseAST.buildTree(EclipseAST.java:1)
        at lombok.core.AST.buildWithField0(AST.java:394)
        at lombok.core.AST.buildWithField(AST.java:292)
        at lombok.eclipse.EclipseAST.drill(EclipseAST.java:532)
        at lombok.eclipse.EclipseAST.buildStatement(EclipseAST.java:527)
        at lombok.eclipse.EclipseAST.buildStatements(EclipseAST.java:515)
        at lombok.eclipse.EclipseAST.buildMethod(EclipseAST.java:446)
        at lombok.eclipse.EclipseAST.buildTree(EclipseAST.java:361)
        at lombok.eclipse.EclipseAST.buildTree(EclipseAST.java:1)
        at lombok.core.LombokNode.add(LombokNode.java:231)
        at lombok.eclipse.handlers.EclipseHandlerUtil.injectMethod(EclipseHandlerUtil.java:2059)
        at lombok.eclipse.handlers.HandleSuperBuilder.generateSimpleSetterMethodForBuilder(HandleSuperBuilder.java:1014)
        at lombok.eclipse.handlers.HandleSuperBuilder.generateSetterMethodsForBuilder(HandleSuperBuilder.java:990)
        at lombok.eclipse.handlers.HandleSuperBuilder.handle(HandleSuperBuilder.java:397)
        at lombok.eclipse.HandlerLibrary$AnnotationHandlerContainer.handle(HandlerLibrary.java:106)
        at lombok.eclipse.HandlerLibrary.handleAnnotation(HandlerLibrary.java:237)
        at lombok.eclipse.TransformEclipseAST$AnnotationVisitor.visitAnnotationOnType(TransformEclipseAST.java:265)
        at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:107)
        at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:231)
        at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:74)
        at lombok.eclipse.EclipseAST.traverseChildren(EclipseAST.java:231)
        at lombok.eclipse.EclipseNode.traverse(EclipseNode.java:69)
        at lombok.eclipse.EclipseAST.traverse(EclipseAST.java:224)
        at lombok.eclipse.TransformEclipseAST.go(TransformEclipseAST.java:222)
        at lombok.eclipse.TransformEclipseAST.transform(TransformEclipseAST.java:183)
        at lombok.eclipse.TransformEclipseAST.transform_swapped(TransformEclipseAST.java:107)
        at jdk.internal.reflect.GeneratedMethodAccessor48.invoke(Unknown Source)
        at java...@17.0.2/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
```
or 
```
!ENTRY org.eclipse.ui.monitoring 4 0 2022-03-25 08:53:40.525
!MESSAGE UI freeze of 9,5s at 08:53:31.000
!SUBENTRY 1 org.eclipse.ui.monitoring 1 0 2022-03-25 08:53:40.525
!MESSAGE Sample at 08:53:35.412 (+4,412s)
Thread 'main' tid=1 (RUNNABLE)
!STACK 0
Stack Trace
        at java...@17.0.2/java.io.File.<init>(File.java:368)
        at lombok.core.configuration.ConfigurationFile.forDirectory(ConfigurationFile.java:61)
        at lombok.core.configuration.ConfigurationFile$RegularConfigurationFile.parent(ConfigurationFile.java:177)
        at lombok.core.configuration.BubblingConfigurationResolver.resolve(BubblingConfigurationResolver.java:85)
        at lombok.core.LombokConfiguration.read(LombokConfiguration.java:73)
        at lombok.core.LombokConfiguration.read(LombokConfiguration.java:69)
        at lombok.core.AST.readConfiguration(AST.java:439)
        at lombok.core.handlers.HandlerUtil.toAllAccessorNames(HandlerUtil.java:789)
        at lombok.core.handlers.HandlerUtil.toAllGetterNames(HandlerUtil.java:738)
        at lombok.eclipse.handlers.EclipseHandlerUtil.toAllGetterNames(EclipseHandlerUtil.java:1631)
        at lombok.eclipse.handlers.EclipseHandlerUtil.findGetter(EclipseHandlerUtil.java:1435)
        at lombok.eclipse.handlers.EclipseHandlerUtil.createFieldAccessor(EclipseHandlerUtil.java:1520)
        at lombok.eclipse.handlers.HandleEqualsAndHashCode.createEquals(HandleEqualsAndHashCode.java:780)
        at lombok.eclipse.handlers.HandleEqualsAndHashCode.generateMethods(HandleEqualsAndHashCode.java:218)
        at lombok.eclipse.handlers.HandleEqualsAndHashCode.generateEqualsAndHashCodeForType(HandleEqualsAndHashCode.java:142)
        at lombok.eclipse.handlers.HandleValue.handle(HandleValue.java:85)
```
Best regards,
Stanislav 

Rawi

unread,
Mar 30, 2022, 11:19:59 AMMar 30
to Project Lombok
Can you provide a complete log? Lombok obviously needs some time during compilation so it will be listed in some of the stacktrace samples.

Stanislav Spiridonov

unread,
Mar 30, 2022, 12:30:20 PMMar 30
to project...@googlegroups.com
Of course.

I attach the logs. You can find all UI issues by searching "MESSAGE UI freeze"

S.

--
You received this message because you are subscribed to a topic in the Google Groups "Project Lombok" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/project-lombok/1ZaqdZuhMcw/unsubscribe.
To unsubscribe from this group and all its topics, send an email to project-lombo...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/project-lombok/06272040-22dd-498c-a838-7c89e414eb0fn%40googlegroups.com.
.log
.bak_3.log
.bak_4.log

Reinier Zwitserloot

unread,
Sep 6, 2022, 10:26:49 AMSep 6
to Project Lombok
It's possible lombok is directly to blame, but the stack is not particularly 'deep'. Possibly the disk your source files are on is really slow for some reason, or at least accessing one of the _super_ dirs of your workspace is really slow somehow. You can use the lombok.config stopBubbling directive to help (stick a lombok.config in your work space root with that directive, see the lombok docs on the config system about how to do this). That's just a wild guess that config searching is partly the blame (it is in those traces).

Mostly I see a notification that it's waiting on a lock of the garbage collector. This happens all the time, so could be innocuous, but it might be an indication that your IDE just doesn't have enough max heap available to it. Lombok adds to the memory load of source representations.

Reply all
Reply to author
Forward
0 new messages