Skip to content

Client still falls back to source when server is overloaded, even with both enableBackToSource=false and disableBackToSource=true configured #4345

@simplecoka

Description

@simplecoka

Bug report:

When the client is configured with both

client.config.scheduler.enableBackToSource: false
client.config.proxy.disableBackToSource: true
the client still falls back to the source server if the source server is overloaded or unavailable. This results in unwanted extra load on the origin, effectively bypassing the intended back‑to‑source protection.

Expected behavior:

The client should not attempt to fetch directly from the source at any time when both flags are set. Instead:

It should either fail the download gracefully,
Or enter a controlled retry/back‑off loop.
This would protect the origin system from overload.

How to reproduce it:

Deploy Dragonfly with the following relevant settings:
client:
config:
scheduler:
enableBackToSource: false
proxy:
server:
disableBackToSource: true
Overload or stop the source server service (simulate high load/failure).
Trigger a client download task (e.g., large artifact via proxy).
Please make sure that the client attempts direct download from the origin even though enableBackToSource=false and disableBackToSource=true.

Environment:

  • Dragonfly version: scheduler & manager 2.3.2 client & seed v1.0.3
  • OS: Ubuntu 22.04
  • Kernel (e.g. uname -a): 5.15.0-124-generic
  • Others:

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions