Skip to content

BUG: Allow names for shared records to come fron non-zero ranks #1026

@shanedsnyder

Description

@shanedsnyder

Currently, it's assumed in darshan-core that if there's a shared record across all ranks, that rank 0 has the name for it and can write it to the log file.

It's theoretically possible in the DFS module for rank 0 to not have any name associated with some records. In particular, this can happen when other non-zero ranks open a file and then share the nameless file reference with rank 0 using dfs_obj_local2global()/dfs_obj_global2local(). In this case, no name gets written to the log file for this record, since rank 0 is responsible for writing this but has no record of the initial name.

Note that in the DFS case above, all ranks can still agree on the generated Darshan record ID for the file, since it's based on the underlying OID associated with the file and not the file name (which not all processes are guaranteed to have a record of).

To better handle this, we should update our shared record handling code to somehow allow non-zero ranks to contribute record names to the log file if rank 0 has no record of them.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions