[Geoserver-devel] [JIRA] (GEOS-8472) Intermittent build failure in gs-main ResourcePoolTest tear down

Ben Caradoc-Davies created an issue

GeoServer / BugGEOS-8472

Intermittent build failure in gs-main ResourcePoolTest tear down

Issue Type:

BugBug

Affects Versions:

2.13-beta

Assignee:

Unassigned

Components:

Main

Created:

05/Dec/17 9:29 PM

Priority:

MediumMedium

Reporter:

Ben Caradoc-Davies

Seen locally and on Jenkins, ResourcePoolTest tear down occasionally fails when it is unable to delete its temporary data directory, almost certainly because it is not empty, likely because an H2 thread has not finished shutting down and has written a file between directory content deletion and directory deletion:
https://build.geoserver.org/job/geoserver-master/5355/consoleText

Tests run: 18, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 3.3 sec <<< FAILURE!
org.geoserver.catalog.ResourcePoolTest  Time elapsed: 93 sec  <<< ERROR!
java.lang.RuntimeException: java.io.IOException: Unable to delete directory ./target/default6742965833692039099data.
	at org.geoserver.test.GeoServerBaseTestSupport$1.apply(GeoServerBaseTestSupport.java:109)
	at org.junit.rules.RunRules.applyAll(RunRules.java:26)
	at org.junit.rules.RunRules.<init>(RunRules.java:15)
	at org.junit.runners.BlockJUnit4ClassRunner.withTestRules(BlockJUnit4ClassRunner.java:379)
	at org.junit.runners.BlockJUnit4ClassRunner.withRules(BlockJUnit4ClassRunner.java:340)
	at org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:256)
	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.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
	at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
	at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
Caused by: java.io.IOException: Unable to delete directory ./target/default6742965833692039099data.
	at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:1337)
	at org.geoserver.data.test.SystemTestData.tearDown(SystemTestData.java:1026)
	at org.geoserver.test.GeoServerBaseTestSupport.doTearDownClass(GeoServerBaseTestSupport.java:206)
	at org.geoserver.test.GeoServerBaseTestSupport$1.apply(GeoServerBaseTestSupport.java:107)
	... 27 more

This could be fixed by forcing synchronous shutdown of H2 if such a mechanism exists, or by a short Thread.sleep before recursive directory removal. The latter could be applied to all GeoServer tests.

Add Comment

Add Comment

Get Jira notifications on your phone! Download the Jira Cloud app for Android or iOS


This message was sent by Atlassian Jira (v1001.0.0-SNAPSHOT#100074-sha1:43f7724)

Atlassian logo