mirror of
https://github.com/rclone/rclone.git
synced 2024-11-25 17:57:44 +08:00
oracleobjectstorage: fix accounting for multpart uploads
This commit is contained in:
parent
d69cdb79f7
commit
f2467d07aa
|
@ -16,6 +16,7 @@ import (
|
||||||
|
|
||||||
"github.com/ncw/swift/v2"
|
"github.com/ncw/swift/v2"
|
||||||
"github.com/rclone/rclone/lib/multipart"
|
"github.com/rclone/rclone/lib/multipart"
|
||||||
|
"github.com/rclone/rclone/lib/pool"
|
||||||
"golang.org/x/net/http/httpguts"
|
"golang.org/x/net/http/httpguts"
|
||||||
|
|
||||||
"github.com/oracle/oci-go-sdk/v65/common"
|
"github.com/oracle/oci-go-sdk/v65/common"
|
||||||
|
@ -128,6 +129,12 @@ func (w *objectChunkWriter) WriteChunk(ctx context.Context, chunkNumber int, rea
|
||||||
err := fmt.Errorf("invalid chunk number provided: %v", chunkNumber)
|
err := fmt.Errorf("invalid chunk number provided: %v", chunkNumber)
|
||||||
return -1, err
|
return -1, err
|
||||||
}
|
}
|
||||||
|
// Only account after the checksum reads have been done
|
||||||
|
if do, ok := reader.(pool.DelayAccountinger); ok {
|
||||||
|
// To figure out this number, do a transfer and if the accounted size is 0 or a
|
||||||
|
// multiple of what it should be, increase or decrease this number.
|
||||||
|
do.DelayAccounting(2)
|
||||||
|
}
|
||||||
m := md5.New()
|
m := md5.New()
|
||||||
currentChunkSize, err := io.Copy(m, reader)
|
currentChunkSize, err := io.Copy(m, reader)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user