spring-projects / spring-projects/spring-security
The deployDocs task sometimes fails to remove the previous Javadoc
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 9.6k
- Forks
- 6.3k
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 52
Description
Sometimes, possibly due to a race condition, the deployDocs task fails in the following way:
rm: cannot remove ‘/var/www/domains/spring.io/docs/htdocs/autorepo/docs/spring-security/6.3.2-SNAPSHOT/api/org/springframework/security’: Directory not empty
Since the corresponding rm command uses -f and still fails, this may mean that another process is operating on that directory at the same time.
rsync may be a better option for achieving atomicity than removing the old directory, creating a new one, and moving the new contents into the new directory.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the deployDocs task and the linked GitHub Actions failure, then trace the rm sequence that removes and replaces the previous Javadoc directory. Compare that flow with the issue's suggested rsync approach; done means the task completes without the Directory not empty error while leaving the new documentation deployed correctly.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, shell
- Domain
- build-system, devops, documentation
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100