Commit 743ff24
Gereon Elvers
Radboud: treat HTTP 500 as fail-fast not-found, skip retry chain
The Radboud WebDAV server returns HTTP 500 (with empty body) when any
intermediate folder on a requested path does not exist, instead of the
expected 404. Combined with the dataset H5/FIF fallback chain, which
*always* probes derivative paths ("./derivatives/serialised/...")
that do not exist on the read-only remote, this caused two ~60-second
silent retry chains before the raw .ds download could even start.
Fix:
- treat 500 the same as 404 (FileNotFoundError) in both _propfind and
the GET worker; only true transient errors (502/503/504, network
errors) still hit the retry path.
- _schedule_download now PROPFINDs the file before queueing the GET,
so a missing path raises FileNotFoundError immediately and the
dataset class falls through to local creation without waiting.
Verified end-to-end on the VM: Schoffelen sub-A2002 task=rest cold-
build now takes 87 s (was 260 s); no retry log lines emitted.1 parent 5cb554f commit 743ff24
1 file changed
Lines changed: 26 additions & 10 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
221 | 221 | | |
222 | 222 | | |
223 | 223 | | |
224 | | - | |
225 | | - | |
226 | | - | |
227 | | - | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
228 | 235 | | |
229 | 236 | | |
230 | 237 | | |
| |||
333 | 340 | | |
334 | 341 | | |
335 | 342 | | |
336 | | - | |
337 | | - | |
338 | | - | |
339 | | - | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
340 | 351 | | |
341 | 352 | | |
342 | 353 | | |
| |||
433 | 444 | | |
434 | 445 | | |
435 | 446 | | |
436 | | - | |
437 | | - | |
| 447 | + | |
| 448 | + | |
| 449 | + | |
| 450 | + | |
| 451 | + | |
| 452 | + | |
| 453 | + | |
438 | 454 | | |
439 | 455 | | |
440 | 456 | | |
| |||
0 commit comments