You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@logging.apache.org by "Kranti Vikram (Jira)" <ji...@apache.org> on 2022/10/18 05:28:00 UTC

[jira] [Commented] (LOG4J2-2490) thread blocked when logging numerous exception stack

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

Kranti Vikram commented on LOG4J2-2490:
---------------------------------------

Hi Team, Any update on this ?

> thread blocked when logging numerous exception stack 
> -----------------------------------------------------
>
>                 Key: LOG4J2-2490
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-2490
>             Project: Log4j 2
>          Issue Type: Improvement
>          Components: Servers
>    Affects Versions: 2.7
>            Reporter: Payne Xu
>            Priority: Major
>
> many thread blocked when logging a lot of exception, I found the reason is a java optimize to reflection.
> {quote}The first 15 runs (by default) of your reflected method is called using JNI; after that, bytecode is generated and calling that reflected method would perform identically to calling that method directly in Java code.
> {quote}
> ThrowableProxy.toExtendedStackTrace, the method will load class, and get jar package info, when it process a optimized reflected method, it will use classloaders but never found the class such as _sun.reflect.GeneratedMethodAccessor119, in this process_ it  will try to load class from jar file every time  and spend so much cost. Worse, have a lock when loadClass, when many threads run this method, thread blocked.
>  
> here is a article detailed this problem: https://translate.google.com/translate?hl=en&sl=zh-CN&tl=en&u=https%3A%2F%2Fblog.fliaping.com%2Fa-high-concurrency-problem-of-log4j2%2F



--
This message was sent by Atlassian Jira
(v8.20.10#820010)