@Override public void analyze(ASTNode tree) throws SemanticException { if (tree.getToken().getType() != HiveParser.TOK_MERGE) { throw new RuntimeException("Asked to parse token " + tree.getName() + " in " + "MergeSemanticAnalyzer"); } analyzeMerge(tree); }
protected void analyze(ASTNode tree) throws SemanticException { if (tree.getToken().getType() != HiveParser.TOK_EXPORT) { throw new RuntimeException("Asked to parse token " + tree.getName() + " in " + "AcidExportSemanticAnalyzer"); } analyzeAcidExport(tree); }
protected void analyze(ASTNode tree) throws SemanticException { switch (tree.getToken().getType()) { case HiveParser.TOK_DELETE_FROM: analyzeDelete(tree); break; case HiveParser.TOK_UPDATE_TABLE: analyzeUpdate(tree); break; default: throw new RuntimeException("Asked to parse token " + tree.getName() + " in " + "UpdateDeleteSemanticAnalyzer"); } }
protected ASTNode findLHSofAssignment(ASTNode assignment) { assert assignment.getToken().getType() == HiveParser.EQUAL : "Expected set assignments to use equals operator but found " + assignment.getName(); ASTNode tableOrColTok = (ASTNode)assignment.getChildren().get(0); assert tableOrColTok.getToken().getType() == HiveParser.TOK_TABLE_OR_COL : "Expected left side of assignment to be table or column"; ASTNode colName = (ASTNode)tableOrColTok.getChildren().get(0); assert colName.getToken().getType() == HiveParser.Identifier : "Expected column name"; return colName; }
private ASTNode findLHSofAssignment(ASTNode assignment) { assert assignment.getToken().getType() == HiveParser.EQUAL : "Expected set assignments to use equals operator but found " + assignment.getName(); ASTNode tableOrColTok = (ASTNode)assignment.getChildren().get(0); assert tableOrColTok.getToken().getType() == HiveParser.TOK_TABLE_OR_COL : "Expected left side of assignment to be table or column"; ASTNode colName = (ASTNode)tableOrColTok.getChildren().get(0); assert colName.getToken().getType() == HiveParser.Identifier : "Expected column name"; return colName; } private Map<String, ASTNode> collectSetColumnsAndExpressions(ASTNode setClause,
@Override public void analyzeInternal(ASTNode ast) throws SemanticException { LOG.debug("ReplicationSemanticAanalyzer: analyzeInternal"); LOG.debug(ast.getName() + ":" + ast.getToken().getText() + "=" + ast.getText()); switch (ast.getToken().getType()) { case TOK_REPL_DUMP: { LOG.debug("ReplicationSemanticAnalyzer: analyzeInternal: dump"); initReplDump(ast); analyzeReplDump(ast); break; } case TOK_REPL_LOAD: { LOG.debug("ReplicationSemanticAnalyzer: analyzeInternal: load"); initReplLoad(ast); analyzeReplLoad(ast); break; } case TOK_REPL_STATUS: { LOG.debug("ReplicationSemanticAnalyzer: analyzeInternal: status"); initReplStatus(ast); analyzeReplStatus(ast); break; } default: { throw new SemanticException("Unexpected root token"); } } }
@Override public void analyzeInternal(ASTNode ast) throws SemanticException { LOG.debug("ReplicationSemanticAanalyzer: analyzeInternal"); LOG.debug(ast.getName() + ":" + ast.getToken().getText() + "=" + ast.getText());
"Expected tablename as first child of " + operation + " but found " + tabName.getName(); Table mTable = getTargetTable(tabName); validateTargetTable(mTable); where = (ASTNode)children.get(whereIndex); assert where.getToken().getType() == HiveParser.TOK_WHERE : "Expected where clause, but found " + where.getName(); "Expected TOK_INSERT as second child of TOK_QUERY but found " + rewrittenInsert.getName(); "Expected TOK_SORTBY to be first child of TOK_SELECT, but found " + sortBy.getName(); rewrittenInsert.addChild(sortBy); rewrittenInsert.setChild(2, where); assert rewrittenSelect.getToken().getType() == HiveParser.TOK_SELECT : "Expected TOK_SELECT as second child of TOK_INSERT but found " + rewrittenSelect.getName(); for (Map.Entry<Integer, ASTNode> entry : setColExprs.entrySet()) { ASTNode selExpr = (ASTNode)rewrittenSelect.getChildren().get(entry.getKey()); assert selExpr.getToken().getType() == HiveParser.TOK_SELEXPR : "Expected child of TOK_SELECT to be TOK_SELEXPR but was " + selExpr.getName();
"Expected tablename as first child of " + operation() + " but found " + tabName.getName(); where = (ASTNode)children.get(whereIndex); assert where.getToken().getType() == HiveParser.TOK_WHERE : "Expected where clause, but found " + where.getName(); "Expected TOK_INSERT as second child of TOK_QUERY but found " + rewrittenInsert.getName(); "Expected TOK_SORTBY to be first child of TOK_SELECT, but found " + sortBy.getName(); rewrittenInsert.addChild(sortBy); rewrittenInsert.setChild(2, where); assert rewrittenSelect.getToken().getType() == HiveParser.TOK_SELECT : "Expected TOK_SELECT as second child of TOK_INSERT but found " + rewrittenSelect.getName(); for (Map.Entry<Integer, ASTNode> entry : setColExprs.entrySet()) { ASTNode selExpr = (ASTNode)rewrittenSelect.getChildren().get(entry.getKey()); assert selExpr.getToken().getType() == HiveParser.TOK_SELEXPR : "Expected child of TOK_SELECT to be TOK_SELEXPR but was " + selExpr.getName();
@Override public void analyzeInternal(ASTNode tree) throws SemanticException { if (useSuper) { super.analyzeInternal(tree); } else { if (!SessionState.get().getTxnMgr().supportsAcid()) { throw new SemanticException(ErrorMsg.ACID_OP_ON_NONACID_TXNMGR.getMsg()); } switch (tree.getToken().getType()) { case HiveParser.TOK_DELETE_FROM: analyzeDelete(tree); break; case HiveParser.TOK_UPDATE_TABLE: analyzeUpdate(tree); break; case HiveParser.TOK_MERGE: analyzeMerge(tree); break; default: throw new RuntimeException("Asked to parse token " + tree.getName() + " in " + "UpdateDeleteSemanticAnalyzer"); } cleanUpMetaColumnAccessControl(); } } private boolean updating() {
assert virtualTableRef.getToken().getType() == HiveParser.TOK_VIRTUAL_TABREF : "Expected first child of TOK_VIRTUAL_TABLE to be TOK_VIRTUAL_TABREF but was " + virtualTableRef.getName(); assert valuesTable.getToken().getType() == HiveParser.TOK_VALUES_TABLE : "Expected second child of TOK_VIRTUAL_TABLE to be TOK_VALUE_TABLE but was " + valuesTable.getName(); ASTNode valuesRow = (ASTNode) n; assert valuesRow.getToken().getType() == HiveParser.TOK_VALUE_ROW : "Expected child of TOK_VALUE_TABLE to be TOK_VALUE_ROW but was " + valuesRow.getName();
ASTNode outerClassNode = getOuterClass(methodDeclarationNode); if (outerClassNode != null) { // not the topmost node System.out.println(outerClassNode.getName()); }
@Override public void analyzeInternal(ASTNode tree) throws SemanticException { if (useSuper) { super.analyzeInternal(tree); } else { if (!SessionState.get().getTxnMgr().supportsAcid()) { throw new SemanticException(ErrorMsg.ACID_OP_ON_NONACID_TXNMGR.getMsg()); } switch (tree.getToken().getType()) { case HiveParser.TOK_DELETE_FROM: analyzeDelete(tree); return; case HiveParser.TOK_UPDATE_TABLE: analyzeUpdate(tree); return; default: throw new RuntimeException("Asked to parse token " + tree.getName() + " in " + "UpdateDeleteSemanticAnalyzer"); } } }
"Expected tablename as first child of " + operation() + " but found " + tabName.getName(); String[] tableName = getQualifiedTableName(tabName); ASTNode assignment = (ASTNode)a; assert assignment.getToken().getType() == HiveParser.EQUAL : "Expected set assignments to use equals operator but found " + assignment.getName(); ASTNode tableOrColTok = (ASTNode)assignment.getChildren().get(0); assert tableOrColTok.getToken().getType() == HiveParser.TOK_TABLE_OR_COL : where = (ASTNode)children.get(whereIndex); assert where.getToken().getType() == HiveParser.TOK_WHERE : "Expected where clause, but found " + where.getName(); "Expected TOK_INSERT as second child of TOK_QUERY but found " + rewrittenInsert.getName(); "Expected TOK_SORTBY to be first child of TOK_SELECT, but found " + sortBy.getName(); rewrittenInsert.addChild(sortBy); rewrittenInsert.setChild(2, where); assert rewrittenSelect.getToken().getType() == HiveParser.TOK_SELECT : "Expected TOK_SELECT as second child of TOK_INSERT but found " + rewrittenSelect.getName(); for (Map.Entry<Integer, ASTNode> entry : setColExprs.entrySet()) { ASTNode selExpr = (ASTNode)rewrittenSelect.getChildren().get(entry.getKey()); assert selExpr.getToken().getType() == HiveParser.TOK_SELEXPR : "Expected child of TOK_SELECT to be TOK_SELEXPR but was " + selExpr.getName();
assert virtualTableRef.getToken().getType() == HiveParser.TOK_VIRTUAL_TABREF : "Expected first child of TOK_VIRTUAL_TABLE to be TOK_VIRTUAL_TABREF but was " + virtualTableRef.getName(); assert valuesTable.getToken().getType() == HiveParser.TOK_VALUES_TABLE : "Expected second child of TOK_VIRTUAL_TABLE to be TOK_VALUE_TABLE but was " + valuesTable.getName(); ASTNode valuesRow = (ASTNode) n; assert valuesRow.getToken().getType() == HiveParser.TOK_VALUE_ROW : "Expected child of TOK_VALUE_TABLE to be TOK_VALUE_ROW but was " + valuesRow.getName();