Daemon rucio-undertaker¶
The Undertaker deamon is responsible for managing expired DIDs. It deletes DIDs, but not replicas by checking if there are DIDs where the ‘expired_at’ date property is older than the current timestamp.
usage: rucio-undertaker [-h] [--run-once] [--total-workers TOTAL_WORKERS] [--chunk-size CHUNK_SIZE]
Named Arguments¶
- --run-once
One iteration only
Default: False
- --total-workers
Total number of workers
Default: 1
- --chunk-size
Chunk size
Default: 5
Create a DID that is already expired by setting its lifetime to -1:
$ python
from rucio.db.sqla.constants import DIDType
from rucio.client.didclient import DIDClient
client = DIDClient()
client.add_did(scope='mock', name='test', type=DIDType.DATASET, lifetime=-1)
Check if the DID exists:
$ rucio list-dids mock:test
+--------------+--------------+
| SCOPE:NAME | [DID TYPE] |
|--------------+--------------|
| mock:test | DATASET |
+--------------+--------------+
Run the daemon:
$ rucio-undertaker --run-once
Check if the DID exists:
$ rucio list-dids mock:test
+--------------+--------------+
| SCOPE:NAME | [DID TYPE] |
|--------------+--------------|
+--------------+--------------+