@Override public TableNode visit(NamedTableNode namedTableNode) throws SQLException { TableRef tableRef = resolveTable(namedTableNode.getAlias(), namedTableNode.getName()); TableRef replaceRef = replacement.get(tableRef); if (replaceRef == null) return namedTableNode; String alias = namedTableNode.getAlias(); return FACTORY.namedTable(alias == null ? null : '"' + alias + '"', getReplacedTableName(replaceRef), namedTableNode.getDynamicColumns(), namedTableNode.getTableSamplingRate()); }
if ( state.backtracking==0 ) {ret = factory.alterIndex(factory.namedTable(null, TableName.create(t.getSchemaName(), i.getName())), t.getTableName(), ex!=null, PIndexState.valueOf(SchemaUtil.normalizeIdentifier(s.getText())), async!=null, p); }
if ( state.backtracking==0 ) {ret = factory.delete(factory.namedTable(null,t), hint, v, order, l, getBindCount(), new HashMap<String, UDFParseNode>(udfParseNodes)); }
if ( state.backtracking==0 ) { PTableType tt = v==null ? (QueryConstants.SYSTEM_SCHEMA_NAME.equals(t.getSchemaName()) ? PTableType.SYSTEM : PTableType.TABLE) : PTableType.VIEW; ret = ( c == null ? factory.addColumn(factory.namedTable(null,t), tt, d, ex!=null, p) : factory.dropColumn(factory.namedTable(null,t), tt, c, ex!=null) ); }
factory.namedTable(null,t,p == null ? null : p.getFirst()), hint, p == null ? null : p.getSecond(), v, s, getBindCount(),
if ( state.backtracking==0 ) { ret = factory.namedTable(alias,f,cdefs, tableSample);}
if ( state.backtracking==0 ) {ret = factory.updateStatistics(factory.namedTable(null, t), s == null ? StatisticsCollectionScope.getDefault() : StatisticsCollectionScope.valueOf(SchemaUtil.normalizeIdentifier(s.getText())), p);}
if ( state.backtracking==0 ) {ret = factory.createIndex(i, factory.namedTable(null,t), ik, icrefs, v, p, ex!=null, l==null ? IndexType.getDefault() : IndexType.LOCAL, async != null, getBindCount(), new HashMap<String, UDFParseNode>(udfParseNodes)); }
if (((WildcardParseNode) node).isRewrite()) { TableRef parentTableRef = FromCompiler.getResolver( NODE_FACTORY.namedTable(null, TableName.create(table.getSchemaName().getString(), table.getParentTableName().getString())), context.getConnection()).resolveTable( table.getSchemaName().getString(), if (familyWildcardNode.isRewrite()) { TableRef parentTableRef = FromCompiler.getResolver( NODE_FACTORY.namedTable(null, TableName.create(table.getSchemaName().getString(), table.getParentTableName().getString())), context.getConnection()).resolveTable( table.getSchemaName().getString(),
@Override public Void visit(ColumnParseNode node) throws SQLException { ColumnRef columnRef = null; try { columnRef = resolver.resolveColumn(node.getSchemaName(), node.getTableName(), node.getName()); } catch (ColumnNotFoundException e) { // This could be a LocalIndexDataColumnRef. If so, the table name must have // been appended by the IndexStatementRewriter, and we can convert it into. TableRef tableRef = resolver.resolveTable(node.getSchemaName(), node.getTableName()); if (tableRef.getTable().getIndexType() == IndexType.LOCAL) { TableRef parentTableRef = FromCompiler.getResolver( NODE_FACTORY.namedTable(null, TableName.create(tableRef.getTable() .getSchemaName().getString(), tableRef.getTable() .getParentTableName().getString())), connection).resolveTable( tableRef.getTable().getSchemaName().getString(), tableRef.getTable().getParentTableName().getString()); columnRef = new LocalIndexColumnRef(parentTableRef, IndexUtil.getDataColumnFamilyName(node.getName()), IndexUtil.getDataColumnName(node.getName()), tableRef); } else { throw e; } } columnRefMap.put(columnRef, node); tableRefSet.add(columnRef.getTableRef()); return null; }
TableNode table = FACTORY.namedTable(alias, FACTORY.table(schemaName, tableName),select.getTableSamplingRate()); SelectStatement indexSelect = FACTORY.select(select, table); ColumnResolver resolver = FromCompiler.getResolverForQuery(indexSelect, statement.getConnection());
public LocalIndexDataColumnRef(StatementContext context, TableRef tRef, String indexColumnName) throws MetaDataEntityNotFoundException, SQLException { super(FromCompiler.getResolver( FACTORY.namedTable( null, TableName.create(tRef.getTable().getSchemaName().getString(), tRef.getTable() .getParentTableName().getString())), context.getConnection(), false) .resolveTable(context.getCurrentTable().getTable().getSchemaName().getString(), tRef.getTable().getParentTableName().getString()), IndexUtil.getDataColumnFamilyName(indexColumnName), IndexUtil .getDataColumnName(indexColumnName)); position = context.getDataColumnPosition(this.getColumn()); columns = context.getDataColumns(); }
indexStatement = FACTORY.alterIndex(FACTORY.namedTable(null, TableName.create(index.getSchemaName().getString(), index.getTableName().getString())), dataTableRef.getTable().getTableName().getString(), false, PIndexState.ACTIVE);
FACTORY.namedTable(null, TableName.create(parentSchemaName, parentTableName)), context.getConnection()).resolveTable(parentSchemaName, parentTableName); PTable dataTable = dataTableRef.getTable();
context.setCurrentTable(tableRef); context.setResolver(resolver); TableNode from = NODE_FACTORY.namedTable(tableRef.getTableAlias(), NODE_FACTORY.table(tableRef.getTable().getSchemaName().getString(), tableRef.getTable().getTableName().getString())); ParseNode where = joinTable.getPostFiltersCombined(); SelectStatement select = asSubquery
@Override public TableNode visit(NamedTableNode namedTableNode) throws SQLException { TableRef tableRef = resolveTable(namedTableNode.getAlias(), namedTableNode.getName()); TableRef replaceRef = replacement.get(tableRef); if (replaceRef == null) return namedTableNode; String alias = namedTableNode.getAlias(); return FACTORY.namedTable(alias == null ? null : '"' + alias + '"', getReplacedTableName(replaceRef), namedTableNode.getDynamicColumns(), namedTableNode.getTableSamplingRate()); }
@Override public TableNode visit(NamedTableNode namedTableNode) throws SQLException { TableRef tableRef = resolveTable(namedTableNode.getAlias(), namedTableNode.getName()); TableRef replaceRef = replacement.get(tableRef); if (replaceRef == null) return namedTableNode; String alias = namedTableNode.getAlias(); return FACTORY.namedTable(alias == null ? null : '"' + alias + '"', getReplacedTableName(replaceRef), namedTableNode.getDynamicColumns(), namedTableNode.getTableSamplingRate()); }
@Override public Void visit(ColumnParseNode node) throws SQLException { ColumnRef columnRef = null; try { columnRef = resolver.resolveColumn(node.getSchemaName(), node.getTableName(), node.getName()); } catch (ColumnNotFoundException e) { // This could be a LocalIndexDataColumnRef. If so, the table name must have // been appended by the IndexStatementRewriter, and we can convert it into. TableRef tableRef = resolver.resolveTable(node.getSchemaName(), node.getTableName()); if (tableRef.getTable().getIndexType() == IndexType.LOCAL) { TableRef parentTableRef = FromCompiler.getResolver( NODE_FACTORY.namedTable(null, TableName.create(tableRef.getTable() .getSchemaName().getString(), tableRef.getTable() .getParentTableName().getString())), connection).resolveTable( tableRef.getTable().getSchemaName().getString(), tableRef.getTable().getParentTableName().getString()); columnRef = new LocalIndexColumnRef(parentTableRef, IndexUtil.getDataColumnFamilyName(node.getName()), IndexUtil.getDataColumnName(node.getName()), tableRef); } else { throw e; } } columnRefMap.put(columnRef, node); tableRefSet.add(columnRef.getTableRef()); return null; }
public LocalIndexDataColumnRef(StatementContext context, TableRef tRef, String indexColumnName) throws MetaDataEntityNotFoundException, SQLException { super(FromCompiler.getResolver( FACTORY.namedTable( null, TableName.create(tRef.getTable().getSchemaName().getString(), tRef.getTable() .getParentTableName().getString())), context.getConnection(), false) .resolveTable(context.getCurrentTable().getTable().getSchemaName().getString(), tRef.getTable().getParentTableName().getString()), IndexUtil.getDataColumnFamilyName(indexColumnName), IndexUtil .getDataColumnName(indexColumnName)); position = context.getDataColumnPosition(this.getColumn()); columns = context.getDataColumns(); }
public LocalIndexDataColumnRef(StatementContext context, String indexColumnName) throws MetaDataEntityNotFoundException, SQLException { super(FromCompiler.getResolver( FACTORY.namedTable(null, TableName.create(context.getCurrentTable().getTable() .getSchemaName().getString(), context.getCurrentTable().getTable() .getParentTableName().getString())), context.getConnection()).resolveTable( context.getCurrentTable().getTable().getSchemaName().getString(), context.getCurrentTable().getTable().getParentTableName().getString()), IndexUtil .getDataColumnFamilyName(indexColumnName), IndexUtil .getDataColumnName(indexColumnName)); position = context.getDataColumnPosition(this.getColumn()); columns = context.getDataColumns(); }