diff options
| author | Kyle Sanderson <kyle.leet@gmail.com> | 2022-01-11 22:22:39 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-01-11 22:22:39 -0800 |
| commit | 9e012001becf83dd5476aac25098aea59f4ddddc (patch) | |
| tree | ac15b01075c97640de99d23d8091ec4450f6c477 | |
| parent | 1a7d5b5b5e76fa42b0e2cd8e20d0911861f1d4a0 (diff) | |
| download | seaweedfs-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.go | 3 |
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 |
