Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"triedrc" is missing when XrdCl get no errNo #1435

Closed
wyang007 opened this issue Mar 27, 2021 · 7 comments
Closed

"triedrc" is missing when XrdCl get no errNo #1435

wyang007 opened this issue Mar 27, 2021 · 7 comments
Assignees

Comments

@wyang007
Copy link
Member

In some cases XrdCl will not get an errNo. For example, when the connection and retry timeout. In that case, XRootDMsgHandler::UpdateTriedCGI() set "tried=" but does not set "triedrc=". Do we want to set "triedrc" to something?

@xrootd-dev
Copy link

xrootd-dev commented Mar 27, 2021 via email

@simonmichal simonmichal self-assigned this Apr 16, 2021
@simonmichal
Copy link
Contributor

Wouldn't it make more sense to introduce 2 new codes say connerr for timeouts and redirlim for redirect limit?

@osschar
Copy link
Contributor

osschar commented Apr 20, 2021

What happens in such a case when triedrc=resel is already set? Does the additional code (srverr or one of the new ones) get appended, like triedrc=resel,srverr?

@simonmichal
Copy link
Contributor

well, I suppose it's for us to decide ;-) currently from what I see triedrc has just one value.

@abh3
Copy link
Member

abh3 commented Apr 20, 2021

The triedrc is a rather blunt approximation of what is wrong. The server uses it to determine how the selection of a new node should proceed. It doesn't much matter what the error is for server related errors, so keeping it as srverr is just fine. For ioerrs, the redirector may decide to blacklist the server for that file for a while, for enoent the redirector will refresh the cache before selecting a new node. The resel rc limits the selection process. So, I don't think it's necessary to introduce any more error codes as the ones we have are good enough. The triedrc only has to indicate the last immediate error, the redirector does not need nor use any history/ So, additional codes are never appended to the triedrc.

@simonmichal
Copy link
Contributor

@abh3 : thanks for the clarification, so srverr it is!

@simonmichal
Copy link
Contributor

That's about it: e9fb99b

I'll close this one, if there are any problems with the solution please reopen.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants