[ 
https://issues.apache.org/jira/browse/GROOVY-7371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15443401#comment-15443401
 ] 

paolo di tommaso commented on GROOVY-7371:
------------------------------------------

I've found a solution, though I'm not sure to understand the reason. It turns 
out the problem only arise when running a script with nextflow (that's a Groovy 
based DSL). 

In the custom compiler configuration I'm importing statically a class that is 
annotated with the `Slf4j` annotation. 
https://github.com/nextflow-io/nextflow/blob/ig_job_stealing/src/main/groovy/nextflow/script/ScriptRunner.groovy#L263

This is causing the bizarre side effect. Renaming the logger name in the class 
statically imported solves the problem. 



> AST xform @Slf4j does not check level guard
> -------------------------------------------
>
>                 Key: GROOVY-7371
>                 URL: https://issues.apache.org/jira/browse/GROOVY-7371
>             Project: Groovy
>          Issue Type: Bug
>    Affects Versions: 2.3.11
>            Reporter: paolo di tommaso
>            Priority: Minor
>
> Groovy logging AST transformation is supposed to  "wrap all calls to 
> log.level() into the appropriate log.isLevelEnabled guard, depending on the 
> underlying framework " 
> http://groovy-lang.org/metaprogramming.html#_logging_improvements
> However the following test fails: 
> {code}
> @groovy.util.logging.Slf4j 
> class TestLog {
>   def bar () {
>     int count=0
>     if( log.isTraceEnabled() )  {
>         log.trace "${count++}"
>     }
>     return count
>   }
>   def foo () {
>     int count=0
>     log.trace "${count++}"
>     return count
>   }
> }
> assert new TestLog().bar() == 0
> assert new TestLog().foo() == 0 
> Assertion failed: 
> assert new TestLog().foo() == 0
>        |             |     |
>        |             1     false
>        TestLog@416b8a53
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to