Daemon rucio-transmogrifier¶
The Transmogrifier daemon is responsible for the creation of replication rules for DIDs matching a subscription.
usage: rucio-transmogrifier [-h] [--run-once] [--threads THREADS] [--bulk BULK] [--sleep-time SLEEP_TIME]
Named Arguments¶
- --run-once
Runs one loop iteration
Default: False
- --threads
Concurrency control: number of threads
Default: 1
- --bulk
Bulk control: number of requests per cycle
Default: 1000
- --sleep-time
Seconds to sleep between two cycles
Default: 60
Create a DID:
$ python
from rucio.core.did import add_did
from rucio.db.sqla.constants import DIDType
add_did(scope='mock', name='test', type=DIDType.DATASET, account='root', meta={'project': 'test_project'})
Create a subscription that matches the DID:
$ rucio-admin subscription add test '{"scope": ["mock"], "project": ["test_project"]}' '[{"copies": 1, "rse_expression": "MOCK", "activity": "User Subscriptions"}]' 'df'
Check if there are rules for the DID:
$ rucio list-rules mock:test
ID ACCOUNT SCOPE:NAME STATE[OK/REPL/STUCK] RSE_EXPRESSION COPIES EXPIRES (UTC) CREATED (UTC)
-------------------------------- --------- ------------ ---------------------- ---------------- -------- --------------- -------------------
Run the daemon:
$ rucio-transmogrifier --run-once
Check again if there are rules for the DID:
$ rucio list-rules mock:test
ID ACCOUNT SCOPE:NAME STATE[OK/REPL/STUCK] RSE_EXPRESSION COPIES EXPIRES (UTC) CREATED (UTC)
-------------------------------- --------- ------------ ---------------------- ---------------- -------- --------------- -------------------
e658f6f47f444326aad624dabef7b785 root mock:test OK[0/0/0] MOCK 1 2018-12-03 14:01:19