aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKyle Sanderson <kyle.leet@gmail.com>2022-01-11 22:22:39 -0800
committerGitHub <noreply@github.com>2022-01-11 22:22:39 -0800
commit9e012001becf83dd5476aac25098aea59f4ddddc (patch)
treeac15b01075c97640de99d23d8091ec4450f6c477
parent1a7d5b5b5e76fa42b0e2cd8e20d0911861f1d4a0 (diff)
downloadseaweedfs-9e012001becf83dd5476aac25098aea59f4ddddc.tar.xz
seaweedfs-9e012001becf83dd5476aac25098aea59f4ddddc.zip
filer.copy: don't crash when volume creation fails
panic: runtime error: invalid memory address or nil pointer dereference [signal SIGSEGV: segmentation violation code=0x1 addr=0x28 pc=0x1d58247] goroutine 7482 [running]: github.com/chrislusf/seaweedfs/weed/command.(*FileCopyWorker).uploadFileInChunks.func1(0x2) /go/src/github.com/chrislusf/seaweedfs/weed/command/filer_copy.go:488 +0x2a7 created by github.com/chrislusf/seaweedfs/weed/command.(*FileCopyWorker).uploadFileInChunks /go/src/github.com/chrislusf/seaweedfs/weed/command/filer_copy.go:455 +0x225 panic: runtime error: invalid memory address or nil pointer dereference [signal SIGSEGV: segmentation violation code=0x1 addr=0x28 pc=0x1d58247] goroutine 7480 [running]: github.com/chrislusf/seaweedfs/weed/command.(*FileCopyWorker).uploadFileInChunks.func1(0x0) /go/src/github.com/chrislusf/seaweedfs/weed/command/filer_copy.go:488 +0x2a7 created by github.com/chrislusf/seaweedfs/weed/command.(*FileCopyWorker).uploadFileInChunks /go/src/github.com/chrislusf/seaweedfs/weed/command/filer_copy.go:455 +0x225
-rw-r--r--weed/command/filer_copy.go3
1 files changed, 2 insertions, 1 deletions
diff --git a/weed/command/filer_copy.go b/weed/command/filer_copy.go
index 88ae55e84..185a1d0ff 100644
--- a/weed/command/filer_copy.go
+++ b/weed/command/filer_copy.go
@@ -482,7 +482,8 @@ func (worker *FileCopyWorker) uploadFileInChunks(task FileCopyTask, f *os.File,
})
})
if err != nil {
- fmt.Printf("Failed to assign from %v: %v\n", worker.options.masters, err)
+ uploadError = fmt.Errorf("Failed to assign from %v: %v\n", worker.options.masters, err)
+ return
}
targetUrl := "http://" + assignResult.Location.Url + "/" + assignResult.FileId