[GitHub] [logging-log4cxx] swebb2066 merged pull request #131: Google benchmark option
swebb2066 merged PR #131: URL: https://github.com/apache/logging-log4cxx/pull/131 -- 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-unsubscr...@logging.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Commented] (LOG4J2-3188) Concurrent individual LoggerContext initializations cause severe LogEvent drop or incorrect delivery
[ https://issues.apache.org/jira/browse/LOG4J2-3188?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17606346#comment-17606346 ] ASF subversion and git services commented on LOG4J2-3188: - Commit 5bc48cc9b49b291cb1f41b84fcd1ff2965fa7cf2 in logging-log4j2's branch refs/heads/release-2.x from Volkan Yazıcı [ https://gitbox.apache.org/repos/asf?p=logging-log4j2.git;h=5bc48cc9b4 ] LOG4J2-3188 Create a fresh LoggerContext in JsonTemplateLayoutConcurrentEncodeTest. > Concurrent individual LoggerContext initializations cause severe LogEvent > drop or incorrect delivery > > > Key: LOG4J2-3188 > URL: https://issues.apache.org/jira/browse/LOG4J2-3188 > Project: Log4j 2 > Issue Type: Bug > Components: Core >Reporter: Volkan Yazici >Assignee: Volkan Yazici >Priority: Major > > When multiple {{LoggerContext}}'s get initialized concurrently, they affect > each other causing severe {{LogEvent}} drop and incorrect delivery. Consider > the following test: > {code:java} > @Execution(ExecutionMode.SAME_THREAD) > class ParallelRunTest { > @ParameterizedTest > @ValueSource(chars = {'A', 'B', 'C', 'D'}) > void test(final char letter) { > // Create the configuration builder. > final ConfigurationBuilder configBuilder = > ConfigurationBuilderFactory > .newConfigurationBuilder() > .setStatusLevel(Level.ERROR) > .setConfigurationName("Letter-" + letter); > // Create the configuration. > final String appenderName = "File"; > final String appenderFilepath = Paths > .get( > System.getProperty("java.io.tmpdir"), > "ParallelRunTest-" + letter + ".log") > .toAbsolutePath() > .toString(); > final Configuration config = configBuilder > .add(configBuilder > .newAppender(appenderName, "File") > .addAttribute("fileName", appenderFilepath) > .addAttribute("append", false) > .addAttribute("immediateFlush", false) > .addAttribute("ignoreExceptions", false) > .add(configBuilder > .newLayout("PatternLayout") > .addAttribute("pattern", "%m\n"))) > .add(configBuilder > .newRootLogger(Level.ALL) > .add(configBuilder.newAppenderRef(appenderName))) > .build(false); > // Initialize the configuration. > try (final LoggerContext loggerContext = > Configurator.initialize(config)) { > final Logger logger = > loggerContext.getLogger(ParallelRunTest.class); > // Write logs. > final String message = Strings.repeat(String.valueOf(letter), > 999); > for (int i = 0; i < 1_000; i++) { > logger.info(message); > } > } > // Verify the file content. > final long appenderFileLength = new File(appenderFilepath).length(); > assertThat(appenderFileLength).isEqualTo(1_000_000L); > } > } > {code} > Above test, given a {{letter}}, creates a {{ParallelRunTest-.log}} > file, and writes 999 times that letter to each line (ending with a line-feed > character) for 1,000 lines. The eventual file is expected to be of size > {{lineLength * lineCount = 1,000 * 1,000 = 1e6}}. These assumptions indeed > hold after a run: > {code} > wc -l /tmp/ParallelRunTest-* >1000 /tmp/ParallelRunTest-A.log >1000 /tmp/ParallelRunTest-B.log >1000 /tmp/ParallelRunTest-C.log >1000 /tmp/ParallelRunTest-D.log >4000 total > for log_file in /tmp/ParallelRunTest-*; do > echo "file: $log_file" > echo "line lengths:" > awk "{print length}" $log_file | sort | uniq > echo "distinct lines:" > sort $log_file | uniq > echo > done > file: /tmp/ParallelRunTest-A.log > line lengths: > 999 > distinct lines: > AAA...A > file: /tmp/ParallelRunTest-B.log > line lengths: > 999 > distinct lines: > BBB...B > file: /tmp/ParallelRunTest-C.log > line lengths: > 999 > distinct lines: > CCC...C > file: /tmp/ParallelRunTest-D.log > line lengths: > 999 > distinct lines: > DDD...D > {code} > Though when {{ExecutionMode.SAME_THREAD}} is replaced with > {{ExecutionMode.CONCURRENT}} tests fail due to unexpected > {{appenderFileLength}}: > {code} > wc -l /tmp/ParallelRunTest-* > 96 /tmp/ParallelRunTest-A.log > 1 /tmp/ParallelRunTest-B.log > 96 /tmp/ParallelRunTest-C.log >3577 /tmp/ParallelRunTest-D.log >3770 total > for log_file in
[jira] [Closed] (LOG4J2-3188) Concurrent individual LoggerContext initializations cause severe LogEvent drop or incorrect delivery
[ https://issues.apache.org/jira/browse/LOG4J2-3188?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Volkan Yazici closed LOG4J2-3188. - Assignee: Volkan Yazici Resolution: Not A Problem > Concurrent individual LoggerContext initializations cause severe LogEvent > drop or incorrect delivery > > > Key: LOG4J2-3188 > URL: https://issues.apache.org/jira/browse/LOG4J2-3188 > Project: Log4j 2 > Issue Type: Bug > Components: Core >Reporter: Volkan Yazici >Assignee: Volkan Yazici >Priority: Major > > When multiple {{LoggerContext}}'s get initialized concurrently, they affect > each other causing severe {{LogEvent}} drop and incorrect delivery. Consider > the following test: > {code:java} > @Execution(ExecutionMode.SAME_THREAD) > class ParallelRunTest { > @ParameterizedTest > @ValueSource(chars = {'A', 'B', 'C', 'D'}) > void test(final char letter) { > // Create the configuration builder. > final ConfigurationBuilder configBuilder = > ConfigurationBuilderFactory > .newConfigurationBuilder() > .setStatusLevel(Level.ERROR) > .setConfigurationName("Letter-" + letter); > // Create the configuration. > final String appenderName = "File"; > final String appenderFilepath = Paths > .get( > System.getProperty("java.io.tmpdir"), > "ParallelRunTest-" + letter + ".log") > .toAbsolutePath() > .toString(); > final Configuration config = configBuilder > .add(configBuilder > .newAppender(appenderName, "File") > .addAttribute("fileName", appenderFilepath) > .addAttribute("append", false) > .addAttribute("immediateFlush", false) > .addAttribute("ignoreExceptions", false) > .add(configBuilder > .newLayout("PatternLayout") > .addAttribute("pattern", "%m\n"))) > .add(configBuilder > .newRootLogger(Level.ALL) > .add(configBuilder.newAppenderRef(appenderName))) > .build(false); > // Initialize the configuration. > try (final LoggerContext loggerContext = > Configurator.initialize(config)) { > final Logger logger = > loggerContext.getLogger(ParallelRunTest.class); > // Write logs. > final String message = Strings.repeat(String.valueOf(letter), > 999); > for (int i = 0; i < 1_000; i++) { > logger.info(message); > } > } > // Verify the file content. > final long appenderFileLength = new File(appenderFilepath).length(); > assertThat(appenderFileLength).isEqualTo(1_000_000L); > } > } > {code} > Above test, given a {{letter}}, creates a {{ParallelRunTest-.log}} > file, and writes 999 times that letter to each line (ending with a line-feed > character) for 1,000 lines. The eventual file is expected to be of size > {{lineLength * lineCount = 1,000 * 1,000 = 1e6}}. These assumptions indeed > hold after a run: > {code} > wc -l /tmp/ParallelRunTest-* >1000 /tmp/ParallelRunTest-A.log >1000 /tmp/ParallelRunTest-B.log >1000 /tmp/ParallelRunTest-C.log >1000 /tmp/ParallelRunTest-D.log >4000 total > for log_file in /tmp/ParallelRunTest-*; do > echo "file: $log_file" > echo "line lengths:" > awk "{print length}" $log_file | sort | uniq > echo "distinct lines:" > sort $log_file | uniq > echo > done > file: /tmp/ParallelRunTest-A.log > line lengths: > 999 > distinct lines: > AAA...A > file: /tmp/ParallelRunTest-B.log > line lengths: > 999 > distinct lines: > BBB...B > file: /tmp/ParallelRunTest-C.log > line lengths: > 999 > distinct lines: > CCC...C > file: /tmp/ParallelRunTest-D.log > line lengths: > 999 > distinct lines: > DDD...D > {code} > Though when {{ExecutionMode.SAME_THREAD}} is replaced with > {{ExecutionMode.CONCURRENT}} tests fail due to unexpected > {{appenderFileLength}}: > {code} > wc -l /tmp/ParallelRunTest-* > 96 /tmp/ParallelRunTest-A.log > 1 /tmp/ParallelRunTest-B.log > 96 /tmp/ParallelRunTest-C.log >3577 /tmp/ParallelRunTest-D.log >3770 total > for log_file in /tmp/ParallelRunTest-*; do > echo "file: $log_file" > echo "line lengths:" > awk "{print length}" $log_file | sort | uniq > echo "distinct lines:" > sort $log_file | uniq > echo > done > file: /tmp/ParallelRunTest-A.log > line lengths: > 999 > distinct lines: > AAA...A > BBB...B >
[jira] [Commented] (LOG4J2-3188) Concurrent individual LoggerContext initializations cause severe LogEvent drop or incorrect delivery
[ https://issues.apache.org/jira/browse/LOG4J2-3188?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17606344#comment-17606344 ] Volkan Yazici commented on LOG4J2-3188: --- {{Configurator.initialize(Configuration)}} sets the global configuration, hence the corrupt state while run concurrently. Creating an individual {{LoggerContext}} fixes the problem: {code} final String loggerContextName = "LC" + letter; try (final LoggerContext loggerContext = new LoggerContext(loggerContextName)) { loggerContext.reconfigure(config); loggerContextConsumer.accept(loggerContext); } {code} Hence, this is not really a _problem_. > Concurrent individual LoggerContext initializations cause severe LogEvent > drop or incorrect delivery > > > Key: LOG4J2-3188 > URL: https://issues.apache.org/jira/browse/LOG4J2-3188 > Project: Log4j 2 > Issue Type: Bug > Components: Core >Reporter: Volkan Yazici >Priority: Major > > When multiple {{LoggerContext}}'s get initialized concurrently, they affect > each other causing severe {{LogEvent}} drop and incorrect delivery. Consider > the following test: > {code:java} > @Execution(ExecutionMode.SAME_THREAD) > class ParallelRunTest { > @ParameterizedTest > @ValueSource(chars = {'A', 'B', 'C', 'D'}) > void test(final char letter) { > // Create the configuration builder. > final ConfigurationBuilder configBuilder = > ConfigurationBuilderFactory > .newConfigurationBuilder() > .setStatusLevel(Level.ERROR) > .setConfigurationName("Letter-" + letter); > // Create the configuration. > final String appenderName = "File"; > final String appenderFilepath = Paths > .get( > System.getProperty("java.io.tmpdir"), > "ParallelRunTest-" + letter + ".log") > .toAbsolutePath() > .toString(); > final Configuration config = configBuilder > .add(configBuilder > .newAppender(appenderName, "File") > .addAttribute("fileName", appenderFilepath) > .addAttribute("append", false) > .addAttribute("immediateFlush", false) > .addAttribute("ignoreExceptions", false) > .add(configBuilder > .newLayout("PatternLayout") > .addAttribute("pattern", "%m\n"))) > .add(configBuilder > .newRootLogger(Level.ALL) > .add(configBuilder.newAppenderRef(appenderName))) > .build(false); > // Initialize the configuration. > try (final LoggerContext loggerContext = > Configurator.initialize(config)) { > final Logger logger = > loggerContext.getLogger(ParallelRunTest.class); > // Write logs. > final String message = Strings.repeat(String.valueOf(letter), > 999); > for (int i = 0; i < 1_000; i++) { > logger.info(message); > } > } > // Verify the file content. > final long appenderFileLength = new File(appenderFilepath).length(); > assertThat(appenderFileLength).isEqualTo(1_000_000L); > } > } > {code} > Above test, given a {{letter}}, creates a {{ParallelRunTest-.log}} > file, and writes 999 times that letter to each line (ending with a line-feed > character) for 1,000 lines. The eventual file is expected to be of size > {{lineLength * lineCount = 1,000 * 1,000 = 1e6}}. These assumptions indeed > hold after a run: > {code} > wc -l /tmp/ParallelRunTest-* >1000 /tmp/ParallelRunTest-A.log >1000 /tmp/ParallelRunTest-B.log >1000 /tmp/ParallelRunTest-C.log >1000 /tmp/ParallelRunTest-D.log >4000 total > for log_file in /tmp/ParallelRunTest-*; do > echo "file: $log_file" > echo "line lengths:" > awk "{print length}" $log_file | sort | uniq > echo "distinct lines:" > sort $log_file | uniq > echo > done > file: /tmp/ParallelRunTest-A.log > line lengths: > 999 > distinct lines: > AAA...A > file: /tmp/ParallelRunTest-B.log > line lengths: > 999 > distinct lines: > BBB...B > file: /tmp/ParallelRunTest-C.log > line lengths: > 999 > distinct lines: > CCC...C > file: /tmp/ParallelRunTest-D.log > line lengths: > 999 > distinct lines: > DDD...D > {code} > Though when {{ExecutionMode.SAME_THREAD}} is replaced with > {{ExecutionMode.CONCURRENT}} tests fail due to unexpected > {{appenderFileLength}}: > {code} > wc -l /tmp/ParallelRunTest-* > 96 /tmp/ParallelRunTest-A.log > 1 /tmp/ParallelRunTest-B.log > 96
[GitHub] [logging-log4j2] ppkarwasz commented on pull request #1062: Sort release 2.x POM files
ppkarwasz commented on PR #1062: URL: https://github.com/apache/logging-log4j2/pull/1062#issuecomment-1250362697 The difference in the dependency list before and after this change is minimal: * the transitive dependency `javax.inject` was before forced in the `provided` scope. It is now in the same scope as the artifact that depends on it, * there are some version changes in the transitive dependencies due to the order change: guava (test scope) is bumped to `29.0-jre` in `log4j-core`, whereas asm is bumped from `7.0` to `7.2`, * `commons-io`, `xz` and `netty-all` are not necessarily in the `test` scope. -- 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-unsubscr...@logging.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [logging-log4j2] afs opened a new pull request, #1064: [LOG4J2-3601] log4j-slf4j2-impl: depend on log4j-core scope=runtime
afs opened a new pull request, #1064: URL: https://github.com/apache/logging-log4j2/pull/1064 https://issues.apache.org/jira/browse/LOG4J2-3601 This makes the dependency structure the same between log4j-slf4j-impl and log4j-slf4j2-impl. Having a dependency on log4j-slf4j2-impl is enough. This is then the same as for log4j-slf4j-impl. -- 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-unsubscr...@logging.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [logging-log4j2] ppkarwasz commented on pull request #1063: Delegate plugin versions to ASF parent
ppkarwasz commented on PR #1063: URL: https://github.com/apache/logging-log4j2/pull/1063#issuecomment-1250263417 The main point of this change are: * Dependabot stops looking at upgrades of the most common Maven plugins, * the builds are reproducible. -- 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-unsubscr...@logging.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [logging-log4j2] ppkarwasz commented on a diff in pull request #1063: Delegate plugin versions to ASF parent
ppkarwasz commented on code in PR #1063: URL: https://github.com/apache/logging-log4j2/pull/1063#discussion_r973714685 ## pom.xml: ## @@ -318,20 +311,19 @@ 9.4.49.v20220914 4.1.80.Final - - - apache - https://repository.apache.org/content/repositories/releases/ - - - - - - - - - - + + + + + apache.snapshots + Apache Snapshot Repository + https://repository.apache.org/snapshots + +false + + + Review Comment: Of course this is not part of the PR. It is only necessary to resolve `logging-parent:6-SNAPSHOT`. -- 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-unsubscr...@logging.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [logging-log4j2] ppkarwasz commented on pull request #1063: Delegate plugin versions to ASF parent
ppkarwasz commented on PR #1063: URL: https://github.com/apache/logging-log4j2/pull/1063#issuecomment-1250231705 `./mvnw site` also succeeded locally. -- 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-unsubscr...@logging.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Updated] (LOG4J2-3601) log4j-slf4j2: change of dependency scope for log4j-core
[ https://issues.apache.org/jira/browse/LOG4J2-3601?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andy Seaborne updated LOG4J2-3601: -- Description: The artifact {{log4j-slf4j-impl}} has a scope=runtime dependency on log4j-core. The artifact {{log4j-slf4j2-impl}} has a scope=test dependency on log4j-core. This changed as part of [commit 8f63620875|https://github.com/apache/logging-log4j2/pull/1024/files#diff-d3ba9956a9f81420d0be3d69477a05b505746272d548ab17404aa47f3e5946b0] although it seems to be unrelated. It makes switching over more of a bump. Previously just depending on {{log4j-slf4j-impl}} was enough. Please switch back to a scope=runtime dependency for {{log4j-slf4j2-impl}}. Example: we (Jena) use slf4j in the main code base and include log4j for tests: {noformat} [INFO] \- org.apache.logging.log4j:log4j-slf4j-impl:jar:2.19.0:test [INFO]+- org.apache.logging.log4j:log4j-api:jar:2.19.0:test [INFO]\- org.apache.logging.log4j:log4j-core:jar:2.19.0:test {noformat} {noformat} [INFO] \- org.apache.logging.log4j:log4j-slf4j2-impl:jar:2.19.0:test [INFO]\- org.apache.logging.log4j:log4j-api:jar:2.19.0:test {noformat} was: The artifact {{log4j-slf4j-impl}} has a scope=runtime dependency on log4j-core. The artifact {{log4j-slf4j2-impl}} has a scope=test dependency on log4j-core. This changed as part of [commit 8f63620875|https://github.com/apache/logging-log4j2/pull/1024/files#diff-d3ba9956a9f81420d0be3d69477a05b505746272d548ab17404aa47f3e5946b0] although it seems to be unrelated. It makes switching over more of a bump. Previously just depending on {{log4j-slf4j-impl}} was enough. Please switch back to a scope=runtime dependency for {{log4j-slf4j2-impl}}. {noformat} [INFO] \- org.apache.logging.log4j:log4j-slf4j-impl:jar:2.19.0:test [INFO]+- org.apache.logging.log4j:log4j-api:jar:2.19.0:test [INFO]\- org.apache.logging.log4j:log4j-core:jar:2.19.0:test {noformat} {noformat} [INFO] \- org.apache.logging.log4j:log4j-slf4j2-impl:jar:2.19.0:test [INFO]\- org.apache.logging.log4j:log4j-api:jar:2.19.0:test {noformat} > log4j-slf4j2: change of dependency scope for log4j-core > --- > > Key: LOG4J2-3601 > URL: https://issues.apache.org/jira/browse/LOG4J2-3601 > Project: Log4j 2 > Issue Type: Improvement > Components: SLF4J Bridge >Reporter: Andy Seaborne >Priority: Major > Fix For: 2.19.0 > > > The artifact {{log4j-slf4j-impl}} has a scope=runtime dependency on > log4j-core. > The artifact {{log4j-slf4j2-impl}} has a scope=test dependency on log4j-core. > This changed as part of [commit > 8f63620875|https://github.com/apache/logging-log4j2/pull/1024/files#diff-d3ba9956a9f81420d0be3d69477a05b505746272d548ab17404aa47f3e5946b0] > although it seems to be unrelated. > It makes switching over more of a bump. Previously just depending on > {{log4j-slf4j-impl}} was enough. > Please switch back to a scope=runtime dependency for {{log4j-slf4j2-impl}}. > Example: we (Jena) use slf4j in the main code base and include log4j for > tests: > {noformat} > [INFO] \- org.apache.logging.log4j:log4j-slf4j-impl:jar:2.19.0:test > [INFO]+- org.apache.logging.log4j:log4j-api:jar:2.19.0:test > [INFO]\- org.apache.logging.log4j:log4j-core:jar:2.19.0:test > {noformat} > {noformat} > [INFO] \- org.apache.logging.log4j:log4j-slf4j2-impl:jar:2.19.0:test > [INFO]\- org.apache.logging.log4j:log4j-api:jar:2.19.0:test > {noformat} > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[GitHub] [logging-log4j2] ppkarwasz opened a new pull request, #1063: Delegate plugin versions to ASF parent
ppkarwasz opened a new pull request, #1063: URL: https://github.com/apache/logging-log4j2/pull/1063 This PR removes all explicitly versioned plugins that are also defined in the Apache ASF parent POM (`org.apache:apache`). This has the following effect on plugin versions: * `maven-assembly-plugin` bumped to 3.4.1 * `maven-jar-plugin` bumped to 3.2.2 * `maven-javadoc-plugin` bumped to 3.4.0 * `maven-project-info-reports-plugin` bumped to 3.3.0 * `maven-release-plugin` bumped to 3.0.0-M6 * `maven-scm-plugin` bumped to 1.13.0 * `maven-site-plugin` bumped to 3.12.0 -- 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-unsubscr...@logging.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Updated] (LOG4J2-3601) log4j-slf4j2: change of dependency scope for log4j-core
[ https://issues.apache.org/jira/browse/LOG4J2-3601?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andy Seaborne updated LOG4J2-3601: -- Description: The artifact {{log4j-slf4j-impl}} has a scope=runtime dependency on log4j-core. The artifact {{log4j-slf4j2-impl}} has a scope=test dependency on log4j-core. This changed as part of [commit 8f63620875|https://github.com/apache/logging-log4j2/pull/1024/files#diff-d3ba9956a9f81420d0be3d69477a05b505746272d548ab17404aa47f3e5946b0] although it seems to be unrelated. It makes switching over more of a bump. Previously just depending on {{log4j-slf4j-impl}} was enough. Please switch back to a scope=runtime dependency for {{log4j-slf4j2-impl}}. {noformat} [INFO] \- org.apache.logging.log4j:log4j-slf4j-impl:jar:2.19.0:test [INFO]+- org.apache.logging.log4j:log4j-api:jar:2.19.0:test [INFO]\- org.apache.logging.log4j:log4j-core:jar:2.19.0:test {noformat} {noformat} [INFO] \- org.apache.logging.log4j:log4j-slf4j2-impl:jar:2.19.0:test [INFO]\- org.apache.logging.log4j:log4j-api:jar:2.19.0:test {noformat} was: The artifact {{log4j-slf4j-impl}} has a scope=runtime dependency on log4j-core. The artifact {{log4j-slf4j2-impl}} has a scope=test dependency on log4j-core. This changed as part of [commit 8f63620875|https://github.com/apache/logging-log4j2/pull/1024/files#diff-d3ba9956a9f81420d0be3d69477a05b505746272d548ab17404aa47f3e5946b0] although it seems to be unrelated. It makes switching over more of a bump. Previously just depending on {{log4j-slf4j-impl}} was enough. Please switch back to a scope=runtime dependency. > log4j-slf4j2: change of dependency scope for log4j-core > --- > > Key: LOG4J2-3601 > URL: https://issues.apache.org/jira/browse/LOG4J2-3601 > Project: Log4j 2 > Issue Type: Improvement > Components: SLF4J Bridge >Reporter: Andy Seaborne >Priority: Major > Fix For: 2.19.0 > > > The artifact {{log4j-slf4j-impl}} has a scope=runtime dependency on > log4j-core. > The artifact {{log4j-slf4j2-impl}} has a scope=test dependency on log4j-core. > This changed as part of [commit > 8f63620875|https://github.com/apache/logging-log4j2/pull/1024/files#diff-d3ba9956a9f81420d0be3d69477a05b505746272d548ab17404aa47f3e5946b0] > although it seems to be unrelated. > It makes switching over more of a bump. Previously just depending on > {{log4j-slf4j-impl}} was enough. > Please switch back to a scope=runtime dependency for {{log4j-slf4j2-impl}}. > {noformat} > [INFO] \- org.apache.logging.log4j:log4j-slf4j-impl:jar:2.19.0:test > [INFO]+- org.apache.logging.log4j:log4j-api:jar:2.19.0:test > [INFO]\- org.apache.logging.log4j:log4j-core:jar:2.19.0:test > {noformat} > {noformat} > [INFO] \- org.apache.logging.log4j:log4j-slf4j2-impl:jar:2.19.0:test > [INFO]\- org.apache.logging.log4j:log4j-api:jar:2.19.0:test > {noformat} > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (LOG4J2-3601) log4j-slf4j2: change of dependency scope for log4j-core
Andy Seaborne created LOG4J2-3601: - Summary: log4j-slf4j2: change of dependency scope for log4j-core Key: LOG4J2-3601 URL: https://issues.apache.org/jira/browse/LOG4J2-3601 Project: Log4j 2 Issue Type: Improvement Components: SLF4J Bridge Reporter: Andy Seaborne Fix For: 2.19.0 The artifact {{log4j-slf4j-impl}} has a scope=runtime dependency on log4j-core. The artifact {{log4j-slf4j2-impl}} has a scope=test dependency on log4j-core. This changed as part of [commit 8f63620875|https://github.com/apache/logging-log4j2/pull/1024/files#diff-d3ba9956a9f81420d0be3d69477a05b505746272d548ab17404aa47f3e5946b0] although it seems to be unrelated. It makes switching over more of a bump. Previously just depending on {{log4j-slf4j-impl}} was enough. Please switch back to a scope=runtime dependency. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[GitHub] [logging-log4cxx] swebb2066 commented on pull request #130: Reduce logging overhead by holding references
swebb2066 commented on PR #130: URL: https://github.com/apache/logging-log4cxx/pull/130#issuecomment-1250211411 When getCurrentThreadName() uses thread_local there is a crash in multithreadtest. The crash does not happen when the alternate code in getCurrentThreadName() is used. See [gcc thread_local destructor cause use after free](https://github.com/msys2/MINGW-packages/issues/2519) which has these links: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58142 https://sourceforge.net/p/mingw-w64/bugs/727/ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80816 -- 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-unsubscr...@logging.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org