diff --git a/pkgs/ioswitch/dag/node.go b/pkgs/ioswitch/dag/node.go index f3703be..60f8ea9 100644 --- a/pkgs/ioswitch/dag/node.go +++ b/pkgs/ioswitch/dag/node.go @@ -245,7 +245,7 @@ func (s *ValueInputSlots) GetVarIDs() []exec.VarID { } func (s *ValueInputSlots) GetVarIDsStart(start int) []exec.VarID { - return s.GetVarIDsRanged(start, s.Len()-start) + return s.GetVarIDsRanged(start, s.Len()) } func (s *ValueInputSlots) GetVarIDsRanged(start, end int) []exec.VarID { diff --git a/pkgs/ioswitch/exec/utils.go b/pkgs/ioswitch/exec/utils.go index 09c48d3..64b00c9 100644 --- a/pkgs/ioswitch/exec/utils.go +++ b/pkgs/ioswitch/exec/utils.go @@ -79,3 +79,19 @@ func (r *Range) ClampLength(maxLen int64) { *r.Length = math2.Min(*r.Length, maxLen-r.Offset) } + +func (r *Range) Equals(other Range) bool { + if r.Offset != other.Offset { + return false + } + + if r.Length == nil && other.Length == nil { + return true + } + + if r.Length == nil || other.Length == nil { + return false + } + + return *r.Length == *other.Length +} diff --git a/sdks/storage/storage_feature.go b/sdks/storage/storage_feature.go index a3bb85a..0e150cb 100644 --- a/sdks/storage/storage_feature.go +++ b/sdks/storage/storage_feature.go @@ -51,6 +51,7 @@ func (f *BypassWriteFeature) String() string { type MultipartUploadFeature struct { serder.Metadata `union:"MultipartUpload"` Type string `json:"type"` + TempDir string `json:"tempDir"` // 临时文件存放目录 MinPartSize int64 `json:"minPartSize"` // 最小分段大小 MaxPartSize int64 `json:"maxPartSize"` // 最大分段大小 }