4–8 Nov 2019
Adelaide Convention Centre
Australia/Adelaide timezone

EOS Erasure Coding plug-in as a case study for the XRootD client declarative API

7 Nov 2019, 14:30
15m
Riverbank R2 (Adelaide Convention Centre)

Riverbank R2

Adelaide Convention Centre

Oral Track 5 – Software Development Track 5 – Software Development

Speaker

Andrew Bohdan Hanushevsky (SLAC National Accelerator Laboratory (US))

Description

One of the key components of the XRootD software framework is the C++ implementation of the XRootD client. As the foundation of client binaries, XRootD Posix API and the Python API, it is widely used in LHC experiments’ frameworks as well as on server side in the XCache and EOS. In order to facilitate new developments the XRootD client API has been extended to be in line with modern C++ programming practices.
In this contribution we report on the new XRootD client declarative API inspired by C++ ranges v3. The new utility offers superior composability of asynchronous operations through operation pipelining, and support for standard callbacks (lambdas, std::futures). As a case study we consider the EOS erasure coding plug-in.

Consider for promotion No

Authors

Michal Kamil Simon (CERN) Andrew Bohdan Hanushevsky (SLAC National Accelerator Laboratory (US))

Presentation materials