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

protect voms-proxy-info in Credential/Proxy against JVM warning message #12075

Closed
belforte opened this issue Aug 16, 2024 · 3 comments · Fixed by #12076 or #12084
Closed

protect voms-proxy-info in Credential/Proxy against JVM warning message #12075

belforte opened this issue Aug 16, 2024 · 3 comments · Fixed by #12076 or #12084
Assignees

Comments

@belforte
Copy link
Member

Impact of the bug
sometimes CRAB TaskWorker fails to submit a user taskl

Describe the bug
CRAB TW have multiple processes running at same time. the JVM used in voms-proxy client can at time print a warning line before the actual information, still returning exit code 0. Proxy.py tries to eval the reply as an int, and raises an exception.
More details in dmwm/CRABServer#8625

How to reproduce it
not easily reproducible. A full protection may be out of reach. But curing the known use case will surely help.

Expected behavior
fewer "obscure" submission failure

Additional context and error message
voms-proxy-info --timeleft returns

[0.002s][warning][perf,memops] Cannot use file /tmp/hsperfdata_crab3/760874 because it is locked by another process (errno = 11)
447504

I will provide a PR to fix this

@belforte belforte self-assigned this Aug 16, 2024
@belforte
Copy link
Member Author

NOTE: there are other uses of voms-proxy-info in Crential/Proxy besides -timeleft but this is the only one used in TaskWorker concurrent processes. I.e. the other commands should never report that JVM message.
So I will only change code for this use case.

NOTE: this did not happen until we moved to IAM and debian container, were we found that we needed voms-proxy-info v. 3

@belforte
Copy link
Member Author

alas this is not enough also other lines in Proxy.py needs to be protected like

cmd = 'voms-proxy-info -file ' + proxy + ' -actimeleft'

I will make another PR
sorry about this

@belforte
Copy link
Member Author

The solution in #12076 was wrong. It made the code ignore the exit code of the voms-proxy-info command, creating othere errors. Which led to the bogus conclusion of mine in #12083 .
I will make new PR with proper solution and added diagnostics, since voms/myproxy errors are a pain.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
1 participant