From 3b07f9d34dfb4380d39c9c6523234b49463a516a Mon Sep 17 00:00:00 2001 From: skbeh <60107333+skbeh@users.noreply.github.com> Date: Mon, 25 Aug 2025 10:19:47 +0000 Subject: [PATCH] combine: propagate SlowHash feature --- backend/combine/combine.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/backend/combine/combine.go b/backend/combine/combine.go index d01071a95..80e2d6d0f 100644 --- a/backend/combine/combine.go +++ b/backend/combine/combine.go @@ -241,18 +241,22 @@ func NewFs(ctx context.Context, name, root string, m configmap.Mapper) (outFs fs DirModTimeUpdatesOnWrite: true, PartialUploads: true, }).Fill(ctx, f) - canMove := true + canMove, slowHash := true, false for _, u := range f.upstreams { features = features.Mask(ctx, u.f) // Mask all upstream fs if !operations.CanServerSideMove(u.f) { canMove = false } + slowHash = slowHash || u.f.Features().SlowHash } // We can move if all remotes support Move or Copy if canMove { features.Move = f.Move } + // If any of upstreams are SlowHash, propagate it + features.SlowHash = slowHash + // Enable ListR when upstreams either support ListR or is local // But not when all upstreams are local if features.ListR == nil {