public CreateIndexStatement(NamedNode indexTableName, NamedTableNode dataTable, IndexKeyConstraint indexKeyConstraint, List<ColumnName> includeColumns, List<ParseNode> splits, ListMultimap<String,Pair<String,Object>> props, boolean ifNotExists, IndexType indexType, boolean async, int bindCount, Map<String, UDFParseNode> udfParseNodes) { super(dataTable, bindCount); this.indexTableName =TableName.create(dataTable.getName().getSchemaName(),indexTableName.getName()); this.indexKeyConstraint = indexKeyConstraint == null ? IndexKeyConstraint.EMPTY : indexKeyConstraint; this.includeColumns = includeColumns == null ? Collections.<ColumnName>emptyList() : includeColumns; this.splitNodes = splits == null ? Collections.<ParseNode>emptyList() : splits; this.props = props == null ? ArrayListMultimap.<String,Pair<String,Object>>create() : props; this.ifNotExists = ifNotExists; this.indexType = indexType; this.async = async; this.udfParseNodes = udfParseNodes; }
@Override public void toSQL(ColumnResolver resolver, StringBuilder buf) { buf.append(this.getName().toString()); if (!dynColumns.isEmpty()) { buf.append('('); for (ColumnDef def : dynColumns) { buf.append(def); buf.append(','); } buf.setLength(buf.length()-1); buf.append(')'); } if (this.getAlias() != null) buf.append(" " + this.getAlias()); if (this.getTableSamplingRate() != null) buf.append(" TABLESAMPLE " + this.getTableSamplingRate()); buf.append(' '); }
@Override public List<TableName> visit(NamedTableNode namedTableNode) throws SQLException { TableName name = namedTableNode.getAlias() == null ? namedTableNode.getName() : TableName.create(null, namedTableNode.getAlias()); return Collections.singletonList(name); }
public SingleTableColumnResolver(PhoenixConnection connection, NamedTableNode tableNode, boolean updateCacheImmediately, int tsAddition, Map<String, UDFParseNode> udfParseNodes, boolean alwaysHitServer, TableName mutatingTableName) throws SQLException { super(connection, tsAddition, updateCacheImmediately, udfParseNodes, mutatingTableName); alias = tableNode.getAlias(); TableRef tableRef = createTableRef(tableNode.getName().getSchemaName(), tableNode, updateCacheImmediately, alwaysHitServer); PSchema schema = new PSchema(tableRef.getTable().getSchemaName().toString()); tableRefs = ImmutableList.of(tableRef); schemas = ImmutableList.of(schema); }
@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 Pair<Table, List<JoinSpec>> visit(NamedTableNode namedTableNode) throws SQLException { TableRef tableRef = resolveTable(namedTableNode.getAlias(), namedTableNode.getName()); boolean isWildCard = isWildCardSelectForTable(select.getSelect(), tableRef, origResolver); Table table = new Table(namedTableNode, isWildCard, namedTableNode.getDynamicColumns(), namedTableNode.getTableSamplingRate(), tableRef); return new Pair<Table, List<JoinSpec>>(table, null); }
public QueryLogger createQueryLogger(CompilableStatement stmt, String sql) throws SQLException { boolean isSystemTable=false; if(stmt instanceof ExecutableSelectStatement){ TableNode from = ((ExecutableSelectStatement)stmt).getFrom(); if(from instanceof NamedTableNode){ String schemaName = ((NamedTableNode)from).getName().getSchemaName(); if(schemaName==null){ schemaName=connection.getSchema(); } if(PhoenixDatabaseMetaData.SYSTEM_CATALOG_SCHEMA.equals(schemaName)){ isSystemTable=true; } } } QueryLogger queryLogger = QueryLogger.getInstance(connection,isSystemTable); QueryLoggerUtil.logInitialDetails(queryLogger, connection.getTenantId(), connection.getQueryServices(), sql, getParameters()); return queryLogger; }
String schema = table.getName().getSchemaName(); if (connection.getSchema() != null) { schema = schema != null ? schema : connection.getSchema(); String tableName = table.getName().getTableName(); PName name = PNameFactory.newName(SchemaUtil.getTableName(schema, tableName)); PTable theTable = new PTableImpl.Builder()
protected TableRef createTableRef(String connectionSchemaName, NamedTableNode tableNode, boolean updateCacheImmediately, boolean alwaysHitServer) throws SQLException { String tableName = tableNode.getName().getTableName(); String schemaName = tableNode.getName().getSchemaName(); schemaName = connection.getSchema() != null && schemaName == null ? connection.getSchema() : schemaName; long timeStamp = QueryConstants.UNSET_TIMESTAMP; tableNode.getName().equals(mutatingTableName) ){ alwaysHitServer = true;
QueryServicesOptions.DEFAULT_ENABLE_SERVER_SIDE_MUTATIONS); NamedTableNode tableNode = delete.getTable(); String tableName = tableNode.getName().getTableName(); String schemaName = tableNode.getName().getSchemaName(); SelectStatement select = null; ColumnResolver resolverToBe = null; boolean hasPreProcessing = transformedSelect != select; if (transformedSelect != select) { resolverToBe = FromCompiler.getResolverForQuery(transformedSelect, connection, false, delete.getTable().getName()); select = StatementNormalizer.normalize(transformedSelect, resolverToBe);
try { String dataTableName = statement.getTableName(); String indexName = statement.getTable().getName().getTableName(); boolean isAsync = statement.isAsync(); String tenantId = connection.getTenantId() == null ? null : connection.getTenantId().getString(); PTable table = FromCompiler.getResolver(statement, connection).getTables().get(0).getTable(); String schemaName = statement.getTable().getName().getSchemaName(); String tableName = table.getTableName().getString();
connection.setAutoCommit(false); PName tenantId = connection.getTenantId(); TableName tableNameNode = statement.getTable().getName(); String schemaName = tableNameNode.getSchemaName(); String tableName = tableNameNode.getTableName();
List<PColumn> targetColumns; NamedTableNode tableNode = upsert.getTable(); String tableName = tableNode.getName().getTableName(); String schemaName = tableNode.getName().getSchemaName(); QueryPlan queryPlanToBe = null; int nValuesToSet; assert(select != null); select = SubselectRewriter.flatten(select, connection); ColumnResolver selectResolver = FromCompiler.getResolverForQuery(select, connection, false, upsert.getTable().getName()); select = StatementNormalizer.normalize(select, selectResolver); select = prependTenantAndViewConstants(table, select, tenantIdStr, addViewColumnsToBe, useServerTimestampToBe); SelectStatement transformedSelect = SubqueryRewriter.transform(select, selectResolver, connection); if (transformedSelect != select) { selectResolver = FromCompiler.getResolverForQuery(transformedSelect, connection, false, upsert.getTable().getName()); select = StatementNormalizer.normalize(transformedSelect, selectResolver);
@Override public List<TableName> visit(NamedTableNode namedTableNode) throws SQLException { TableName name = namedTableNode.getAlias() == null ? namedTableNode.getName() : TableName.create(null, namedTableNode.getAlias()); return Collections.singletonList(name); }
public SingleTableColumnResolver(PhoenixConnection connection, NamedTableNode tableNode, boolean updateCacheImmediately, int tsAddition, Map<String, UDFParseNode> udfParseNodes, boolean alwaysHitServer, TableName mutatingTableName) throws SQLException { super(connection, tsAddition, updateCacheImmediately, udfParseNodes, mutatingTableName); alias = tableNode.getAlias(); TableRef tableRef = createTableRef(tableNode.getName().getSchemaName(), tableNode, updateCacheImmediately, alwaysHitServer); PSchema schema = new PSchema(tableRef.getTable().getSchemaName().toString()); tableRefs = ImmutableList.of(tableRef); schemas = ImmutableList.of(schema); }
public SingleTableColumnResolver(PhoenixConnection connection, NamedTableNode tableNode, boolean updateCacheImmediately, int tsAddition, Map<String, UDFParseNode> udfParseNodes, boolean alwaysHitServer, TableName mutatingTableName) throws SQLException { super(connection, tsAddition, updateCacheImmediately, udfParseNodes, mutatingTableName); alias = tableNode.getAlias(); TableRef tableRef = createTableRef(tableNode.getName().getSchemaName(), tableNode, updateCacheImmediately, alwaysHitServer); PSchema schema = new PSchema(tableRef.getTable().getSchemaName().toString()); tableRefs = ImmutableList.of(tableRef); schemas = ImmutableList.of(schema); }
@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 Pair<Table, List<JoinSpec>> visit(NamedTableNode namedTableNode) throws SQLException { TableRef tableRef = resolveTable(namedTableNode.getAlias(), namedTableNode.getName()); boolean isWildCard = isWildCardSelectForTable(select.getSelect(), tableRef, origResolver); Table table = new Table(namedTableNode, isWildCard, namedTableNode.getDynamicColumns(), namedTableNode.getTableSamplingRate(), tableRef); return new Pair<Table, List<JoinSpec>>(table, null); }
@Override public Pair<Table, List<JoinSpec>> visit(NamedTableNode namedTableNode) throws SQLException { TableRef tableRef = resolveTable(namedTableNode.getAlias(), namedTableNode.getName()); boolean isWildCard = isWildCardSelectForTable(select.getSelect(), tableRef, origResolver); Table table = new Table(namedTableNode, isWildCard, namedTableNode.getDynamicColumns(), namedTableNode.getTableSamplingRate(), tableRef); return new Pair<Table, List<JoinSpec>>(table, null); }