1) The Knuth variance is an Impala built-in. Internally, Impala can handle aggregate functions with different intermediate and output types. Basically, the only reason you are not allowed to create UDAs with different intermediate/output types is because we have not enabled the feature in sermantic analysis. For us, enabling the feature is the easy part. Adding extensive testing is the hard part. If you are curious, the check for preventing you from creating such UDAs is in: ./fe/src/main/java/com/cloudera/impala/analysis/CreateUdaStmt.java lines 137 following 2) Like I said, enabling the feature is not hard, but does involve a non-trivial QA effort, so I cannot promise a concrete release at this point. I'd recommend keeping an eye on that JIRA for updates to the target version.
... View more