18842: Add KeepCacheDisk to EstimateScratchSpace used by dispatchers
authorPeter Amstutz <peter.amstutz@curii.com>
Tue, 25 Oct 2022 15:27:53 +0000 (11:27 -0400)
committerPeter Amstutz <peter.amstutz@curii.com>
Tue, 25 Oct 2022 15:27:53 +0000 (11:27 -0400)
Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <peter.amstutz@curii.com>

lib/dispatchcloud/node_size.go

index 7c7643bfc7622fc8c876eba9c2e01d9203385074..5b85d57ea69b726b1b4db1d8346cddaa52230bf3 100644 (file)
@@ -56,7 +56,7 @@ func estimateDockerImageSize(collectionPDH string) int64 {
 // EstimateScratchSpace estimates how much available disk space (in
 // bytes) is needed to run the container by summing the capacity
 // requested by 'tmp' mounts plus disk space required to load the
-// Docker image.
+// Docker image plus arv-mount block cache.
 func EstimateScratchSpace(ctr *arvados.Container) (needScratch int64) {
        for _, m := range ctr.Mounts {
                if m.Kind == "tmp" {
@@ -80,6 +80,9 @@ func EstimateScratchSpace(ctr *arvados.Container) (needScratch int64) {
        // Now reserve space for the extracted image on disk.
        needScratch += dockerImageSize
 
+       // Now reserve space the arv-mount disk cache
+       needScratch += ctr.RuntimeConstraints.KeepCacheDisk
+
        return
 }