diff --git a/cmn/err.go b/cmn/err.go index 283ea2066a2..fb0e735e21f 100644 --- a/cmn/err.go +++ b/cmn/err.go @@ -261,7 +261,6 @@ func NewErrFailedTo(actor fmt.Stringer, action string, what any, err error, ecod if e, ok := err.(*ErrFailedTo); ok { return e } - _clean(err) e := &ErrFailedTo{action: action, what: what, err: err} e.actor = thisNodeName @@ -673,7 +672,6 @@ func NewErrAborted(what, ctx string, err error) *ErrAborted { if e, ok := err.(*ErrAborted); ok { return e } - _clean(err) return &ErrAborted{what: what, ctx: ctx, err: err} } diff --git a/ec/manager.go b/ec/manager.go index 0a6709b3f96..93b6dc663e4 100644 --- a/ec/manager.go +++ b/ec/manager.go @@ -236,7 +236,9 @@ func (mgr *Manager) recvResponse(hdr *transport.ObjHdr, objReader io.Reader, err switch hdr.Opcode { case reqPut: xctn := mgr.RestoreBckRespXact(bck) + xctn.IncPending() xctn.dispatchResp(iReq, hdr, objReader) + xctn.DecPending() case respPut: // Process the request even if the number of targets is insufficient // (might've started when we had enough) diff --git a/ec/respondx.go b/ec/respondx.go index 934ccdfbaf3..56306ce9c5f 100644 --- a/ec/respondx.go +++ b/ec/respondx.go @@ -182,9 +182,6 @@ func (r *XactRespond) dispatchReq(iReq intraReq, hdr *transport.ObjHdr, bck *met } func (r *XactRespond) dispatchResp(iReq intraReq, hdr *transport.ObjHdr, object io.Reader) { - r.IncPending() - defer r.DecPending() - switch hdr.Opcode { case reqPut: // a remote target sent a replica/slice while it was diff --git a/xact/base.go b/xact/base.go index 9b84fd21b72..5ab8c2a027c 100644 --- a/xact/base.go +++ b/xact/base.go @@ -177,7 +177,7 @@ func (xctn *Base) AddErr(err error, logExtra ...int) { return } debug.Assert(err != nil) - fs.CleanPathErr(err) + xctn.err.Add(err) // just add if len(logExtra) == 0 {