12447: Use ReadFull(). Use goimport for import formatting.
authorPeter Amstutz <peter.amstutz@curoverse.com>
Sat, 14 Oct 2017 15:58:14 +0000 (11:58 -0400)
committerPeter Amstutz <peter.amstutz@curoverse.com>
Sat, 14 Oct 2017 15:58:14 +0000 (11:58 -0400)
Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <pamstutz@veritasgenetics.com>

sdk/go/keepclient/block_cache.go
services/crunch-run/crunchrun.go

index 23fd331d1f1282446e3d9dda3881916ec80c3cb0..ca19f41bdc2235b24e30156ec5032205a5f242d6 100644 (file)
@@ -5,7 +5,6 @@
 package keepclient
 
 import (
-       "bytes"
        "io"
        "sort"
        "sync"
@@ -65,10 +64,11 @@ func (c *BlockCache) Get(kc *KeepClient, locator string) ([]byte, error) {
                }
                c.cache[cacheKey] = b
                go func() {
-                       rdr, _, _, err := kc.Get(locator)
-                       data := bytes.NewBuffer(make([]byte, 0, BLOCKSIZE))
+                       rdr, size, _, err := kc.Get(locator)
+                       var data []byte
                        if err == nil {
-                               _, err = io.Copy(data, rdr)
+                               data := make([]byte, size, BLOCKSIZE)
+                               _, err = io.ReadFull(rdr, data)
                                err2 := rdr.Close()
                                if err == nil {
                                        err = err2
index 8d437a8f20bbe98747eb45d13bee7c83219e4248..7d5ee7eba9aaaa6313abf53db7e773b3b7ca3b70 100644 (file)
@@ -11,11 +11,6 @@ import (
        "errors"
        "flag"
        "fmt"
-       "git.curoverse.com/arvados.git/lib/crunchstat"
-       "git.curoverse.com/arvados.git/sdk/go/arvados"
-       "git.curoverse.com/arvados.git/sdk/go/arvadosclient"
-       "git.curoverse.com/arvados.git/sdk/go/keepclient"
-       "git.curoverse.com/arvados.git/sdk/go/manifest"
        "io"
        "io/ioutil"
        "log"
@@ -32,6 +27,12 @@ import (
        "syscall"
        "time"
 
+       "git.curoverse.com/arvados.git/lib/crunchstat"
+       "git.curoverse.com/arvados.git/sdk/go/arvados"
+       "git.curoverse.com/arvados.git/sdk/go/arvadosclient"
+       "git.curoverse.com/arvados.git/sdk/go/keepclient"
+       "git.curoverse.com/arvados.git/sdk/go/manifest"
+
        dockertypes "github.com/docker/docker/api/types"
        dockercontainer "github.com/docker/docker/api/types/container"
        dockernetwork "github.com/docker/docker/api/types/network"