Project

General

Profile

Actions

Feature #8554

closed

[Keep] Implement trash/untrash behavior in volume_unix

Added by Peter Amstutz about 8 years ago. Updated about 8 years ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Radhika Chippada
Category:
Keep
Target version:
Story points:
2.0

Description

Implementation

Trash:
  • If trash-ttl > 0:
    1. set deadline = now + trash-ttl
    2. Rename abc/{hash} to abc/{hash}.trash.{deadline}
  • If trash-ttl == 0:
    1. Just delete abc/{hash} now (i.e., same behavior we have now)
Untrash:
  1. Rename the first file named abc/{hash}.trash.* (there might be more than one) to abc/{hash}
EmptyTrash:
  1. Walk hierarchy looking for {hash}.trash.*
  2. If deadline < now, delete the file
  3. Log amount of deleted stuff: number of blocks, number of bytes
  4. Log amount of undeleted stuff still in trash: number of blocks, number of bytes
Empty-trash goroutine (this part is not specific to unix volumes):
  1. Use one time.Ticker with configurable trash-check interval (default 1 day?)
  2. When ticker fires, empty trash on all volumes

Subtasks 1 (0 open1 closed)

Task #8612: Review branch 8554-trash-untrash-unix-volumeResolvedRadhika Chippada03/11/2016Actions

Related issues

Related to Arvados - Idea #8178: [Keepstore] Implement interfaces trash area and undelete endpointResolvedRadhika Chippada01/11/2016Actions
Actions

Also available in: Atom PDF