When merging extension collections that contain functions with identical names and signatures but different URNs, FunctionConverter throws IllegalArgumentException during initialization. This prevents using multiple extension sets that reasonably might implement the same function (e.g., ltrim) with slightly different semantics or optimizations.
Example Error:
java.lang.IllegalArgumentException: Multiple entries with same key: ltrim:str_str
at com.google.common.collect.ImmutableMap$Builder.build(ImmutableMap.java:...)
at io.substrait.isthmus.expression.FunctionConverter$FunctionFinder.<init (FunctionConverter.java:179)