Suvrat1629 opened a new pull request, #3474:
URL: https://github.com/apache/logging-log4j2/pull/3474
This PR updates InternalLoggerRegistry to automatically remove stale loggers
when its methods are invoked.
Changes Introduced:
Introduced a ReferenceQueue<Logger> to track loggers that have been
reclaimed by the garbage collector.
Implemented expungeStaleEntries(), which removes stale loggers before
executing registry operations.
Updated methods like getLogger() and computeIfAbsent() to invoke
expungeStaleEntries() before proceeding.
Added tests to verify stale loggers are expunged without relying on
private methods.
## Checklist
* Base your changes on `2.x` branch if you are targeting Log4j 2; use `main`
otherwise
* `./mvnw verify` succeeds (if it fails due to code formatting issues
reported by Spotless, simply run `./mvnw spotless:apply` and retry)
* Non-trivial changes contain an entry file in the `src/changelog/.2.x.x`
directory
* Tests for the changes are provided
* [Commits are
signed](https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits)
(optional, but highly recommended)
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]