replace some uses of multierr with fmt.Errorf's %w;%w
fix up timeout error string inconsistencies: "timed out" vs "timeout"
as a result of checking the errors list with "Other" taking up a very large share, we have, in places 2 and 3:
retrieval failed; retrieval timed out after 20s
timeout after 20s
tbh I'm not actually sure why the former is now showing up more than the latter, I suspect it must have been something I did with the context juggling I've had to do
failed to load root node: failed to load root CID: context canceled
Which is fine, but I think it would be preferable to show this as a timeout instead (i.e. parent retrieval has a timeout and cancels context, the protocol retriever records it as a context cancel). It may be possible to use WithCancelCause to check for DeadlineExceeded post 1.19, but this'll need some investigation.
as a result of checking the errors list with "Other" taking up a very large share, we have, in places 2 and 3:
tbh I'm not actually sure why the former is now showing up more than the latter, I suspect it must have been something I did with the context juggling I've had to do
We're also getting this now:
Which is fine, but I think it would be preferable to show this as a timeout instead (i.e. parent retrieval has a timeout and cancels context, the protocol retriever records it as a context cancel). It may be possible to use
WithCancelCause
to check forDeadlineExceeded
post 1.19, but this'll need some investigation.