I haven't tried to build since a week ago, sorry, totally swamped at work.
But I agree this should not stay this way. Sent from my iPhone > On 2014/04/01, at 14:17, Gary Gregory <[email protected]> wrote: > > Sadly it looks like it. I have not heard from other Windows users though. IMO > this is not acceptable. This could also be a bug in the test or the file > appender. > > Gary > > > -------- Original message -------- > From: Remko Popma > Date:04/01/2014 00:41 (GMT-05:00) > To: Log4J Developers List > Subject: Re: unit test failures? > > Does everyone who wants to build on windows now need to exclude certain tests > in order for the build to succeed? > > Remko > > Sent from my iPhone > >> On 2014/04/01, at 12:50, Gary Gregory <[email protected]> wrote: >> >> I've tweaked the POM to allow for Maven to skip specific tests like so: >> >> mvn test -Dlog4j.skip.test1=**/ConfigurationTest.java >> -Dlog4j.skip.test2=**/FileOutputTest.java >> >> Gary >> >> >>> On Mon, Mar 31, 2014 at 9:38 PM, Gary Gregory <[email protected]> >>> wrote: >>> If I change the method to: >>> >>> private void clean() { >>> for (final File file : files) { >>> if (file.exists()) { >>> if (!file.delete()) { >>> StatusLogger.getLogger().error( >>> "TODO [FileAppender problem?] Could not delete >>> file " + file + ", last modifed " >>> + DateFormat.getInstance().format(new >>> Date(file.lastModified()))); >>> } else { >>> file.deleteOnExit(); >>> } >>> } >>> } >>> >>> I get 3 failures (instead of 9): >>> >>> ConfigurationTest >>> org.apache.logging.log4j.core.config.ConfigurationTest >>> [0] >>> testLogToFile[0](org.apache.logging.log4j.core.config.ConfigurationTest) >>> java.lang.AssertionError: >>> Expected: is <1> >>> but: was <2> >>> >>> at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20) >>> >>> at org.junit.Assert.assertThat(Assert.java:865) >>> >>> at org.junit.Assert.assertThat(Assert.java:832) >>> >>> at >>> org.apache.logging.log4j.core.config.ConfigurationTest.testLogToFile(ConfigurationTest.java:138) >>> >>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> >>> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) >>> >>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) >>> >>> at java.lang.reflect.Method.invoke(Unknown Source) >>> >>> at >>> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) >>> >>> at >>> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) >>> >>> at >>> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) >>> >>> at >>> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) >>> >>> at >>> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) >>> >>> at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:48) >>> >>> at >>> org.apache.logging.log4j.junit.InitialLoggerContext$1.evaluate(InitialLoggerContext.java:52) >>> >>> at org.junit.rules.RunRules.evaluate(RunRules.java:20) >>> >>> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271) >>> >>> at >>> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70) >>> >>> at >>> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) >>> >>> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) >>> >>> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) >>> >>> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) >>> >>> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) >>> >>> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) >>> >>> at org.junit.runners.ParentRunner.run(ParentRunner.java:309) >>> >>> at org.junit.runners.Suite.runChild(Suite.java:127) >>> >>> at org.junit.runners.Suite.runChild(Suite.java:26) >>> >>> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) >>> >>> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) >>> >>> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) >>> >>> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) >>> >>> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) >>> >>> at org.junit.runners.ParentRunner.run(ParentRunner.java:309) >>> >>> at >>> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50) >>> >>> at >>> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) >>> >>> at >>> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) >>> >>> at >>> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) >>> >>> at >>> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) >>> >>> at >>> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) >>> >>> >>> >>> [1] >>> testLogToFile[1](org.apache.logging.log4j.core.config.ConfigurationTest) >>> java.lang.AssertionError: >>> Expected: is <1> >>> but: was <3> >>> >>> at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20) >>> >>> at org.junit.Assert.assertThat(Assert.java:865) >>> >>> at org.junit.Assert.assertThat(Assert.java:832) >>> >>> at >>> org.apache.logging.log4j.core.config.ConfigurationTest.testLogToFile(ConfigurationTest.java:138) >>> >>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> >>> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) >>> >>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) >>> >>> at java.lang.reflect.Method.invoke(Unknown Source) >>> >>> at >>> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) >>> >>> at >>> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) >>> >>> at >>> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) >>> >>> at >>> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) >>> >>> at >>> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) >>> >>> at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:48) >>> >>> at >>> org.apache.logging.log4j.junit.InitialLoggerContext$1.evaluate(InitialLoggerContext.java:52) >>> >>> at org.junit.rules.RunRules.evaluate(RunRules.java:20) >>> >>> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271) >>> >>> at >>> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70) >>> >>> at >>> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) >>> >>> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) >>> >>> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) >>> >>> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) >>> >>> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) >>> >>> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) >>> >>> at org.junit.runners.ParentRunner.run(ParentRunner.java:309) >>> >>> at org.junit.runners.Suite.runChild(Suite.java:127) >>> >>> at org.junit.runners.Suite.runChild(Suite.java:26) >>> >>> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) >>> >>> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) >>> >>> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) >>> >>> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) >>> >>> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) >>> >>> at org.junit.runners.ParentRunner.run(ParentRunner.java:309) >>> >>> at >>> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50) >>> >>> at >>> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) >>> >>> at >>> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) >>> >>> at >>> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) >>> >>> at >>> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) >>> >>> at >>> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) >>> >>> >>> >>> [2] >>> testLogToFile[2](org.apache.logging.log4j.core.config.ConfigurationTest) >>> java.lang.AssertionError: >>> Expected: is <1> >>> but: was <4> >>> >>> at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20) >>> >>> at org.junit.Assert.assertThat(Assert.java:865) >>> >>> at org.junit.Assert.assertThat(Assert.java:832) >>> >>> at >>> org.apache.logging.log4j.core.config.ConfigurationTest.testLogToFile(ConfigurationTest.java:138) >>> >>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> >>> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) >>> >>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) >>> >>> at java.lang.reflect.Method.invoke(Unknown Source) >>> >>> at >>> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) >>> >>> at >>> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) >>> >>> at >>> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) >>> >>> at >>> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) >>> >>> at >>> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) >>> >>> at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:48) >>> >>> at >>> org.apache.logging.log4j.junit.InitialLoggerContext$1.evaluate(InitialLoggerContext.java:52) >>> >>> at org.junit.rules.RunRules.evaluate(RunRules.java:20) >>> >>> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271) >>> >>> at >>> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70) >>> >>> at >>> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) >>> >>> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) >>> >>> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) >>> >>> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) >>> >>> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) >>> >>> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) >>> >>> at org.junit.runners.ParentRunner.run(ParentRunner.java:309) >>> >>> at org.junit.runners.Suite.runChild(Suite.java:127) >>> >>> at org.junit.runners.Suite.runChild(Suite.java:26) >>> >>> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) >>> >>> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) >>> >>> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) >>> >>> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) >>> >>> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) >>> >>> at org.junit.runners.ParentRunner.run(ParentRunner.java:309) >>> >>> at >>> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50) >>> >>> at >>> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) >>> >>> at >>> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) >>> >>> at >>> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) >>> >>> at >>> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) >>> >>> at >>> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) >>> >>> >>> Gary >>> >>> >>> >>> >>>> On Mon, Mar 31, 2014 at 4:10 PM, Matt Sicker <[email protected]> wrote: >>>> In log4j-core/src/test/java/org/apache/logging/log4j/junit/CleanFiles.java >>>> on line 48, could you try deleting the "assertTrue" part? >>>> >>>> I get occasional test failures myself from the same test in my TeamCity >>>> instance, but it seems to be a different issue with the log file *not* >>>> being deleted! It's actually possible that this modified test has exposed >>>> a potential bug with the FileAppender code. It seems to be holding on to >>>> the file longer than it should. >>>> >>>> >>>>> On 31 March 2014 13:54, Ralph Goers <[email protected]> wrote: >>>>> I’d guess it is Windows specific. I haven’t looked at what Matt did to >>>>> this yet. >>>>> >>>>> Ralph >>>>> >>>>> >>>>> >>>>>> On Mar 31, 2014, at 11:08 AM, Gary Gregory <[email protected]> >>>>>> wrote: >>>>>> >>>>>> I just tested a clean trunk and I get the following failures: >>>>>> >>>>>> Failed tests: >>>>>> ConfigurationTest.testLogToFile[0] Could not delete target\test.log, >>>>>> last modifed 3/31/14 1:50 PM >>>>>> ConfigurationTest.testConfiguredAppenders[0] Could not delete >>>>>> target\test.log, last modifed 3/31/14 1:51 PM >>>>>> ConfigurationTest.testLogger[0] Could not delete target\test.log, last >>>>>> modifed 3/31/14 1:51 PM >>>>>> ConfigurationTest.testLogToFile[1] Could not delete target\test.log, >>>>>> last modifed 3/31/14 1:51 PM >>>>>> ConfigurationTest.testConfiguredAppenders[1] Could not delete >>>>>> target\test.log, last modifed 3/31/14 1:51 PM >>>>>> ConfigurationTest.testLogger[1] Could not delete target\test.log, last >>>>>> modifed 3/31/14 1:51 PM >>>>>> ConfigurationTest.testLogToFile[2] Could not delete target\test.log, >>>>>> last modifed 3/31/14 1:51 PM >>>>>> ConfigurationTest.testConfiguredAppenders[2] Could not delete >>>>>> target\test.log, last modifed 3/31/14 1:51 PM >>>>>> ConfigurationTest.testLogger[2] Could not delete target\test.log, last >>>>>> modifed 3/31/14 1:51 PM >>>>>> FileOutputTest.testConfig:59 Couldn't delete file target\status.log >>>>>> >>>>>> Tests run: 542, Failures: 10, Errors: 0, Skipped: 15 >>>>>> >>>>>> I tested with: >>>>>> >>>>>> Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; >>>>>> 2013-02-19 08:51:28-0500) >>>>>> Maven home: C:\Java\apache-maven-3.0.5\bin\.. >>>>>> Java version: 1.6.0_45, vendor: Sun Microsystems Inc. >>>>>> Java home: C:\Program Files\Java\jdk1.6.0_45\jre >>>>>> Default locale: en_US, platform encoding: Cp1252 >>>>>> OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows" >>>>>> >>>>>> and: >>>>>> >>>>>> Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; >>>>>> 2013-02-19 08:51:28-0500) >>>>>> Maven home: C:\Java\apache-maven-3.0.5\bin\.. >>>>>> Java version: 1.8.0_20-ea, vendor: Oracle Corporation >>>>>> Java home: C:\Program Files\Java\jdk1.8.0_20\jre >>>>>> Default locale: en_US, platform encoding: Cp1252 >>>>>> OS name: "windows 7", version: "6.1", arch: "amd64", family: "dos" >>>>>> >>>>>> Matt? Bueller? Anybody? >>>>>> >>>>>> Gary >>>>>> >>>>>> >>>>>>> On Mon, Mar 31, 2014 at 2:48 AM, Ralph Goers >>>>>>> <[email protected]> wrote: >>>>>>> Trunk is building for me. >>>>>>> >>>>>>> Ralph >>>>>>> >>>>>>>> On Mar 30, 2014, at 7:43 PM, Gary Gregory <[email protected]> >>>>>>>> wrote: >>>>>>>> >>>>>>>> Hi All: >>>>>>>> >>>>>>>> I have a large change set (can't break it up into smaller bits) on my >>>>>>>> machine and it does not seem related to the following failures I see: >>>>>>>> >>>>>>>> Results : >>>>>>>> >>>>>>>> Failed tests: >>>>>>>> XmlFileAppenderTest.testFlushAtEndOfBatch:70 line1 incorrect: [ >>>>>>>> <Event logger="com.foo.Bar" timestamp="1396233402662" level="INFO" >>>>>>>> thread="main" >>>>>>>> fcqn="org.apache.logging.log4j.spi.AbstractLoggerProvider">], does not >>>>>>>> contain: [<log4j:Even >>>>>>>> t ] >>>>>>>> ConfigurationTest.testLogToFile[0] null >>>>>>>> ConfigurationTest.testConfiguredAppenders[0] null >>>>>>>> ConfigurationTest.testLogger[0] null >>>>>>>> ConfigurationTest.testLogToFile[1] null >>>>>>>> ConfigurationTest.testConfiguredAppenders[1] null >>>>>>>> ConfigurationTest.testLogger[1] null >>>>>>>> ConfigurationTest.testLogToFile[2] null >>>>>>>> ConfigurationTest.testConfiguredAppenders[2] null >>>>>>>> ConfigurationTest.testLogger[2] null >>>>>>>> FileOutputTest.testConfig:59 Couldn't delete file >>>>>>>> >>>>>>>> Tests in error: >>>>>>>> >>>>>>>> JpaH2AppenderTest>AbstractJpaAppenderTest.testBaseJpaEntityAppender:107 >>>>>>>> » AppenderLogging >>>>>>>> >>>>>>>> JpaH2AppenderTest>AbstractJpaAppenderTest.testPerformanceOfAppenderWith10000EventsUsingBasicEntity:224 >>>>>>>> » AppenderLogging >>>>>>>> >>>>>>>> JpaH2AppenderTest>AbstractJpaAppenderTest.testBasicJpaEntityAppender:169 >>>>>>>> » AppenderLogging >>>>>>>> >>>>>>>> JpaHyperSqlAppenderTest>AbstractJpaAppenderTest.testBaseJpaEntityAppender:107 >>>>>>>> » AppenderLogging >>>>>>>> >>>>>>>> JpaHyperSqlAppenderTest>AbstractJpaAppenderTest.testPerformanceOfAppenderWith10000EventsUsingBasicEntity:224 >>>>>>>> » AppenderLogging >>>>>>>> >>>>>>>> JpaHyperSqlAppenderTest>AbstractJpaAppenderTest.testBasicJpaEntityAppender:169 >>>>>>>> » AppenderLogging >>>>>>>> >>>>>>>> Tests run: 569, Failures: 11, Errors: 6, Skipped: 21 >>>>>>>> >>>>>>>> Can folks comment on whether they can do a clean build? >>>>>>>> >>>>>>>> Thank you! >>>>>>>> >>>>>>>> Gary >>>>>>>> >>>>>>>> -- >>>>>>>> E-Mail: [email protected] | [email protected] >>>>>>>> Java Persistence with Hibernate, Second Edition >>>>>>>> JUnit in Action, Second Edition >>>>>>>> Spring Batch in Action >>>>>>>> Blog: http://garygregory.wordpress.com >>>>>>>> Home: http://garygregory.com/ >>>>>>>> Tweet! http://twitter.com/GaryGregory >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> E-Mail: [email protected] | [email protected] >>>>>> Java Persistence with Hibernate, Second Edition >>>>>> JUnit in Action, Second Edition >>>>>> Spring Batch in Action >>>>>> Blog: http://garygregory.wordpress.com >>>>>> Home: http://garygregory.com/ >>>>>> Tweet! http://twitter.com/GaryGregory >>>> >>>> >>>> >>>> -- >>>> Matt Sicker <[email protected]> >>> >>> >>> >>> -- >>> E-Mail: [email protected] | [email protected] >>> Java Persistence with Hibernate, Second Edition >>> JUnit in Action, Second Edition >>> Spring Batch in Action >>> Blog: http://garygregory.wordpress.com >>> Home: http://garygregory.com/ >>> Tweet! http://twitter.com/GaryGregory >> >> >> >> -- >> E-Mail: [email protected] | [email protected] >> Java Persistence with Hibernate, Second Edition >> JUnit in Action, Second Edition >> Spring Batch in Action >> Blog: http://garygregory.wordpress.com >> Home: http://garygregory.com/ >> Tweet! http://twitter.com/GaryGregory
