Hi, You are looking into Mongo-to-enumerable converter.
Calcite has 'built-in' execution engine that is called 'enumerable convention'. It can execute almost all kinds of relational expressions. Typically it operates via 'Enumerable' methods. To glue this up, a java code is generated on the fly that arranges enumerable calls in proper order. 'linq4j' is translated to this java code. So, technically, Calcite walks this linq4j when preparing java code for enumerable execution. Mongo-to-enumerable is needed when you push just a subset of operations to mongo and use the result as input to 'enumerable executor'. Typically those kind of converters are not expected to include hardcore linq4j stuff. Does it make sense? Can you share the sample of your code that makes you feel bad? Regards, Vladimir Sitnikov
