Blizzara opened a new issue, #10412: URL: https://github.com/apache/datafusion/issues/10412
### Describe the bug Since https://github.com/substrait-io/substrait/pull/537, the standard has declared that functions must be named with compound names consisting of both the function and its types. For example, for the function "not", the full name would now be "not:bool". However trying to use "not:bool" in Substrait input for DataFusion results in `This feature is not implemented: Unsupported function name: \"not:bool\"` as "not:bool" doesn't match into the list used by https://github.com/apache/datafusion/blob/f0e96c670108ba0ffdebb9dd9e764bba4d2dca8c/datafusion/substrait/src/logical_plan/consumer.rs#L125 ### To Reproduce Using e.g. [isthmus](https://github.com/substrait-io/substrait-java/tree/main/isthmus-cli) from Substrait-java, one can produce a simple substrait: ``` substrait-java % ./isthmus-cli/build/graal/isthmus "select not d from t" -c "create table t (d boolean)" --outputformat=BINARY | base64 ChsIARIXL2Z1bmN0aW9uc19ib29sZWFuLnlhbWwSDhoMCAEaCG5vdDpib29sGkcSRQo7OjkKBRIDCgEBEhoKGAoCCgASDQoBRBIICgQKAhABGAI6AwoBVBoUGhIaBAoCEAEiChoIEgYKAhIAIgASBkVYUFIkMA== ``` (Drop the `outputformat=BINARY | base64` to see the plan as text) Then using DataFusion to execute that plan: ``` #[tokio::test] async fn test_not() -> datafusion::common::Result<()> { let protobuf = general_purpose::STANDARD.decode("ChsIARIXL2Z1bmN0aW9uc19ib29sZWFuLnlhbWwSDhoMCAEaCG5vdDpib29sGkcSRQo7OjkKBRIDCgEBEhoKGAoCCgASDQoBRBIICgQKAhABGAI6AwoBVBoUGhIaBAoCEAEiChoIEgYKAhIAIgASBkVYUFIkMA==").unwrap(); let ctx = SessionContext::new(); ctx.register_csv("T", "tests/testdata/data.csv", CsvReadOptions::new()) .await?; let plan = deserialize_bytes(protobuf).await?; let _ = from_substrait_plan(&ctx, plan.as_ref()).await?; Ok(()) } ``` Fails with `Error: NotImplemented("Unsupported function name: \"not:bool\"")` ### Expected behavior `not:bool` should be found and the plan be created correctly ### Additional context _No response_ -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org For additional commands, e-mail: github-h...@datafusion.apache.org