scikit-hep / scikit-hep/uproot5
Support XRootD URLs with multiple servers.
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 270
- Forks
- 102
- Avg merge
- 12h 17m
- Merged PRs (30d)
- 6
Description
From the TXNetFile docs:
The "url" argument must be of the form
root://server1:port1[,server2:port2,...,serverN:portN]/pathfile,Note that this means that multiple servers (>= 1) can be specified in the url. The connection will try to connect to the first server:port and if that does not succeed, it will try the second one, and so on until it finds a server that will respond.
I didn't realise this was an pre-existing feature in ROOT but I'd been asking for it for a while. Being able to do this better matches with how data is stored on the grid and makes it easier to when sites are down.
The implementation of this shouldn't only check that the server is alive, it should also fallback if errors are returned when trying to access the data (i.e. only querying the config isn't enough to know if the site is down).
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by comparing the issue's TXNetFile URL syntax with uproot5's existing remote-file URL handling; the payload does not name a repository file or test. Done means URLs containing multiple server:port entries try each server in order and also fall back after data-access errors, not only after an initial connectivity check.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- data, networking
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100