Browse Source

add fileId to UploadWithRetry return result

pull/3472/head
chrislu 2 years ago
parent
commit
a3553da7f7
  1. 4
      weed/command/filer_copy.go
  2. 4
      weed/operation/upload_content.go

4
weed/command/filer_copy.go

@ -585,8 +585,7 @@ func detectMimeType(f *os.File) string {
func (worker *FileCopyWorker) saveDataAsChunk(reader io.Reader, name string, offset int64) (chunk *filer_pb.FileChunk, err error) { func (worker *FileCopyWorker) saveDataAsChunk(reader io.Reader, name string, offset int64) (chunk *filer_pb.FileChunk, err error) {
var finalFileId string
uploadResult, flushErr, _ := operation.UploadWithRetry(
finalFileId, uploadResult, flushErr, _ := operation.UploadWithRetry(
worker, worker,
&filer_pb.AssignVolumeRequest{ &filer_pb.AssignVolumeRequest{
Count: 1, Count: 1,
@ -604,7 +603,6 @@ func (worker *FileCopyWorker) saveDataAsChunk(reader io.Reader, name string, off
PairMap: nil, PairMap: nil,
}, },
func(host, fileId string) string { func(host, fileId string) string {
finalFileId = fileId
return fmt.Sprintf("http://%s/%s", host, fileId) return fmt.Sprintf("http://%s/%s", host, fileId)
}, },
reader, reader,

4
weed/operation/upload_content.go

@ -80,10 +80,10 @@ func init() {
// UploadWithRetry will retry both assigning volume request and uploading content // UploadWithRetry will retry both assigning volume request and uploading content
// The option parameter does not need to specify UploadUrl and Jwt, which will come from assigning volume. // The option parameter does not need to specify UploadUrl and Jwt, which will come from assigning volume.
func UploadWithRetry(filerClient filer_pb.FilerClient, assignRequest *filer_pb.AssignVolumeRequest, uploadOption *UploadOption, genFileUrlFn func(host, fileId string) string, reader io.Reader) (uploadResult *UploadResult, err error, data []byte) {
func UploadWithRetry(filerClient filer_pb.FilerClient, assignRequest *filer_pb.AssignVolumeRequest, uploadOption *UploadOption, genFileUrlFn func(host, fileId string) string, reader io.Reader) (fileId string, uploadResult *UploadResult, err error, data []byte) {
doUploadFunc := func() error { doUploadFunc := func() error {
var fileId, host string
var host string
var auth security.EncodedJwt var auth security.EncodedJwt
// grpc assign volume // grpc assign volume

Loading…
Cancel
Save