Return-Path: X-Original-To: apmail-continuum-issues-archive@www.apache.org Delivered-To: apmail-continuum-issues-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id B8ABD177A4 for ; Wed, 28 Jan 2015 00:14:43 +0000 (UTC) Received: (qmail 71768 invoked by uid 500); 28 Jan 2015 00:14:44 -0000 Delivered-To: apmail-continuum-issues-archive@continuum.apache.org Received: (qmail 71741 invoked by uid 500); 28 Jan 2015 00:14:44 -0000 Mailing-List: contact issues-help@continuum.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@continuum.apache.org Delivered-To: mailing list issues@continuum.apache.org Received: (qmail 71724 invoked by uid 99); 28 Jan 2015 00:14:43 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 28 Jan 2015 00:14:43 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=5.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: local policy) Received: from [199.193.192.100] (HELO codehaus01.managed.contegix.com) (199.193.192.100) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 28 Jan 2015 00:14:39 +0000 Received: from codehaus01 (localhost.localdomain [127.0.0.1]) by codehaus01.managed.contegix.com (Postfix) with ESMTP id AB071B116A for ; Tue, 27 Jan 2015 18:13:18 -0600 (CST) Date: Tue, 27 Jan 2015 18:13:18 -0600 (CST) From: "Brent N Atkinson (JIRA)" To: issues@continuum.apache.org Message-ID: In-Reply-To: References: Subject: [jira] (CONTINUUM-1156) Continuum will not successfully delete build directories containing symbolic links MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 22cf62d5d84cf5bea94eb3b65e0ebd09 X-Virus-Checked: Checked by ClamAV on apache.org [ https://jira.codehaus.org/browse/CONTINUUM-1156?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Brent N Atkinson updated CONTINUUM-1156: ---------------------------------------- Description: 1FileUtils.cleanDirectory() will not remove symbolic links if they are located in the directory that it is trying to clean. This occurs for me when you set up a Shell project with the "Build Fresh" option checked. The project I'm building is invoked with a shell script. I download the shell script through continuum and it kicks off the first build successfully. On the next scheduled build, the following message occurs: --- org.codehaus.plexus.taskqueue.execution.TaskExecutionException: Error executing action 'clean-working-directory' at org.apache.maven.continuum.buildcontroller.DefaultBuildController.performAction(DefaultBuildController.java:432) at org.apache.maven.continuum.buildcontroller.DefaultBuildController.cleanWorkingDirectory(DefaultBuildController.java:361) at org.apache.maven.continuum.buildcontroller.DefaultBuildController.build(DefaultBuildController.java:103) at org.apache.maven.continuum.buildcontroller.BuildProjectTaskExecutor.executeTask(BuildProjectTaskExecutor.java:50) at org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor$ExecutorRunnable$1.run(ThreadedTaskQueueExecutor.java:116) at edu.emory.mathcs.backport.java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:442) at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:987) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:528) at java.lang.Thread.run(Thread.java:595) Caused by: java.io.IOException: Directory /scratch/home/srp/tomcat/apache-tomcat-5.5.17/webapps/continuum/WEB-INF/working-directory/1/dir/Linux/external/TclTk/8.5a4/bin unable to be deleted. at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1332) at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1328) at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1328) at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1328) at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1328) at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1328) at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) at org.apache.maven.continuum.core.action.CleanWorkingDirectoryAction.execute(CleanWorkingDirectoryAction.java:60) at org.apache.maven.continuum.buildcontroller.DefaultBuildController.performAction(DefaultBuildController.java:406) ... 9 more -- A search in the directory mentioned above show a symbolic link that hasn't been deleted. The problem occurs because the Plexus class FileUtils.cleanDirectory() doesn't work as advertised. I reported that bug on the Plexu Utils Jira, which you can see here: http://jira.codehaus.org/browse/PLXUTILS-28 I was able to incorporate the fix in Continuum by creating a new class ContinuumFileUtils, and changed all occurances of FileUtils.cleanDirectory to call the new class instead. I've uploaded a copy of the file along with this bug report. While I think it's likely that this bug will eventually get fixed in Plexus, it's breaking Continuum builds now, so I think this needs to be fixed. was: FileUtils.cleanDirectory() will not remove symbolic links if they are located in the directory that it is trying to clean. This occurs for me when you set up a Shell project with the "Build Fresh" option checked. The project I'm building is invoked with a shell script. I download the shell script through continuum and it kicks off the first build successfully. On the next scheduled build, the following message occurs: --- org.codehaus.plexus.taskqueue.execution.TaskExecutionException: Error executing action 'clean-working-directory' at org.apache.maven.continuum.buildcontroller.DefaultBuildController.performAction(DefaultBuildController.java:432) at org.apache.maven.continuum.buildcontroller.DefaultBuildController.cleanWorkingDirectory(DefaultBuildController.java:361) at org.apache.maven.continuum.buildcontroller.DefaultBuildController.build(DefaultBuildController.java:103) at org.apache.maven.continuum.buildcontroller.BuildProjectTaskExecutor.executeTask(BuildProjectTaskExecutor.java:50) at org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor$ExecutorRunnable$1.run(ThreadedTaskQueueExecutor.java:116) at edu.emory.mathcs.backport.java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:442) at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:987) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:528) at java.lang.Thread.run(Thread.java:595) Caused by: java.io.IOException: Directory /scratch/home/srp/tomcat/apache-tomcat-5.5.17/webapps/continuum/WEB-INF/working-directory/1/dir/Linux/external/TclTk/8.5a4/bin unable to be deleted. at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1332) at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1328) at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1328) at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1328) at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1328) at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1328) at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) at org.apache.maven.continuum.core.action.CleanWorkingDirectoryAction.execute(CleanWorkingDirectoryAction.java:60) at org.apache.maven.continuum.buildcontroller.DefaultBuildController.performAction(DefaultBuildController.java:406) ... 9 more -- A search in the directory mentioned above show a symbolic link that hasn't been deleted. The problem occurs because the Plexus class FileUtils.cleanDirectory() doesn't work as advertised. I reported that bug on the Plexu Utils Jira, which you can see here: http://jira.codehaus.org/browse/PLXUTILS-28 I was able to incorporate the fix in Continuum by creating a new class ContinuumFileUtils, and changed all occurances of FileUtils.cleanDirectory to call the new class instead. I've uploaded a copy of the file along with this bug report. While I think it's likely that this bug will eventually get fixed in Plexus, it's breaking Continuum builds now, so I think this needs to be fixed. > Continuum will not successfully delete build directories containing symbolic links > ---------------------------------------------------------------------------------- > > Key: CONTINUUM-1156 > URL: https://jira.codehaus.org/browse/CONTINUUM-1156 > Project: Continuum > Issue Type: Bug > Components: Core system > Affects Versions: 1.1-alpha-1 > Environment: Linux Fedora Core 5 > Reporter: Steve Pietrowicz > Fix For: 1.5.0 > > Attachments: ContinuumFileUtils.java > > > 1FileUtils.cleanDirectory() will not remove symbolic links if they are located in the directory that it is trying to clean. > This occurs for me when you set up a Shell project with the "Build Fresh" option checked. > The project I'm building is invoked with a shell script. I download the shell script through continuum and it kicks off the first build successfully. > On the next scheduled build, the following message occurs: > --- > org.codehaus.plexus.taskqueue.execution.TaskExecutionException: Error executing action 'clean-working-directory' > at org.apache.maven.continuum.buildcontroller.DefaultBuildController.performAction(DefaultBuildController.java:432) > at org.apache.maven.continuum.buildcontroller.DefaultBuildController.cleanWorkingDirectory(DefaultBuildController.java:361) > at org.apache.maven.continuum.buildcontroller.DefaultBuildController.build(DefaultBuildController.java:103) > at org.apache.maven.continuum.buildcontroller.BuildProjectTaskExecutor.executeTask(BuildProjectTaskExecutor.java:50) > at org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor$ExecutorRunnable$1.run(ThreadedTaskQueueExecutor.java:116) > at edu.emory.mathcs.backport.java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:442) > at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176) > at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:987) > at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:528) > at java.lang.Thread.run(Thread.java:595) > Caused by: java.io.IOException: Directory /scratch/home/srp/tomcat/apache-tomcat-5.5.17/webapps/continuum/WEB-INF/working-directory/1/dir/Linux/external/TclTk/8.5a4/bin unable to be deleted. > at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1332) > at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) > at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) > at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1328) > at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) > at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) > at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1328) > at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) > at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) > at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1328) > at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) > at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) > at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1328) > at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) > at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) > at org.codehaus.plexus.util.FileUtils.deleteDirectory(FileUtils.java:1328) > at org.codehaus.plexus.util.FileUtils.forceDelete(FileUtils.java:1158) > at org.codehaus.plexus.util.FileUtils.cleanDirectory(FileUtils.java:1371) > at org.apache.maven.continuum.core.action.CleanWorkingDirectoryAction.execute(CleanWorkingDirectoryAction.java:60) > at org.apache.maven.continuum.buildcontroller.DefaultBuildController.performAction(DefaultBuildController.java:406) > ... 9 more > -- > A search in the directory mentioned above show a symbolic link that hasn't been deleted. > The problem occurs because the Plexus class FileUtils.cleanDirectory() doesn't work as advertised. I reported that bug on the Plexu Utils Jira, which you can see here: > http://jira.codehaus.org/browse/PLXUTILS-28 > I was able to incorporate the fix in Continuum by creating a new class ContinuumFileUtils, and changed all occurances of FileUtils.cleanDirectory to call the new class instead. I've uploaded a copy of the file along with this bug report. > While I think it's likely that this bug will eventually get fixed in Plexus, it's breaking Continuum builds now, so I think this needs to be fixed. -- This message was sent by Atlassian JIRA (v6.1.6#6162)