Julian, I encountered the same problem adding things like AVG. Are aggregators handled the same way (and in the same place)?
On Mon, Sep 9, 2013 at 12:30 PM, Julian Hyde <[email protected]> wrote: > That error stack says that the SIN function is not known to Optiq's SQL > validator. Optiq's validator is driven by a table of functions and > operators, but Drill doesn't currently have a way to add to that table. > > Since SIN is a generally useful function, it should be built-in in Optiq. > You could do that by modifying SqlStdOperatorTable and adding a field > similar to the one that defines the SQRT operator: > > public static final SqlFunction sqrtFunc = > new SqlFunction( > "SQRT", > SqlKind.OTHER_FUNCTION, > SqlTypeStrategies.rtiNullableDouble, > null, > SqlTypeStrategies.otcNumeric, > SqlFunctionCategory.Numeric); > > I believe the validation rules are identical for SQRT and SIN. > > However we should also add a mechanism to Drill to allow it to add its own > functions (including user-defined functions) to Optiq's SQL validator on > the fly. > > Julian > >
