Hi,
I'm trying to understand the CSV Adapter and how the rules are fired.The
CsvProjectTableScanRule gets fired when I use CsvTranslatableTable.But I'm not
understanding why I'm getting a plan that scans all fields when I use an
aggregate function.For example:explain plan for select name from
emps;CsvTableScan(table=[[SALES, EMPS]], fields=[[1]])
explain plan for select max(name) from emps;EnumerableAggregate(group=[{}],
EXPR$0=[MAX($1)])CsvTableScan(table=[[SALES, EMPS]], fields=[[0, 1, 2, 3, 4, 5,
6, 7, 8, 9]])
I noticed that the rule gets fired and at that point it shows just 1 field
being used.But the last time CsvTableScan.deriveRowType() gets called it has
all the fields set, and it's not the instance create by the rule, but the first
instance created with all the fields.
Can anybody explain me if this is a bug or if this is supposed to happen with
aggregate functions ?
Best regards,
Luis Fernando Kauer