Skip to content

Commit 7e6bdcf

Browse files
authored
Merge pull request moby#3753 from tonistiigi/fileopsolver-unique
fileop: create new fileOpSolver instance per Exec call
2 parents eb3c9d4 + e7caa2e commit 7e6bdcf

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

solver/llbsolver/ops/file.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,8 @@ const fileCacheType = "buildkit.file.v0"
3030

3131
type fileOp struct {
3232
op *pb.FileOp
33-
md cache.MetadataStore
3433
w worker.Worker
35-
solver *FileOpSolver
34+
refManager *file.RefManager
3635
numInputs int
3736
parallelism *semaphore.Weighted
3837
}
@@ -41,12 +40,12 @@ func NewFileOp(v solver.Vertex, op *pb.Op_File, cm cache.Manager, parallelism *s
4140
if err := opsutils.Validate(&pb.Op{Op: op}); err != nil {
4241
return nil, err
4342
}
43+
refManager := file.NewRefManager(cm, v.Name())
4444
return &fileOp{
4545
op: op.File,
46-
md: cm,
47-
numInputs: len(v.Inputs()),
4846
w: w,
49-
solver: NewFileOpSolver(w, &file.Backend{}, file.NewRefManager(cm, v.Name())),
47+
refManager: refManager,
48+
numInputs: len(v.Inputs()),
5049
parallelism: parallelism,
5150
}, nil
5251
}
@@ -168,7 +167,8 @@ func (f *fileOp) Exec(ctx context.Context, g session.Group, inputs []solver.Resu
168167
inpRefs = append(inpRefs, workerRef.ImmutableRef)
169168
}
170169

171-
outs, err := f.solver.Solve(ctx, inpRefs, f.op.Actions, g)
170+
fs := NewFileOpSolver(f.w, &file.Backend{}, f.refManager)
171+
outs, err := fs.Solve(ctx, inpRefs, f.op.Actions, g)
172172
if err != nil {
173173
return nil, err
174174
}

0 commit comments

Comments
 (0)