ReduceExpressionsRule throws "duplicate key" exception

Details

Description

Hive's unit test that reproduces the problem: smb_mapjoin_25
Stack Trace:
java.lang.IllegalArgumentException: duplicate key: $1
at com.google.common.base.Preconditions.checkArgument(Preconditions.java:119)
at com.google.common.collect.RegularImmutableMap.<init>(RegularImmutableMap.java:67)
at com.google.common.collect.ImmutableMap$Builder.fromEntryList(ImmutableMap.java:249)
at com.google.common.collect.ImmutableMap$Builder.build(ImmutableMap.java:235)
at org.apache.calcite.rel.rules.ReduceExpressionsRule.predicateConstants(ReduceExpressionsRule.java:451)
at org.apache.calcite.rel.rules.ReduceExpressionsRule.reduceExpressions(ReduceExpressionsRule.java:337)
at org.apache.calcite.rel.rules.ReduceExpressionsRule$3.onMatch(ReduceExpressionsRule.java:223)