Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users
Tabletop RPGs
Tabletop RPGs
Community Proposals
Community Proposals
tag:snake search within a tag
answers:0 unanswered questions
user:xxxx search by author id
score:0.5 posts with 0.5+ score
"snake oil" exact phrase
votes:4 posts with 4+ votes
created:<1w created < 1 week ago
post_type:xxxx type of post
Search help
Notifications
Mark all as read See all your notifications »
Q&A

Welcome to Software Development on Codidact!

Will you help us build our independent community of developers helping developers? We're small and trying to grow. We welcome questions about all aspects of software development, from design to code to QA and more. Got questions? Got answers? Got code you'd like someone to review? Please join us.

Comments on Jenkins failed to delete a file - why? How to prevent?

Post

Jenkins failed to delete a file - why? How to prevent?

+2
−1

We are using Jenkins to run our system tests on a regular schedule. The Jenkins job downloads some python scripts from Perforce, runs them and compares the outputs with known-good results.

The problem is, sometimes downloading from Perforce fails:

12:46:19 operating system will not allow deletion of file c:\Jenkins\...(redacted)...\p4j5949332513673726584.tmp on client.

In the error message, P4 is a common abbreviation for Perforce. We have a Jenkins plugin called P4 which downloads files from Perforce; I guess it's this plugin that writes this error message. I think something is holding the temporary file open, that's why it couldn't be deleted.

What can I do to prevent this? I imagine that it can be caused by an antivirus, some person quietly browsing in the Jenkins's file system, a random cosmic ray, etc. How can I even start investigating this?

Did we do something fundamentally wrong in configuring our Jenkins job this way? Something which would completely prevent this issue from happening?

History
Why does this post require moderator attention?
You might want to add some details to your flag.
Why should this post be closed?

1 comment thread

General comments (4 comments)
General comments
Alexei‭ wrote over 3 years ago

I think in order to fully understand you should provide more details. Is this task a custom task? (e.g. removes an existing file and downloads a newer version). The error might also appear when the file to delete is not found. Since this is not always happening, I suspect it is not related to Jenkins user lacking the right to delete that file.

Skipping 1 deleted comment.

anatolyg‭ wrote over 3 years ago

It's not a custom task; I updated my post to include more details.

Monica Cellio‭ wrote over 3 years ago

Is the failure happening at the P4 checkout time, or in a cleanup phase at the end? And do you rerun the job in the same directory each time, or do you use a new scratch directory each time?

anatolyg‭ wrote almost 3 years ago

The failure happens at the P4 checkout time. I called it "download" because I think it's not actually called "checkout" in Perforce-language. Yes, I run the job in the same directory each time. This is a good idea - I can create a temporary directory for each run as a workaround for my problem!