Skip to content

[BUG] Segmentation fault in interruptible.hpp #1225

Closed
@cjnolet

Description

cugraph has been encountering a segfault in interruptible.hpp. It seems to only appear when taking the Python path through their code, for some reason, but it's very consistent. The reproducer for this issue (assumes #1224 has been reverted) is:

import cugraph
import cudf
if __name__ == "__main__":

    edgelist = cudf.DataFrame( { "src": [0, 1, 2], "dst": [1, 2, 4], "wgt": [0.0, 0.1, 0.2], })
    G = cugraph.Graph()

    G.from_cudf_edgelist(edgelist, source="src", destination="dst", edge_attr="wgt", store_transposed=True)

    r = cugraph.pagerank(G)

And it's important to run this in a loop because it doesn't happen everytime:

while true; do python test_failure.py; if [$? -ne 0]; then break; fi; done

The following shows the error happening on line 214 here, which appears it might be related to an object being used in a callback after it's been cleaned up (something like registry_.find(xxx) after registry_ has already been deallocated, maybe?)

image

cc @achirkin @tfeher

I'm not sure why this doesn't seem to be happening in pylibraft, cuml, or cuopt but it's definitely consistently reproducible in cugraph.

@ChuckHastings @alexbarghi-nv @rlratzel @seunghwak @BradReesWork FYI

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions