Skip to content

xrootd: implement prepare function - #8198

Open
DmitryLitvintsev wants to merge 1 commit into
12.0from
8127/12.0
Open

xrootd: implement prepare function#8198
DmitryLitvintsev wants to merge 1 commit into
12.0from
8127/12.0

Conversation

@DmitryLitvintsev

Copy link
Copy Markdown
Member

Motivation:

dCache XRootD never implemented the prepare XRootD protocol call. In the beginning it returned an OK w/o doing anything and recently was implemented to fail with "unsupported". Meanwhile some customers (like the ALICE experiment) have to rely on this function to actually stage files.

Modification:

Implemented the prepare function. Regular CUSTODIAL files are staged and pinned via a new pin manager stub, using a configurable pin lifetime (xrootd.pin.lifetime[.unit], default 12 hours). REPLICA and OUTPUT files, as well as non-regular files (directories, links), are ignored for efficiency. Evict/cancel requests release the pin via the same stub. Conflicting option combinations (e.g. stage together with evict/cancel) are rejected with an error.

New configuration properties were added to configure the pin manager cell stub (xrootd.service.pinmanager[.timeout[.unit]]) and the pin lifetime. The xrootd4j library dependency was bumped to 4.6.3 to pick up the required Prepare protocol message support.

Result:

Implemented ability to stage and release files via xrootd prepare call.

Target: trunk
Request: 12.x
Issue: #8121
Require-book: no
Require-notes: yes
Patch: https://rb.dcache.org/r/14770/
Acked-by: Tigran

Motivation:
-----------
dCache XRootD never implemented the prepare XRootD protocol
call. In the beginning it returned an OK w/o doing anything
and recently was implemented to fail with "unsupported".
Meanwhile some customers (like the ALICE experiment) have to
rely on this function to actually stage files.

Modification:
------------
Implemented the prepare function. Regular CUSTODIAL files are
staged and pinned via a new pin manager stub, using a configurable
pin lifetime (xrootd.pin.lifetime[.unit], default 12 hours).
REPLICA and OUTPUT files, as well as non-regular files (directories,
links), are ignored for efficiency. Evict/cancel requests release
the pin via the same stub. Conflicting option combinations (e.g.
stage together with evict/cancel) are rejected with an error.

New configuration properties were added to configure the pin
manager cell stub (xrootd.service.pinmanager[.timeout[.unit]])
and the pin lifetime. The xrootd4j library dependency was bumped
to 4.6.3 to pick up the required Prepare protocol message support.

Result:
------
Implemented ability to stage and release files via xrootd prepare
call.

Target: trunk
Request: 12.x
Issue: #8121
Require-book: no
Require-notes: yes
Patch: https://rb.dcache.org/r/14770/
Acked-by: Tigran
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant