drill-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jinfeng Ni (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (DRILL-2269) Provide default implementation for getting cost of evaluating an expression in base class of LogicalExpression, in stead of throw Exception
Date Wed, 18 Feb 2015 22:57:12 GMT

     [ https://issues.apache.org/jira/browse/DRILL-2269?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Jinfeng Ni updated DRILL-2269:
------------------------------
    Attachment: 0001-DRILL-2269-Add-default-implementation-for-estimating.patch

[~amansinha100], could you please review the patch? Thanks.



> 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
>            Reporter: Jinfeng Ni
>            Assignee: Jinfeng Ni
>         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)

Mime
View raw message