You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@logging.apache.org by GitBox <gi...@apache.org> on 2023/01/18 08:04:45 UTC

[GitHub] [logging-log4j2] ppkarwasz commented on pull request #1214: This change fixes incorrect behavior of stack elements cache.

ppkarwasz commented on PR #1214:
URL: https://github.com/apache/logging-log4j2/pull/1214#issuecomment-1386639067

   `StackLocator` is a complex feature with several different paths, so maybe I'll add a cheatsheet for the unity tests:
   
    * the [`StackLocator#getCurrentStackTrace`](https://github.com/apache/logging-log4j2/blob/543bc664a88558f5a0bb523cbe7bbbc448e8d0e5/log4j-api-java9/src/main/java/org/apache/logging/log4j/util/StackLocator.java#L84) version in `log4j-api-java9` is used when running Java 9+. The tests are in the same module.
    * the [`StackLocator#getCurrentStackTrace`](https://github.com/apache/logging-log4j2/blob/543bc664a88558f5a0bb523cbe7bbbc448e8d0e5/log4j-api/src/main/java/org/apache/logging/log4j/util/StackLocator.java#L197) version in `log4j-api` is used when running Java 8. It uses two implementations:
      * the _fast path_ provided by [`PrivateSecurityManagerStackTraceUtil`](https://github.com/apache/logging-log4j2/blob/543bc664a88558f5a0bb523cbe7bbbc448e8d0e5/log4j-api/src/main/java/org/apache/logging/log4j/util/PrivateSecurityManagerStackTraceUtil.java#L65) needs to be tested in the `log4j-api-test` module (in a "normal" `*Test` class),
      * the _slow path_ requires running the test with a security manager enabled. The test should be in the `log4j-api-test` module and be named `*IT`. The reason behind this is that "normal" tests in `log4j-api-test` run in parallel. Setting a security manager is a very disruptive operation, so we have a second test execution that runs `*IT` classes with a JVM-per-test configuration.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@logging.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org