nextcloud / nextcloud/updater

[Feature] Remove old files asynchronously after update

Open
#590 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

0. Needs triage enhancement
Dominant language
PHP
Stars
51
Forks
40
Avg merge
2d 19h
Merged PRs (30d)
3

Description

How to use GitHub
  • Please use the 👍 reaction to show that you are interested into the same feature.
  • Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
  • Subscribe to receive notifications on status change and new comments.

Feature request

Which Nextcloud Version are you currently using: 29.0.9
Is your feature request related to a problem? Please describe.
There is unnecessary additional downtime during an update between steps 8 and 11 due to waiting for the updater to remove old files.
Describe the solution you'd like
Instead of removing the old files in sequence with all other steps, move them off to a dedicated directory (similar to the backup step) and add a single-shot cron job to remove that directory later. Since on most Unix-like systems a move of a directory on the same filesystem is much faster than traversing it depth-first for removal this could cut down time spent in Maintenance mode.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the updater flow around steps 8–11 and compare it with the existing backup step. Determine where old files are moved and where a single-shot cron job could remove that directory later. Done means updates no longer wait for recursive removal while the old files are reliably cleaned up afterward.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
devops, release
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.