Boaz Ben-Zvi created DRILL-7173:
-----------------------------------
Summary: Analyze table may fail when prefer_plain_java is set to
true on codegen for resetValues
Key: DRILL-7173
URL: https://issues.apache.org/jira/browse/DRILL-7173
Project: Apache Drill
Issue Type: Improvement
Components: Execution - Codegen
Affects Versions: 1.15.0
Environment: *prefer_plain_java: true*
Reporter: Boaz Ben-Zvi
Fix For: 1.17.0
The *prefer_plain_java* compile option is useful for debugging of generated
code (can be set in dril-override.conf; the default value is false). When set
to true, some "analyze table" calls generate code that fails due to addition of
a SchemaChangeException which is not in the Streaming Aggr template.
For example:
{noformat}
apache drill (dfs.tmp)> create table lineitem3 as select * from
cp.`tpch/lineitem.parquet`;
+----------+---------------------------+
| Fragment | Number of records written |
+----------+---------------------------+
| 0_0 | 60175 |
+----------+---------------------------+
1 row selected (2.06 seconds)
apache drill (dfs.tmp)> analyze table lineitem3 compute statistics;
Error: SYSTEM ERROR: CompileException: File
'org.apache.drill.exec.compile.DrillJavaFileObject[StreamingAggregatorGen4.java]',
Line 7869, Column 20: StreamingAggregatorGen4.java:7869: error: resetValues()
in org.apache.drill.exec.test.generated.StreamingAggregatorGen4 cannot override
resetValues() in
org.apache.drill.exec.physical.impl.aggregate.StreamingAggTemplate
public boolean resetValues()
^
overridden method does not throw
org.apache.drill.exec.exception.SchemaChangeException
(compiler.err.override.meth.doesnt.throw)
{noformat}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)