cugraph
cugraph copied to clipboard
[IMP] Clarify Supported Type Combinations when creating a SGGraph or MGGraph
When passing an unsupported type combination, the user gets currently gets an undescriptive error message that is meaningless to them unless they understand libcugraph. Instead, we should raise a more descriptive error in pylibcugraph (i.e. int64 is not supported for edge weights).
What are you looking for here in terms of behavior? Are you calling python functions for creating SGGraph and MGGraph, or are you calling PLC directly?
Typically we have addressed this in the python layer by adding checks before even calling the PLC/C API. If you're calling python functions for creating SGGraph and MGGraph then we might need to look at what checks are in that code. If you're calling PLC functions directly then we would need to address it there.
The C API should raise the exception: "Type Dispatcher executing unsupported combination of types". Getting a more specific message will be a bit more complicated, but certainly possible if we need it to be done in the C API.
I think this should be done in pylibcugraph, as is done for some other code. cuGraph-PyG/DGL directly calls pylibcugraph.
I'm suggesting we do a check in the pylibcugraph API before it even calls the C API