darshan randomly fails to detect username on mira/cetus
This ticket was split off from issue #201 (closed) so that we could troubleshoot and track the issue separately for Mira/Cetus at the ALCF. See the original ticket for more details.
In summary, Darshan is randomly failing to detect the username associated with a job on these systems and instead generates a log file with the user's EUID for certain jobs. This issue occurs with both 2.x and 3.x versions of Darshan. Darshan has attempted to determine what the username is using the following 3 methods, in order:
1.) cuserid()
2.) getenv("LOGNAME")
3.) geteuid()
(which returns the numeric euid of a user rather than the string user name)
We have confirmed that getenv("LOGNAME")
never succeeds on Mira/Cetus, so if cuserid()
fails sporadically, it will fall back to using EUIDs causing the issue. We need to determine what is causing cuserid()
to fail and if there is any workaround. If not, we should look into whether or not there is another environment variable we can query for the user's username.