Hi, The problem is ProjectLimeRel should have **lime** rel as input, however now it has LogicalFilter as an input.
The issue is caused by the following line: https://github.com/tglanz/limestone/blob/master/core/src/main/java/org/tglanz/limestone/rules/LogicalProjectConverterRule.java#L29 You probably need to replace source.getInput() with something like convert(source.getInput(), source.getInput().getTraitSet().replace(LimeConvention.INSTANCE)) See https://github.com/apache/calcite/blob/bc2d7e1ce0ff0a2193df2ce6e59d5501766bbca5/core/src/main/java/org/apache/calcite/adapter/enumerable/EnumerableProjectRule.java#L45 Vladimir
