Fix pelican-server binary panic and Upgrade xrdhttp-pelican to v0.0.7#2476
Conversation
patrickbrophy
left a comment
There was a problem hiding this comment.
I ran both tests. The first one passed and as for the second I saw that xrootd launched as the xrootd user. I ran into this error but it may just be a bad config on my part:
cache director-based health test clean up routine failed to add directory /run/pelican/cache/namespace/pelican/monitoring to watch: no such file or directory
DEBUG[2025-07-09T15:18:24Z] Populating server's issuer URL as 'https://16ce70e416a9:7002' from configured value of 'Server.ExternalWebUrl'
DEBUG[2025-07-09T15:18:24Z] Signing token with key id: 9PJvIox6FfHzhUYkVkD4yjXJsKrEuPFcXE6USAUgXmQ
ERROR[2025-07-09T15:18:24Z] Failed to get a federation token: Failed to verify advertise token
ERROR[2025-07-09T15:18:24Z] Failed to calculate lifetime of federation token: failed to parse token: EOF.
|
@patrickbrophy Could you try to comment out the new config and start the Cache for a while (~5min) And then kill the process, uncomment the above configs, and restart the process? At this moment, are those error logs still exist? |
|
I just attempted this and the cache was running when the config was commented out. I then killed the cache and reapplied the drop privs configuration. Then the cache crashed with this error: |
|
Could you try to run |
- bypass the AllThreadsSyscall mechanism, which is used by syscall.Setgid() and syscall.Setuid(), causing the panic when CGO is disabled - pelican-server cache binary now works perfectly with CGO disabled, no more panics
patrickbrophy
left a comment
There was a problem hiding this comment.
After lots of testing, things are looking good!
LGTM
How to test
Checkout to this branch, then rebuild the container.
Run
rpm -q xrdhttp-pelicanin the new container, you should seexrdhttp-pelican-0.0.7-........If you want to further check, spin up the federation with the following configs for Cache only. Make sure there is no obvious error like
Unable to find /run/pelican/xrootd/cache/authfile-cache-generated; no such file or directoryin the running logs.