logback / LOGBACK-1550 [Open]
GraalVM native-image problem with AsyncAppender and RollingFileAppender

==============================

Here's what changed in this issue in the last few minutes.
This issue has been created
This issue is now assigned to you.

View or comment on issue using this link
https://jira.qos.ch/browse/LOGBACK-1550

==============================
 Issue created
------------------------------

Azman Kudus created this issue on 22/Jan/21 11:45 AM
Summary:              GraalVM native-image problem with AsyncAppender and 
RollingFileAppender
Issue Type:           Bug
Affects Versions:     1.2.3
Assignee:             Logback dev list
Components:           logback-classic
Created:              22/Jan/21 11:45 AM
Environment:
  Windows 10 64-bit
  
  Visual Studio Build Tools 2019
  
  Micronaut 2.2.3
  
  GraalVM CE 20.3.0
  
  Logback 1.2.3
Priority:             Major
Reporter:             Azman Kudus
Description:
  Hi, I'm getting error while creating native-image with Micronaut and GraalVM. 
ConsoleAppender only is working fine. But with AsyncAppender and/or 
RollingFileAppender, the following error appears. There is existing issues 
discussed in this link 
  [https://github.com/micronaut-projects/micronaut-core/issues/3683]
  
  
  
  *+logback.xml+*
  
  {{<configuration>}}
  {{ <property name="log.dir" value="log" />}}
  {{ <property name="line.pattern" value="%d\{yyyy-MM-dd HH:mm:ss.SSS XXX} 
%-5level %thread %logger\{36} %msg%n" />}}
  {{ <property name="file.pattern" value="app_%d\{yyyyMMdd_}_%i.log" 
/>}}{{<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">}}
  {{ <encoder>}}
  {{ <pattern>${line.pattern}</pattern>}}
  {{ </encoder>}}
  {{ </appender>}}
  {{ <appender name="CONSOLE_ASYNC" 
class="ch.qos.logback.classic.AsyncAppender">}}
  {{ <appender-ref ref="CONSOLE" />}}
  {{ </appender>}}{{<root level="INFO">}}
  {{ <appender-ref ref="CONSOLE" />}}
  {{ <!-- <appender-ref ref="FILE" /> -->}}
  {{ </root>}}{{<logger name="test" level="TRACE" />}}
  {{</configuration>}}
  
  {{}}
  
  *+native-image+*
  
  {{> native-image --no-server --no-fallback --static --class-path 
build\libs\test-0.0.1-all.jar test.Main}}
  {{Warning: Ignoring server-mode native-image argument --no-server.}}
  {{[test.main:19224] classlist: 2,344.53 ms, 0.96 GB}}
  {{[test.main:19224] (cap): 4,023.40 ms, 0.96 GB}}
  {{[test.main:19224] setup: 6,241.80 ms, 0.96 GB}}
  {{[test.main:19224] (clinit): 1,257.96 ms, 5.20 GB}}
  {{[test.main:19224] (typeflow): 21,101.03 ms, 5.20 GB}}
  {{[test.main:19224] (objects): 22,628.06 ms, 5.20 GB}}
  {{[test.main:19224] (features): 1,918.00 ms, 5.20 GB}}
  {{[test.main:19224] analysis: 49,171.54 ms, 5.20 GB}}
  {{Error: Detected a started Thread in the image heap. Threads running in the 
image generator are no longer running at image runtime. To see how this object 
got instantiated use 
--trace-object-instantiation=ch.qos.logback.core.AsyncAppenderBase$Worker. The 
object was probably created by a class initializer and is reachable from a 
static field. You can request class initialization at image runtime by using 
the option --initialize-at-run-time=<class-name>. Or you can write your own 
initialization methods and call them explicitly from your main entry point.}}
  {{Detailed message:}}
  {{Trace: Object was reached by}}
  {{ reading field 
java.util.concurrent.locks.AbstractQueuedSynchronizer$Node.thread of}}
  {{ constant 
java.util.concurrent.locks.AbstractQueuedSynchronizer$Node@7898fa69 reached by}}
  {{ reading field 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.firstWaiter
 of}}
  {{ constant 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@8eb5f0 
reached by}}
  {{ reading field java.util.concurrent.ArrayBlockingQueue.notEmpty of}}
  {{ constant java.util.concurrent.ArrayBlockingQueue@487133c7 reached by}}
  {{ reading field ch.qos.logback.core.AsyncAppenderBase.blockingQueue of}}
  {{ constant ch.qos.logback.classic.AsyncAppender@658264fb reached by}}
  {{ reading field ch.qos.logback.core.status.StatusBase.origin of}}
  {{ constant ch.qos.logback.core.status.InfoStatus@72d5d50d reached by}}
  {{ indexing into array}}
  {{ constant java.lang.Object[]@795ec0cf reached by}}
  {{ reading field java.util.ArrayList.elementData of}}
  {{ constant java.util.ArrayList@1674196a reached by}}
  {{ reading field ch.qos.logback.core.BasicStatusManager.statusList of}}
  {{ constant ch.qos.logback.core.BasicStatusManager@8cc9763 reached by}}
  {{ reading field ch.qos.logback.core.ContextBase.sm of}}
  {{ constant ch.qos.logback.classic.LoggerContext@55278968 reached by}}
  {{ reading field ch.qos.logback.classic.Logger.loggerContext of}}
  {{ constant ch.qos.logback.classic.Logger@763dead4 reached by}}
  {{ scanning method 
io.micronaut.context.DefaultBeanContext.lambda$null$49(DefaultBeanContext.java:2089)}}
  {{Call path from entry point to 
io.micronaut.context.DefaultBeanContext.lambda$null$49(BeanType, Optional, 
Function, BeanType):}}
  {{ at 
io.micronaut.context.DefaultBeanContext.lambda$null$49(DefaultBeanContext.java:2068)}}
  {{ at 
io.micronaut.context.DefaultBeanContext$$Lambda$720/0x00000007c1532c40.test(Unknown
 Source)}}
  {{ at 
com.oracle.svm.reflect.Predicate_test_d1a7993465a57621e038e1464fe9f954660d921a_577.invoke(Unknown
 Source)}}
  {{ at java.lang.reflect.Method.invoke(Method.java:566)}}
  {{ at 
java.util.ServiceLoader$ProviderImpl.invokeFactoryMethod(ServiceLoader.java:736)}}
  {{ at java.util.ServiceLoader$ProviderImpl.get(ServiceLoader.java:719)}}
  {{ at 
com.oracle.svm.core.jdk.SystemPropertiesSupport.initializeLazyValue(SystemPropertiesSupport.java:190)}}
  {{ at 
com.oracle.svm.core.jdk.SystemPropertiesSupport.getProperty(SystemPropertiesSupport.java:143)}}
  {{ at 
com.oracle.svm.core.jdk.Target_java_lang_System.getProperty(JavaLangSubstitutions.java:330)}}
  {{ at 
com.oracle.svm.jni.JNIJavaCallWrappers.jniInvoke_ARRAY:Ljava_lang_System_2_0002egetProperty_00028Ljava_lang_String_2_00029Ljava_lang_String_2(generated:0)}}{{Error:
 Use -H:+ReportExceptionStackTraces to print stacktrace of underlying 
exception}}
  {{Error: Image build request failed with exit status 1}}
  
   


==============================
 This message was sent by Atlassian Jira (v8.8.0#808000-sha1:e2c7e59)

_______________________________________________
logback-dev mailing list
logback-dev@qos.ch
http://mailman.qos.ch/mailman/listinfo/logback-dev

Reply via email to