Whether some particular file from some specific site can be accessed via xrootd (e.g., from EOS) instead of https (e.g., from CERNBox) is irrelevant to this discussion (though you could be interested in this thread: “Frequent failure to update ROOTfiles at /eos/”).
What @linev reports is a serious issue that, to his knowledge, users face with many different https servers.
Apparently, https servers either explicitly say they DO NOT Accept-Ranges
or, worse, they say they DO but then send the whole file upon every request.
So, I think the relevant ROOT C++ code should be protected against such cases.
At first request, it should automatically detect that it got the whole file (regardless if the server claimed it accepted Ranges
) and then reuse the provided file (just like “jsroot” does now).
If the first request returned “partial content”, ROOT should use the Ranges
feature.
@wiso Maybe you could ping uproot developers about it.