This is in the new test framework. I may have missed an edge case while
porting over tests since I haven’t finished that yet (got side tracked by
some issues raised in the rolling appender code, then some other items).
I’ve been adapting our test tooling to use the JUnit 5 extension API which
is fairly different from the v4 API, and I don’t think I’ve even ported
over all the functionality of LoggerContextRule yet.

On Mon, Nov 9, 2020 at 11:08 Gary Gregory <garydgreg...@gmail.com> wrote:

> Matt & all:
>
> The last failing test I have on Windows fails, always, from the Maven
> command line or Eclipse:
>
> > > > [ERROR] Failures:
> > > > [ERROR] FileOutputTest.testConfig target\status.log failed with
> > > > java.nio.file.FileSystemException: target\status.log: The process
> > cannot
> > > > access the file because it is being used by another process.
>
> It obviously must not clean up after itself. There is a new annotation
> called LoggerContextSource which documents loading a config file but
> mentions nothing of unloading it.
>
> There is something called ReconfigurationPolicy which defaults to NEVER but
> that's not the same as shutting down or is it?
>
> Whatever I set the policy to for this test, the error is the same. So is
> the problem in this new test f/w or in the main code?
>
> Gary
>
>
>
> On Sun, Nov 8, 2020 at 8:21 PM Matt Sicker <boa...@gmail.com> wrote:
>
> > There could be a bug that wasn’t encountered other than in CI related to
> > the test changes.
> >
> > ---------- Forwarded message ---------
> > From: Gary Gregory <garydgreg...@gmail.com>
> > Date: Sun, Nov 8, 2020 at 16:55
> > Subject: Re: [VOTE] Release Log4j 2.14.0-rc1
> > To: Apache Logging Developers List <dev@logging.apache.org>
> >
> >
> > On Sun, Nov 8, 2020 at 12:03 PM Matt Sicker <boa...@gmail.com> wrote:
> >
> > > There’s a system property you can override in the tests to increase the
> > > file cleanup timeout which seems to help ensure the tests end up
> passing
> > in
> > >
> >
> > I'm sorry to say that my experience with this RC on both Macos and
> Windows
> > feels like our build is more brittle than ever.
> >
> > I found the timeout setting and set it to 2000 and then 10000 millis
> which
> > did not help but then I got weird errors about formatting specifiers not
> > being parsed. So I have no idea if the Core dat file was properly built.
> > That's one thing.
> >
> > A separate issue I'd like to bring up is that this setting exists at all.
> > At some point in the near past it seems that some tests were rewritten
> > based on annotations and test classes that use this sleep setting.
> >
> > BUT at some further point in the past, I had a lot of tests running with
> a
> > custom Log4j JUnit logger context Rule that set up and tore down Log4j
> such
> > that when a test was done, log4j was shutdown which meant that log files
> > were actually and certainly closed. IIRC that is. If we've changed this
> > basic premise and decoupled the end of a test with shutting down its
> logger
> > context such that a delay is now _required_ to properly close resources
> > outside of Log4j closing them, then that's a problem and a self-inflicted
> > wound IMO.
> >
> > Now I must apologize for not digging into this new test framework now to
> > suss out exactly what is going on, but I am hoping someone can help me
> > understand what's going on here.
> >
> > TY!
> > Gary
> >
> >
> >
> >
> > > Windows. If you try setting it to like 1 or 2 seconds, that might help.
> > >
> > > On Sun, Nov 8, 2020 at 10:49 Ralph Goers <ralph.go...@dslextreme.com>
> > > wrote:
> > >
> > > > That aligns with what we see in Jenkins. They appear to be problems
> > with
> > > > the tests trying to cleanup. Not a blocker for the release.
> > > >
> > > > Ralph
> > > >
> > > > > On Nov 8, 2020, at 8:46 AM, Gary Gregory <garydgreg...@gmail.com>
> > > wrote:
> > > > >
> > > > > From the git tags, my failures on Windows are:
> > > > >
> > > > > [INFO]
> > > > > [ERROR] Failures:
> > > > > [ERROR] FileOutputTest.testConfig target\status.log failed with
> > > > > java.nio.file.FileSystemException: target\status.log: The process
> > > cannot
> > > > > access the file because it is being used by another process.
> > > > > [ERROR] Errors:
> > > > > [ERROR]
> > > > RandomAccessFileManagerTest.testAppendDoesNotOverwriteExistingFile
> > > > > » IO Failed...
> > > > > [INFO]
> > > > > [ERROR] Tests run: 2188, Failures: 1, Errors: 1, Skipped: 24
> > > > > Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
> > > > > Maven home: C:\Java\apache-maven-3.6.3\bin\..
> > > > > Java version: 1.8.0_272, vendor: AdoptOpenJDK, runtime: C:\Program
> > > > > Files\AdoptOpenJDK\jdk-8.0.272.10-hotspot\jre
> > > > > Default locale: en_US, platform encoding: Cp1252
> > > > > OS name: "windows 10", version: "10.0", arch: "amd64", family:
> > "windows
> > > > >
> > > > > On Sat, Nov 7, 2020 at 10:49 AM Gary Gregory <
> garydgreg...@gmail.com
> > >
> > > > wrote:
> > > > >
> > > > >> Hi All:
> > > > >>
> > > > >> I am getting:
> > > > >>
> > > > >> [ERROR] Tests run: 20, Failures: 1, Errors: 0, Skipped: 0, Time
> > > elapsed:
> > > > >> 116.204 s <<< FAILURE! - in
> > > > >> org.apache.logging.log4j.core.config.TestConfigurator
> > > > >> [ERROR] testReconfiguration  Time elapsed: 15.044 s  <<< FAILURE!
> > > > >> java.lang.AssertionError:
> > > > >> Configuration not reset
> > > > >> Expected: is not
> > > > >>
> > > >
> > >
> >
> >
> sameInstance(<XmlConfiguration[location=/Users/garydgregory/git/logging-log4j2/log4j-core/target/test-classes/log4j2-config.xml]>)
> > > > >>     but: was
> > > > >>
> > > >
> > >
> >
> >
> <XmlConfiguration[location=/Users/garydgregory/git/logging-log4j2/log4j-core/target/test-classes/log4j2-config.xml]>
> > > > >> at
> > > > >>
> > > >
> > >
> >
> >
> org.apache.logging.log4j.core.config.TestConfigurator.testReconfiguration(TestConfigurator.java:274)
> > > > >>
> > > > >> On:
> > > > >>
> > > > >> ~/git/logging-log4j2 ➦ 4ab25b92d  mvn -version
> > > > >> Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
> > > > >> Maven home: /usr/local/Cellar/maven/3.6.3_1/libexec
> > > > >> Java version: 1.8.0_272, vendor: AdoptOpenJDK, runtime:
> > > > >>
> > /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/jre
> > > > >> Default locale: en_US, platform encoding: UTF-8
> > > > >> OS name: "mac os x", version: "10.15.7", arch: "x86_64", family:
> > "mac"
> > > > >>
> > > > >> Any thoughts?
> > > > >>
> > > > >> As much of the build log from the console:
> > > > https://pastebin.com/xQsttBna
> > > > >>
> > > > >> Gary
> > > > >>
> > > > >>
> > > > >> On Fri, Nov 6, 2020 at 6:46 PM Ralph Goers <
> > > ralph.go...@dslextreme.com>
> > > > >> wrote:
> > > > >>
> > > > >>> This is a vote to release Log4j 2.14.0, the next version of the
> > > Log4j 2
> > > > >>> project.
> > > > >>>
> > > > >>> Please download, test, and cast your votes on the log4j
> developers
> > > > list.
> > > > >>> [] +1, release the artifacts
> > > > >>> [] -1, don't release because...
> > > > >>>
> > > > >>> The vote will remain open for 72 hours (or more if required). All
> > > votes
> > > > >>> are welcome and we encourage everyone to test the release, but
> only
> > > > Logging
> > > > >>> PMC votes are “officially” counted. As always, at least 3 +1
> votes
> > > and
> > > > more
> > > > >>> positive than negative votes are required.
> > > > >>>
> > > > >>> Changes in this release include:
> > > > >>>
> > > > >>> New Features
> > > > >>>
> > > > >>>        • LOG4J2-2957: Add JsonTemplateLayout.
> > > > >>>        • LOG4J2-2848: Create module log4j-mongodb4 to use new
> major
> > > > >>> version 4 MongoDB driver.
> > > > >>>        • LOG4J2-2858: More flexible configuration of the
> Disruptor
> > > > >>> WaitStrategy. Thanks to Stepan Gorban.
> > > > >>>
> > > > >>> Fixed Bugs
> > > > >>>
> > > > >>>        • LOG4J2-2925: Fix broken link in FAQ.
> > > > >>>        • LOG4J2-2911: Log4j2EventListener in
> > > spring.cloud.config.client
> > > > >>> listens for wrong event.
> > > > >>>        • LOG4J2-2919: Call ReliabilityStrategy's
> > > beforeStopAppenders()
> > > > >>> method before stopping AsyncAppender. Thanks to Geng Yuanzhe.
> > > > >>>        • LOG4J2-2906: Fix UnsupportedOperationException when
> > > > >>> initializing the Log4j2CloudConfigLoggingSystem. Thanks to
> Stephen
> > > > Joyner.
> > > > >>>        • LOG4J2-2908: Move Spring Lookup and Spring
> PropertySource
> > to
> > > > >>> its own module.
> > > > >>>        • LOG4J2-2910: Log4j-web should now stores the servlet
> > context
> > > > as
> > > > >>> a map entry instead of in the single external context field.
> > > > >>>        • LOG4J2-2822: Javadoc link in ThreadContext description
> was
> > > > >>> incorrect.
> > > > >>>        • LOG4J2-2894: Fix spelling error in log message.
> > > > >>>        • LOG4J2-2901: Missing configuration files should be
> ignored
> > > > when
> > > > >>> creating a composite configuration.
> > > > >>>        • LOG4J2-2883: When using DirectFileRolloverStrategy the
> > file
> > > > >>> pattern was not being recalculated on size based rollover after a
> > > time
> > > > >>> based rollover had occurred.
> > > > >>>        • LOG4J2-2875: Rollover was failing to create directories
> > when
> > > > >>> using a DirectFileeRolloverStrategy.
> > > > >>>        • LOG4J2-2859: Fixed typos where mergeFactory should be
> > > > >>> mergeStrategy. Thanks to Yanming Zhou.
> > > > >>>        • LOG4J2-2832: Correct class name printed in error message
> > in
> > > > >>> RollingFileAppender. Thanks to Benjamin Asbach.
> > > > >>>        • LOG4J2-2882: Support java.util.logging filters when
> using
> > > that
> > > > >>> API. Thanks to Emmanuel Bourg.
> > > > >>>        • LOG4J2-2880: Create StackWalker benchmark. Revert back
> to
> > > > >>> StackWalker.walk based on benchmark results.
> > > > >>>        • LOG4J2-2867: Obtain ContextDataProviders asynchronously.
> > > > >>>        • LOG4J2-2877: Determine the container id to obtain
> > container
> > > > and
> > > > >>> image information.
> > > > >>>        • LOG4J2-2844: Null pointer exception when no network
> > > interfaces
> > > > >>> are available.
> > > > >>>        • LOG4J2-2895: Fix potential deadlock in asynchronous
> > logging
> > > by
> > > > >>> avoiding blocking for queue space on Log4jThreads
> > > > >>>        • LOG4J2-2837: Disruptor and JUL no longer recursively
> start
> > > the
> > > > >>> AsyncLoggerDisruptor resulting in an extra disruptor background
> > > thread
> > > > >>> constantly waiting.
> > > > >>>        • LOG4J2-2867: RingBufferLogEventTranslator uses a static
> > > > >>> ContextDataInjector instead of initializing a new object on each
> > > > thread.
> > > > >>>        • LOG4J2-2898: Avoid initializing volatile fields with
> > default
> > > > >>> values. Thanks to Turbanov Andrey.
> > > > >>>        • LOG4J2-2899: Fix log4j-1.2-api LogEventWrapper threadId
> > and
> > > > >>> priority accessors when called multiple times.
> > > > >>>        • LOG4J2-2939: Fix NPE in MDCContextMap on 'contains' and
> > > > >>> 'isEmpty' invocations. Thanks to Constantin Hirsch.
> > > > >>>        • LOG4J2-2954: Prevent premature garbage collection of
> > > shutdown
> > > > >>> hooks in DefaultShutdownCallbackRegistry. Thanks to Henry Tung.
> > > > >>>
> > > > >>> Changes
> > > > >>>
> > > > >>>        • LOG4J2-2889: Add date pattern support for HTML layout.
> > > Thanks
> > > > >>> to Geng Yuanzhe.
> > > > >>>        • LOG4J2-2892: Allow GelfLayout to produce newline
> delimited
> > > > >>> events. Thanks to Jakub Lukes.
> > > > >>>        • : Update MongoDB tests to require Java 8 unconditionally
> > now
> > > > >>> that Log4j requires Java 8.
> > > > >>>        • : Update mongodb3.version from 3.12.1 to 3.12.6.
> > > > >>>        • : Update com.fasterxml.jackson.* 2.10.2 -> 2.11.0.
> > > > >>>        • : Update org.apache.activemq:activemq-broker 5.15.11 ->
> > > > 5.16.0.
> > > > >>>        • : Update org.apache.commons:commons-compress 1.19 ->
> 1.20.
> > > > >>>        • : Update org.apache.commons:commons-csv 1.7 -> 1.8.
> > > > >>>        • : Update org.apache.commons:commons-lang3 3.9 -> 3.10.
> > > > >>>        • : Update org.codehaus.groovy:* 2.5.6 -> 3.0.5.
> > > > >>>        • : Update tests junit:junit 4.12 -> 4.13.
> > > > >>>        • : Update tests commons-io:commons-io 2.6 -> 2.7.
> > > > >>>        • : Update jackson 2.11.0 -> 2.11.2.
> > > > >>>        • : Update tests hsqldb 2.5.0 -> 2.5.1.
> > > > >>>
> > > > >>> Removed
> > > > >>>
> > > > >>>        • LOG4J2-2851: Drop log4j-mongodb2 module.
> > > > >>>
> > > > >>>
> > > > >>> Tag:
> > > > >>> a)  for a new copy do "git clone
> > > > >>> https://github.com/apache/logging-log4j2.git"; and then "git
> > checkout
> > > > >>> tags/log4j-2.14.0-rc1”  or just "git clone -b log4j-2.14.0-rc1
> > > > >>> https://github.com/apache/logging-log4j2.git";
> > > > >>> b) for an existing working copy to “git pull” and then “git
> > checkout
> > > > >>> tags/log4j-2.14.0-rc1”
> > > > >>>
> > > > >>> Web Site:
> https://logging.staged.apache.org/log4j/2.x/index.html.
> > > > >>>
> > > > >>> Maven Artifacts:
> > > > >>>
> > > >
> > https://repository.apache.org/content/repositories/orgapachelogging-1061
> > > > >>>
> > > > >>> Distribution archives:
> > > > >>> https://dist.apache.org/repos/dist/dev/logging/log4j/
> > > > >>>
> > > > >>> You may download all the Maven artifacts by executing:
> > > > >>> wget -e robots=off --cut-dirs=7 -nH -r -p -np
> > --no-check-certificate
> > > > >>>
> > > >
> > >
> >
> >
> https://repository.apache.org/content/repositories/orgapachelogging-1061/org/apache/logging/log4j/
> > > > >>>
> > > > >>> Ralph
> > > > >>>
> > > > >>
> > > >
> > > >
> > > >
> > >
> >
>

Reply via email to