diff --git a/datanode/limit.go b/datanode/limit.go index 9bcac2d96..b89a1a2cb 100644 --- a/datanode/limit.go +++ b/datanode/limit.go @@ -3,6 +3,7 @@ package datanode import ( "context" "fmt" + "golang.org/x/time/rate" ) diff --git a/sdk/data/stream/extent_handler.go b/sdk/data/stream/extent_handler.go index a22aa02e6..828f7878c 100644 --- a/sdk/data/stream/extent_handler.go +++ b/sdk/data/stream/extent_handler.go @@ -506,7 +506,8 @@ func (eh *ExtentHandler) allocateExtent() (err error) { for i := 0; i < MaxSelectDataPartitionForWrite; i++ { if eh.key == nil { if dp, err = eh.stream.client.dataWrapper.GetDataPartitionForWrite(exclude); err != nil { - log.LogWarnf("allocateExtent: failed to get write data partition, eh(%v) exclude(%v)", eh, exclude) + log.LogWarnf("allocateExtent: failed to get write data partition, eh(%v) exclude(%v), clear exclude and try again!", eh, exclude) + exclude = make(map[string]struct{}) continue } diff --git a/sdk/data/wrapper/data_partition.go b/sdk/data/wrapper/data_partition.go index e0e4c89f5..810c9ebf4 100644 --- a/sdk/data/wrapper/data_partition.go +++ b/sdk/data/wrapper/data_partition.go @@ -133,7 +133,7 @@ func (dp *DataPartition) CheckAllHostsIsAvail(exclude map[string]struct{}) { for i := 0; i < len(dp.Hosts); i++ { host := dp.Hosts[i] if conn, err = util.DailTimeOut(host, proto.ReadDeadlineTime*time.Second); err != nil { - log.LogWarnf("Dail to Host (%v) err(%v)", host, err.Error()) + log.LogWarnf("CheckAllHostsIsAvail: dial host (%v) err(%v)", host, err) if strings.Contains(err.Error(), syscall.ECONNREFUSED.Error()) { exclude[host] = struct{}{} }