[ https://issues.apache.org/jira/browse/DRILL-2269?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Aman Sinha updated DRILL-2269: ------------------------------ Component/s: Query Planning & Optimization > Provide default implementation for getting cost of evaluating an expression > in base class of LogicalExpression, in stead of throw Exception > -------------------------------------------------------------------------------------------------------------------------------------------- > > Key: DRILL-2269 > URL: https://issues.apache.org/jira/browse/DRILL-2269 > Project: Apache Drill > Issue Type: Bug > Components: Query Planning & Optimization > Reporter: Jinfeng Ni > Assignee: Jinfeng Ni > Fix For: 0.8.0 > > Attachments: > 0001-DRILL-2269-Add-default-implementation-for-estimating.patch > > > Today, the abstract class of LogicalExpression will throw Exception for two > methods related to estimate the cost of evaluating an expression, in the hope > that sub classes will override those two methods. However, if someone forgets > to override, compiler and mvn build process will still be successful, yet > will hit Exception in execution-time, complaining the sub class does not > implement these methods. As Drill's adding more sub classes of > LogicalExpression to the code base, it's more likely for someone to forget to > override those two methods, making it error-prone to just throw Exception in > the base class. > In stead, we should provide a default implementation for those two methods in > the base class. Certain sub classes will override to change the behavior. > > -- This message was sent by Atlassian JIRA (v6.3.4#6332)