substrait-io / substrait-java

Apache License 2.0
75 stars 72 forks source link

allow functions with identical signatures in different extensions to coexist #275

Open vbarua opened 3 months ago

vbarua commented 3 months ago

Currently, substrait-java cannot handle functions with identical signatures, even if they are present in different extensions files.

substrait-java should be updated to allow this, as these are technically not duplicate functions.

See https://github.com/substrait-io/substrait/pull/631 for an example of this issue occuring.

jacques-n commented 2 months ago

Definitely should try to fix this as it's being used as a reason to hold off doing natural things in substrait-io/substrait

vbarua commented 2 months ago

Actually handling this might be a big change, but if we want to introduce the changes that would break this in substrait it's relatively straightforward to add a workaround hack into substrait-java to exclude duplicated definitions. Effectively, when we build the default extension we would have a blocklist of certain extension that we we would ignore.