Impala
Impalaistheopensource,nativeanalyticdatabaseforApacheHadoop.
|
Protected Member Functions | |
void | resolveInlineViewRefs (Analyzer analyzer) throws AnalysisException |
void | createSortInfo (Analyzer analyzer) throws AnalysisException |
void | createSortTupleInfo (Analyzer analyzer) |
Expr | getFirstAmbiguousAlias (List< Expr > exprs) |
void | substituteOrdinals (List< Expr > exprs, String errorPrefix, Analyzer analyzer) throws AnalysisException |
void | materializeSlots (Analyzer analyzer, List< Expr > exprs) |
Protected Attributes | |
SelectList | selectList_ |
final ArrayList< String > | colLabels_ |
final List< TableRef > | tableRefs_ |
Expr | whereClause_ |
ArrayList< Expr > | groupingExprs_ |
final Expr | havingClause_ |
String | sqlString_ |
WithClause | withClause_ |
ArrayList< OrderByElement > | orderByElements_ |
LimitElement | limitElement_ |
ArrayList< Expr > | resultExprs_ = Lists.newArrayList() |
ArrayList< Expr > | baseTblResultExprs_ = Lists.newArrayList() |
final ExprSubstitutionMap | aliasSmap_ = new ExprSubstitutionMap() |
final ArrayList< Expr > | ambiguousAliasList_ = Lists.newArrayList() |
SortInfo | sortInfo_ |
boolean | evaluateOrderBy_ |
Analyzer | analyzer_ |
boolean | isExplain_ = false |
Package Functions | |
SelectStmt (SelectList selectList, List< TableRef > tableRefList, Expr wherePredicate, ArrayList< Expr > groupingExprs, Expr havingPredicate, ArrayList< OrderByElement > orderByElements, LimitElement limitElement) | |
Private Member Functions | |
Path | analyzeStarPath (List< String > rawPath, Analyzer analyzer) throws AnalysisException |
void | expandStar (Analyzer analyzer) throws AnalysisException |
void | expandStar (Path resolvedPath, Analyzer analyzer) throws AnalysisException |
void | addStarResultExpr (Path resolvedPath, Analyzer analyzer, String...relRawPath) throws AnalysisException |
void | analyzeAggregation (Analyzer analyzer) throws AnalysisException |
ExprSubstitutionMap | createCountAllMap (List< FunctionCallExpr > aggExprs, Analyzer analyzer) throws AnalysisException |
void | createAggInfo (ArrayList< Expr > groupingExprs, ArrayList< FunctionCallExpr > aggExprs, Analyzer analyzer) throws AnalysisException |
void | analyzeAnalytics (Analyzer analyzer) throws AnalysisException |
ArrayList< TableRef > | cloneTableRefs () |
Private Attributes | |
Expr | havingPred_ |
AggregateInfo | aggInfo_ |
AnalyticInfo | analyticInfo_ |
ExprSubstitutionMap | baseTblSmap_ = new ExprSubstitutionMap() |
ColumnAliasGenerator | columnAliasGenerator_ = null |
TableAliasGenerator | tableAliasGenerator_ = null |
Static Private Attributes | |
static final Logger | LOG = LoggerFactory.getLogger(SelectStmt.class) |
Representation of a single select block, including GROUP BY, ORDER BY and HAVING clauses.
Definition at line 45 of file SelectStmt.java.
|
inlinepackage |
Definition at line 72 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.tableRefs_.
Referenced by com.cloudera.impala.analysis.SelectStmt.clone().
|
inlineprivate |
Helper function used during star expansion to add a single result expr based on a given raw path to be resolved relative to an existing path.
Definition at line 453 of file SelectStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.expandStar().
|
inline |
Creates resultExprs and baseTblResultExprs.
Implements com.cloudera.impala.analysis.ParseNode.
Definition at line 142 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.aggInfo_, com.cloudera.impala.analysis.SelectStmt.analyzeAggregation(), com.cloudera.impala.analysis.SelectStmt.analyzeAnalytics(), com.cloudera.impala.analysis.SelectStmt.analyzeStarPath(), com.cloudera.impala.analysis.SelectStmt.clone(), com.cloudera.impala.analysis.QueryStmt.createSortInfo(), com.cloudera.impala.analysis.QueryStmt.createSortTupleInfo(), com.cloudera.impala.analysis.Expr.equals(), com.cloudera.impala.analysis.QueryStmt.evaluateOrderBy_, com.cloudera.impala.analysis.SelectStmt.expandStar(), com.cloudera.impala.analysis.AggregateInfoBase.getAggregateExprs(), com.cloudera.impala.analysis.SelectListItem.getExpr(), com.cloudera.impala.analysis.SelectListItem.getRawPath(), com.cloudera.impala.analysis.QueryStmt.hasLimit(), com.cloudera.impala.analysis.Expr.isAggregatePredicate(), com.cloudera.impala.analysis.SelectList.isDistinct(), com.cloudera.impala.analysis.SelectListItem.isStar(), com.cloudera.impala.analysis.SelectStmt.resolveInlineViewRefs(), com.cloudera.impala.analysis.QueryStmt.resultExprs_, com.cloudera.impala.analysis.SelectStmt.selectList_, com.cloudera.impala.analysis.QueryStmt.sortInfo_, com.cloudera.impala.analysis.SelectStmt.sqlString_, com.cloudera.impala.analysis.SelectStmt.tableRefs_, com.cloudera.impala.analysis.SelectStmt.toSql(), and com.cloudera.impala.analysis.SelectStmt.whereClause_.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyzeAggregation().
|
inlineprivate |
Analyze aggregation-relevant components of the select block (Group By clause, select list, Order By clause), substitute AVG with SUM/COUNT, create the AggregationInfo, including the agg output tuple, and transform all post-agg exprs given AggregationInfo's smap.
Definition at line 470 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.aggInfo_, com.cloudera.impala.analysis.QueryStmt.aliasSmap_, com.cloudera.impala.analysis.SelectStmt.analyze(), com.cloudera.impala.analysis.SelectStmt.createAggInfo(), com.cloudera.impala.analysis.SelectStmt.createCountAllMap(), com.cloudera.impala.analysis.QueryStmt.getFirstAmbiguousAlias(), com.cloudera.impala.analysis.SelectList.getItems(), com.cloudera.impala.analysis.SortInfo.getOrderingExprs(), com.cloudera.impala.analysis.AggregateInfoBase.getOutputTupleId(), com.cloudera.impala.analysis.AggregateInfo.getSecondPhaseDistinctAggInfo(), com.cloudera.impala.analysis.SelectStmt.groupingExprs_, com.cloudera.impala.analysis.SelectStmt.havingClause_, com.cloudera.impala.analysis.SelectStmt.havingPred_, com.cloudera.impala.analysis.Expr.isAggregatePredicate(), com.cloudera.impala.analysis.Expr.isBound(), com.cloudera.impala.analysis.SelectList.isDistinct(), com.cloudera.impala.analysis.QueryStmt.orderByElements_, com.cloudera.impala.analysis.QueryStmt.resultExprs_, com.cloudera.impala.analysis.SelectStmt.selectList_, com.cloudera.impala.analysis.QueryStmt.sortInfo_, com.cloudera.impala.analysis.QueryStmt.substituteOrdinals(), com.cloudera.impala.analysis.SelectStmt.tableRefs_, com.cloudera.impala.analysis.Expr.toSql(), and com.cloudera.impala.analysis.SelectStmt.toSql().
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze().
|
inlineprivate |
If the select list contains AnalyticExprs, create AnalyticInfo and substitute AnalyticExprs using the AnalyticInfo's smap.
Definition at line 755 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.analyticInfo_, com.cloudera.impala.analysis.QueryStmt.resultExprs_, and com.cloudera.impala.analysis.QueryStmt.sortInfo_.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze().
|
inlineprivate |
Resolves the given raw path as a STAR path and checks its legality. Returns the resolved legal path, or throws if the raw path could not be resolved or is an illegal star path.
Definition at line 366 of file SelectStmt.java.
References com.cloudera.impala.analysis.Path.PathType.STAR.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze().
|
inline |
Definition at line 883 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectList.clone(), com.cloudera.impala.analysis.LimitElement.clone(), com.cloudera.impala.analysis.Expr.clone(), com.cloudera.impala.analysis.QueryStmt.cloneOrderByElements(), com.cloudera.impala.analysis.SelectStmt.cloneTableRefs(), com.cloudera.impala.analysis.QueryStmt.cloneWithClause(), com.cloudera.impala.analysis.SelectStmt.groupingExprs_, com.cloudera.impala.analysis.SelectStmt.havingClause_, com.cloudera.impala.analysis.QueryStmt.limitElement_, com.cloudera.impala.analysis.SelectStmt.selectList_, com.cloudera.impala.analysis.SelectStmt.SelectStmt(), and com.cloudera.impala.analysis.SelectStmt.whereClause_.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze(), and com.cloudera.impala.analysis.SelectStmt.cloneTableRefs().
|
inlineinherited |
Definition at line 311 of file QueryStmt.java.
References com.cloudera.impala.analysis.QueryStmt.orderByElements_.
Referenced by com.cloudera.impala.analysis.ValuesStmt.clone(), com.cloudera.impala.analysis.UnionStmt.clone(), and com.cloudera.impala.analysis.SelectStmt.clone().
|
inlineprivate |
Definition at line 874 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.clone(), and com.cloudera.impala.analysis.SelectStmt.tableRefs_.
Referenced by com.cloudera.impala.analysis.SelectStmt.clone().
|
inlineinherited |
Definition at line 315 of file QueryStmt.java.
References com.cloudera.impala.analysis.QueryStmt.withClause_.
Referenced by com.cloudera.impala.analysis.ValuesStmt.clone(), com.cloudera.impala.analysis.UnionStmt.clone(), and com.cloudera.impala.analysis.SelectStmt.clone().
|
inlineprivate |
Create aggInfo for the given grouping and agg exprs.
Definition at line 734 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.aggInfo_, com.cloudera.impala.analysis.SelectList.isDistinct(), com.cloudera.impala.analysis.QueryStmt.resultExprs_, and com.cloudera.impala.analysis.SelectStmt.selectList_.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyzeAggregation().
|
inlineprivate |
Create a map from COUNT([ALL]) -> zeroifnull(COUNT([ALL])) if i) There is no GROUP-BY, and ii) There are other distinct aggregates to be evaluated. This transformation is necessary for COUNT to correctly return 0 for empty input relations.
Definition at line 689 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.groupingExprs_.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyzeAggregation().
|
inlineprotectedinherited |
Creates sortInfo by resolving aliases and ordinals in the orderingExprs. If the query stmt is an inline view/union operand, then order-by with no limit with offset is not allowed, since that requires a sort and merging-exchange, and subsequent query execution would occur on a single machine. Sets evaluateOrderBy_ to false for ignored order-by w/o limit/offset in nested queries.
Definition at line 115 of file QueryStmt.java.
References com.cloudera.impala.analysis.QueryStmt.aliasSmap_, com.cloudera.impala.analysis.QueryStmt.clone(), com.cloudera.impala.analysis.QueryStmt.evaluateOrderBy_, com.cloudera.impala.analysis.QueryStmt.getFirstAmbiguousAlias(), com.cloudera.impala.analysis.QueryStmt.hasLimit(), com.cloudera.impala.analysis.QueryStmt.hasOffset(), com.cloudera.impala.analysis.QueryStmt.orderByElements_, com.cloudera.impala.analysis.QueryStmt.sortInfo_, com.cloudera.impala.analysis.QueryStmt.substituteOrdinals(), com.cloudera.impala.analysis.StatementBase.toSql(), and com.cloudera.impala.analysis.Expr.toSql().
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze(), and com.cloudera.impala.analysis.UnionStmt.analyze().
|
inlineprotectedinherited |
Create a tuple descriptor for the single tuple that is materialized, sorted and output by the exec node implementing the sort. Done by materializing slot refs in the order-by and result expressions. Those SlotRefs in the ordering and result exprs are substituted with SlotRefs into the new tuple. This simplifies sorting logic for total (no limit) sorts. Done after analyzeAggregation() since ordering and result exprs may refer to the outputs of aggregation. Invoked for UnionStmt as well since TODO: We could do something more sophisticated than simply copying input slotrefs - e.g. compute some order-by expressions.
Definition at line 185 of file QueryStmt.java.
References com.cloudera.impala.analysis.QueryStmt.evaluateOrderBy_, and com.cloudera.impala.analysis.QueryStmt.resultExprs_.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze(), and com.cloudera.impala.analysis.UnionStmt.analyze().
|
inlineinherited |
Definition at line 278 of file QueryStmt.java.
References com.cloudera.impala.analysis.QueryStmt.evaluateOrderBy_.
|
inlineprivate |
Expand "*" select list item, ignoring semi-joined tables.
Definition at line 382 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.tableRefs_.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze().
|
inlineprivate |
Expand "path.*" from a resolved path.
Definition at line 398 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.addStarResultExpr(), com.cloudera.impala.analysis.Path.ARRAY_ITEM_FIELD_NAME, com.cloudera.impala.catalog.StructField.getName(), com.cloudera.impala.analysis.CollectionStructType.getOptionalField(), com.cloudera.impala.analysis.CollectionStructType.isMapStruct(), com.cloudera.impala.analysis.Path.MAP_KEY_FIELD_NAME, and com.cloudera.impala.analysis.Path.MAP_VALUE_FIELD_NAME.
|
inline |
Definition at line 112 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.aggInfo_.
|
inline |
Definition at line 114 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.analyticInfo_.
|
inlineinherited |
Definition at line 83 of file QueryStmt.java.
References com.cloudera.impala.analysis.QueryStmt.analyzer_.
Referenced by com.cloudera.impala.planner.SingleNodePlanner.createInlineViewPlan(), and com.cloudera.impala.analysis.StmtRewriter.rewrite().
|
inlineinherited |
Definition at line 280 of file QueryStmt.java.
References com.cloudera.impala.analysis.QueryStmt.baseTblResultExprs_.
Referenced by com.cloudera.impala.analysis.CreateOrAlterViewStmtBase.createColumnAndViewDefs(), com.cloudera.impala.analysis.UnionStmt.createMetadata(), com.cloudera.impala.planner.SingleNodePlanner.createSingleNodePlan(), and com.cloudera.impala.analysis.UnionStmt.materializeRequiredSlots().
|
inline |
Definition at line 118 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.baseTblSmap_.
|
inline |
Definition at line 117 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.colLabels_.
|
inline |
Definition at line 122 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.colLabels_, and com.cloudera.impala.analysis.SelectStmt.columnAliasGenerator_.
|
inlineprotectedinherited |
Return the first expr in exprs that is a non-unique alias. Return null if none of exprs is an ambiguous alias.
Definition at line 219 of file QueryStmt.java.
References com.cloudera.impala.analysis.QueryStmt.ambiguousAliasList_.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyzeAggregation(), and com.cloudera.impala.analysis.QueryStmt.createSortInfo().
|
inline |
Definition at line 105 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.havingPred_.
Referenced by com.cloudera.impala.analysis.AnalyzerTest.checkSelectToThrift().
|
inlineinherited |
Definition at line 274 of file QueryStmt.java.
Referenced by com.cloudera.impala.analysis.QueryStmt.setLimit().
|
inline |
If the select statement has a sort/top that is evaluated, then the sort tuple is materialized. Else, if there is aggregation then the aggregate tuple id is materialized. Otherwise, all referenced tables are materialized as long as they are not semi-joined. If there are analytics and no sort, then the returned tuple ids also include the logical analytic output tuple.
Definition at line 851 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.aggInfo_, com.cloudera.impala.analysis.QueryStmt.evaluateOrderBy_, com.cloudera.impala.analysis.SelectStmt.hasAnalyticInfo(), and com.cloudera.impala.analysis.SelectStmt.tableRefs_.
Referenced by com.cloudera.impala.analysis.SelectStmt.materializeRequiredSlots().
|
inlineinherited |
Definition at line 276 of file QueryStmt.java.
|
inlineinherited |
Definition at line 279 of file QueryStmt.java.
References com.cloudera.impala.analysis.QueryStmt.resultExprs_.
Referenced by com.cloudera.impala.analysis.UnionStmt.setOperandSmap(), com.cloudera.impala.analysis.AnalyzeStmtsTest.testSlotRefPath(), and com.cloudera.impala.analysis.AnalyzeStmtsTest.TestStar().
|
inline |
Definition at line 100 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.selectList_.
Referenced by com.cloudera.impala.analysis.AnalyzeExprsTest.assertCaseEquivalence(), and com.cloudera.impala.analysis.StmtRewriter.mergeExpr().
|
inlineinherited |
Definition at line 277 of file QueryStmt.java.
References com.cloudera.impala.analysis.QueryStmt.sortInfo_.
|
inline |
Definition at line 131 of file SelectStmt.java.
References com.cloudera.impala.analysis.QueryStmt.analyzer_, and com.cloudera.impala.analysis.SelectStmt.tableAliasGenerator_.
|
inline |
Definition at line 353 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.tableRefs_.
Referenced by com.cloudera.impala.analysis.SelectStmt.materializeRequiredSlots().
|
inline |
Definition at line 107 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.tableRefs_.
Referenced by com.cloudera.impala.planner.SingleNodePlanner.createInlineViewPlan(), com.cloudera.impala.planner.SingleNodePlanner.createUnionPlan(), com.cloudera.impala.analysis.ParserTest.TestJoinHints(), and com.cloudera.impala.analysis.AnalyzeStmtsTest.testTableRefPath().
|
inline |
Definition at line 110 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.whereClause_.
Referenced by com.cloudera.impala.analysis.AnalyzerTest.checkSelectToThrift().
|
inlineinherited |
Definition at line 271 of file QueryStmt.java.
References com.cloudera.impala.analysis.QueryStmt.withClause_.
|
inline |
Definition at line 113 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.aggInfo_.
Referenced by com.cloudera.impala.analysis.StmtRewriter.canRewriteCorrelatedSubquery(), and com.cloudera.impala.analysis.SelectStmt.returnsSingleRow().
|
inline |
Definition at line 115 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.analyticInfo_.
Referenced by com.cloudera.impala.analysis.SelectStmt.getMaterializedTupleIds(), and com.cloudera.impala.analysis.SelectStmt.materializeRequiredSlots().
|
inline |
Definition at line 109 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.groupingExprs_.
Referenced by com.cloudera.impala.analysis.StmtRewriter.canRewriteCorrelatedSubquery(), com.cloudera.impala.analysis.SelectStmt.returnsSingleRow(), and com.cloudera.impala.analysis.StmtRewriter.updateInlineView().
|
inlineinherited |
Definition at line 273 of file QueryStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze(), com.cloudera.impala.analysis.StmtRewriter.canRewriteCorrelatedSubquery(), com.cloudera.impala.analysis.QueryStmt.createSortInfo(), com.cloudera.impala.analysis.QueryStmt.setLimit(), and com.cloudera.impala.analysis.UnionStmt.toSql().
|
inlineinherited |
Definition at line 275 of file QueryStmt.java.
Referenced by com.cloudera.impala.analysis.QueryStmt.createSortInfo(), and com.cloudera.impala.analysis.UnionStmt.toSql().
|
inlineinherited |
Definition at line 272 of file QueryStmt.java.
References com.cloudera.impala.analysis.QueryStmt.orderByElements_.
Referenced by com.cloudera.impala.analysis.QueryStmt.analyzeLimit(), and com.cloudera.impala.analysis.UnionStmt.toSql().
|
inline |
Definition at line 108 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.whereClause_.
|
inlineinherited |
Definition at line 270 of file QueryStmt.java.
References com.cloudera.impala.analysis.QueryStmt.withClause_.
Referenced by com.cloudera.impala.analysis.QueryStmt.analyze().
|
inlineinherited |
Definition at line 43 of file StatementBase.java.
References com.cloudera.impala.analysis.StatementBase.isExplain_.
|
inline |
Marks all unassigned join predicates as well as exprs in aggInfo and sortInfo.
Definition at line 274 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.aggInfo_, com.cloudera.impala.analysis.SelectStmt.baseTblSmap_, com.cloudera.impala.analysis.Analyzer.evalByJoin(), com.cloudera.impala.analysis.QueryStmt.evaluateOrderBy_, com.cloudera.impala.analysis.SelectStmt.getMaterializedTupleIds(), com.cloudera.impala.analysis.SelectStmt.getTableRefIds(), com.cloudera.impala.analysis.SelectStmt.hasAnalyticInfo(), com.cloudera.impala.analysis.SelectStmt.havingPred_, and com.cloudera.impala.analysis.QueryStmt.materializeSlots().
|
inlineprotectedinherited |
Mark slots referenced in exprs as materialized.
Definition at line 303 of file QueryStmt.java.
Referenced by com.cloudera.impala.analysis.UnionStmt.materializeRequiredSlots(), and com.cloudera.impala.analysis.SelectStmt.materializeRequiredSlots().
|
inlineprotected |
Populates baseTblSmap_ with our combined inline view smap and creates baseTblResultExprs.
Definition at line 336 of file SelectStmt.java.
References com.cloudera.impala.analysis.QueryStmt.baseTblResultExprs_, com.cloudera.impala.analysis.SelectStmt.baseTblSmap_, com.cloudera.impala.analysis.QueryStmt.resultExprs_, and com.cloudera.impala.analysis.SelectStmt.tableRefs_.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze().
|
inline |
Check if the stmt returns a single row. This can happen in the following cases:
This function may produce false negatives because the cardinality of the result set also depends on the data a stmt is processing.
Definition at line 904 of file SelectStmt.java.
References com.cloudera.impala.analysis.LimitElement.getLimit(), com.cloudera.impala.analysis.SelectStmt.hasAggInfo(), com.cloudera.impala.analysis.SelectStmt.hasGroupByClause(), com.cloudera.impala.analysis.QueryStmt.limitElement_, and com.cloudera.impala.analysis.SelectStmt.tableRefs_.
|
inlineinherited |
Definition at line 42 of file StatementBase.java.
References com.cloudera.impala.analysis.StatementBase.isExplain_.
|
inlineinherited |
Definition at line 281 of file QueryStmt.java.
References com.cloudera.impala.catalog.Type.BIGINT, com.cloudera.impala.analysis.QueryStmt.getLimit(), com.cloudera.impala.analysis.QueryStmt.hasLimit(), and com.cloudera.impala.analysis.QueryStmt.limitElement_.
Referenced by com.cloudera.impala.analysis.StmtRewriter.mergeExpr().
|
inline |
Definition at line 111 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.whereClause_.
|
inlineinherited |
Definition at line 269 of file QueryStmt.java.
|
inlineprotectedinherited |
Substitute exprs of the form "<number>" with the corresponding expressions.
Definition at line 230 of file QueryStmt.java.
References com.cloudera.impala.analysis.Expr.getType(), com.cloudera.impala.analysis.QueryStmt.resultExprs_, and com.cloudera.impala.analysis.Expr.toSql().
Referenced by com.cloudera.impala.analysis.SelectStmt.analyzeAggregation(), and com.cloudera.impala.analysis.QueryStmt.createSortInfo().
|
inline |
Returns the SQL string corresponding to this SelectStmt.
Implements com.cloudera.impala.analysis.ParseNode.
Definition at line 783 of file SelectStmt.java.
References com.cloudera.impala.analysis.SelectStmt.groupingExprs_, com.cloudera.impala.analysis.SelectList.hasPlanHints(), com.cloudera.impala.analysis.SelectStmt.havingClause_, com.cloudera.impala.analysis.SelectList.isDistinct(), com.cloudera.impala.analysis.QueryStmt.orderByElements_, com.cloudera.impala.analysis.SelectStmt.selectList_, com.cloudera.impala.analysis.SelectStmt.sqlString_, com.cloudera.impala.analysis.SelectStmt.tableRefs_, com.cloudera.impala.analysis.SelectStmt.whereClause_, and com.cloudera.impala.analysis.QueryStmt.withClause_.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze(), com.cloudera.impala.analysis.SelectStmt.analyzeAggregation(), com.cloudera.impala.analysis.StmtRewriter.canRewriteCorrelatedSubquery(), and com.cloudera.impala.analysis.StmtRewriter.mergeExpr().
|
private |
Definition at line 59 of file SelectStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze(), com.cloudera.impala.analysis.SelectStmt.analyzeAggregation(), com.cloudera.impala.analysis.SelectStmt.createAggInfo(), com.cloudera.impala.analysis.SelectStmt.getAggInfo(), com.cloudera.impala.analysis.SelectStmt.getMaterializedTupleIds(), com.cloudera.impala.analysis.SelectStmt.hasAggInfo(), and com.cloudera.impala.analysis.SelectStmt.materializeRequiredSlots().
|
protectedinherited |
Map of expression substitutions for replacing aliases in "order by" or "group by" clauses with their corresponding result expr.
Definition at line 62 of file QueryStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyzeAggregation(), com.cloudera.impala.analysis.UnionStmt.createMetadata(), and com.cloudera.impala.analysis.QueryStmt.createSortInfo().
|
protectedinherited |
Select list item alias does not have to be unique. This list contains all the non-unique aliases. For example, select int_col a, string_col a from alltypessmall; Both columns are using the same alias "a".
Definition at line 70 of file QueryStmt.java.
Referenced by com.cloudera.impala.analysis.QueryStmt.getFirstAmbiguousAlias().
|
private |
Definition at line 62 of file SelectStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyzeAnalytics(), com.cloudera.impala.analysis.SelectStmt.getAnalyticInfo(), and com.cloudera.impala.analysis.SelectStmt.hasAnalyticInfo().
|
protectedinherited |
Definition at line 81 of file QueryStmt.java.
Referenced by com.cloudera.impala.analysis.QueryStmt.getAnalyzer(), and com.cloudera.impala.analysis.SelectStmt.getTableAliasGenerator().
|
protectedinherited |
|
private |
Definition at line 70 of file SelectStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.getBaseTblSmap(), com.cloudera.impala.analysis.SelectStmt.materializeRequiredSlots(), and com.cloudera.impala.analysis.SelectStmt.resolveInlineViewRefs().
|
protected |
Definition at line 49 of file SelectStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.getColLabels(), and com.cloudera.impala.analysis.SelectStmt.getColumnAliasGenerator().
|
private |
Definition at line 121 of file SelectStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.getColumnAliasGenerator().
|
protectedinherited |
Definition at line 78 of file QueryStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze(), com.cloudera.impala.analysis.UnionStmt.analyze(), com.cloudera.impala.analysis.QueryStmt.createSortInfo(), com.cloudera.impala.analysis.QueryStmt.createSortTupleInfo(), com.cloudera.impala.analysis.QueryStmt.evaluateOrderBy(), com.cloudera.impala.analysis.UnionStmt.getMaterializedTupleIds(), com.cloudera.impala.analysis.SelectStmt.getMaterializedTupleIds(), com.cloudera.impala.analysis.UnionStmt.materializeRequiredSlots(), and com.cloudera.impala.analysis.SelectStmt.materializeRequiredSlots().
|
protected |
Definition at line 52 of file SelectStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyzeAggregation(), com.cloudera.impala.analysis.SelectStmt.clone(), com.cloudera.impala.analysis.SelectStmt.createCountAllMap(), com.cloudera.impala.analysis.SelectStmt.hasGroupByClause(), and com.cloudera.impala.analysis.SelectStmt.toSql().
|
protected |
Definition at line 53 of file SelectStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyzeAggregation(), com.cloudera.impala.analysis.SelectStmt.clone(), and com.cloudera.impala.analysis.SelectStmt.toSql().
|
private |
Definition at line 56 of file SelectStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyzeAggregation(), com.cloudera.impala.analysis.SelectStmt.getHavingPred(), and com.cloudera.impala.analysis.SelectStmt.materializeRequiredSlots().
|
protectedinherited |
|
protectedinherited |
Definition at line 45 of file QueryStmt.java.
Referenced by com.cloudera.impala.analysis.QueryStmt.analyzeLimit(), com.cloudera.impala.analysis.ValuesStmt.clone(), com.cloudera.impala.analysis.UnionStmt.clone(), com.cloudera.impala.analysis.SelectStmt.clone(), com.cloudera.impala.analysis.QueryStmt.QueryStmt(), com.cloudera.impala.analysis.SelectStmt.returnsSingleRow(), and com.cloudera.impala.analysis.QueryStmt.setLimit().
|
staticprivate |
Definition at line 46 of file SelectStmt.java.
|
protectedinherited |
Definition at line 44 of file QueryStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyzeAggregation(), com.cloudera.impala.analysis.QueryStmt.cloneOrderByElements(), com.cloudera.impala.analysis.UnionStmt.createMetadata(), com.cloudera.impala.analysis.QueryStmt.createSortInfo(), com.cloudera.impala.analysis.QueryStmt.hasOrderByClause(), com.cloudera.impala.analysis.QueryStmt.QueryStmt(), and com.cloudera.impala.analysis.SelectStmt.toSql().
|
protectedinherited |
Definition at line 52 of file QueryStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze(), com.cloudera.impala.analysis.UnionStmt.analyze(), com.cloudera.impala.analysis.SelectStmt.analyzeAggregation(), com.cloudera.impala.analysis.SelectStmt.analyzeAnalytics(), com.cloudera.impala.analysis.SelectStmt.createAggInfo(), com.cloudera.impala.analysis.UnionStmt.createMetadata(), com.cloudera.impala.analysis.QueryStmt.createSortTupleInfo(), com.cloudera.impala.analysis.QueryStmt.getResultExprs(), com.cloudera.impala.analysis.SelectStmt.resolveInlineViewRefs(), com.cloudera.impala.analysis.QueryStmt.substituteOrdinals(), and com.cloudera.impala.analysis.UnionStmt.unnestOperands().
|
protected |
Definition at line 48 of file SelectStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze(), com.cloudera.impala.analysis.SelectStmt.analyzeAggregation(), com.cloudera.impala.analysis.SelectStmt.clone(), com.cloudera.impala.analysis.SelectStmt.createAggInfo(), com.cloudera.impala.analysis.SelectStmt.getSelectList(), com.cloudera.impala.analysis.StmtRewriter.replaceUnqualifiedStarItems(), com.cloudera.impala.analysis.SelectStmt.toSql(), and com.cloudera.impala.analysis.StmtRewriter.updateInlineView().
|
protectedinherited |
Definition at line 72 of file QueryStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze(), com.cloudera.impala.analysis.SelectStmt.analyzeAggregation(), com.cloudera.impala.analysis.SelectStmt.analyzeAnalytics(), com.cloudera.impala.analysis.QueryStmt.createSortInfo(), com.cloudera.impala.analysis.QueryStmt.getSortInfo(), and com.cloudera.impala.analysis.QueryStmt.QueryStmt().
|
protected |
Definition at line 66 of file SelectStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze(), and com.cloudera.impala.analysis.SelectStmt.toSql().
|
private |
Definition at line 130 of file SelectStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.getTableAliasGenerator().
|
protected |
Definition at line 50 of file SelectStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze(), com.cloudera.impala.analysis.SelectStmt.analyzeAggregation(), com.cloudera.impala.analysis.SelectStmt.cloneTableRefs(), com.cloudera.impala.analysis.SelectStmt.expandStar(), com.cloudera.impala.analysis.SelectStmt.getMaterializedTupleIds(), com.cloudera.impala.analysis.SelectStmt.getTableRefIds(), com.cloudera.impala.analysis.SelectStmt.getTableRefs(), com.cloudera.impala.analysis.SelectStmt.resolveInlineViewRefs(), com.cloudera.impala.analysis.SelectStmt.returnsSingleRow(), com.cloudera.impala.analysis.SelectStmt.SelectStmt(), and com.cloudera.impala.analysis.SelectStmt.toSql().
|
protected |
Definition at line 51 of file SelectStmt.java.
Referenced by com.cloudera.impala.analysis.SelectStmt.analyze(), com.cloudera.impala.analysis.SelectStmt.clone(), com.cloudera.impala.analysis.SelectStmt.getWhereClause(), com.cloudera.impala.analysis.SelectStmt.hasWhereClause(), com.cloudera.impala.analysis.SelectStmt.setWhereClause(), and com.cloudera.impala.analysis.SelectStmt.toSql().
|
protectedinherited |
Definition at line 42 of file QueryStmt.java.
Referenced by com.cloudera.impala.analysis.QueryStmt.cloneWithClause(), com.cloudera.impala.analysis.QueryStmt.getWithClause(), com.cloudera.impala.analysis.QueryStmt.hasWithClause(), com.cloudera.impala.analysis.ValuesStmt.toSql(), com.cloudera.impala.analysis.UnionStmt.toSql(), and com.cloudera.impala.analysis.SelectStmt.toSql().