From fa7150cf2beb8bbdaa5409e4aba9bb550cc8ba33 Mon Sep 17 00:00:00 2001 From: Mark Beamer Jr Date: Thu, 20 May 2021 20:43:01 -0400 Subject: [PATCH] Add queue to prevent writing too many files at once. --- store/disk.go | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/store/disk.go b/store/disk.go index e52731a..7123b65 100644 --- a/store/disk.go +++ b/store/disk.go @@ -23,11 +23,13 @@ func init() { writeCh = make(chan writeRequest) for i := 0; i < runtime.NumCPU(); i++ { go func() { - select { - case r := <-writeCh: - err := ioutil.WriteFile(r.filename, r.data, r.perm) - if err != nil { - log.Errorf("could not write file %s to disk, failed with error: %s", r.filename, err.Error()) + for { + select { + case r := <-writeCh: + err := ioutil.WriteFile(r.filename, r.data, r.perm) + if err != nil { + log.Errorf("could not write file %s to disk, failed with error: %s", r.filename, err.Error()) + } } } }()