From a94a4c0ea53d23730cfaef2f5a0427fd7b13b111 Mon Sep 17 00:00:00 2001 From: David Phillips Date: Wed, 30 Apr 2014 16:14:02 -0700 Subject: [PATCH] Rename Session to ConnectorSession --- .../presto/cassandra/CassandraMetadata.java | 14 ++-- .../cassandra/TestCassandraConnector.java | 4 +- .../presto/example/ExampleMetadata.java | 12 ++-- .../presto/example/TestExampleMetadata.java | 4 +- .../com/facebook/presto/hive/HiveClient.java | 20 +++--- .../com/facebook/presto/hive/HiveSplit.java | 8 +-- .../presto/hive/HiveSplitSourceProvider.java | 10 +-- .../facebook/presto/hive/HiveTableHandle.java | 8 +-- .../presto/hive/AbstractTestHiveClient.java | 4 +- .../presto/hive/AbstractTestHiveClientS3.java | 4 +- .../facebook/presto/hive/TestHiveSplit.java | 4 +- .../presto/hive/TestHiveTableHandle.java | 4 +- .../presto/hive/TestJsonHiveHandles.java | 4 +- .../dictionary/DictionaryEncodedBlock.java | 4 +- .../DictionaryEncodedBlockCursor.java | 4 +- .../block/rle/RunLengthEncodedBlock.java | 4 +- .../rle/RunLengthEncodedBlockCursor.java | 4 +- .../presto/connector/dual/DualMetadata.java | 10 +-- .../InformationSchemaDataStreamProvider.java | 16 ++--- .../InformationSchemaMetadata.java | 10 +-- .../InformationSchemaTableHandle.java | 8 +-- .../presto/connector/jmx/JmxMetadata.java | 10 +-- .../system/SystemTablesMetadata.java | 10 +-- .../presto/execution/DropTableExecution.java | 8 +-- .../execution/FailedQueryExecution.java | 4 +- .../presto/execution/QueryExecution.java | 4 +- .../facebook/presto/execution/QueryInfo.java | 8 +-- .../presto/execution/QueryManager.java | 4 +- .../presto/execution/QueryStateMachine.java | 8 +-- .../presto/execution/RemoteTaskFactory.java | 4 +- .../presto/execution/SqlQueryExecution.java | 8 +-- .../presto/execution/SqlQueryManager.java | 6 +- .../presto/execution/SqlStageExecution.java | 8 +-- .../presto/execution/SqlTaskExecution.java | 6 +- .../presto/execution/SqlTaskManager.java | 4 +- .../presto/execution/TaskManager.java | 4 +- .../metadata/DatabaseLocalStorageManager.java | 4 +- .../presto/metadata/FunctionRegistry.java | 8 +-- .../presto/metadata/InMemoryMetadata.java | 16 ++--- .../facebook/presto/metadata/Metadata.java | 16 ++--- .../presto/metadata/MetadataManager.java | 16 ++--- .../presto/metadata/MetadataUtil.java | 4 +- .../presto/metadata/NativeMetadata.java | 16 ++--- .../presto/operator/DriverContext.java | 4 +- .../presto/operator/GroupByIdBlock.java | 4 +- .../presto/operator/OperatorContext.java | 4 +- .../presto/operator/PipelineContext.java | 4 +- .../facebook/presto/operator/TaskContext.java | 12 ++-- .../aggregation/PoissonizedBlock.java | 4 +- .../operator/scalar/DateTimeFunctions.java | 66 +++++++++---------- .../presto/sql/analyzer/Analyzer.java | 6 +- .../sql/analyzer/ExpressionAnalyzer.java | 22 +++---- .../presto/sql/analyzer/QueryExplainer.java | 6 +- .../sql/analyzer/StatementAnalyzer.java | 6 +- .../presto/sql/analyzer/TupleAnalyzer.java | 6 +- .../presto/sql/gen/DefaultFunctionBinder.java | 4 +- .../presto/sql/gen/ExpressionCompiler.java | 14 ++-- .../planner/DistributedLogicalPlanner.java | 6 +- .../presto/sql/planner/DomainTranslator.java | 8 +-- .../sql/planner/ExpressionInterpreter.java | 16 ++--- .../planner/InterpretedFilterFunction.java | 4 +- .../InterpretedProjectionFunction.java | 4 +- .../sql/planner/LiteralInterpreter.java | 26 ++++---- .../sql/planner/LocalExecutionPlanner.java | 16 ++--- .../presto/sql/planner/LogicalPlanner.java | 6 +- .../presto/sql/planner/QueryPlanner.java | 6 +- .../presto/sql/planner/RelationPlanner.java | 6 +- .../CanonicalizeExpressions.java | 4 +- .../ImplementSampleAsFilter.java | 4 +- .../optimizations/IndexJoinOptimizer.java | 4 +- .../planner/optimizations/LimitPushDown.java | 4 +- .../MaterializeSamplePullUp.java | 4 +- .../optimizations/MergeProjections.java | 4 +- .../planner/optimizations/PlanOptimizer.java | 4 +- .../optimizations/PredicatePushDown.java | 8 +-- .../PruneRedundantProjections.java | 4 +- .../PruneUnreferencedOutputs.java | 4 +- .../optimizations/SetFlatteningOptimizer.java | 4 +- .../optimizations/SimplifyExpressions.java | 8 +-- .../UnaliasSymbolReferences.java | 4 +- .../com/facebook/presto/type/ColorType.java | 4 +- .../facebook/presto/type/DateOperators.java | 6 +- .../presto/type/DateTimeOperators.java | 16 ++--- .../facebook/presto/type/TimeOperators.java | 10 +-- .../type/TimeWithTimeZoneOperators.java | 4 +- .../presto/type/TimestampOperators.java | 14 ++-- .../com/facebook/presto/type/UnknownType.java | 4 +- .../presto/AbstractTestQueryFramework.java | 8 +-- .../com/facebook/presto/TestLocalQueries.java | 6 +- .../presto/TestLocalQueriesIndexed.java | 6 +- .../presto/TestLocalQueriesSampled.java | 6 +- .../benchmark/AbstractOperatorBenchmark.java | 4 +- .../benchmark/BenchmarkQueryRunner.java | 6 +- .../presto/block/BlockAssertions.java | 4 +- .../presto/block/BlockCursorAssertions.java | 4 +- .../execution/TestSqlStageExecution.java | 8 +-- .../execution/TestSqlTaskExecution.java | 6 +- .../presto/execution/TestSqlTaskManager.java | 6 +- .../TestDatabaseLocalStorageManager.java | 4 +- .../presto/metadata/TestJsonTableHandle.java | 4 +- .../presto/metadata/TestNativeMetadata.java | 4 +- .../presto/operator/OperatorAssertion.java | 4 +- .../operator/TestAggregationOperator.java | 4 +- .../operator/TestAlignmentOperator.java | 4 +- .../operator/TestDistinctLimitOperator.java | 4 +- .../facebook/presto/operator/TestDriver.java | 4 +- .../presto/operator/TestExchangeOperator.java | 4 +- .../TestFilterAndProjectOperator.java | 4 +- .../operator/TestHashAggregationOperator.java | 10 +-- .../presto/operator/TestHashJoinOperator.java | 6 +- .../operator/TestHashSemiJoinOperator.java | 6 +- .../presto/operator/TestLimitOperator.java | 4 +- .../operator/TestMarkDistinctOperator.java | 4 +- .../TestMaterializeSampleOperator.java | 4 +- .../presto/operator/TestOrderByOperator.java | 6 +- .../operator/TestRecordProjectOperator.java | 4 +- .../presto/operator/TestTopNOperator.java | 4 +- .../presto/operator/TestWindowOperator.java | 6 +- .../operator/scalar/FunctionAssertions.java | 28 ++++---- .../scalar/TestDateTimeFunctions.java | 8 +-- .../operator/window/TestWindowFunctions.java | 4 +- .../operator/window/WindowAssertions.java | 4 +- .../presto/split/TestNativeSplitManager.java | 4 +- .../presto/sql/TestExpressionInterpreter.java | 4 +- .../presto/sql/analyzer/TestAnalyzer.java | 8 +-- .../sql/gen/TestExpressionCompiler.java | 4 +- .../presto/sql/gen/TestJoinProbeCompiler.java | 4 +- .../sql/planner/TestDomainTranslator.java | 4 +- .../TestInterpretedFilterFunction.java | 4 +- .../TestInterpretedProjectionFunction.java | 4 +- .../com/facebook/presto/type/TestDate.java | 4 +- .../presto/type/TestDateTimeOperators.java | 6 +- .../com/facebook/presto/type/TestTime.java | 4 +- .../presto/type/TestTimeWithTimeZone.java | 6 +- .../facebook/presto/type/TestTimestamp.java | 4 +- .../type/TestTimestampWithTimeZone.java | 6 +- .../presto/util/LocalQueryRunner.java | 6 +- .../presto/util/MaterializedResult.java | 10 +-- .../presto/server/BasicQueryInfo.java | 8 +-- .../presto/server/HttpRemoteTask.java | 6 +- .../presto/server/HttpRemoteTaskFactory.java | 4 +- .../facebook/presto/server/QueryResource.java | 4 +- .../presto/server/StatementResource.java | 16 ++--- .../presto/server/TaskUpdateRequest.java | 8 +-- .../presto/server/MockQueryManager.java | 6 +- .../presto/server/MockTaskManager.java | 6 +- .../presto/server/TestDistributedQueries.java | 6 +- .../server/TestDistributedQueriesIndexed.java | 6 +- .../presto/spi/ConnectorMetadata.java | 14 ++-- .../{Session.java => ConnectorSession.java} | 14 +++- .../presto/spi/ReadOnlyConnectorMetadata.java | 6 +- .../spi/block/AbstractFixedWidthBlock.java | 4 +- ...bstractVariableWidthRandomAccessBlock.java | 4 +- .../presto/spi/block/BlockCursor.java | 4 +- .../spi/block/FixedWidthBlockCursor.java | 4 +- .../presto/spi/block/RandomAccessBlock.java | 4 +- .../spi/block/VariableWidthBlockCursor.java | 4 +- .../ClassLoaderSafeConnectorMetadata.java | 16 ++--- .../facebook/presto/spi/type/BigintType.java | 4 +- .../facebook/presto/spi/type/BooleanType.java | 4 +- .../facebook/presto/spi/type/DateType.java | 4 +- .../facebook/presto/spi/type/DoubleType.java | 4 +- .../presto/spi/type/FixedWidthType.java | 4 +- .../presto/spi/type/HyperLogLogType.java | 4 +- .../presto/spi/type/IntervalDayTimeType.java | 4 +- .../spi/type/IntervalYearMonthType.java | 4 +- .../facebook/presto/spi/type/TimeType.java | 4 +- .../presto/spi/type/TimeWithTimeZoneType.java | 4 +- .../presto/spi/type/TimestampType.java | 4 +- .../spi/type/TimestampWithTimeZoneType.java | 4 +- .../facebook/presto/spi/type/VarcharType.java | 4 +- .../presto/spi/type/VariableWidthType.java | 4 +- .../facebook/presto/tpch/TpchMetadata.java | 12 ++-- 173 files changed, 609 insertions(+), 601 deletions(-) rename presto-spi/src/main/java/com/facebook/presto/spi/{Session.java => ConnectorSession.java} (89%) diff --git a/presto-cassandra/src/main/java/com/facebook/presto/cassandra/CassandraMetadata.java b/presto-cassandra/src/main/java/com/facebook/presto/cassandra/CassandraMetadata.java index 2f3528607f1e..02434d2c7b48 100644 --- a/presto-cassandra/src/main/java/com/facebook/presto/cassandra/CassandraMetadata.java +++ b/presto-cassandra/src/main/java/com/facebook/presto/cassandra/CassandraMetadata.java @@ -16,6 +16,7 @@ import com.facebook.presto.cassandra.util.CassandraCqlUtils; import com.facebook.presto.spi.ConnectorColumnHandle; import com.facebook.presto.spi.ColumnMetadata; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableHandle; import com.facebook.presto.spi.ConnectorTableMetadata; import com.facebook.presto.spi.NotFoundException; @@ -23,7 +24,6 @@ import com.facebook.presto.spi.SchemaNotFoundException; import com.facebook.presto.spi.SchemaTableName; import com.facebook.presto.spi.SchemaTablePrefix; -import com.facebook.presto.spi.Session; import com.google.common.base.Objects; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; @@ -51,13 +51,13 @@ public CassandraMetadata(CassandraConnectorId connectorId, CachingCassandraSchem } @Override - public List listSchemaNames(Session session) + public List listSchemaNames(ConnectorSession session) { return schemaProvider.getAllSchemas(); } @Override - public CassandraTableHandle getTableHandle(Session session, SchemaTableName tableName) + public CassandraTableHandle getTableHandle(ConnectorSession session, SchemaTableName tableName) { checkNotNull(tableName, "tableName is null"); try { @@ -94,7 +94,7 @@ private ConnectorTableMetadata getTableMetadata(SchemaTableName tableName) } @Override - public List listTables(Session session, String schemaNameOrNull) + public List listTables(ConnectorSession session, String schemaNameOrNull) { ImmutableList.Builder tableNames = ImmutableList.builder(); for (String schemaName : listSchemas(session, schemaNameOrNull)) { @@ -110,7 +110,7 @@ public List listTables(Session session, String schemaNameOrNull return tableNames.build(); } - private List listSchemas(Session session, String schemaNameOrNull) + private List listSchemas(ConnectorSession session, String schemaNameOrNull) { if (schemaNameOrNull == null) { return listSchemaNames(session); @@ -144,7 +144,7 @@ public Map getColumnHandles(ConnectorTableHandle } @Override - public Map> listTableColumns(Session session, SchemaTablePrefix prefix) + public Map> listTableColumns(ConnectorSession session, SchemaTablePrefix prefix) { checkNotNull(prefix, "prefix is null"); ImmutableMap.Builder> columns = ImmutableMap.builder(); @@ -159,7 +159,7 @@ public Map> listTableColumns(Session sessi return columns.build(); } - private List listTables(Session session, SchemaTablePrefix prefix) + private List listTables(ConnectorSession session, SchemaTablePrefix prefix) { if (prefix.getSchemaName() == null) { return listTables(session, prefix.getSchemaName()); diff --git a/presto-cassandra/src/test/java/com/facebook/presto/cassandra/TestCassandraConnector.java b/presto-cassandra/src/test/java/com/facebook/presto/cassandra/TestCassandraConnector.java index 2565708f7a8c..e7465836c3de 100644 --- a/presto-cassandra/src/test/java/com/facebook/presto/cassandra/TestCassandraConnector.java +++ b/presto-cassandra/src/test/java/com/facebook/presto/cassandra/TestCassandraConnector.java @@ -20,6 +20,7 @@ import com.facebook.presto.spi.ConnectorMetadata; import com.facebook.presto.spi.ConnectorPartitionResult; import com.facebook.presto.spi.ConnectorRecordSetProvider; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorSplit; import com.facebook.presto.spi.ConnectorSplitManager; import com.facebook.presto.spi.ConnectorSplitSource; @@ -29,7 +30,6 @@ import com.facebook.presto.spi.SchemaNotFoundException; import com.facebook.presto.spi.SchemaTableName; import com.facebook.presto.spi.SchemaTablePrefix; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.TupleDomain; import com.facebook.presto.spi.type.Type; import com.google.common.base.Charsets; @@ -79,7 +79,7 @@ public class TestCassandraConnector { - private static final Session SESSION = new Session("user", "test", "catalog", "test", UTC_KEY, Locale.ENGLISH, null, null); + private static final ConnectorSession SESSION = new ConnectorSession("user", "test", "catalog", "test", UTC_KEY, Locale.ENGLISH, null, null); protected static final String INVALID_DATABASE = "totally_invalid_database"; private ConnectorMetadata metadata; diff --git a/presto-example-http/src/main/java/com/facebook/presto/example/ExampleMetadata.java b/presto-example-http/src/main/java/com/facebook/presto/example/ExampleMetadata.java index de49733fdebe..4305b66b058e 100644 --- a/presto-example-http/src/main/java/com/facebook/presto/example/ExampleMetadata.java +++ b/presto-example-http/src/main/java/com/facebook/presto/example/ExampleMetadata.java @@ -15,12 +15,12 @@ import com.facebook.presto.spi.ConnectorColumnHandle; import com.facebook.presto.spi.ColumnMetadata; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableHandle; import com.facebook.presto.spi.ConnectorTableMetadata; import com.facebook.presto.spi.ReadOnlyConnectorMetadata; import com.facebook.presto.spi.SchemaTableName; import com.facebook.presto.spi.SchemaTablePrefix; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.TableNotFoundException; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; @@ -50,7 +50,7 @@ public ExampleMetadata(ExampleConnectorId connectorId, ExampleClient exampleClie } @Override - public List listSchemaNames(Session session) + public List listSchemaNames(ConnectorSession session) { return listSchemaNames(); } @@ -61,7 +61,7 @@ public List listSchemaNames() } @Override - public ExampleTableHandle getTableHandle(Session session, SchemaTableName tableName) + public ExampleTableHandle getTableHandle(ConnectorSession session, SchemaTableName tableName) { if (!listSchemaNames(session).contains(tableName.getSchemaName())) { return null; @@ -87,7 +87,7 @@ public ConnectorTableMetadata getTableMetadata(ConnectorTableHandle table) } @Override - public List listTables(Session session, String schemaNameOrNull) + public List listTables(ConnectorSession session, String schemaNameOrNull) { Set schemaNames; if (schemaNameOrNull != null) { @@ -139,7 +139,7 @@ public Map getColumnHandles(ConnectorTableHandle } @Override - public Map> listTableColumns(Session session, SchemaTablePrefix prefix) + public Map> listTableColumns(ConnectorSession session, SchemaTablePrefix prefix) { checkNotNull(prefix, "prefix is null"); ImmutableMap.Builder> columns = ImmutableMap.builder(); @@ -167,7 +167,7 @@ private ConnectorTableMetadata getTableMetadata(SchemaTableName tableName) return new ConnectorTableMetadata(tableName, table.getColumnsMetadata()); } - private List listTables(Session session, SchemaTablePrefix prefix) + private List listTables(ConnectorSession session, SchemaTablePrefix prefix) { if (prefix.getSchemaName() == null) { return listTables(session, prefix.getSchemaName()); diff --git a/presto-example-http/src/test/java/com/facebook/presto/example/TestExampleMetadata.java b/presto-example-http/src/test/java/com/facebook/presto/example/TestExampleMetadata.java index c8816bb8e936..32215cb15c24 100644 --- a/presto-example-http/src/test/java/com/facebook/presto/example/TestExampleMetadata.java +++ b/presto-example-http/src/test/java/com/facebook/presto/example/TestExampleMetadata.java @@ -14,9 +14,9 @@ package com.facebook.presto.example; import com.facebook.presto.spi.ColumnMetadata; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableMetadata; import com.facebook.presto.spi.SchemaTableName; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.TableNotFoundException; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; @@ -41,7 +41,7 @@ @Test(singleThreaded = true) public class TestExampleMetadata { - private static final Session SESSION = new Session("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); + private static final ConnectorSession SESSION = new ConnectorSession("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); private static final String CONNECTOR_ID = "TEST"; private static final ExampleTableHandle NUMBERS_TABLE_HANDLE = new ExampleTableHandle(CONNECTOR_ID, "example", "numbers"); private ExampleMetadata metadata; diff --git a/presto-hive/src/main/java/com/facebook/presto/hive/HiveClient.java b/presto-hive/src/main/java/com/facebook/presto/hive/HiveClient.java index 4749056ec6ab..e72e88e23134 100644 --- a/presto-hive/src/main/java/com/facebook/presto/hive/HiveClient.java +++ b/presto-hive/src/main/java/com/facebook/presto/hive/HiveClient.java @@ -27,6 +27,7 @@ import com.facebook.presto.spi.ConnectorPartitionResult; import com.facebook.presto.spi.ConnectorRecordSetProvider; import com.facebook.presto.spi.ConnectorRecordSinkProvider; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorSplit; import com.facebook.presto.spi.ConnectorSplitManager; import com.facebook.presto.spi.ConnectorSplitSource; @@ -40,7 +41,6 @@ import com.facebook.presto.spi.SchemaNotFoundException; import com.facebook.presto.spi.SchemaTableName; import com.facebook.presto.spi.SchemaTablePrefix; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.TableNotFoundException; import com.facebook.presto.spi.TupleDomain; import com.facebook.presto.spi.type.Type; @@ -217,13 +217,13 @@ public String getConnectorId() } @Override - public List listSchemaNames(Session session) + public List listSchemaNames(ConnectorSession session) { return metastore.getAllDatabases(); } @Override - public HiveTableHandle getTableHandle(Session session, SchemaTableName tableName) + public HiveTableHandle getTableHandle(ConnectorSession session, SchemaTableName tableName) { checkNotNull(tableName, "tableName is null"); try { @@ -263,7 +263,7 @@ private ConnectorTableMetadata getTableMetadata(SchemaTableName tableName) } @Override - public List listTables(Session session, String schemaNameOrNull) + public List listTables(ConnectorSession session, String schemaNameOrNull) { ImmutableList.Builder tableNames = ImmutableList.builder(); for (String schemaName : listSchemas(session, schemaNameOrNull)) { @@ -279,7 +279,7 @@ public List listTables(Session session, String schemaNameOrNull return tableNames.build(); } - private List listSchemas(Session session, String schemaNameOrNull) + private List listSchemas(ConnectorSession session, String schemaNameOrNull) { if (schemaNameOrNull == null) { return listSchemaNames(session); @@ -314,7 +314,7 @@ public ConnectorColumnHandle getSampleWeightColumnHandle(ConnectorTableHandle ta } @Override - public boolean canCreateSampledTables(Session session) + public boolean canCreateSampledTables(ConnectorSession session) { return true; } @@ -364,7 +364,7 @@ private List getColumnHandles(Table table, boolean includeSamp } @Override - public Map> listTableColumns(Session session, SchemaTablePrefix prefix) + public Map> listTableColumns(ConnectorSession session, SchemaTablePrefix prefix) { checkNotNull(prefix, "prefix is null"); ImmutableMap.Builder> columns = ImmutableMap.builder(); @@ -379,7 +379,7 @@ public Map> listTableColumns(Session sessi return columns.build(); } - private List listTables(Session session, SchemaTablePrefix prefix) + private List listTables(ConnectorSession session, SchemaTablePrefix prefix) { if (prefix.getSchemaName() == null) { return listTables(session, prefix.getSchemaName()); @@ -398,7 +398,7 @@ public ColumnMetadata getColumnMetadata(ConnectorTableHandle tableHandle, Connec } @Override - public ConnectorTableHandle createTable(Session session, ConnectorTableMetadata tableMetadata) + public ConnectorTableHandle createTable(ConnectorSession session, ConnectorTableMetadata tableMetadata) { throw new UnsupportedOperationException(); } @@ -410,7 +410,7 @@ public void dropTable(ConnectorTableHandle tableHandle) } @Override - public HiveOutputTableHandle beginCreateTable(Session session, ConnectorTableMetadata tableMetadata) + public HiveOutputTableHandle beginCreateTable(ConnectorSession session, ConnectorTableMetadata tableMetadata) { checkArgument(!isNullOrEmpty(tableMetadata.getOwner()), "Table owner is null or empty"); diff --git a/presto-hive/src/main/java/com/facebook/presto/hive/HiveSplit.java b/presto-hive/src/main/java/com/facebook/presto/hive/HiveSplit.java index d7ecb016190b..e5e697d23b43 100644 --- a/presto-hive/src/main/java/com/facebook/presto/hive/HiveSplit.java +++ b/presto-hive/src/main/java/com/facebook/presto/hive/HiveSplit.java @@ -13,9 +13,9 @@ */ package com.facebook.presto.hive; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorSplit; import com.facebook.presto.spi.HostAddress; -import com.facebook.presto.spi.Session; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.Objects; @@ -41,7 +41,7 @@ public class HiveSplit private final String database; private final String table; private final String partitionName; - private final Session session; + private final ConnectorSession session; @JsonCreator public HiveSplit( @@ -55,7 +55,7 @@ public HiveSplit( @JsonProperty("schema") Properties schema, @JsonProperty("partitionKeys") List partitionKeys, @JsonProperty("addresses") List addresses, - @JsonProperty("session") Session session) + @JsonProperty("session") ConnectorSession session) { this.session = session; checkNotNull(clientId, "clientId is null"); @@ -143,7 +143,7 @@ public List getAddresses() } @JsonProperty - public Session getSession() + public ConnectorSession getSession() { return session; } diff --git a/presto-hive/src/main/java/com/facebook/presto/hive/HiveSplitSourceProvider.java b/presto-hive/src/main/java/com/facebook/presto/hive/HiveSplitSourceProvider.java index 39d3e03d5a5a..ad6ac7ae93b9 100644 --- a/presto-hive/src/main/java/com/facebook/presto/hive/HiveSplitSourceProvider.java +++ b/presto-hive/src/main/java/com/facebook/presto/hive/HiveSplitSourceProvider.java @@ -17,11 +17,11 @@ import com.facebook.presto.hive.util.BoundedExecutor; import com.facebook.presto.hive.util.FileStatusCallback; import com.facebook.presto.hive.util.SuspendingExecutor; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorSplit; import com.facebook.presto.spi.ConnectorSplitSource; import com.facebook.presto.spi.HostAddress; import com.facebook.presto.spi.PrestoException; -import com.facebook.presto.spi.Session; import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Optional; import com.google.common.base.Throwables; @@ -111,7 +111,7 @@ public Object getInfo() private final ClassLoader classLoader; private final DataSize maxSplitSize; private final int maxPartitionBatchSize; - private final Session session; + private final ConnectorSession session; HiveSplitSourceProvider(String connectorId, Table table, @@ -126,7 +126,7 @@ public Object getInfo() DirectoryLister directoryLister, Executor executor, int maxPartitionBatchSize, - Session session) + ConnectorSession session) { this.connectorId = connectorId; this.table = table; @@ -166,7 +166,7 @@ public void run() return hiveSplitSource; } - private void loadPartitionSplits(final HiveSplitSource hiveSplitSource, SuspendingExecutor suspendingExecutor, final Session session) + private void loadPartitionSplits(final HiveSplitSource hiveSplitSource, SuspendingExecutor suspendingExecutor, final ConnectorSession session) throws InterruptedException { final Semaphore semaphore = new Semaphore(maxPartitionBatchSize); @@ -335,7 +335,7 @@ private List createHiveSplits( Properties schema, List partitionKeys, boolean splittable, - Session session) + ConnectorSession session) throws IOException { ImmutableList.Builder builder = ImmutableList.builder(); diff --git a/presto-hive/src/main/java/com/facebook/presto/hive/HiveTableHandle.java b/presto-hive/src/main/java/com/facebook/presto/hive/HiveTableHandle.java index 9d7f92b77061..f92efd2beddb 100644 --- a/presto-hive/src/main/java/com/facebook/presto/hive/HiveTableHandle.java +++ b/presto-hive/src/main/java/com/facebook/presto/hive/HiveTableHandle.java @@ -13,9 +13,9 @@ */ package com.facebook.presto.hive; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableHandle; import com.facebook.presto.spi.SchemaTableName; -import com.facebook.presto.spi.Session; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.Objects; @@ -28,14 +28,14 @@ public class HiveTableHandle private final String clientId; private final String schemaName; private final String tableName; - private final Session session; + private final ConnectorSession session; @JsonCreator public HiveTableHandle( @JsonProperty("clientId") String clientId, @JsonProperty("schemaName") String schemaName, @JsonProperty("tableName") String tableName, - @JsonProperty("session") Session session) + @JsonProperty("session") ConnectorSession session) { this.clientId = checkNotNull(clientId, "clientId is null"); this.schemaName = checkNotNull(schemaName, "schemaName is null"); @@ -56,7 +56,7 @@ public String getSchemaName() } @JsonProperty - public Session getSession() + public ConnectorSession getSession() { return session; } diff --git a/presto-hive/src/test/java/com/facebook/presto/hive/AbstractTestHiveClient.java b/presto-hive/src/test/java/com/facebook/presto/hive/AbstractTestHiveClient.java index 625e17cd002a..2c0473b52ee3 100644 --- a/presto-hive/src/test/java/com/facebook/presto/hive/AbstractTestHiveClient.java +++ b/presto-hive/src/test/java/com/facebook/presto/hive/AbstractTestHiveClient.java @@ -21,6 +21,7 @@ import com.facebook.presto.spi.ConnectorPartitionResult; import com.facebook.presto.spi.ConnectorRecordSetProvider; import com.facebook.presto.spi.ConnectorRecordSinkProvider; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorSplit; import com.facebook.presto.spi.ConnectorSplitManager; import com.facebook.presto.spi.ConnectorSplitSource; @@ -33,7 +34,6 @@ import com.facebook.presto.spi.SchemaNotFoundException; import com.facebook.presto.spi.SchemaTableName; import com.facebook.presto.spi.SchemaTablePrefix; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.TableNotFoundException; import com.facebook.presto.spi.TupleDomain; import com.facebook.presto.spi.type.Type; @@ -86,7 +86,7 @@ @Test(groups = "hive") public abstract class AbstractTestHiveClient { - private static final Session SESSION = new Session("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); + private static final ConnectorSession SESSION = new ConnectorSession("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); protected static final String INVALID_DATABASE = "totally_invalid_database"; protected static final String INVALID_COLUMN = "totally_invalid_column_name"; diff --git a/presto-hive/src/test/java/com/facebook/presto/hive/AbstractTestHiveClientS3.java b/presto-hive/src/test/java/com/facebook/presto/hive/AbstractTestHiveClientS3.java index 8e9e7cfec0a6..f4d2817de5d6 100644 --- a/presto-hive/src/test/java/com/facebook/presto/hive/AbstractTestHiveClientS3.java +++ b/presto-hive/src/test/java/com/facebook/presto/hive/AbstractTestHiveClientS3.java @@ -17,6 +17,7 @@ import com.facebook.presto.spi.ColumnMetadata; import com.facebook.presto.spi.ConnectorColumnHandle; import com.facebook.presto.spi.ConnectorPartitionResult; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorSplit; import com.facebook.presto.spi.ConnectorSplitSource; import com.facebook.presto.spi.ConnectorTableHandle; @@ -24,7 +25,6 @@ import com.facebook.presto.spi.RecordCursor; import com.facebook.presto.spi.RecordSink; import com.facebook.presto.spi.SchemaTableName; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.TupleDomain; import com.google.common.base.Throwables; import com.google.common.collect.ImmutableList; @@ -59,7 +59,7 @@ @Test(groups = "hive-s3") public abstract class AbstractTestHiveClientS3 { - private static final Session SESSION = new Session("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); + private static final ConnectorSession SESSION = new ConnectorSession("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); protected String database; protected SchemaTableName tableS3; diff --git a/presto-hive/src/test/java/com/facebook/presto/hive/TestHiveSplit.java b/presto-hive/src/test/java/com/facebook/presto/hive/TestHiveSplit.java index fccdfc154b62..567fefe4b9a6 100644 --- a/presto-hive/src/test/java/com/facebook/presto/hive/TestHiveSplit.java +++ b/presto-hive/src/test/java/com/facebook/presto/hive/TestHiveSplit.java @@ -13,8 +13,8 @@ */ package com.facebook.presto.hive; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.HostAddress; -import com.facebook.presto.spi.Session; import com.google.common.collect.ImmutableList; import io.airlift.json.JsonCodec; import org.testng.annotations.Test; @@ -27,7 +27,7 @@ public class TestHiveSplit { - private static final Session SESSION = new Session("user", "test", "catalog", "test", UTC_KEY, Locale.ENGLISH, null, null); + private static final ConnectorSession SESSION = new ConnectorSession("user", "test", "catalog", "test", UTC_KEY, Locale.ENGLISH, null, null); private final JsonCodec codec = JsonCodec.jsonCodec(HiveSplit.class); @Test diff --git a/presto-hive/src/test/java/com/facebook/presto/hive/TestHiveTableHandle.java b/presto-hive/src/test/java/com/facebook/presto/hive/TestHiveTableHandle.java index caa964ccb291..717d35455fb7 100644 --- a/presto-hive/src/test/java/com/facebook/presto/hive/TestHiveTableHandle.java +++ b/presto-hive/src/test/java/com/facebook/presto/hive/TestHiveTableHandle.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.hive; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import io.airlift.json.JsonCodec; import org.testng.annotations.Test; @@ -24,7 +24,7 @@ public class TestHiveTableHandle { - private static final Session SESSION = new Session("user", "test", "catalog", "test", UTC_KEY, Locale.ENGLISH, null, null); + private static final ConnectorSession SESSION = new ConnectorSession("user", "test", "catalog", "test", UTC_KEY, Locale.ENGLISH, null, null); private final JsonCodec codec = JsonCodec.jsonCodec(HiveTableHandle.class); @Test diff --git a/presto-hive/src/test/java/com/facebook/presto/hive/TestJsonHiveHandles.java b/presto-hive/src/test/java/com/facebook/presto/hive/TestJsonHiveHandles.java index e5248c6caa5c..24e6637f0491 100644 --- a/presto-hive/src/test/java/com/facebook/presto/hive/TestJsonHiveHandles.java +++ b/presto-hive/src/test/java/com/facebook/presto/hive/TestJsonHiveHandles.java @@ -13,8 +13,8 @@ */ package com.facebook.presto.hive; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.SchemaTableName; -import com.facebook.presto.spi.Session; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; import com.google.common.collect.ImmutableMap; @@ -32,7 +32,7 @@ @Test public class TestJsonHiveHandles { - private static final Session SESSION = new Session("user", "test", "catalog", "test", UTC_KEY, Locale.ENGLISH, null, null); + private static final ConnectorSession SESSION = new ConnectorSession("user", "test", "catalog", "test", UTC_KEY, Locale.ENGLISH, null, null); private static final Map TABLE_HANDLE_AS_MAP = ImmutableMap.of( "clientId", "hive", diff --git a/presto-main/src/main/java/com/facebook/presto/block/dictionary/DictionaryEncodedBlock.java b/presto-main/src/main/java/com/facebook/presto/block/dictionary/DictionaryEncodedBlock.java index 2d2ec3e90566..95284d2f4529 100644 --- a/presto-main/src/main/java/com/facebook/presto/block/dictionary/DictionaryEncodedBlock.java +++ b/presto-main/src/main/java/com/facebook/presto/block/dictionary/DictionaryEncodedBlock.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.block.dictionary; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockCursor; import com.facebook.presto.spi.block.BlockEncoding; @@ -123,7 +123,7 @@ public RandomAccessBlock getSingleValueBlock(int position) } @Override - public Object getObjectValue(Session session, int position) + public Object getObjectValue(ConnectorSession session, int position) { return dictionary.getObjectValue(session, getDictionaryKey(position)); } diff --git a/presto-main/src/main/java/com/facebook/presto/block/dictionary/DictionaryEncodedBlockCursor.java b/presto-main/src/main/java/com/facebook/presto/block/dictionary/DictionaryEncodedBlockCursor.java index 00bce5e722b1..c2cab33f710d 100644 --- a/presto-main/src/main/java/com/facebook/presto/block/dictionary/DictionaryEncodedBlockCursor.java +++ b/presto-main/src/main/java/com/facebook/presto/block/dictionary/DictionaryEncodedBlockCursor.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.block.dictionary; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.Block; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockCursor; @@ -125,7 +125,7 @@ public Slice getSlice() } @Override - public Object getObjectValue(Session session) + public Object getObjectValue(ConnectorSession session) { return dictionary.getObjectValue(session, getDictionaryKey()); } diff --git a/presto-main/src/main/java/com/facebook/presto/block/rle/RunLengthEncodedBlock.java b/presto-main/src/main/java/com/facebook/presto/block/rle/RunLengthEncodedBlock.java index 5e9c40105c76..814696ab372f 100644 --- a/presto-main/src/main/java/com/facebook/presto/block/rle/RunLengthEncodedBlock.java +++ b/presto-main/src/main/java/com/facebook/presto/block/rle/RunLengthEncodedBlock.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.block.rle; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockCursor; import com.facebook.presto.spi.block.RandomAccessBlock; @@ -109,7 +109,7 @@ public double getDouble(int position) } @Override - public Object getObjectValue(Session session, int position) + public Object getObjectValue(ConnectorSession session, int position) { checkReadablePosition(position); return value.getObjectValue(session, 0); diff --git a/presto-main/src/main/java/com/facebook/presto/block/rle/RunLengthEncodedBlockCursor.java b/presto-main/src/main/java/com/facebook/presto/block/rle/RunLengthEncodedBlockCursor.java index e0a5036f320a..a8304c312704 100644 --- a/presto-main/src/main/java/com/facebook/presto/block/rle/RunLengthEncodedBlockCursor.java +++ b/presto-main/src/main/java/com/facebook/presto/block/rle/RunLengthEncodedBlockCursor.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.block.rle; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.Block; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockCursor; @@ -159,7 +159,7 @@ public Slice getSlice() } @Override - public Object getObjectValue(Session session) + public Object getObjectValue(ConnectorSession session) { checkReadablePosition(); return value.getObjectValue(session, 0); diff --git a/presto-main/src/main/java/com/facebook/presto/connector/dual/DualMetadata.java b/presto-main/src/main/java/com/facebook/presto/connector/dual/DualMetadata.java index b18eecf106a5..01bbbfd5b59c 100644 --- a/presto-main/src/main/java/com/facebook/presto/connector/dual/DualMetadata.java +++ b/presto-main/src/main/java/com/facebook/presto/connector/dual/DualMetadata.java @@ -16,6 +16,7 @@ import com.facebook.presto.metadata.MetadataManager; import com.facebook.presto.spi.ColumnMetadata; import com.facebook.presto.spi.ConnectorColumnHandle; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableHandle; import com.facebook.presto.spi.ConnectorTableMetadata; import com.facebook.presto.spi.ReadOnlyConnectorMetadata; @@ -23,7 +24,6 @@ import com.facebook.presto.spi.SchemaTablePrefix; import com.facebook.presto.sql.analyzer.FeaturesConfig; import com.facebook.presto.type.TypeRegistry; -import com.facebook.presto.spi.Session; import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; @@ -53,13 +53,13 @@ public class DualMetadata public static final ColumnMetadata COLUMN_METADATA = new ColumnMetadata(COLUMN_NAME, VARCHAR, 0, false); @Override - public List listSchemaNames(Session session) + public List listSchemaNames(ConnectorSession session) { return ImmutableList.of(); } @Override - public ConnectorTableHandle getTableHandle(Session session, SchemaTableName table) + public ConnectorTableHandle getTableHandle(ConnectorSession session, SchemaTableName table) { checkNotNull(table, "table is null"); if (!table.getTableName().equals(NAME)) { @@ -79,7 +79,7 @@ public ConnectorTableMetadata getTableMetadata(ConnectorTableHandle tableHandle) } @Override - public List listTables(Session session, String schemaNameOrNull) + public List listTables(ConnectorSession session, String schemaNameOrNull) { // don't list dual return ImmutableList.of(); @@ -124,7 +124,7 @@ public ColumnMetadata getColumnMetadata(ConnectorTableHandle tableHandle, Connec } @Override - public Map> listTableColumns(Session session, SchemaTablePrefix prefix) + public Map> listTableColumns(ConnectorSession session, SchemaTablePrefix prefix) { // dual can not be a listed at catalog level because dual is in all possible schemas if (prefix.getSchemaName() == null) { diff --git a/presto-main/src/main/java/com/facebook/presto/connector/informationSchema/InformationSchemaDataStreamProvider.java b/presto-main/src/main/java/com/facebook/presto/connector/informationSchema/InformationSchemaDataStreamProvider.java index c4e619ab8c69..ff63546206a5 100644 --- a/presto-main/src/main/java/com/facebook/presto/connector/informationSchema/InformationSchemaDataStreamProvider.java +++ b/presto-main/src/main/java/com/facebook/presto/connector/informationSchema/InformationSchemaDataStreamProvider.java @@ -30,9 +30,9 @@ import com.facebook.presto.operator.OperatorContext; import com.facebook.presto.spi.ColumnMetadata; import com.facebook.presto.spi.ConnectorColumnHandle; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorSplit; import com.facebook.presto.spi.SchemaTableName; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.TupleDomain; import com.facebook.presto.spi.type.Type; import com.facebook.presto.spi.type.VarcharType; @@ -101,7 +101,7 @@ private List createChannels(ConnectorSplit split, List filters) + public InternalTable getInformationSchemaTable(ConnectorSession session, String catalog, SchemaTableName table, Map filters) { if (table.equals(InformationSchemaMetadata.TABLE_COLUMNS)) { return buildColumns(session, catalog, filters); @@ -122,7 +122,7 @@ else if (table.equals(InformationSchemaMetadata.TABLE_INTERNAL_PARTITIONS)) { throw new IllegalArgumentException(format("table does not exist: %s", table)); } - private InternalTable buildColumns(Session session, String catalogName, Map filters) + private InternalTable buildColumns(ConnectorSession session, String catalogName, Map filters) { InternalTable.Builder table = InternalTable.builder(InformationSchemaMetadata.informationSchemaTableColumns(InformationSchemaMetadata.TABLE_COLUMNS)); for (Entry> entry : getColumnsList(session, catalogName, filters).entrySet()) { @@ -143,12 +143,12 @@ private InternalTable buildColumns(Session session, String catalogName, Map> getColumnsList(Session session, String catalogName, Map filters) + private Map> getColumnsList(ConnectorSession session, String catalogName, Map filters) { return metadata.listTableColumns(session, extractQualifiedTablePrefix(catalogName, filters)); } - private InternalTable buildTables(Session session, String catalogName, Map filters) + private InternalTable buildTables(ConnectorSession session, String catalogName, Map filters) { InternalTable.Builder table = InternalTable.builder(InformationSchemaMetadata.informationSchemaTableColumns(InformationSchemaMetadata.TABLE_TABLES)); for (QualifiedTableName name : getTablesList(session, catalogName, filters)) { @@ -161,7 +161,7 @@ private InternalTable buildTables(Session session, String catalogName, Map getTablesList(Session session, String catalogName, Map filters) + private List getTablesList(ConnectorSession session, String catalogName, Map filters) { return metadata.listTables(session, extractQualifiedTablePrefix(catalogName, filters)); } @@ -207,7 +207,7 @@ else if (function.isDeterministic()) { return table.build(); } - private InternalTable buildSchemata(Session session, String catalogName) + private InternalTable buildSchemata(ConnectorSession session, String catalogName) { InternalTable.Builder table = InternalTable.builder(InformationSchemaMetadata.informationSchemaTableColumns(InformationSchemaMetadata.TABLE_SCHEMATA)); for (String schema : metadata.listSchemaNames(session, catalogName)) { @@ -216,7 +216,7 @@ private InternalTable buildSchemata(Session session, String catalogName) return table.build(); } - private InternalTable buildPartitions(Session session, String catalogName, Map filters) + private InternalTable buildPartitions(ConnectorSession session, String catalogName, Map filters) { QualifiedTableName tableName = extractQualifiedTableName(catalogName, filters); diff --git a/presto-main/src/main/java/com/facebook/presto/connector/informationSchema/InformationSchemaMetadata.java b/presto-main/src/main/java/com/facebook/presto/connector/informationSchema/InformationSchemaMetadata.java index d5753f77f4d3..edcb7e17eda6 100644 --- a/presto-main/src/main/java/com/facebook/presto/connector/informationSchema/InformationSchemaMetadata.java +++ b/presto-main/src/main/java/com/facebook/presto/connector/informationSchema/InformationSchemaMetadata.java @@ -15,12 +15,12 @@ import com.facebook.presto.spi.ConnectorColumnHandle; import com.facebook.presto.spi.ColumnMetadata; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableHandle; import com.facebook.presto.spi.ConnectorTableMetadata; import com.facebook.presto.spi.ReadOnlyConnectorMetadata; import com.facebook.presto.spi.SchemaTableName; import com.facebook.presto.spi.SchemaTablePrefix; -import com.facebook.presto.spi.Session; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; @@ -110,13 +110,13 @@ private InformationSchemaTableHandle checkTableHandle(ConnectorTableHandle table } @Override - public List listSchemaNames(Session session) + public List listSchemaNames(ConnectorSession session) { return ImmutableList.of(INFORMATION_SCHEMA); } @Override - public ConnectorTableHandle getTableHandle(Session session, SchemaTableName tableName) + public ConnectorTableHandle getTableHandle(ConnectorSession session, SchemaTableName tableName) { if (!TABLES.containsKey(tableName)) { return null; @@ -132,7 +132,7 @@ public ConnectorTableMetadata getTableMetadata(ConnectorTableHandle tableHandle) } @Override - public List listTables(Session session, String schemaNameOrNull) + public List listTables(ConnectorSession session, String schemaNameOrNull) { if (schemaNameOrNull == null) { return ImmutableList.copyOf(TABLES.keySet()); @@ -184,7 +184,7 @@ public Map getColumnHandles(ConnectorTableHandle } @Override - public Map> listTableColumns(Session session, SchemaTablePrefix prefix) + public Map> listTableColumns(ConnectorSession session, SchemaTablePrefix prefix) { checkNotNull(prefix, "prefix is null"); ImmutableMap.Builder> builder = ImmutableMap.builder(); diff --git a/presto-main/src/main/java/com/facebook/presto/connector/informationSchema/InformationSchemaTableHandle.java b/presto-main/src/main/java/com/facebook/presto/connector/informationSchema/InformationSchemaTableHandle.java index edba72ecd237..7d6b1e03b433 100644 --- a/presto-main/src/main/java/com/facebook/presto/connector/informationSchema/InformationSchemaTableHandle.java +++ b/presto-main/src/main/java/com/facebook/presto/connector/informationSchema/InformationSchemaTableHandle.java @@ -13,9 +13,9 @@ */ package com.facebook.presto.connector.informationSchema; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableHandle; import com.facebook.presto.spi.SchemaTableName; -import com.facebook.presto.spi.Session; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.Objects; @@ -25,14 +25,14 @@ public class InformationSchemaTableHandle implements ConnectorTableHandle { - private final Session session; + private final ConnectorSession session; private final String catalogName; private final String schemaName; private final String tableName; @JsonCreator public InformationSchemaTableHandle( - @JsonProperty("session") Session session, + @JsonProperty("session") ConnectorSession session, @JsonProperty("catalogName") String catalogName, @JsonProperty("schemaName") String schemaName, @JsonProperty("tableName") String tableName) @@ -44,7 +44,7 @@ public InformationSchemaTableHandle( } @JsonProperty - public Session getSession() + public ConnectorSession getSession() { return session; } diff --git a/presto-main/src/main/java/com/facebook/presto/connector/jmx/JmxMetadata.java b/presto-main/src/main/java/com/facebook/presto/connector/jmx/JmxMetadata.java index 21ae26dac8fb..58904e4f843e 100644 --- a/presto-main/src/main/java/com/facebook/presto/connector/jmx/JmxMetadata.java +++ b/presto-main/src/main/java/com/facebook/presto/connector/jmx/JmxMetadata.java @@ -15,12 +15,12 @@ import com.facebook.presto.spi.ConnectorColumnHandle; import com.facebook.presto.spi.ColumnMetadata; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableHandle; import com.facebook.presto.spi.ConnectorTableMetadata; import com.facebook.presto.spi.ReadOnlyConnectorMetadata; import com.facebook.presto.spi.SchemaTableName; import com.facebook.presto.spi.SchemaTablePrefix; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.type.Type; import com.google.common.base.Function; import com.google.common.base.Predicate; @@ -65,13 +65,13 @@ public JmxMetadata(JmxConnectorId jmxConnectorId, MBeanServer mbeanServer) } @Override - public List listSchemaNames(Session session) + public List listSchemaNames(ConnectorSession session) { return ImmutableList.of(SCHEMA_NAME); } @Override - public JmxTableHandle getTableHandle(Session session, SchemaTableName tableName) + public JmxTableHandle getTableHandle(ConnectorSession session, SchemaTableName tableName) { checkNotNull(tableName, "tableName is null"); if (!tableName.getSchemaName().equals(SCHEMA_NAME)) { @@ -108,7 +108,7 @@ public ConnectorTableMetadata getTableMetadata(ConnectorTableHandle tableHandle) } @Override - public List listTables(Session session, String schemaNameOrNull) + public List listTables(ConnectorSession session, String schemaNameOrNull) { if (schemaNameOrNull != null && !schemaNameOrNull.equals(SCHEMA_NAME)) { return ImmutableList.of(); @@ -172,7 +172,7 @@ public ColumnMetadata getColumnMetadata(ConnectorTableHandle tableHandle, Connec } @Override - public Map> listTableColumns(Session session, SchemaTablePrefix prefix) + public Map> listTableColumns(ConnectorSession session, SchemaTablePrefix prefix) { checkNotNull(prefix, "prefix is null"); if (prefix.getSchemaName() != null && !prefix.getSchemaName().equals(SCHEMA_NAME)) { diff --git a/presto-main/src/main/java/com/facebook/presto/connector/system/SystemTablesMetadata.java b/presto-main/src/main/java/com/facebook/presto/connector/system/SystemTablesMetadata.java index b135d253f24c..aed072116d59 100644 --- a/presto-main/src/main/java/com/facebook/presto/connector/system/SystemTablesMetadata.java +++ b/presto-main/src/main/java/com/facebook/presto/connector/system/SystemTablesMetadata.java @@ -15,12 +15,12 @@ import com.facebook.presto.spi.ConnectorColumnHandle; import com.facebook.presto.spi.ColumnMetadata; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableHandle; import com.facebook.presto.spi.ConnectorTableMetadata; import com.facebook.presto.spi.ReadOnlyConnectorMetadata; import com.facebook.presto.spi.SchemaTableName; import com.facebook.presto.spi.SchemaTablePrefix; -import com.facebook.presto.spi.Session; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; @@ -61,7 +61,7 @@ private SystemTableHandle checkTableHandle(ConnectorTableHandle tableHandle) } @Override - public List listSchemaNames(Session session) + public List listSchemaNames(ConnectorSession session) { // remove duplicates ImmutableSet schemaNames = ImmutableSet.copyOf(transform(tables.keySet(), schemaNameGetter())); @@ -69,7 +69,7 @@ public List listSchemaNames(Session session) } @Override - public ConnectorTableHandle getTableHandle(Session session, SchemaTableName tableName) + public ConnectorTableHandle getTableHandle(ConnectorSession session, SchemaTableName tableName) { if (!tables.containsKey(tableName)) { return null; @@ -85,7 +85,7 @@ public ConnectorTableMetadata getTableMetadata(ConnectorTableHandle tableHandle) } @Override - public List listTables(Session session, String schemaNameOrNull) + public List listTables(ConnectorSession session, String schemaNameOrNull) { if (schemaNameOrNull == null) { return ImmutableList.copyOf(tables.keySet()); @@ -135,7 +135,7 @@ public Map getColumnHandles(ConnectorTableHandle } @Override - public Map> listTableColumns(Session session, SchemaTablePrefix prefix) + public Map> listTableColumns(ConnectorSession session, SchemaTablePrefix prefix) { checkNotNull(prefix, "prefix is null"); ImmutableMap.Builder> builder = ImmutableMap.builder(); diff --git a/presto-main/src/main/java/com/facebook/presto/execution/DropTableExecution.java b/presto-main/src/main/java/com/facebook/presto/execution/DropTableExecution.java index b502e0e7974b..3e4b56e73237 100644 --- a/presto-main/src/main/java/com/facebook/presto/execution/DropTableExecution.java +++ b/presto-main/src/main/java/com/facebook/presto/execution/DropTableExecution.java @@ -20,7 +20,7 @@ import com.facebook.presto.metadata.ShardManager; import com.facebook.presto.metadata.TableHandle; import com.facebook.presto.metadata.TablePartition; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableHandle; import com.facebook.presto.spi.PrestoException; import com.facebook.presto.sql.tree.DropTable; @@ -52,7 +52,7 @@ public class DropTableExecution { private static final Logger log = Logger.get(DropTableExecution.class); - private final Session session; + private final ConnectorSession session; private final DropTable statement; private final MetadataManager metadataManager; private final ShardManager shardManager; @@ -60,7 +60,7 @@ public class DropTableExecution DropTableExecution(QueryId queryId, String query, - Session session, + ConnectorSession session, URI self, DropTable statement, MetadataManager metadataManager, @@ -190,7 +190,7 @@ public ThreadPoolExecutorMBean getExecutor() } @Override - public DropTableExecution createQueryExecution(QueryId queryId, String query, Session session, Statement statement) + public DropTableExecution createQueryExecution(QueryId queryId, String query, ConnectorSession session, Statement statement) { return new DropTableExecution(queryId, query, diff --git a/presto-main/src/main/java/com/facebook/presto/execution/FailedQueryExecution.java b/presto-main/src/main/java/com/facebook/presto/execution/FailedQueryExecution.java index 0cc3a82252ec..8d678b043e4f 100644 --- a/presto-main/src/main/java/com/facebook/presto/execution/FailedQueryExecution.java +++ b/presto-main/src/main/java/com/facebook/presto/execution/FailedQueryExecution.java @@ -14,7 +14,7 @@ package com.facebook.presto.execution; import com.facebook.presto.execution.StateMachine.StateChangeListener; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import io.airlift.units.Duration; import java.net.URI; @@ -25,7 +25,7 @@ public class FailedQueryExecution { private final QueryInfo queryInfo; - public FailedQueryExecution(QueryId queryId, String query, Session session, URI self, Executor executor, Throwable cause) + public FailedQueryExecution(QueryId queryId, String query, ConnectorSession session, URI self, Executor executor, Throwable cause) { QueryStateMachine queryStateMachine = new QueryStateMachine(queryId, query, session, self, executor); queryStateMachine.fail(cause); diff --git a/presto-main/src/main/java/com/facebook/presto/execution/QueryExecution.java b/presto-main/src/main/java/com/facebook/presto/execution/QueryExecution.java index d3fa4d5833dc..7d6fd5335134 100644 --- a/presto-main/src/main/java/com/facebook/presto/execution/QueryExecution.java +++ b/presto-main/src/main/java/com/facebook/presto/execution/QueryExecution.java @@ -14,7 +14,7 @@ package com.facebook.presto.execution; import com.facebook.presto.execution.StateMachine.StateChangeListener; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.tree.Statement; import io.airlift.units.Duration; @@ -39,6 +39,6 @@ Duration waitForStateChange(QueryState currentState, Duration maxWait) interface QueryExecutionFactory { - T createQueryExecution(QueryId queryId, String query, Session session, Statement statement); + T createQueryExecution(QueryId queryId, String query, ConnectorSession session, Statement statement); } } diff --git a/presto-main/src/main/java/com/facebook/presto/execution/QueryInfo.java b/presto-main/src/main/java/com/facebook/presto/execution/QueryInfo.java index a5dca4e7ec4c..2351d83b6056 100644 --- a/presto-main/src/main/java/com/facebook/presto/execution/QueryInfo.java +++ b/presto-main/src/main/java/com/facebook/presto/execution/QueryInfo.java @@ -14,8 +14,8 @@ package com.facebook.presto.execution; import com.facebook.presto.client.FailureInfo; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ErrorCode; -import com.facebook.presto.spi.Session; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.Function; @@ -35,7 +35,7 @@ public class QueryInfo { private final QueryId queryId; - private final Session session; + private final ConnectorSession session; private final QueryState state; private final URI self; private final List fieldNames; @@ -49,7 +49,7 @@ public class QueryInfo @JsonCreator public QueryInfo( @JsonProperty("queryId") QueryId queryId, - @JsonProperty("session") Session session, + @JsonProperty("session") ConnectorSession session, @JsonProperty("state") QueryState state, @JsonProperty("self") URI self, @JsonProperty("fieldNames") List fieldNames, @@ -95,7 +95,7 @@ public QueryId getQueryId() } @JsonProperty - public Session getSession() + public ConnectorSession getSession() { return session; } diff --git a/presto-main/src/main/java/com/facebook/presto/execution/QueryManager.java b/presto-main/src/main/java/com/facebook/presto/execution/QueryManager.java index 0c9f4ddd32c0..b02acf6486b4 100644 --- a/presto-main/src/main/java/com/facebook/presto/execution/QueryManager.java +++ b/presto-main/src/main/java/com/facebook/presto/execution/QueryManager.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.execution; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import io.airlift.units.Duration; import java.util.List; @@ -27,7 +27,7 @@ Duration waitForStateChange(QueryId queryId, QueryState currentState, Duration m QueryInfo getQueryInfo(QueryId queryId); - QueryInfo createQuery(Session session, String query); + QueryInfo createQuery(ConnectorSession session, String query); void cancelQuery(QueryId queryId); diff --git a/presto-main/src/main/java/com/facebook/presto/execution/QueryStateMachine.java b/presto-main/src/main/java/com/facebook/presto/execution/QueryStateMachine.java index f5a28ad06237..823aaf9a8f78 100644 --- a/presto-main/src/main/java/com/facebook/presto/execution/QueryStateMachine.java +++ b/presto-main/src/main/java/com/facebook/presto/execution/QueryStateMachine.java @@ -16,9 +16,9 @@ import com.facebook.presto.ErrorCodes; import com.facebook.presto.client.FailureInfo; import com.facebook.presto.execution.StateMachine.StateChangeListener; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ErrorCode; import com.facebook.presto.spi.PrestoException; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.StandardErrorCode; import com.google.common.base.Preconditions; import com.google.common.base.Predicates; @@ -59,7 +59,7 @@ public class QueryStateMachine private final QueryId queryId; private final String query; - private final Session session; + private final ConnectorSession session; private final URI self; @GuardedBy("this") @@ -90,7 +90,7 @@ public class QueryStateMachine @GuardedBy("this") private Set inputs = ImmutableSet.of(); - public QueryStateMachine(QueryId queryId, String query, Session session, URI self, Executor executor) + public QueryStateMachine(QueryId queryId, String query, ConnectorSession session, URI self, Executor executor) { this.queryId = checkNotNull(queryId, "queryId is null"); this.query = checkNotNull(query, "query is null"); @@ -113,7 +113,7 @@ public QueryId getQueryId() return queryId; } - public Session getSession() + public ConnectorSession getSession() { return session; } diff --git a/presto-main/src/main/java/com/facebook/presto/execution/RemoteTaskFactory.java b/presto-main/src/main/java/com/facebook/presto/execution/RemoteTaskFactory.java index efcfcbb9f2d3..2d033fb42e8d 100644 --- a/presto-main/src/main/java/com/facebook/presto/execution/RemoteTaskFactory.java +++ b/presto-main/src/main/java/com/facebook/presto/execution/RemoteTaskFactory.java @@ -15,15 +15,15 @@ import com.facebook.presto.OutputBuffers; import com.facebook.presto.metadata.Split; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.Node; -import com.facebook.presto.spi.Session; import com.facebook.presto.sql.planner.PlanFragment; import com.facebook.presto.sql.planner.plan.PlanNodeId; import com.google.common.collect.Multimap; public interface RemoteTaskFactory { - RemoteTask createRemoteTask(Session session, + RemoteTask createRemoteTask(ConnectorSession session, TaskId taskId, Node node, PlanFragment fragment, diff --git a/presto-main/src/main/java/com/facebook/presto/execution/SqlQueryExecution.java b/presto-main/src/main/java/com/facebook/presto/execution/SqlQueryExecution.java index 7e105874b59f..55db02829f03 100644 --- a/presto-main/src/main/java/com/facebook/presto/execution/SqlQueryExecution.java +++ b/presto-main/src/main/java/com/facebook/presto/execution/SqlQueryExecution.java @@ -17,12 +17,12 @@ import com.facebook.presto.UnpartitionedPagePartitionFunction; import com.facebook.presto.execution.StateMachine.StateChangeListener; import com.facebook.presto.metadata.Metadata; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.split.SplitManager; import com.facebook.presto.sql.analyzer.Analysis; import com.facebook.presto.sql.analyzer.Analyzer; import com.facebook.presto.sql.analyzer.FeaturesConfig; import com.facebook.presto.sql.analyzer.QueryExplainer; -import com.facebook.presto.spi.Session; import com.facebook.presto.sql.planner.DistributedExecutionPlanner; import com.facebook.presto.sql.planner.DistributedLogicalPlanner; import com.facebook.presto.sql.planner.InputExtractor; @@ -67,7 +67,7 @@ public class SqlQueryExecution private final QueryStateMachine stateMachine; - private final Session session; + private final ConnectorSession session; private final Statement statement; private final Metadata metadata; private final SplitManager splitManager; @@ -86,7 +86,7 @@ public class SqlQueryExecution public SqlQueryExecution(QueryId queryId, String query, - Session session, + ConnectorSession session, URI self, Statement statement, Metadata metadata, @@ -431,7 +431,7 @@ public ThreadPoolExecutorMBean getExecutor() } @Override - public SqlQueryExecution createQueryExecution(QueryId queryId, String query, Session session, Statement statement) + public SqlQueryExecution createQueryExecution(QueryId queryId, String query, ConnectorSession session, Statement statement) { SqlQueryExecution queryExecution = new SqlQueryExecution(queryId, query, diff --git a/presto-main/src/main/java/com/facebook/presto/execution/SqlQueryManager.java b/presto-main/src/main/java/com/facebook/presto/execution/SqlQueryManager.java index e0e48f9e858d..8aea91a60f75 100644 --- a/presto-main/src/main/java/com/facebook/presto/execution/SqlQueryManager.java +++ b/presto-main/src/main/java/com/facebook/presto/execution/SqlQueryManager.java @@ -16,7 +16,7 @@ import com.facebook.presto.event.query.QueryMonitor; import com.facebook.presto.execution.QueryExecution.QueryExecutionFactory; import com.facebook.presto.execution.StateMachine.StateChangeListener; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.parser.ParsingException; import com.facebook.presto.sql.parser.SqlParser; import com.facebook.presto.sql.tree.Statement; @@ -188,7 +188,7 @@ public QueryInfo getQueryInfo(QueryId queryId) } @Override - public QueryInfo createQuery(Session session, String query) + public QueryInfo createQuery(ConnectorSession session, String query) { checkNotNull(query, "query is null"); Preconditions.checkArgument(!query.isEmpty(), "query must not be empty string"); @@ -344,7 +344,7 @@ private boolean isAbandoned(QueryExecution query) return lastHeartbeat != null && lastHeartbeat.isBefore(oldestAllowedHeartbeat); } - private QueryInfo createFailedQuery(Session session, String query, QueryId queryId, Throwable cause) + private QueryInfo createFailedQuery(ConnectorSession session, String query, QueryId queryId, Throwable cause) { URI self = locationFactory.createQueryLocation(queryId); QueryExecution execution = new FailedQueryExecution(queryId, query, session, self, queryExecutor, cause); diff --git a/presto-main/src/main/java/com/facebook/presto/execution/SqlStageExecution.java b/presto-main/src/main/java/com/facebook/presto/execution/SqlStageExecution.java index 657ec14bd163..1f7c60c6537a 100644 --- a/presto-main/src/main/java/com/facebook/presto/execution/SqlStageExecution.java +++ b/presto-main/src/main/java/com/facebook/presto/execution/SqlStageExecution.java @@ -21,8 +21,8 @@ import com.facebook.presto.execution.StateMachine.StateChangeListener; import com.facebook.presto.metadata.Split; import com.facebook.presto.operator.TaskStats; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.Node; -import com.facebook.presto.spi.Session; import com.facebook.presto.split.RemoteSplit; import com.facebook.presto.sql.planner.PlanFragment; import com.facebook.presto.sql.planner.PlanFragment.OutputPartitioning; @@ -108,7 +108,7 @@ public class SqlStageExecution private final Optional dataSource; private final RemoteTaskFactory remoteTaskFactory; - private final Session session; // only used for remote task factory + private final ConnectorSession session; // only used for remote task factory private final int splitBatchSize; private final int initialHashPartitions; @@ -142,7 +142,7 @@ public SqlStageExecution(QueryId queryId, StageExecutionPlan plan, NodeScheduler nodeScheduler, RemoteTaskFactory remoteTaskFactory, - Session session, + ConnectorSession session, int splitBatchSize, int maxPendingSplitsPerNode, int initialHashPartitions, @@ -173,7 +173,7 @@ private SqlStageExecution(@Nullable StageExecutionNode parent, StageExecutionPlan plan, NodeScheduler nodeScheduler, RemoteTaskFactory remoteTaskFactory, - Session session, + ConnectorSession session, int splitBatchSize, int maxPendingSplitsPerNode, int initialHashPartitions, diff --git a/presto-main/src/main/java/com/facebook/presto/execution/SqlTaskExecution.java b/presto-main/src/main/java/com/facebook/presto/execution/SqlTaskExecution.java index fc12c34f0b7e..8f5028f5688b 100644 --- a/presto-main/src/main/java/com/facebook/presto/execution/SqlTaskExecution.java +++ b/presto-main/src/main/java/com/facebook/presto/execution/SqlTaskExecution.java @@ -27,7 +27,7 @@ import com.facebook.presto.operator.PipelineContext; import com.facebook.presto.operator.TaskContext; import com.facebook.presto.operator.TaskOutputOperator.TaskOutputFactory; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.planner.LocalExecutionPlanner; import com.facebook.presto.sql.planner.LocalExecutionPlanner.LocalExecutionPlan; import com.facebook.presto.sql.planner.PlanFragment; @@ -108,7 +108,7 @@ public class SqlTaskExecution private final AtomicLong nextTaskInfoVersion = new AtomicLong(TaskInfo.STARTING_VERSION); - public static SqlTaskExecution createSqlTaskExecution(Session session, + public static SqlTaskExecution createSqlTaskExecution(ConnectorSession session, TaskId taskId, URI location, PlanFragment fragment, @@ -146,7 +146,7 @@ public static SqlTaskExecution createSqlTaskExecution(Session session, } } - private SqlTaskExecution(Session session, + private SqlTaskExecution(ConnectorSession session, TaskId taskId, URI location, PlanFragment fragment, diff --git a/presto-main/src/main/java/com/facebook/presto/execution/SqlTaskManager.java b/presto-main/src/main/java/com/facebook/presto/execution/SqlTaskManager.java index c0112ba0a932..9192a6ce5a1a 100644 --- a/presto-main/src/main/java/com/facebook/presto/execution/SqlTaskManager.java +++ b/presto-main/src/main/java/com/facebook/presto/execution/SqlTaskManager.java @@ -18,7 +18,7 @@ import com.facebook.presto.event.query.QueryMonitor; import com.facebook.presto.execution.SharedBuffer.QueueState; import com.facebook.presto.operator.TaskContext; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.planner.LocalExecutionPlanner; import com.facebook.presto.sql.planner.PlanFragment; import com.facebook.presto.sql.planner.plan.PlanNodeId; @@ -279,7 +279,7 @@ private TaskInfo getTaskInfo(TaskExecution taskExecution, boolean full) } @Override - public TaskInfo updateTask(Session session, TaskId taskId, PlanFragment fragment, List sources, OutputBuffers outputBuffers) + public TaskInfo updateTask(ConnectorSession session, TaskId taskId, PlanFragment fragment, List sources, OutputBuffers outputBuffers) { URI location = locationFactory.createLocalTaskLocation(taskId); diff --git a/presto-main/src/main/java/com/facebook/presto/execution/TaskManager.java b/presto-main/src/main/java/com/facebook/presto/execution/TaskManager.java index 55cd1cbed0e2..29b93d4e3fdd 100644 --- a/presto-main/src/main/java/com/facebook/presto/execution/TaskManager.java +++ b/presto-main/src/main/java/com/facebook/presto/execution/TaskManager.java @@ -15,7 +15,7 @@ import com.facebook.presto.OutputBuffers; import com.facebook.presto.TaskSource; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.planner.PlanFragment; import io.airlift.units.DataSize; import io.airlift.units.Duration; @@ -31,7 +31,7 @@ void waitForStateChange(TaskId taskId, TaskState currentState, Duration maxWait) TaskInfo getTaskInfo(TaskId taskId, boolean full); - TaskInfo updateTask(Session session, TaskId taskId, PlanFragment fragment, List sources, OutputBuffers outputIds); + TaskInfo updateTask(ConnectorSession session, TaskId taskId, PlanFragment fragment, List sources, OutputBuffers outputIds); BufferResult getTaskResults(TaskId taskId, String outputName, long startingSequenceId, DataSize maxSize, Duration maxWaitTime) throws InterruptedException; diff --git a/presto-main/src/main/java/com/facebook/presto/metadata/DatabaseLocalStorageManager.java b/presto-main/src/main/java/com/facebook/presto/metadata/DatabaseLocalStorageManager.java index d9bc23e32943..cbcfc83fb2ad 100644 --- a/presto-main/src/main/java/com/facebook/presto/metadata/DatabaseLocalStorageManager.java +++ b/presto-main/src/main/java/com/facebook/presto/metadata/DatabaseLocalStorageManager.java @@ -23,7 +23,7 @@ import com.facebook.presto.serde.BlocksFileEncoding; import com.facebook.presto.serde.BlocksFileReader; import com.facebook.presto.serde.BlocksFileStats; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.Block; import com.facebook.presto.spi.block.BlockEncodingSerde; import com.facebook.presto.spi.ConnectorColumnHandle; @@ -244,7 +244,7 @@ else if (rleEncode) { if (!sources.isEmpty()) { // Throw out any stats generated by the optimization step - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); OperatorContext operatorContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session) .addPipelineContext(true, true) .addDriverContext() diff --git a/presto-main/src/main/java/com/facebook/presto/metadata/FunctionRegistry.java b/presto-main/src/main/java/com/facebook/presto/metadata/FunctionRegistry.java index 8d19312d7959..59604484f831 100644 --- a/presto-main/src/main/java/com/facebook/presto/metadata/FunctionRegistry.java +++ b/presto-main/src/main/java/com/facebook/presto/metadata/FunctionRegistry.java @@ -32,8 +32,8 @@ import com.facebook.presto.operator.window.RankFunction; import com.facebook.presto.operator.window.RowNumberFunction; import com.facebook.presto.operator.window.WindowFunction; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.PrestoException; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.StandardErrorCode; import com.facebook.presto.spi.type.Type; import com.facebook.presto.spi.type.TypeManager; @@ -465,7 +465,7 @@ private static List parameterTypes(Method method) for (int i = 0; i < method.getParameterTypes().length; i++) { Class clazz = method.getParameterTypes()[i]; // skip session parameters - if (clazz == Session.class) { + if (clazz == ConnectorSession.class) { continue; } @@ -486,7 +486,7 @@ private static List parameterTypes(Method method) private static List> getParameterTypes(Class... types) { ImmutableList> parameterTypes = ImmutableList.copyOf(types); - if (!parameterTypes.isEmpty() && parameterTypes.get(0) == Session.class) { + if (!parameterTypes.isEmpty() && parameterTypes.get(0) == ConnectorSession.class) { parameterTypes = parameterTypes.subList(1, parameterTypes.size()); } return parameterTypes; @@ -725,7 +725,7 @@ private static void verifyMethodSignature(Method method, Type returnType, List[] parameterTypes = method.getParameterTypes(); - if (parameterTypes.length > 0 && parameterTypes[0] == Session.class) { + if (parameterTypes.length > 0 && parameterTypes[0] == ConnectorSession.class) { parameterTypes = Arrays.copyOfRange(parameterTypes, 1, parameterTypes.length); } diff --git a/presto-main/src/main/java/com/facebook/presto/metadata/InMemoryMetadata.java b/presto-main/src/main/java/com/facebook/presto/metadata/InMemoryMetadata.java index 78421d729f54..b6dac35b758c 100644 --- a/presto-main/src/main/java/com/facebook/presto/metadata/InMemoryMetadata.java +++ b/presto-main/src/main/java/com/facebook/presto/metadata/InMemoryMetadata.java @@ -17,11 +17,11 @@ import com.facebook.presto.spi.ColumnMetadata; import com.facebook.presto.spi.ConnectorMetadata; import com.facebook.presto.spi.ConnectorOutputTableHandle; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableHandle; import com.facebook.presto.spi.ConnectorTableMetadata; import com.facebook.presto.spi.SchemaTableName; import com.facebook.presto.spi.SchemaTablePrefix; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.type.Type; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; @@ -43,7 +43,7 @@ public class InMemoryMetadata private final ConcurrentMap tables = new ConcurrentHashMap<>(); @Override - public List listSchemaNames(Session session) + public List listSchemaNames(ConnectorSession session) { Set schemaNames = new HashSet<>(); @@ -55,7 +55,7 @@ public List listSchemaNames(Session session) } @Override - public ConnectorTableHandle getTableHandle(Session session, SchemaTableName tableName) + public ConnectorTableHandle getTableHandle(ConnectorSession session, SchemaTableName tableName) { checkNotNull(tableName, "tableName is null"); if (!tables.containsKey(tableName)) { @@ -102,13 +102,13 @@ public ConnectorColumnHandle getSampleWeightColumnHandle(ConnectorTableHandle ta } @Override - public boolean canCreateSampledTables(Session session) + public boolean canCreateSampledTables(ConnectorSession session) { return false; } @Override - public Map> listTableColumns(Session session, SchemaTablePrefix prefix) + public Map> listTableColumns(ConnectorSession session, SchemaTablePrefix prefix) { checkNotNull(prefix, "prefix is null"); @@ -136,7 +136,7 @@ public ColumnMetadata getColumnMetadata(ConnectorTableHandle tableHandle, Connec } @Override - public List listTables(Session session, String schemaNameOrNull) + public List listTables(ConnectorSession session, String schemaNameOrNull) { ImmutableList.Builder builder = ImmutableList.builder(); for (SchemaTableName tableName : tables.keySet()) { @@ -148,7 +148,7 @@ public List listTables(Session session, String schemaNameOrNull } @Override - public ConnectorTableHandle createTable(Session session, ConnectorTableMetadata tableMetadata) + public ConnectorTableHandle createTable(ConnectorSession session, ConnectorTableMetadata tableMetadata) { ConnectorTableMetadata existingTable = tables.putIfAbsent(tableMetadata.getTable(), tableMetadata); checkArgument(existingTable == null, "Table %s already exists", tableMetadata.getTable()); @@ -162,7 +162,7 @@ public void dropTable(ConnectorTableHandle tableHandle) } @Override - public ConnectorOutputTableHandle beginCreateTable(Session session, ConnectorTableMetadata tableMetadata) + public ConnectorOutputTableHandle beginCreateTable(ConnectorSession session, ConnectorTableMetadata tableMetadata) { throw new UnsupportedOperationException(); } diff --git a/presto-main/src/main/java/com/facebook/presto/metadata/Metadata.java b/presto-main/src/main/java/com/facebook/presto/metadata/Metadata.java index 683d99a188fe..2bcd45ba02ac 100644 --- a/presto-main/src/main/java/com/facebook/presto/metadata/Metadata.java +++ b/presto-main/src/main/java/com/facebook/presto/metadata/Metadata.java @@ -15,7 +15,7 @@ import com.facebook.presto.metadata.OperatorInfo.OperatorType; import com.facebook.presto.spi.ColumnMetadata; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.tree.QualifiedName; import com.facebook.presto.spi.type.Type; import com.google.common.base.Optional; @@ -51,13 +51,13 @@ OperatorInfo getExactOperator(OperatorType operatorType, Type returnType, List listSchemaNames(Session session, String catalogName); + List listSchemaNames(ConnectorSession session, String catalogName); /** * Returns a table handle for the specified table name. */ @NotNull - Optional getTableHandle(Session session, QualifiedTableName tableName); + Optional getTableHandle(ConnectorSession session, QualifiedTableName tableName); /** * Return the metadata for the specified table handle. @@ -71,7 +71,7 @@ OperatorInfo getExactOperator(OperatorType operatorType, Type returnType, List listTables(Session session, QualifiedTablePrefix prefix); + List listTables(ConnectorSession session, QualifiedTablePrefix prefix); /** * Returns a handle for the specified table column. @@ -93,7 +93,7 @@ OperatorInfo getExactOperator(OperatorType operatorType, Type returnType, List> listTableColumns(Session session, QualifiedTablePrefix prefix); + Map> listTableColumns(ConnectorSession session, QualifiedTablePrefix prefix); /** * Creates a table using the specified table metadata. */ @NotNull - TableHandle createTable(Session session, String catalogName, TableMetadata tableMetadata); + TableHandle createTable(ConnectorSession session, String catalogName, TableMetadata tableMetadata); /** * Drops the specified table @@ -133,7 +133,7 @@ OperatorInfo getExactOperator(OperatorType operatorType, Type returnType, List listSchemaNames(Session session, String catalogName) + public List listSchemaNames(ConnectorSession session, String catalogName) { checkCatalogName(catalogName); ImmutableSet.Builder schemaNames = ImmutableSet.builder(); @@ -188,7 +188,7 @@ public List listSchemaNames(Session session, String catalogName) } @Override - public Optional getTableHandle(Session session, QualifiedTableName table) + public Optional getTableHandle(ConnectorSession session, QualifiedTableName table) { checkNotNull(table, "table is null"); @@ -228,7 +228,7 @@ public ColumnMetadata getColumnMetadata(TableHandle tableHandle, ColumnHandle co } @Override - public List listTables(Session session, QualifiedTablePrefix prefix) + public List listTables(ConnectorSession session, QualifiedTablePrefix prefix) { checkNotNull(prefix, "prefix is null"); @@ -271,7 +271,7 @@ public Optional getSampleWeightColumnHandle(TableHandle tableHandl } @Override - public boolean canCreateSampledTables(Session session, String catalogName) + public boolean canCreateSampledTables(ConnectorSession session, String catalogName) { ConnectorMetadataEntry connectorMetadata = connectorsByCatalog.get(catalogName); checkArgument(connectorMetadata != null, "Catalog %s does not exist", catalogName); @@ -279,7 +279,7 @@ public boolean canCreateSampledTables(Session session, String catalogName) } @Override - public Map> listTableColumns(Session session, QualifiedTablePrefix prefix) + public Map> listTableColumns(ConnectorSession session, QualifiedTablePrefix prefix) { checkNotNull(prefix, "prefix is null"); @@ -296,7 +296,7 @@ public Map> listTableColumns(Session se } @Override - public TableHandle createTable(Session session, String catalogName, TableMetadata tableMetadata) + public TableHandle createTable(ConnectorSession session, String catalogName, TableMetadata tableMetadata) { ConnectorMetadataEntry connectorMetadata = connectorsByCatalog.get(catalogName); checkArgument(connectorMetadata != null, "Catalog %s does not exist", catalogName); @@ -312,7 +312,7 @@ public void dropTable(TableHandle tableHandle) } @Override - public OutputTableHandle beginCreateTable(Session session, String catalogName, TableMetadata tableMetadata) + public OutputTableHandle beginCreateTable(ConnectorSession session, String catalogName, TableMetadata tableMetadata) { ConnectorMetadataEntry connectorMetadata = connectorsByCatalog.get(catalogName); checkArgument(connectorMetadata != null, "Catalog %s does not exist", catalogName); diff --git a/presto-main/src/main/java/com/facebook/presto/metadata/MetadataUtil.java b/presto-main/src/main/java/com/facebook/presto/metadata/MetadataUtil.java index c9d90ad1bd22..816be5f4c31e 100644 --- a/presto-main/src/main/java/com/facebook/presto/metadata/MetadataUtil.java +++ b/presto-main/src/main/java/com/facebook/presto/metadata/MetadataUtil.java @@ -14,9 +14,9 @@ package com.facebook.presto.metadata; import com.facebook.presto.spi.ColumnMetadata; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableMetadata; import com.facebook.presto.spi.SchemaTableName; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.type.Type; import com.facebook.presto.sql.tree.QualifiedName; import com.google.common.base.Function; @@ -138,7 +138,7 @@ public String apply(ColumnMetadata columnMetadata) }; } - public static QualifiedTableName createQualifiedTableName(Session session, QualifiedName name) + public static QualifiedTableName createQualifiedTableName(ConnectorSession session, QualifiedName name) { checkNotNull(session, "session is null"); checkNotNull(name, "name is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/metadata/NativeMetadata.java b/presto-main/src/main/java/com/facebook/presto/metadata/NativeMetadata.java index b8686deccaa8..8f37666a613a 100644 --- a/presto-main/src/main/java/com/facebook/presto/metadata/NativeMetadata.java +++ b/presto-main/src/main/java/com/facebook/presto/metadata/NativeMetadata.java @@ -17,11 +17,11 @@ import com.facebook.presto.spi.ColumnMetadata; import com.facebook.presto.spi.ConnectorMetadata; import com.facebook.presto.spi.ConnectorOutputTableHandle; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableHandle; import com.facebook.presto.spi.ConnectorTableMetadata; import com.facebook.presto.spi.SchemaTableName; import com.facebook.presto.spi.SchemaTablePrefix; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.type.Type; import com.google.common.base.Predicate; import com.google.common.base.Splitter; @@ -76,13 +76,13 @@ public NativeMetadata(NativeConnectorId connectorId, @ForMetadata IDBI dbi, Shar } @Override - public List listSchemaNames(Session session) + public List listSchemaNames(ConnectorSession session) { return dao.listSchemaNames(connectorId); } @Override - public ConnectorTableHandle getTableHandle(Session session, SchemaTableName tableName) + public ConnectorTableHandle getTableHandle(ConnectorSession session, SchemaTableName tableName) { return getTableHandle(tableName); } @@ -128,7 +128,7 @@ public boolean apply(ColumnMetadata input) } @Override - public List listTables(Session session, @Nullable String schemaNameOrNull) + public List listTables(ConnectorSession session, @Nullable String schemaNameOrNull) { return dao.listTables(connectorId, schemaNameOrNull); } @@ -172,7 +172,7 @@ public ConnectorColumnHandle getSampleWeightColumnHandle(ConnectorTableHandle ta } @Override - public boolean canCreateSampledTables(Session session) + public boolean canCreateSampledTables(ConnectorSession session) { return true; } @@ -194,7 +194,7 @@ public ColumnMetadata getColumnMetadata(ConnectorTableHandle tableHandle, Connec } @Override - public Map> listTableColumns(Session session, SchemaTablePrefix prefix) + public Map> listTableColumns(ConnectorSession session, SchemaTablePrefix prefix) { checkNotNull(prefix, "prefix is null"); @@ -222,7 +222,7 @@ private SchemaTableName getTableName(ConnectorTableHandle tableHandle) } @Override - public ConnectorTableHandle createTable(Session session, final ConnectorTableMetadata tableMetadata) + public ConnectorTableHandle createTable(ConnectorSession session, final ConnectorTableMetadata tableMetadata) { Long tableId = dbi.inTransaction(new TransactionCallback() { @@ -279,7 +279,7 @@ protected void execute(Handle handle, TransactionStatus status) } @Override - public ConnectorOutputTableHandle beginCreateTable(Session session, ConnectorTableMetadata tableMetadata) + public ConnectorOutputTableHandle beginCreateTable(ConnectorSession session, ConnectorTableMetadata tableMetadata) { ImmutableList.Builder columnHandles = ImmutableList.builder(); ImmutableList.Builder columnTypes = ImmutableList.builder(); diff --git a/presto-main/src/main/java/com/facebook/presto/operator/DriverContext.java b/presto-main/src/main/java/com/facebook/presto/operator/DriverContext.java index af272780e01c..5a363e45a779 100644 --- a/presto-main/src/main/java/com/facebook/presto/operator/DriverContext.java +++ b/presto-main/src/main/java/com/facebook/presto/operator/DriverContext.java @@ -14,7 +14,7 @@ package com.facebook.presto.operator; import com.facebook.presto.execution.TaskId; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.google.common.base.Function; import com.google.common.collect.ImmutableList; import com.google.common.collect.Iterables; @@ -97,7 +97,7 @@ public PipelineContext getPipelineContext() return pipelineContext; } - public Session getSession() + public ConnectorSession getSession() { return pipelineContext.getSession(); } diff --git a/presto-main/src/main/java/com/facebook/presto/operator/GroupByIdBlock.java b/presto-main/src/main/java/com/facebook/presto/operator/GroupByIdBlock.java index 7b756e7de476..39ce97a06e6e 100644 --- a/presto-main/src/main/java/com/facebook/presto/operator/GroupByIdBlock.java +++ b/presto-main/src/main/java/com/facebook/presto/operator/GroupByIdBlock.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.operator; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockCursor; import com.facebook.presto.spi.block.BlockEncoding; @@ -76,7 +76,7 @@ public double getDouble(int position) } @Override - public Object getObjectValue(Session session, int position) + public Object getObjectValue(ConnectorSession session, int position) { return block.getObjectValue(session, position); } diff --git a/presto-main/src/main/java/com/facebook/presto/operator/OperatorContext.java b/presto-main/src/main/java/com/facebook/presto/operator/OperatorContext.java index 3d7c2bdfec87..9d8b82abf240 100644 --- a/presto-main/src/main/java/com/facebook/presto/operator/OperatorContext.java +++ b/presto-main/src/main/java/com/facebook/presto/operator/OperatorContext.java @@ -14,7 +14,7 @@ package com.facebook.presto.operator; import com.facebook.presto.ExceededMemoryLimitException; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.google.common.base.Function; import com.google.common.base.Supplier; import com.google.common.util.concurrent.ListenableFuture; @@ -98,7 +98,7 @@ public DriverContext getDriverContext() return driverContext; } - public Session getSession() + public ConnectorSession getSession() { return driverContext.getSession(); } diff --git a/presto-main/src/main/java/com/facebook/presto/operator/PipelineContext.java b/presto-main/src/main/java/com/facebook/presto/operator/PipelineContext.java index aa16c83bfaf2..b05fe6c544d7 100644 --- a/presto-main/src/main/java/com/facebook/presto/operator/PipelineContext.java +++ b/presto-main/src/main/java/com/facebook/presto/operator/PipelineContext.java @@ -14,7 +14,7 @@ package com.facebook.presto.operator; import com.facebook.presto.execution.TaskId; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.google.common.base.Function; import com.google.common.collect.ArrayListMultimap; import com.google.common.collect.ImmutableList; @@ -118,7 +118,7 @@ public List getDrivers() return ImmutableList.copyOf(drivers); } - public Session getSession() + public ConnectorSession getSession() { return taskContext.getSession(); } diff --git a/presto-main/src/main/java/com/facebook/presto/operator/TaskContext.java b/presto-main/src/main/java/com/facebook/presto/operator/TaskContext.java index 272e8283786a..b02af0407cbc 100644 --- a/presto-main/src/main/java/com/facebook/presto/operator/TaskContext.java +++ b/presto-main/src/main/java/com/facebook/presto/operator/TaskContext.java @@ -17,7 +17,7 @@ import com.facebook.presto.execution.TaskId; import com.facebook.presto.execution.TaskState; import com.facebook.presto.execution.TaskStateMachine; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.google.common.base.Function; import com.google.common.collect.ImmutableList; import io.airlift.stats.CounterStat; @@ -47,7 +47,7 @@ public class TaskContext { private final TaskStateMachine taskStateMachine; private final Executor executor; - private final Session session; + private final ConnectorSession session; private final long maxMemory; private final DataSize operatorPreAllocatedMemory; @@ -68,7 +68,7 @@ public class TaskContext private final boolean cpuTimerEnabled; - public TaskContext(TaskId taskId, Executor executor, Session session) + public TaskContext(TaskId taskId, Executor executor, ConnectorSession session) { this( checkNotNull(taskId, "taskId is null"), @@ -77,7 +77,7 @@ public TaskContext(TaskId taskId, Executor executor, Session session) new DataSize(256, MEGABYTE)); } - public TaskContext(TaskId taskId, Executor executor, Session session, DataSize maxMemory) + public TaskContext(TaskId taskId, Executor executor, ConnectorSession session, DataSize maxMemory) { this( new TaskStateMachine(checkNotNull(taskId, "taskId is null"), checkNotSameThreadExecutor(executor, "executor is null")), @@ -88,7 +88,7 @@ public TaskContext(TaskId taskId, Executor executor, Session session, DataSize m true); } - public TaskContext(TaskStateMachine taskStateMachine, Executor executor, Session session, DataSize maxMemory, DataSize operatorPreAllocatedMemory, boolean cpuTimerEnabled) + public TaskContext(TaskStateMachine taskStateMachine, Executor executor, ConnectorSession session, DataSize maxMemory, DataSize operatorPreAllocatedMemory, boolean cpuTimerEnabled) { this.taskStateMachine = checkNotNull(taskStateMachine, "taskStateMachine is null"); this.executor = checkNotNull(executor, "executor is null"); @@ -128,7 +128,7 @@ public List getPipelineContexts() return ImmutableList.copyOf(pipelineContexts); } - public Session getSession() + public ConnectorSession getSession() { return session; } diff --git a/presto-main/src/main/java/com/facebook/presto/operator/aggregation/PoissonizedBlock.java b/presto-main/src/main/java/com/facebook/presto/operator/aggregation/PoissonizedBlock.java index c797d242e6d4..704231f35572 100644 --- a/presto-main/src/main/java/com/facebook/presto/operator/aggregation/PoissonizedBlock.java +++ b/presto-main/src/main/java/com/facebook/presto/operator/aggregation/PoissonizedBlock.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.operator.aggregation; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.Block; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockCursor; @@ -163,7 +163,7 @@ public RandomAccessBlock getSingleValueBlock() } @Override - public Object getObjectValue(Session session) + public Object getObjectValue(ConnectorSession session) { return currentValue; } diff --git a/presto-main/src/main/java/com/facebook/presto/operator/scalar/DateTimeFunctions.java b/presto-main/src/main/java/com/facebook/presto/operator/scalar/DateTimeFunctions.java index 54679a2ad265..5a33687b0d1a 100644 --- a/presto-main/src/main/java/com/facebook/presto/operator/scalar/DateTimeFunctions.java +++ b/presto-main/src/main/java/com/facebook/presto/operator/scalar/DateTimeFunctions.java @@ -14,8 +14,8 @@ package com.facebook.presto.operator.scalar; import com.facebook.presto.operator.Description; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.PrestoException; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.StandardErrorCode; import com.facebook.presto.spi.type.BigintType; import com.facebook.presto.spi.type.DateType; @@ -84,7 +84,7 @@ private DateTimeFunctions() {} @Description("current date") @ScalarFunction(hidden = true) @SqlType(DateType.class) - public static long currentDate(Session session) + public static long currentDate(ConnectorSession session) { // Stack value is the millisecond at midnight on the date in UTC so // no we do not want to correct to the local client time zone. Client @@ -95,7 +95,7 @@ public static long currentDate(Session session) @Description("current time with time zone") @ScalarFunction(hidden = true) @SqlType(TimeWithTimeZoneType.class) - public static long currentTime(Session session) + public static long currentTime(ConnectorSession session) { // Stack value is number of milliseconds from start of the current day, // but the start of the day is relative to the current time zone. @@ -106,7 +106,7 @@ public static long currentTime(Session session) @Description("current time without time zone") @ScalarFunction(value = "localtime", hidden = true) @SqlType(TimeType.class) - public static long localTime(Session session) + public static long localTime(ConnectorSession session) { // Stack value is number of milliseconds from start of the current day, // but the start of the day is relative to the current time zone. @@ -116,7 +116,7 @@ public static long localTime(Session session) @Description("current timestamp with time zone") @ScalarFunction("now") @SqlType(TimestampWithTimeZoneType.class) - public static long currentTimestamp(Session session) + public static long currentTimestamp(ConnectorSession session) { return packDateTimeWithZone(session.getStartTime(), session.getTimeZoneKey()); } @@ -124,14 +124,14 @@ public static long currentTimestamp(Session session) @Description("current timestamp without time zone") @ScalarFunction(value = "localtimestamp", hidden = true) @SqlType(TimestampType.class) - public static long localTimestamp(Session session) + public static long localTimestamp(ConnectorSession session) { return session.getStartTime(); } @ScalarFunction @SqlType(TimeType.class) - public static long millisToTime(Session session, @SqlType(BigintType.class) long millis) + public static long millisToTime(ConnectorSession session, @SqlType(BigintType.class) long millis) { ISOChronology chronology = getChronology(session.getTimeZoneKey()); return chronology.millisOfDay().get(millis) - chronology.getZone().getOffset(millis); @@ -215,7 +215,7 @@ public static long timestampAtTimeZone(@SqlType(TimestampWithTimeZoneType.class) @Description("truncate to the specified precision in the session timezone") @ScalarFunction("date_trunc") @SqlType(DateType.class) - public static long truncateDate(Session session, @SqlType(VarcharType.class) Slice unit, @SqlType(DateType.class) long time) + public static long truncateDate(ConnectorSession session, @SqlType(VarcharType.class) Slice unit, @SqlType(DateType.class) long time) { return getDateField(UTC_CHRONOLOGY, unit).roundFloor(time); } @@ -223,7 +223,7 @@ public static long truncateDate(Session session, @SqlType(VarcharType.class) Sli @Description("truncate to the specified precision in the session timezone") @ScalarFunction("date_trunc") @SqlType(TimeType.class) - public static long truncateTime(Session session, @SqlType(VarcharType.class) Slice unit, @SqlType(TimeType.class) long time) + public static long truncateTime(ConnectorSession session, @SqlType(VarcharType.class) Slice unit, @SqlType(TimeType.class) long time) { return getTimeField(getChronology(session.getTimeZoneKey()), unit).roundFloor(time); } @@ -240,7 +240,7 @@ public static long truncateTimeWithTimeZone(@SqlType(VarcharType.class) Slice un @Description("truncate to the specified precision in the session timezone") @ScalarFunction("date_trunc") @SqlType(TimestampType.class) - public static long truncateTimestamp(Session session, @SqlType(VarcharType.class) Slice unit, @SqlType(TimestampType.class) long timestamp) + public static long truncateTimestamp(ConnectorSession session, @SqlType(VarcharType.class) Slice unit, @SqlType(TimestampType.class) long timestamp) { return getTimestampField(getChronology(session.getTimeZoneKey()), unit).roundFloor(timestamp); } @@ -257,7 +257,7 @@ public static long truncateTimestampWithTimezone(@SqlType(VarcharType.class) Sli @Description("add the specified amount of date to the given date") @ScalarFunction("date_add") @SqlType(DateType.class) - public static long addFieldValueDate(Session session, @SqlType(VarcharType.class) Slice unit, @SqlType(BigintType.class) long value, @SqlType(DateType.class) long date) + public static long addFieldValueDate(ConnectorSession session, @SqlType(VarcharType.class) Slice unit, @SqlType(BigintType.class) long value, @SqlType(DateType.class) long date) { return getDateField(UTC_CHRONOLOGY, unit).add(date, Ints.checkedCast(value)); } @@ -265,7 +265,7 @@ public static long addFieldValueDate(Session session, @SqlType(VarcharType.class @Description("add the specified amount of time to the given time") @ScalarFunction("date_add") @SqlType(TimeType.class) - public static long addFieldValueTime(Session session, @SqlType(VarcharType.class) Slice unit, @SqlType(BigintType.class) long value, @SqlType(TimeType.class) long time) + public static long addFieldValueTime(ConnectorSession session, @SqlType(VarcharType.class) Slice unit, @SqlType(BigintType.class) long value, @SqlType(TimeType.class) long time) { ISOChronology chronology = getChronology(session.getTimeZoneKey()); return modulo24Hour(chronology, getTimeField(chronology, unit).add(time, Ints.checkedCast(value))); @@ -288,7 +288,7 @@ public static long addFieldValueTimeWithTimeZone( @ScalarFunction("date_add") @SqlType(TimestampType.class) public static long addFieldValueTimestamp( - Session session, + ConnectorSession session, @SqlType(VarcharType.class) Slice unit, @SqlType(BigintType.class) long value, @SqlType(TimestampType.class) long timestamp) @@ -311,7 +311,7 @@ public static long addFieldValueTimestampWithTimeZone( @Description("difference of the given dates in the given unit") @ScalarFunction("date_diff") @SqlType(BigintType.class) - public static long diffDate(Session session, @SqlType(VarcharType.class) Slice unit, @SqlType(DateType.class) long date1, @SqlType(DateType.class) long date2) + public static long diffDate(ConnectorSession session, @SqlType(VarcharType.class) Slice unit, @SqlType(DateType.class) long date1, @SqlType(DateType.class) long date2) { return getDateField(UTC_CHRONOLOGY, unit).getDifference(date2, date1); } @@ -319,7 +319,7 @@ public static long diffDate(Session session, @SqlType(VarcharType.class) Slice u @Description("difference of the given times in the given unit") @ScalarFunction("date_diff") @SqlType(BigintType.class) - public static long diffTime(Session session, @SqlType(VarcharType.class) Slice unit, @SqlType(TimeType.class) long time1, @SqlType(TimeType.class) long time2) + public static long diffTime(ConnectorSession session, @SqlType(VarcharType.class) Slice unit, @SqlType(TimeType.class) long time1, @SqlType(TimeType.class) long time2) { ISOChronology chronology = getChronology(session.getTimeZoneKey()); return getTimeField(chronology, unit).getDifference(time2, time1); @@ -340,7 +340,7 @@ public static long diffTimeWithTimeZone( @ScalarFunction("date_diff") @SqlType(BigintType.class) public static long diffTimestamp( - Session session, + ConnectorSession session, @SqlType(VarcharType.class) Slice unit, @SqlType(TimestampType.class) long timestamp1, @SqlType(TimestampType.class) long timestamp2) @@ -421,7 +421,7 @@ private static DateTimeField getTimestampField(ISOChronology chronology, Slice u @Description("parses the specified date/time by the given format") @ScalarFunction @SqlType(TimestampWithTimeZoneType.class) - public static long parseDatetime(Session session, @SqlType(VarcharType.class) Slice datetime, @SqlType(VarcharType.class) Slice formatString) + public static long parseDatetime(ConnectorSession session, @SqlType(VarcharType.class) Slice datetime, @SqlType(VarcharType.class) Slice formatString) { String pattern = formatString.toString(Charsets.UTF_8); DateTimeFormatter formatter = DateTimeFormat.forPattern(pattern) @@ -437,7 +437,7 @@ public static long parseDatetime(Session session, @SqlType(VarcharType.class) Sl @Description("formats the given time by the given format") @ScalarFunction @SqlType(VarcharType.class) - public static Slice formatDatetime(Session session, @SqlType(TimestampType.class) long timestamp, @SqlType(VarcharType.class) Slice formatString) + public static Slice formatDatetime(ConnectorSession session, @SqlType(TimestampType.class) long timestamp, @SqlType(VarcharType.class) Slice formatString) { return formatDatetime(getChronology(session.getTimeZoneKey()), session.getLocale(), timestamp, formatString); } @@ -446,7 +446,7 @@ public static Slice formatDatetime(Session session, @SqlType(TimestampType.class @ScalarFunction("format_datetime") @SqlType(VarcharType.class) public static Slice formatDatetimeWithTimeZone( - Session session, + ConnectorSession session, @SqlType(TimestampWithTimeZoneType.class) long timestampWithTimeZone, @SqlType(VarcharType.class) Slice formatString) { @@ -466,7 +466,7 @@ private static Slice formatDatetime(ISOChronology chronology, Locale locale, lon @ScalarFunction @SqlType(VarcharType.class) - public static Slice dateFormat(Session session, @SqlType(TimestampType.class) long timestamp, @SqlType(VarcharType.class) Slice formatString) + public static Slice dateFormat(ConnectorSession session, @SqlType(TimestampType.class) long timestamp, @SqlType(VarcharType.class) Slice formatString) { return dateFormat(getChronology(session.getTimeZoneKey()), session.getLocale(), timestamp, formatString); } @@ -474,7 +474,7 @@ public static Slice dateFormat(Session session, @SqlType(TimestampType.class) lo @ScalarFunction("date_format") @SqlType(VarcharType.class) public static Slice dateFormatWithTimeZone( - Session session, + ConnectorSession session, @SqlType(TimestampWithTimeZoneType.class) long timestampWithTimeZone, @SqlType(VarcharType.class) Slice formatString) { @@ -492,7 +492,7 @@ private static Slice dateFormat(ISOChronology chronology, Locale locale, long ti @ScalarFunction @SqlType(TimestampType.class) - public static long dateParse(Session session, @SqlType(VarcharType.class) Slice dateTime, @SqlType(VarcharType.class) Slice formatString) + public static long dateParse(ConnectorSession session, @SqlType(VarcharType.class) Slice dateTime, @SqlType(VarcharType.class) Slice formatString) { DateTimeFormatter formatter = DATETIME_FORMATTER_CACHE.get(formatString) .withChronology(getChronology(session.getTimeZoneKey())) @@ -548,7 +548,7 @@ public static long secondFromInterval(@SqlType(IntervalDayTimeType.class) long m @Description("minute of the hour of the given timestamp") @ScalarFunction("minute") @SqlType(BigintType.class) - public static long minuteFromTimestamp(Session session, @SqlType(TimestampType.class) long timestamp) + public static long minuteFromTimestamp(ConnectorSession session, @SqlType(TimestampType.class) long timestamp) { return getChronology(session.getTimeZoneKey()).minuteOfHour().get(timestamp); } @@ -564,7 +564,7 @@ public static long minuteFromTimestampWithTimeZone(@SqlType(TimestampWithTimeZon @Description("minute of the hour of the given time") @ScalarFunction("minute") @SqlType(BigintType.class) - public static long minuteFromTime(Session session, @SqlType(TimeType.class) long time) + public static long minuteFromTime(ConnectorSession session, @SqlType(TimeType.class) long time) { return getChronology(session.getTimeZoneKey()).minuteOfHour().get(time); } @@ -588,7 +588,7 @@ public static long minuteFromInterval(@SqlType(IntervalDayTimeType.class) long m @Description("hour of the day of the given timestamp") @ScalarFunction("hour") @SqlType(BigintType.class) - public static long hourFromTimestamp(Session session, @SqlType(TimestampType.class) long timestamp) + public static long hourFromTimestamp(ConnectorSession session, @SqlType(TimestampType.class) long timestamp) { return getChronology(session.getTimeZoneKey()).hourOfDay().get(timestamp); } @@ -604,7 +604,7 @@ public static long hourFromTimestampWithTimeZone(@SqlType(TimestampWithTimeZoneT @Description("hour of the day of the given time") @ScalarFunction("hour") @SqlType(BigintType.class) - public static long hourFromTime(Session session, @SqlType(TimeType.class) long time) + public static long hourFromTime(ConnectorSession session, @SqlType(TimeType.class) long time) { return getChronology(session.getTimeZoneKey()).hourOfDay().get(time); } @@ -628,7 +628,7 @@ public static long hourFromInterval(@SqlType(IntervalDayTimeType.class) long mil @Description("day of the week of the given timestamp") @ScalarFunction(value = "day_of_week", alias = "dow") @SqlType(BigintType.class) - public static long dayOfWeekFromTimestamp(Session session, @SqlType(TimestampType.class) long timestamp) + public static long dayOfWeekFromTimestamp(ConnectorSession session, @SqlType(TimestampType.class) long timestamp) { return getChronology(session.getTimeZoneKey()).dayOfWeek().get(timestamp); } @@ -652,7 +652,7 @@ public static long dayOfWeekFromDate(@SqlType(DateType.class) long date) @Description("day of the month of the given timestamp") @ScalarFunction(value = "day", alias = "day_of_month") @SqlType(BigintType.class) - public static long dayFromTimestamp(Session session, @SqlType(TimestampType.class) long timestamp) + public static long dayFromTimestamp(ConnectorSession session, @SqlType(TimestampType.class) long timestamp) { return getChronology(session.getTimeZoneKey()).dayOfMonth().get(timestamp); } @@ -684,7 +684,7 @@ public static long dayFromInterval(@SqlType(IntervalDayTimeType.class) long mill @Description("day of the year of the given timestamp") @ScalarFunction(value = "day_of_year", alias = "doy") @SqlType(BigintType.class) - public static long dayOfYearFromTimestamp(Session session, @SqlType(TimestampType.class) long timestamp) + public static long dayOfYearFromTimestamp(ConnectorSession session, @SqlType(TimestampType.class) long timestamp) { return getChronology(session.getTimeZoneKey()).dayOfYear().get(timestamp); } @@ -708,7 +708,7 @@ public static long dayOfYearFromDate(@SqlType(DateType.class) long date) @Description("week of the year of the given timestamp") @ScalarFunction(value = "week", alias = "week_of_year") @SqlType(BigintType.class) - public static long weekFromTimestamp(Session session, @SqlType(TimestampType.class) long timestamp) + public static long weekFromTimestamp(ConnectorSession session, @SqlType(TimestampType.class) long timestamp) { return getChronology(session.getTimeZoneKey()).weekOfWeekyear().get(timestamp); } @@ -732,7 +732,7 @@ public static long weekFromDate(@SqlType(DateType.class) long date) @Description("month of the year of the given timestamp") @ScalarFunction("month") @SqlType(BigintType.class) - public static long monthFromTimestamp(Session session, @SqlType(TimestampType.class) long timestamp) + public static long monthFromTimestamp(ConnectorSession session, @SqlType(TimestampType.class) long timestamp) { return getChronology(session.getTimeZoneKey()).monthOfYear().get(timestamp); } @@ -764,7 +764,7 @@ public static long monthFromInterval(@SqlType(IntervalYearMonthType.class) long @Description("quarter of the year of the given timestamp") @ScalarFunction("quarter") @SqlType(BigintType.class) - public static long quarterFromTimestamp(Session session, @SqlType(TimestampType.class) long timestamp) + public static long quarterFromTimestamp(ConnectorSession session, @SqlType(TimestampType.class) long timestamp) { return QUARTER_OF_YEAR.getField(getChronology(session.getTimeZoneKey())).get(timestamp); } @@ -788,7 +788,7 @@ public static long quarterFromDate(@SqlType(DateType.class) long date) @Description("year of the given timestamp") @ScalarFunction("year") @SqlType(BigintType.class) - public static long yearFromTimestamp(Session session, @SqlType(TimestampType.class) long timestamp) + public static long yearFromTimestamp(ConnectorSession session, @SqlType(TimestampType.class) long timestamp) { return getChronology(session.getTimeZoneKey()).year().get(timestamp); } diff --git a/presto-main/src/main/java/com/facebook/presto/sql/analyzer/Analyzer.java b/presto-main/src/main/java/com/facebook/presto/sql/analyzer/Analyzer.java index 1d0c95d2e043..24e43868aead 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/analyzer/Analyzer.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/analyzer/Analyzer.java @@ -14,7 +14,7 @@ package com.facebook.presto.sql.analyzer; import com.facebook.presto.metadata.Metadata; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.tree.Expression; import com.facebook.presto.sql.tree.FunctionCall; import com.facebook.presto.sql.tree.Statement; @@ -30,11 +30,11 @@ public class Analyzer { private final Metadata metadata; - private final Session session; + private final ConnectorSession session; private final Optional queryExplainer; private final boolean experimentalSyntaxEnabled; - public Analyzer(Session session, Metadata metadata, Optional queryExplainer, boolean experimentalSyntaxEnabled) + public Analyzer(ConnectorSession session, Metadata metadata, Optional queryExplainer, boolean experimentalSyntaxEnabled) { this.session = checkNotNull(session, "session is null"); this.metadata = checkNotNull(metadata, "metadata is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/analyzer/ExpressionAnalyzer.java b/presto-main/src/main/java/com/facebook/presto/sql/analyzer/ExpressionAnalyzer.java index 272f3c626f12..b8a2239b05ef 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/analyzer/ExpressionAnalyzer.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/analyzer/ExpressionAnalyzer.java @@ -18,7 +18,7 @@ import com.facebook.presto.metadata.OperatorInfo; import com.facebook.presto.metadata.OperatorInfo.OperatorType; import com.facebook.presto.metadata.OperatorNotFoundException; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.Type; import com.facebook.presto.sql.planner.DependencyExtractor; import com.facebook.presto.sql.planner.Symbol; @@ -109,7 +109,7 @@ public class ExpressionAnalyzer private final Analysis analysis; private final Metadata metadata; private final boolean experimentalSyntaxEnabled; - private final Session session; + private final ConnectorSession session; private final Map resolvedNames = new HashMap<>(); private final IdentityHashMap resolvedFunctions = new IdentityHashMap<>(); private final IdentityHashMap resolvedOperators = new IdentityHashMap<>(); @@ -117,7 +117,7 @@ public class ExpressionAnalyzer private final IdentityHashMap expressionCoercions = new IdentityHashMap<>(); private final Set subqueryInPredicates = Collections.newSetFromMap(new IdentityHashMap()); - public ExpressionAnalyzer(Analysis analysis, Session session, Metadata metadata, boolean experimentalSyntaxEnabled) + public ExpressionAnalyzer(Analysis analysis, ConnectorSession session, Metadata metadata, boolean experimentalSyntaxEnabled) { this.analysis = checkNotNull(analysis, "analysis is null"); this.session = checkNotNull(session, "session is null"); @@ -737,27 +737,27 @@ private Type coerceToSingleType(AnalysisContext context, String message, List getExpressionTypes(Session session, Metadata metadata, Map types, Expression expression) + public static IdentityHashMap getExpressionTypes(ConnectorSession session, Metadata metadata, Map types, Expression expression) { return getExpressionTypes(session, metadata, types, ImmutableList.of(expression)); } - public static IdentityHashMap getExpressionTypes(Session session, Metadata metadata, Map types, Iterable expressions) + public static IdentityHashMap getExpressionTypes(ConnectorSession session, Metadata metadata, Map types, Iterable expressions) { return analyzeExpressionsWithSymbols(session, metadata, types, expressions).getExpressionTypes(); } - public static IdentityHashMap getExpressionTypesFromInput(Session session, Metadata metadata, Map types, Expression expression) + public static IdentityHashMap getExpressionTypesFromInput(ConnectorSession session, Metadata metadata, Map types, Expression expression) { return getExpressionTypesFromInput(session, metadata, types, ImmutableList.of(expression)); } - public static IdentityHashMap getExpressionTypesFromInput(Session session, Metadata metadata, Map types, Iterable expressions) + public static IdentityHashMap getExpressionTypesFromInput(ConnectorSession session, Metadata metadata, Map types, Iterable expressions) { return analyzeExpressionsWithInputs(session, metadata, types, expressions).getExpressionTypes(); } - public static ExpressionAnalysis analyzeExpressionsWithSymbols(Session session, Metadata metadata, final Map types, Iterable expressions) + public static ExpressionAnalysis analyzeExpressionsWithSymbols(ConnectorSession session, Metadata metadata, final Map types, Iterable expressions) { List fields = IterableTransformer.on(DependencyExtractor.extractUnique(expressions)) .transform(new Function() @@ -775,7 +775,7 @@ public Field apply(Symbol symbol) return analyzeExpressions(session, metadata, new TupleDescriptor(fields), expressions); } - public static ExpressionAnalysis analyzeExpressionsWithInputs(Session session, Metadata metadata, Map types, Iterable expressions) + public static ExpressionAnalysis analyzeExpressionsWithInputs(ConnectorSession session, Metadata metadata, Map types, Iterable expressions) { Field[] fields = new Field[types.size()]; for (Entry entry : types.entrySet()) { @@ -786,7 +786,7 @@ public static ExpressionAnalysis analyzeExpressionsWithInputs(Session session, M return analyzeExpressions(session, metadata, tupleDescriptor, expressions); } - private static ExpressionAnalysis analyzeExpressions(Session session, Metadata metadata, TupleDescriptor tupleDescriptor, Iterable expressions) + private static ExpressionAnalysis analyzeExpressions(ConnectorSession session, Metadata metadata, TupleDescriptor tupleDescriptor, Iterable expressions) { ExpressionAnalyzer analyzer = new ExpressionAnalyzer(new Analysis(), session, metadata, false); for (Expression expression : expressions) { @@ -801,7 +801,7 @@ private static ExpressionAnalysis analyzeExpressions(Session session, Metadata m } public static ExpressionAnalysis analyzeExpression( - Session session, + ConnectorSession session, Metadata metadata, TupleDescriptor tupleDescriptor, Analysis analysis, diff --git a/presto-main/src/main/java/com/facebook/presto/sql/analyzer/QueryExplainer.java b/presto-main/src/main/java/com/facebook/presto/sql/analyzer/QueryExplainer.java index 41f8943a462b..55c198e8d900 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/analyzer/QueryExplainer.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/analyzer/QueryExplainer.java @@ -14,7 +14,7 @@ package com.facebook.presto.sql.analyzer; import com.facebook.presto.metadata.Metadata; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.planner.DistributedLogicalPlanner; import com.facebook.presto.sql.planner.LogicalPlanner; import com.facebook.presto.sql.planner.Plan; @@ -32,12 +32,12 @@ public class QueryExplainer { - public final Session session; + public final ConnectorSession session; public final List planOptimizers; public final Metadata metadata; public final boolean experimentalSyntaxEnabled; - public QueryExplainer(Session session, + public QueryExplainer(ConnectorSession session, List planOptimizers, Metadata metadata, boolean experimentalSyntaxEnabled) diff --git a/presto-main/src/main/java/com/facebook/presto/sql/analyzer/StatementAnalyzer.java b/presto-main/src/main/java/com/facebook/presto/sql/analyzer/StatementAnalyzer.java index d44aba10587f..9f3a03532c42 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/analyzer/StatementAnalyzer.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/analyzer/StatementAnalyzer.java @@ -18,7 +18,7 @@ import com.facebook.presto.metadata.QualifiedTableName; import com.facebook.presto.metadata.TableHandle; import com.facebook.presto.spi.ColumnMetadata; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.tree.Approximate; import com.facebook.presto.sql.tree.BooleanLiteral; import com.facebook.presto.sql.tree.Cast; @@ -93,11 +93,11 @@ class StatementAnalyzer { private final Analysis analysis; private final Metadata metadata; - private final Session session; + private final ConnectorSession session; private final Optional queryExplainer; private final boolean experimentalSyntaxEnabled; - public StatementAnalyzer(Analysis analysis, Metadata metadata, Session session, boolean experimentalSyntaxEnabled, Optional queryExplainer) + public StatementAnalyzer(Analysis analysis, Metadata metadata, ConnectorSession session, boolean experimentalSyntaxEnabled, Optional queryExplainer) { this.analysis = checkNotNull(analysis, "analysis is null"); this.metadata = checkNotNull(metadata, "metadata is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/analyzer/TupleAnalyzer.java b/presto-main/src/main/java/com/facebook/presto/sql/analyzer/TupleAnalyzer.java index 306acb192c98..7b64d72c240e 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/analyzer/TupleAnalyzer.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/analyzer/TupleAnalyzer.java @@ -21,7 +21,7 @@ import com.facebook.presto.metadata.TableHandle; import com.facebook.presto.metadata.TableMetadata; import com.facebook.presto.spi.ColumnMetadata; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.Type; import com.facebook.presto.sql.ExpressionUtils; import com.facebook.presto.sql.planner.ExpressionInterpreter; @@ -107,11 +107,11 @@ class TupleAnalyzer extends DefaultTraversalVisitor { private final Analysis analysis; - private final Session session; + private final ConnectorSession session; private final Metadata metadata; private final boolean experimentalSyntaxEnabled; - public TupleAnalyzer(Analysis analysis, Session session, Metadata metadata, boolean experimentalSyntaxEnabled) + public TupleAnalyzer(Analysis analysis, ConnectorSession session, Metadata metadata, boolean experimentalSyntaxEnabled) { checkNotNull(analysis, "analysis is null"); checkNotNull(session, "session is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/gen/DefaultFunctionBinder.java b/presto-main/src/main/java/com/facebook/presto/sql/gen/DefaultFunctionBinder.java index 5daa169315e8..a5bc3ebfcdc2 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/gen/DefaultFunctionBinder.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/gen/DefaultFunctionBinder.java @@ -15,7 +15,7 @@ import com.facebook.presto.byteCode.ByteCodeNode; import com.facebook.presto.byteCode.instruction.Constant; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableList.Builder; @@ -51,7 +51,7 @@ public static FunctionBinding bindConstantArguments(long bindingId, String name, int argIndex = 0; // bind session - if (methodHandle.type().parameterCount() > 0 && methodHandle.type().parameterType(0) == Session.class) { + if (methodHandle.type().parameterCount() > 0 && methodHandle.type().parameterType(0) == ConnectorSession.class) { unboundArguments.add(getSessionByteCode); argIndex++; } diff --git a/presto-main/src/main/java/com/facebook/presto/sql/gen/ExpressionCompiler.java b/presto-main/src/main/java/com/facebook/presto/sql/gen/ExpressionCompiler.java index d39f5d8338da..e44b1fc10862 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/gen/ExpressionCompiler.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/gen/ExpressionCompiler.java @@ -43,8 +43,8 @@ import com.facebook.presto.operator.SourceOperator; import com.facebook.presto.operator.SourceOperatorFactory; import com.facebook.presto.operator.aggregation.IsolatedClass; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.RecordCursor; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockCursor; import com.facebook.presto.spi.type.TimeZoneKey; @@ -217,7 +217,7 @@ private TypedOperatorClass compileFilterAndProjectOperator( type(AbstractFilterAndProjectOperator.class)); // declare fields - FieldDefinition sessionField = classDefinition.declareField(a(PRIVATE, FINAL), "session", Session.class); + FieldDefinition sessionField = classDefinition.declareField(a(PRIVATE, FINAL), "session", ConnectorSession.class); // constructor classDefinition.declareConstructor(new CompilerContext(bootstrap.getBootstrapMethod()), @@ -233,7 +233,7 @@ private TypedOperatorClass compileFilterAndProjectOperator( .comment("this.session = operatorContext.getSession();") .pushThis() .getVariable("operatorContext") - .invokeVirtual(OperatorContext.class, "getSession", Session.class) + .invokeVirtual(OperatorContext.class, "getSession", ConnectorSession.class) .putField(sessionField) .ret(); @@ -335,7 +335,7 @@ private TypedOperatorClass compileScanFilterAndProjectOperator( type(AbstractScanFilterAndProjectOperator.class)); // declare fields - FieldDefinition sessionField = classDefinition.declareField(a(PRIVATE, FINAL), "session", Session.class); + FieldDefinition sessionField = classDefinition.declareField(a(PRIVATE, FINAL), "session", ConnectorSession.class); // constructor classDefinition.declareConstructor(new CompilerContext(bootstrap.getBootstrapMethod()), @@ -357,7 +357,7 @@ private TypedOperatorClass compileScanFilterAndProjectOperator( .comment("this.session = operatorContext.getSession();") .pushThis() .getVariable("operatorContext") - .invokeVirtual(OperatorContext.class, "getSession", Session.class) + .invokeVirtual(OperatorContext.class, "getSession", ConnectorSession.class) .putField(sessionField) .ret(); @@ -637,7 +637,7 @@ private void generateFilterMethod( filterMethod.comment("Filter: %s", filter.toString()); filterMethod.getCompilerContext().declareVariable(type(boolean.class), "wasNull"); - Block getSessionByteCode = new Block(filterMethod.getCompilerContext()).pushThis().getField(classDefinition.getType(), "session", type(Session.class)); + Block getSessionByteCode = new Block(filterMethod.getCompilerContext()).pushThis().getField(classDefinition.getType(), "session", type(ConnectorSession.class)); ByteCodeExpressionVisitor visitor = new ByteCodeExpressionVisitor(metadata, bootstrap.getFunctionBinder(), expressionTypes, getSessionByteCode, sourceIsCursor, timeZoneKey); ByteCodeNode body = visitor.process(filter, filterMethod.getCompilerContext()); @@ -690,7 +690,7 @@ private Class generateProjectMethod( // generate body code CompilerContext context = projectionMethod.getCompilerContext(); context.declareVariable(type(boolean.class), "wasNull"); - Block getSessionByteCode = new Block(context).pushThis().getField(classDefinition.getType(), "session", type(Session.class)); + Block getSessionByteCode = new Block(context).pushThis().getField(classDefinition.getType(), "session", type(ConnectorSession.class)); ByteCodeExpressionVisitor visitor = new ByteCodeExpressionVisitor(metadata, bootstrap.getFunctionBinder(), expressionTypes, getSessionByteCode, sourceIsCursor, timeZoneKey); ByteCodeNode body = visitor.process(projection, context); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/DistributedLogicalPlanner.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/DistributedLogicalPlanner.java index 87aa86796a19..ff5b90bcc4fa 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/DistributedLogicalPlanner.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/DistributedLogicalPlanner.java @@ -17,7 +17,7 @@ import com.facebook.presto.metadata.Metadata; import com.facebook.presto.metadata.OutputTableHandle; import com.facebook.presto.metadata.Signature; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.planner.PlanFragment.OutputPartitioning; import com.facebook.presto.sql.planner.PlanFragment.PlanDistribution; import com.facebook.presto.sql.planner.plan.AggregationNode; @@ -70,11 +70,11 @@ */ public class DistributedLogicalPlanner { - private final Session session; + private final ConnectorSession session; private final Metadata metadata; private final PlanNodeIdAllocator idAllocator; - public DistributedLogicalPlanner(Session session, Metadata metadata, PlanNodeIdAllocator idAllocator) + public DistributedLogicalPlanner(ConnectorSession session, Metadata metadata, PlanNodeIdAllocator idAllocator) { this.session = checkNotNull(session, "session is null"); this.metadata = checkNotNull(metadata, "metadata is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/DomainTranslator.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/DomainTranslator.java index bd68c2a6edb9..9dd71e85ef74 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/DomainTranslator.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/DomainTranslator.java @@ -15,10 +15,10 @@ import com.facebook.presto.metadata.Metadata; import com.facebook.presto.metadata.ColumnHandle; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.Domain; import com.facebook.presto.spi.Marker; import com.facebook.presto.spi.Range; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.SortedRangeSet; import com.facebook.presto.spi.TupleDomain; import com.facebook.presto.spi.type.DoubleType; @@ -181,7 +181,7 @@ private static boolean isBetween(Range range) */ public static ExtractionResult fromPredicate( Metadata metadata, - Session session, + ConnectorSession session, Expression predicate, Map types, Map columnHandleTranslationMap) @@ -193,11 +193,11 @@ private static class Visitor extends AstVisitor { private final Metadata metadata; - private final Session session; + private final ConnectorSession session; private final Map types; private final Map columnHandles; - private Visitor(Metadata metadata, Session session, Map types, Map columnHandles) + private Visitor(Metadata metadata, ConnectorSession session, Map types, Map columnHandles) { this.metadata = checkNotNull(metadata, "metadata is null"); this.session = checkNotNull(session, "session is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/ExpressionInterpreter.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/ExpressionInterpreter.java index f1e18f869aec..6c4998f62ef9 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/ExpressionInterpreter.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/ExpressionInterpreter.java @@ -17,8 +17,8 @@ import com.facebook.presto.metadata.Metadata; import com.facebook.presto.metadata.OperatorInfo; import com.facebook.presto.metadata.OperatorInfo.OperatorType; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.RecordCursor; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.block.BlockCursor; import com.facebook.presto.spi.type.Type; import com.facebook.presto.sql.tree.ArithmeticExpression; @@ -77,7 +77,7 @@ public class ExpressionInterpreter { private final Expression expression; private final Metadata metadata; - private final Session session; + private final ConnectorSession session; private final boolean optimize; private final IdentityHashMap expressionTypes; @@ -87,7 +87,7 @@ public class ExpressionInterpreter private final IdentityHashMap likePatternCache = new IdentityHashMap<>(); private final IdentityHashMap> inListCache = new IdentityHashMap<>(); - public static ExpressionInterpreter expressionInterpreter(Expression expression, Metadata metadata, Session session, IdentityHashMap expressionTypes) + public static ExpressionInterpreter expressionInterpreter(Expression expression, Metadata metadata, ConnectorSession session, IdentityHashMap expressionTypes) { checkNotNull(expression, "expression is null"); checkNotNull(metadata, "metadata is null"); @@ -96,7 +96,7 @@ public static ExpressionInterpreter expressionInterpreter(Expression expression, return new ExpressionInterpreter(expression, metadata, session, expressionTypes, false); } - public static ExpressionInterpreter expressionOptimizer(Expression expression, Metadata metadata, Session session, IdentityHashMap expressionTypes) + public static ExpressionInterpreter expressionOptimizer(Expression expression, Metadata metadata, ConnectorSession session, IdentityHashMap expressionTypes) { checkNotNull(expression, "expression is null"); checkNotNull(metadata, "metadata is null"); @@ -105,7 +105,7 @@ public static ExpressionInterpreter expressionOptimizer(Expression expression, M return new ExpressionInterpreter(expression, metadata, session, expressionTypes, true); } - private ExpressionInterpreter(Expression expression, Metadata metadata, Session session, IdentityHashMap expressionTypes, boolean optimize) + private ExpressionInterpreter(Expression expression, Metadata metadata, ConnectorSession session, IdentityHashMap expressionTypes, boolean optimize) { this.expression = expression; this.metadata = metadata; @@ -400,7 +400,7 @@ protected Object visitNegativeExpression(NegativeExpression node, Object context OperatorInfo operatorInfo = metadata.resolveOperator(OperatorType.NEGATION, types(node.getValue())); MethodHandle handle = operatorInfo.getMethodHandle(); - if (handle.type().parameterCount() > 0 && handle.type().parameterType(0) == Session.class) { + if (handle.type().parameterCount() > 0 && handle.type().parameterType(0) == ConnectorSession.class) { handle = handle.bindTo(session); } try { @@ -741,9 +741,9 @@ private Object optimize(Node node, Object context) } } - public static Object invoke(Session session, MethodHandle handle, List argumentValues) + public static Object invoke(ConnectorSession session, MethodHandle handle, List argumentValues) { - if (handle.type().parameterCount() > 0 && handle.type().parameterType(0) == Session.class) { + if (handle.type().parameterCount() > 0 && handle.type().parameterType(0) == ConnectorSession.class) { handle = handle.bindTo(session); } try { diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/InterpretedFilterFunction.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/InterpretedFilterFunction.java index 8e5199881fa7..34a9c4b52799 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/InterpretedFilterFunction.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/InterpretedFilterFunction.java @@ -13,11 +13,11 @@ */ package com.facebook.presto.sql.planner; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockCursor; import com.facebook.presto.metadata.Metadata; import com.facebook.presto.operator.FilterFunction; import com.facebook.presto.spi.RecordCursor; -import com.facebook.presto.spi.Session; import com.facebook.presto.sql.tree.Expression; import com.facebook.presto.sql.tree.ExpressionTreeRewriter; import com.facebook.presto.sql.tree.Input; @@ -36,7 +36,7 @@ public class InterpretedFilterFunction { private final ExpressionInterpreter evaluator; - public InterpretedFilterFunction(Expression predicate, Map symbolTypes, Map symbolToInputMappings, Metadata metadata, Session session) + public InterpretedFilterFunction(Expression predicate, Map symbolTypes, Map symbolToInputMappings, Metadata metadata, ConnectorSession session) { // pre-compute symbol -> input mappings and replace the corresponding nodes in the tree Expression rewritten = ExpressionTreeRewriter.rewriteWith(new SymbolToInputRewriter(symbolToInputMappings), predicate); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/InterpretedProjectionFunction.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/InterpretedProjectionFunction.java index f968a260c95a..0c2a594fbfb1 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/InterpretedProjectionFunction.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/InterpretedProjectionFunction.java @@ -13,12 +13,12 @@ */ package com.facebook.presto.sql.planner; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockCursor; import com.facebook.presto.metadata.Metadata; import com.facebook.presto.operator.ProjectionFunction; import com.facebook.presto.spi.RecordCursor; -import com.facebook.presto.spi.Session; import com.facebook.presto.sql.tree.Expression; import com.facebook.presto.sql.tree.ExpressionTreeRewriter; import com.facebook.presto.sql.tree.Input; @@ -41,7 +41,7 @@ public InterpretedProjectionFunction(Expression expression, Map symbolTypes, Map symbolToInputMapping, Metadata metadata, - Session session) + ConnectorSession session) { // analyze expression so we can know the type of every expression in the tree IdentityHashMap expressionTypes = getExpressionTypes(session, metadata, symbolTypes, expression); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/LiteralInterpreter.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/LiteralInterpreter.java index 74b5e0fc9491..e691b6255253 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/LiteralInterpreter.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/LiteralInterpreter.java @@ -18,7 +18,7 @@ import com.facebook.presto.metadata.OperatorInfo; import com.facebook.presto.metadata.OperatorInfo.OperatorType; import com.facebook.presto.metadata.Signature; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.Type; import com.facebook.presto.sql.analyzer.SemanticException; import com.facebook.presto.sql.tree.AstVisitor; @@ -61,7 +61,7 @@ public final class LiteralInterpreter { private LiteralInterpreter() {} - public static Object evaluate(Metadata metadata, Session session, Expression node) + public static Object evaluate(Metadata metadata, ConnectorSession session, Expression node) { if (!(node instanceof Literal)) { throw new IllegalArgumentException("node must be a Literal"); @@ -134,7 +134,7 @@ else if (value == Double.POSITIVE_INFINITY) { } private static class LiteralVisitor - extends AstVisitor + extends AstVisitor { private final Metadata metadata; @@ -144,37 +144,37 @@ private LiteralVisitor(Metadata metadata) } @Override - protected Object visitLiteral(Literal node, Session session) + protected Object visitLiteral(Literal node, ConnectorSession session) { throw new UnsupportedOperationException("Unhandled literal type: " + node); } @Override - protected Object visitBooleanLiteral(BooleanLiteral node, Session session) + protected Object visitBooleanLiteral(BooleanLiteral node, ConnectorSession session) { return node.getValue(); } @Override - protected Long visitLongLiteral(LongLiteral node, Session session) + protected Long visitLongLiteral(LongLiteral node, ConnectorSession session) { return node.getValue(); } @Override - protected Double visitDoubleLiteral(DoubleLiteral node, Session session) + protected Double visitDoubleLiteral(DoubleLiteral node, ConnectorSession session) { return node.getValue(); } @Override - protected Slice visitStringLiteral(StringLiteral node, Session session) + protected Slice visitStringLiteral(StringLiteral node, ConnectorSession session) { return node.getSlice(); } @Override - protected Object visitGenericLiteral(GenericLiteral node, Session session) + protected Object visitGenericLiteral(GenericLiteral node, ConnectorSession session) { Type type = metadata.getType(node.getType()); if (type == null) { @@ -197,19 +197,19 @@ protected Object visitGenericLiteral(GenericLiteral node, Session session) } @Override - protected Long visitTimeLiteral(TimeLiteral node, Session session) + protected Long visitTimeLiteral(TimeLiteral node, ConnectorSession session) { return parseTime(session.getTimeZoneKey(), node.getValue()); } @Override - protected Long visitTimestampLiteral(TimestampLiteral node, Session session) + protected Long visitTimestampLiteral(TimestampLiteral node, ConnectorSession session) { return parseTimestamp(session.getTimeZoneKey(), node.getValue()); } @Override - protected Long visitIntervalLiteral(IntervalLiteral node, Session session) + protected Long visitIntervalLiteral(IntervalLiteral node, ConnectorSession session) { if (node.isYearToMonth()) { return node.getSign().multiplier() * parseYearMonthInterval(node.getValue(), node.getStartField(), node.getEndField()); @@ -221,7 +221,7 @@ protected Long visitIntervalLiteral(IntervalLiteral node, Session session) } @Override - protected Object visitNullLiteral(NullLiteral node, Session session) + protected Object visitNullLiteral(NullLiteral node, ConnectorSession session) { return null; } diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/LocalExecutionPlanner.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/LocalExecutionPlanner.java index 413da59f3c57..a69022424ae7 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/LocalExecutionPlanner.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/LocalExecutionPlanner.java @@ -56,9 +56,9 @@ import com.facebook.presto.operator.index.IndexLookupSourceSupplier; import com.facebook.presto.operator.index.IndexSourceOperator; import com.facebook.presto.operator.window.WindowFunction; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.Index; import com.facebook.presto.spi.RecordSink; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.block.BlockCursor; import com.facebook.presto.spi.block.SortOrder; import com.facebook.presto.spi.type.Type; @@ -183,7 +183,7 @@ public LocalExecutionPlanner(NodeInfo nodeInfo, this.compiler = checkNotNull(compiler, "compiler is null"); } - public LocalExecutionPlan plan(Session session, + public LocalExecutionPlan plan(ConnectorSession session, PlanNode plan, Map types, OutputFactory outputOperatorFactory) @@ -205,7 +205,7 @@ public LocalExecutionPlan plan(Session session, private static class LocalExecutionPlanContext { - private final Session session; + private final ConnectorSession session; private final Map types; private final List driverFactories; private final Optional indexSourceContext; @@ -213,12 +213,12 @@ private static class LocalExecutionPlanContext private int nextOperatorId; private boolean inputDriver = true; - public LocalExecutionPlanContext(Session session, Map types) + public LocalExecutionPlanContext(ConnectorSession session, Map types) { this(session, types, new ArrayList(), Optional.absent()); } - private LocalExecutionPlanContext(Session session, Map types, List driverFactories, Optional indexSourceContext) + private LocalExecutionPlanContext(ConnectorSession session, Map types, List driverFactories, Optional indexSourceContext) { this.session = session; this.types = types; @@ -236,7 +236,7 @@ private List getDriverFactories() return ImmutableList.copyOf(driverFactories); } - public Session getSession() + public ConnectorSession getSession() { return session; } @@ -311,9 +311,9 @@ public List getDriverFactories() private class Visitor extends PlanVisitor { - private final Session session; + private final ConnectorSession session; - private Visitor(Session session) + private Visitor(ConnectorSession session) { this.session = session; } diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/LogicalPlanner.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/LogicalPlanner.java index 3218a8d8cde4..0022e26b96f0 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/LogicalPlanner.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/LogicalPlanner.java @@ -17,10 +17,10 @@ import com.facebook.presto.metadata.QualifiedTableName; import com.facebook.presto.metadata.TableMetadata; import com.facebook.presto.spi.ColumnMetadata; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableMetadata; import com.facebook.presto.sql.analyzer.Analysis; import com.facebook.presto.sql.analyzer.Field; -import com.facebook.presto.spi.Session; import com.facebook.presto.sql.planner.optimizations.PlanOptimizer; import com.facebook.presto.sql.planner.plan.OutputNode; import com.facebook.presto.sql.planner.plan.PlanNode; @@ -39,12 +39,12 @@ public class LogicalPlanner { private final PlanNodeIdAllocator idAllocator; - private final Session session; + private final ConnectorSession session; private final List planOptimizers; private final SymbolAllocator symbolAllocator = new SymbolAllocator(); private final Metadata metadata; - public LogicalPlanner(Session session, + public LogicalPlanner(ConnectorSession session, List planOptimizers, PlanNodeIdAllocator idAllocator, Metadata metadata) diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/QueryPlanner.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/QueryPlanner.java index 324d11b8cf61..515ab165a61c 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/QueryPlanner.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/QueryPlanner.java @@ -15,7 +15,7 @@ import com.facebook.presto.metadata.Metadata; import com.facebook.presto.metadata.Signature; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.SortOrder; import com.facebook.presto.spi.type.Type; import com.facebook.presto.sql.analyzer.Analysis; @@ -77,9 +77,9 @@ class QueryPlanner private final SymbolAllocator symbolAllocator; private final PlanNodeIdAllocator idAllocator; private final Metadata metadata; - private final Session session; + private final ConnectorSession session; - QueryPlanner(Analysis analysis, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator, Metadata metadata, Session session) + QueryPlanner(Analysis analysis, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator, Metadata metadata, ConnectorSession session) { Preconditions.checkNotNull(analysis, "analysis is null"); Preconditions.checkNotNull(symbolAllocator, "symbolAllocator is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/RelationPlanner.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/RelationPlanner.java index 45b3431a5d3c..43f84e648d3a 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/RelationPlanner.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/RelationPlanner.java @@ -16,7 +16,7 @@ import com.facebook.presto.metadata.ColumnHandle; import com.facebook.presto.metadata.Metadata; import com.facebook.presto.metadata.Signature; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockCursor; import com.facebook.presto.spi.type.BigintType; import com.facebook.presto.metadata.TableHandle; @@ -81,9 +81,9 @@ class RelationPlanner private final SymbolAllocator symbolAllocator; private final PlanNodeIdAllocator idAllocator; private final Metadata metadata; - private final Session session; + private final ConnectorSession session; - RelationPlanner(Analysis analysis, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator, Metadata metadata, Session session) + RelationPlanner(Analysis analysis, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator, Metadata metadata, ConnectorSession session) { Preconditions.checkNotNull(analysis, "analysis is null"); Preconditions.checkNotNull(symbolAllocator, "symbolAllocator is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/CanonicalizeExpressions.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/CanonicalizeExpressions.java index 68aa4fac3a4f..6c5663ce502c 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/CanonicalizeExpressions.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/CanonicalizeExpressions.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.sql.planner.optimizations; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.Type; import com.facebook.presto.sql.planner.PlanNodeIdAllocator; import com.facebook.presto.sql.planner.Symbol; @@ -56,7 +56,7 @@ public static Expression canonicalizeExpression(Expression expression) } @Override - public PlanNode optimize(PlanNode plan, Session session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) + public PlanNode optimize(PlanNode plan, ConnectorSession session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) { checkNotNull(plan, "plan is null"); checkNotNull(session, "session is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/ImplementSampleAsFilter.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/ImplementSampleAsFilter.java index e0a4692ae735..da1b398d97ea 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/ImplementSampleAsFilter.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/ImplementSampleAsFilter.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.sql.planner.optimizations; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.planner.PlanNodeIdAllocator; import com.facebook.presto.sql.planner.Symbol; import com.facebook.presto.sql.planner.SymbolAllocator; @@ -38,7 +38,7 @@ public class ImplementSampleAsFilter extends PlanOptimizer { @Override - public PlanNode optimize(PlanNode plan, Session session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) + public PlanNode optimize(PlanNode plan, ConnectorSession session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) { checkNotNull(plan, "plan is null"); checkNotNull(session, "session is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/IndexJoinOptimizer.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/IndexJoinOptimizer.java index 62abda2e3b13..8fde558a93e6 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/IndexJoinOptimizer.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/IndexJoinOptimizer.java @@ -16,7 +16,7 @@ import com.facebook.presto.index.IndexManager; import com.facebook.presto.metadata.ColumnHandle; import com.facebook.presto.metadata.ResolvedIndex; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.TupleDomain; import com.facebook.presto.sql.planner.DomainTranslator; import com.facebook.presto.sql.planner.PlanNodeIdAllocator; @@ -70,7 +70,7 @@ public IndexJoinOptimizer(IndexManager indexManager) } @Override - public PlanNode optimize(PlanNode plan, Session session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) + public PlanNode optimize(PlanNode plan, ConnectorSession session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) { checkNotNull(plan, "plan is null"); checkNotNull(session, "session is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/LimitPushDown.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/LimitPushDown.java index 404fc27711f0..ff440cd6d482 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/LimitPushDown.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/LimitPushDown.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.sql.planner.optimizations; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.planner.PlanNodeIdAllocator; import com.facebook.presto.sql.planner.Symbol; import com.facebook.presto.sql.planner.SymbolAllocator; @@ -46,7 +46,7 @@ public class LimitPushDown extends PlanOptimizer { @Override - public PlanNode optimize(PlanNode plan, Session session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) + public PlanNode optimize(PlanNode plan, ConnectorSession session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) { checkNotNull(plan, "plan is null"); checkNotNull(session, "session is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/MaterializeSamplePullUp.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/MaterializeSamplePullUp.java index 144a266ae030..200c409ba6dc 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/MaterializeSamplePullUp.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/MaterializeSamplePullUp.java @@ -14,8 +14,8 @@ package com.facebook.presto.sql.planner.optimizations; import com.facebook.presto.metadata.TableMetadata; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableMetadata; -import com.facebook.presto.spi.Session; import com.facebook.presto.sql.planner.DeterminismEvaluator; import com.facebook.presto.sql.planner.PlanNodeIdAllocator; import com.facebook.presto.sql.planner.Symbol; @@ -66,7 +66,7 @@ public class MaterializeSamplePullUp extends PlanOptimizer { @Override - public PlanNode optimize(PlanNode plan, Session session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) + public PlanNode optimize(PlanNode plan, ConnectorSession session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) { checkNotNull(plan, "plan is null"); checkNotNull(session, "session is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/MergeProjections.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/MergeProjections.java index 3fe0bafeb37e..76e275f7e004 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/MergeProjections.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/MergeProjections.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.sql.planner.optimizations; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.planner.ExpressionSymbolInliner; import com.facebook.presto.sql.planner.PlanNodeIdAllocator; import com.facebook.presto.sql.planner.Symbol; @@ -38,7 +38,7 @@ public class MergeProjections extends PlanOptimizer { @Override - public PlanNode optimize(PlanNode plan, Session session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) + public PlanNode optimize(PlanNode plan, ConnectorSession session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) { checkNotNull(plan, "plan is null"); checkNotNull(session, "session is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/PlanOptimizer.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/PlanOptimizer.java index 7404e6d2ae70..751d3d3e797f 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/PlanOptimizer.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/PlanOptimizer.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.sql.planner.optimizations; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.planner.PlanNodeIdAllocator; import com.facebook.presto.sql.planner.Symbol; import com.facebook.presto.sql.planner.SymbolAllocator; @@ -25,7 +25,7 @@ public abstract class PlanOptimizer { public abstract PlanNode optimize(PlanNode plan, - Session session, + ConnectorSession session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/PredicatePushDown.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/PredicatePushDown.java index c7032c90975a..d449c6e7e97c 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/PredicatePushDown.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/PredicatePushDown.java @@ -17,9 +17,9 @@ import com.facebook.presto.metadata.Metadata; import com.facebook.presto.metadata.Partition; import com.facebook.presto.metadata.PartitionResult; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.TupleDomain; import com.facebook.presto.split.SplitManager; -import com.facebook.presto.spi.Session; import com.facebook.presto.sql.planner.DependencyExtractor; import com.facebook.presto.sql.planner.DeterminismEvaluator; import com.facebook.presto.sql.planner.DomainTranslator; @@ -119,7 +119,7 @@ public PredicatePushDown(Metadata metadata, SplitManager splitManager, boolean e } @Override - public PlanNode optimize(PlanNode plan, Session session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) + public PlanNode optimize(PlanNode plan, ConnectorSession session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) { checkNotNull(plan, "plan is null"); checkNotNull(session, "session is null"); @@ -136,10 +136,10 @@ private static class Rewriter private final PlanNodeIdAllocator idAllocator; private final Metadata metadata; private final SplitManager splitManager; - private final Session session; + private final ConnectorSession session; private final boolean experimentalSyntaxEnabled; - private Rewriter(SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator, Metadata metadata, SplitManager splitManager, Session session, boolean experimentalSyntaxEnabled) + private Rewriter(SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator, Metadata metadata, SplitManager splitManager, ConnectorSession session, boolean experimentalSyntaxEnabled) { this.symbolAllocator = checkNotNull(symbolAllocator, "symbolAllocator is null"); this.idAllocator = checkNotNull(idAllocator, "idAllocator is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/PruneRedundantProjections.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/PruneRedundantProjections.java index c5f6d81c4122..42a4dd9e2926 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/PruneRedundantProjections.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/PruneRedundantProjections.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.sql.planner.optimizations; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.planner.PlanNodeIdAllocator; import com.facebook.presto.sql.planner.Symbol; import com.facebook.presto.sql.planner.SymbolAllocator; @@ -36,7 +36,7 @@ public class PruneRedundantProjections extends PlanOptimizer { @Override - public PlanNode optimize(PlanNode plan, Session session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) + public PlanNode optimize(PlanNode plan, ConnectorSession session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) { checkNotNull(plan, "plan is null"); checkNotNull(session, "session is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/PruneUnreferencedOutputs.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/PruneUnreferencedOutputs.java index d895b25b3829..2200a00f33e2 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/PruneUnreferencedOutputs.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/PruneUnreferencedOutputs.java @@ -15,7 +15,7 @@ import com.facebook.presto.metadata.ColumnHandle; import com.facebook.presto.metadata.Signature; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.planner.DependencyExtractor; import com.facebook.presto.sql.planner.PlanNodeIdAllocator; import com.facebook.presto.sql.planner.Symbol; @@ -84,7 +84,7 @@ public class PruneUnreferencedOutputs extends PlanOptimizer { @Override - public PlanNode optimize(PlanNode plan, Session session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) + public PlanNode optimize(PlanNode plan, ConnectorSession session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) { checkNotNull(plan, "plan is null"); checkNotNull(session, "session is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/SetFlatteningOptimizer.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/SetFlatteningOptimizer.java index 61c43df180fd..72703f28649c 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/SetFlatteningOptimizer.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/SetFlatteningOptimizer.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.sql.planner.optimizations; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.planner.PlanNodeIdAllocator; import com.facebook.presto.sql.planner.Symbol; import com.facebook.presto.sql.planner.SymbolAllocator; @@ -36,7 +36,7 @@ public class SetFlatteningOptimizer extends PlanOptimizer { @Override - public PlanNode optimize(PlanNode plan, Session session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) + public PlanNode optimize(PlanNode plan, ConnectorSession session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) { checkNotNull(plan, "plan is null"); checkNotNull(session, "session is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/SimplifyExpressions.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/SimplifyExpressions.java index f239a95c8157..19e3262b0fa9 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/SimplifyExpressions.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/SimplifyExpressions.java @@ -14,7 +14,7 @@ package com.facebook.presto.sql.planner.optimizations; import com.facebook.presto.metadata.Metadata; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.planner.ExpressionInterpreter; import com.facebook.presto.sql.planner.LiteralInterpreter; import com.facebook.presto.sql.planner.NoOpSymbolResolver; @@ -51,7 +51,7 @@ public SimplifyExpressions(Metadata metadata) } @Override - public PlanNode optimize(PlanNode plan, Session session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) + public PlanNode optimize(PlanNode plan, ConnectorSession session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) { checkNotNull(plan, "plan is null"); checkNotNull(session, "session is null"); @@ -66,10 +66,10 @@ private static class Rewriter extends PlanNodeRewriter { private final Metadata metadata; - private final Session session; + private final ConnectorSession session; private final Map types; - public Rewriter(Metadata metadata, Session session, Map types) + public Rewriter(Metadata metadata, ConnectorSession session, Map types) { this.metadata = metadata; this.session = session; diff --git a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/UnaliasSymbolReferences.java b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/UnaliasSymbolReferences.java index 84c7d8f39632..a08b72532e32 100644 --- a/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/UnaliasSymbolReferences.java +++ b/presto-main/src/main/java/com/facebook/presto/sql/planner/optimizations/UnaliasSymbolReferences.java @@ -15,7 +15,7 @@ import com.facebook.presto.metadata.ColumnHandle; import com.facebook.presto.metadata.Signature; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.SortOrder; import com.facebook.presto.spi.type.Type; import com.facebook.presto.sql.planner.DeterminismEvaluator; @@ -84,7 +84,7 @@ public class UnaliasSymbolReferences extends PlanOptimizer { @Override - public PlanNode optimize(PlanNode plan, Session session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) + public PlanNode optimize(PlanNode plan, ConnectorSession session, Map types, SymbolAllocator symbolAllocator, PlanNodeIdAllocator idAllocator) { checkNotNull(plan, "plan is null"); checkNotNull(session, "session is null"); diff --git a/presto-main/src/main/java/com/facebook/presto/type/ColorType.java b/presto-main/src/main/java/com/facebook/presto/type/ColorType.java index 79d49a43642e..18e4382888ae 100644 --- a/presto-main/src/main/java/com/facebook/presto/type/ColorType.java +++ b/presto-main/src/main/java/com/facebook/presto/type/ColorType.java @@ -14,7 +14,7 @@ package com.facebook.presto.type; import com.facebook.presto.operator.scalar.ColorFunctions; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockBuilderStatus; import com.facebook.presto.spi.block.BlockCursor; @@ -64,7 +64,7 @@ public int getFixedSize() } @Override - public Object getObjectValue(Session session, Slice slice, int offset) + public Object getObjectValue(ConnectorSession session, Slice slice, int offset) { int color = slice.getInt(offset); if (color < 0) { diff --git a/presto-main/src/main/java/com/facebook/presto/type/DateOperators.java b/presto-main/src/main/java/com/facebook/presto/type/DateOperators.java index 2bd694b49c79..61eae80e5fa8 100644 --- a/presto-main/src/main/java/com/facebook/presto/type/DateOperators.java +++ b/presto-main/src/main/java/com/facebook/presto/type/DateOperators.java @@ -14,7 +14,7 @@ package com.facebook.presto.type; import com.facebook.presto.operator.scalar.ScalarOperator; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.BooleanType; import com.facebook.presto.spi.type.DateType; import com.facebook.presto.spi.type.TimestampType; @@ -96,7 +96,7 @@ public static boolean between(@SqlType(DateType.class) long value, @SqlType(Date @ScalarOperator(CAST) @SqlType(TimestampType.class) - public static long castToTimestamp(Session session, @SqlType(DateType.class) long value) + public static long castToTimestamp(ConnectorSession session, @SqlType(DateType.class) long value) { // date is encoded as milliseconds at midnight in UTC // convert to midnight if the session timezone @@ -106,7 +106,7 @@ public static long castToTimestamp(Session session, @SqlType(DateType.class) lon @ScalarOperator(CAST) @SqlType(TimestampWithTimeZoneType.class) - public static long castToTimestampWithTimeZone(Session session, @SqlType(DateType.class) long value) + public static long castToTimestampWithTimeZone(ConnectorSession session, @SqlType(DateType.class) long value) { // date is encoded as milliseconds at midnight in UTC // convert to midnight if the session timezone diff --git a/presto-main/src/main/java/com/facebook/presto/type/DateTimeOperators.java b/presto-main/src/main/java/com/facebook/presto/type/DateTimeOperators.java index ed13e7468753..fa8799366b10 100644 --- a/presto-main/src/main/java/com/facebook/presto/type/DateTimeOperators.java +++ b/presto-main/src/main/java/com/facebook/presto/type/DateTimeOperators.java @@ -14,7 +14,7 @@ package com.facebook.presto.type; import com.facebook.presto.operator.scalar.ScalarOperator; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.DateType; import com.facebook.presto.spi.type.IntervalDayTimeType; import com.facebook.presto.spi.type.IntervalYearMonthType; @@ -63,14 +63,14 @@ public static long intervalDayToSecondPlusDate(@SqlType(IntervalDayTimeType.clas @ScalarOperator(ADD) @SqlType(TimeType.class) - public static long timePlusIntervalDayToSecond(Session session, @SqlType(TimeType.class) long left, @SqlType(IntervalDayTimeType.class) long right) + public static long timePlusIntervalDayToSecond(ConnectorSession session, @SqlType(TimeType.class) long left, @SqlType(IntervalDayTimeType.class) long right) { return modulo24Hour(getChronology(session.getTimeZoneKey()), left + right); } @ScalarOperator(ADD) @SqlType(TimeType.class) - public static long intervalDayToSecondPlusTime(Session session, @SqlType(IntervalDayTimeType.class) long left, @SqlType(TimeType.class) long right) + public static long intervalDayToSecondPlusTime(ConnectorSession session, @SqlType(IntervalDayTimeType.class) long left, @SqlType(TimeType.class) long right) { return modulo24Hour(getChronology(session.getTimeZoneKey()), left + right); } @@ -161,14 +161,14 @@ public static long intervalYearToMonthPlusTimeWithTimeZone(@SqlType(IntervalYear @ScalarOperator(ADD) @SqlType(TimestampType.class) - public static long timestampPlusIntervalYearToMonth(Session session, @SqlType(TimestampType.class) long left, @SqlType(IntervalYearMonthType.class) long right) + public static long timestampPlusIntervalYearToMonth(ConnectorSession session, @SqlType(TimestampType.class) long left, @SqlType(IntervalYearMonthType.class) long right) { return getChronology(session.getTimeZoneKey()).monthOfYear().add(left, right); } @ScalarOperator(ADD) @SqlType(TimestampType.class) - public static long intervalYearToMonthPlusTimestamp(Session session, @SqlType(IntervalYearMonthType.class) long left, @SqlType(TimestampType.class) long right) + public static long intervalYearToMonthPlusTimestamp(ConnectorSession session, @SqlType(IntervalYearMonthType.class) long left, @SqlType(TimestampType.class) long right) { return getChronology(session.getTimeZoneKey()).monthOfYear().add(right, left); } @@ -199,7 +199,7 @@ public static long dateMinusIntervalDayToSecond(@SqlType(DateType.class) long le @ScalarOperator(SUBTRACT) @SqlType(TimeType.class) - public static long timeMinusIntervalDayToSecond(Session session, @SqlType(TimeType.class) long left, @SqlType(IntervalDayTimeType.class) long right) + public static long timeMinusIntervalDayToSecond(ConnectorSession session, @SqlType(TimeType.class) long left, @SqlType(IntervalDayTimeType.class) long right) { return modulo24Hour(getChronology(session.getTimeZoneKey()), left - right); } @@ -227,7 +227,7 @@ public static long timestampWithTimeZoneMinusIntervalDayToSecond(@SqlType(Timest @ScalarOperator(SUBTRACT) @SqlType(DateType.class) - public static long dateMinusIntervalYearToMonth(Session session, @SqlType(DateType.class) long left, @SqlType(IntervalYearMonthType.class) long right) + public static long dateMinusIntervalYearToMonth(ConnectorSession session, @SqlType(DateType.class) long left, @SqlType(IntervalYearMonthType.class) long right) { return MONTH_OF_YEAR_UTC.add(left, -right); } @@ -248,7 +248,7 @@ public static long timeWithTimeZoneMinusIntervalYearToMonth(@SqlType(TimeWithTim @ScalarOperator(SUBTRACT) @SqlType(TimestampType.class) - public static long timestampMinusIntervalYearToMonth(Session session, @SqlType(TimestampType.class) long left, @SqlType(IntervalYearMonthType.class) long right) + public static long timestampMinusIntervalYearToMonth(ConnectorSession session, @SqlType(TimestampType.class) long left, @SqlType(IntervalYearMonthType.class) long right) { return getChronology(session.getTimeZoneKey()).monthOfYear().add(left, -right); } diff --git a/presto-main/src/main/java/com/facebook/presto/type/TimeOperators.java b/presto-main/src/main/java/com/facebook/presto/type/TimeOperators.java index 938252605335..4104d9f1ef90 100644 --- a/presto-main/src/main/java/com/facebook/presto/type/TimeOperators.java +++ b/presto-main/src/main/java/com/facebook/presto/type/TimeOperators.java @@ -14,7 +14,7 @@ package com.facebook.presto.type; import com.facebook.presto.operator.scalar.ScalarOperator; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.BooleanType; import com.facebook.presto.spi.type.TimeType; import com.facebook.presto.spi.type.TimeWithTimeZoneType; @@ -95,7 +95,7 @@ public static boolean between(@SqlType(TimeType.class) long value, @SqlType(Time @ScalarOperator(CAST) @SqlType(TimeWithTimeZoneType.class) - public static long castToTimeWithTimeZone(Session session, @SqlType(TimeType.class) long value) + public static long castToTimeWithTimeZone(ConnectorSession session, @SqlType(TimeType.class) long value) { return packDateTimeWithZone(value, session.getTimeZoneKey()); } @@ -109,21 +109,21 @@ public static long castToTimestamp(@SqlType(TimeType.class) long value) @ScalarOperator(CAST) @SqlType(TimestampWithTimeZoneType.class) - public static long castToTimestampWithTimeZone(Session session, @SqlType(TimeType.class) long value) + public static long castToTimestampWithTimeZone(ConnectorSession session, @SqlType(TimeType.class) long value) { return packDateTimeWithZone(value, session.getTimeZoneKey()); } @ScalarOperator(CAST) @SqlType(VarcharType.class) - public static Slice castToSlice(Session session, @SqlType(TimeType.class) long value) + public static Slice castToSlice(ConnectorSession session, @SqlType(TimeType.class) long value) { return Slices.copiedBuffer(printTimeWithoutTimeZone(session.getTimeZoneKey(), value), UTF_8); } @ScalarOperator(CAST) @SqlType(TimeType.class) - public static long castFromSlice(Session session, @SqlType(VarcharType.class) Slice value) + public static long castFromSlice(ConnectorSession session, @SqlType(VarcharType.class) Slice value) { return parseTimeWithoutTimeZone(session.getTimeZoneKey(), value.toStringUtf8()); } diff --git a/presto-main/src/main/java/com/facebook/presto/type/TimeWithTimeZoneOperators.java b/presto-main/src/main/java/com/facebook/presto/type/TimeWithTimeZoneOperators.java index 82fe7b8da7cf..0cb3088e35ac 100644 --- a/presto-main/src/main/java/com/facebook/presto/type/TimeWithTimeZoneOperators.java +++ b/presto-main/src/main/java/com/facebook/presto/type/TimeWithTimeZoneOperators.java @@ -14,7 +14,7 @@ package com.facebook.presto.type; import com.facebook.presto.operator.scalar.ScalarOperator; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.BooleanType; import com.facebook.presto.spi.type.TimeType; import com.facebook.presto.spi.type.TimeWithTimeZoneType; @@ -94,7 +94,7 @@ public static boolean between(@SqlType(TimeWithTimeZoneType.class) long value, @ @ScalarOperator(CAST) @SqlType(TimeType.class) - public static long castToTime(Session session, @SqlType(TimeWithTimeZoneType.class) long value) + public static long castToTime(ConnectorSession session, @SqlType(TimeWithTimeZoneType.class) long value) { return unpackMillisUtc(value); } diff --git a/presto-main/src/main/java/com/facebook/presto/type/TimestampOperators.java b/presto-main/src/main/java/com/facebook/presto/type/TimestampOperators.java index ceb35a15da19..dcea53e3e046 100644 --- a/presto-main/src/main/java/com/facebook/presto/type/TimestampOperators.java +++ b/presto-main/src/main/java/com/facebook/presto/type/TimestampOperators.java @@ -14,7 +14,7 @@ package com.facebook.presto.type; import com.facebook.presto.operator.scalar.ScalarOperator; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.BooleanType; import com.facebook.presto.spi.type.DateType; import com.facebook.presto.spi.type.TimeType; @@ -99,7 +99,7 @@ public static boolean between(@SqlType(TimestampType.class) long value, @SqlType @ScalarOperator(CAST) @SqlType(DateType.class) - public static long castToDate(Session session, @SqlType(TimestampType.class) long value) + public static long castToDate(ConnectorSession session, @SqlType(TimestampType.class) long value) { // round down the current timestamp to days ISOChronology chronology = getChronology(session.getTimeZoneKey()); @@ -111,14 +111,14 @@ public static long castToDate(Session session, @SqlType(TimestampType.class) lon @ScalarOperator(CAST) @SqlType(TimeType.class) - public static long castToTime(Session session, @SqlType(TimestampType.class) long value) + public static long castToTime(ConnectorSession session, @SqlType(TimestampType.class) long value) { return modulo24Hour(getChronology(session.getTimeZoneKey()), value); } @ScalarOperator(CAST) @SqlType(TimeWithTimeZoneType.class) - public static long castToTimeWithTimeZone(Session session, @SqlType(TimestampType.class) long value) + public static long castToTimeWithTimeZone(ConnectorSession session, @SqlType(TimestampType.class) long value) { int timeMillis = modulo24Hour(getChronology(session.getTimeZoneKey()), value); return packDateTimeWithZone(timeMillis, session.getTimeZoneKey()); @@ -126,21 +126,21 @@ public static long castToTimeWithTimeZone(Session session, @SqlType(TimestampTyp @ScalarOperator(CAST) @SqlType(TimestampWithTimeZoneType.class) - public static long castToTimestampWithTimeZone(Session session, @SqlType(TimestampType.class) long value) + public static long castToTimestampWithTimeZone(ConnectorSession session, @SqlType(TimestampType.class) long value) { return packDateTimeWithZone(value, session.getTimeZoneKey()); } @ScalarOperator(CAST) @SqlType(VarcharType.class) - public static Slice castToSlice(Session session, @SqlType(TimestampType.class) long value) + public static Slice castToSlice(ConnectorSession session, @SqlType(TimestampType.class) long value) { return Slices.copiedBuffer(printTimestampWithoutTimeZone(session.getTimeZoneKey(), value), UTF_8); } @ScalarOperator(CAST) @SqlType(TimestampType.class) - public static long castFromSlice(Session session, @SqlType(VarcharType.class) Slice value) + public static long castFromSlice(ConnectorSession session, @SqlType(VarcharType.class) Slice value) { return parseTimestampWithoutTimeZone(session.getTimeZoneKey(), value.toStringUtf8()); } diff --git a/presto-main/src/main/java/com/facebook/presto/type/UnknownType.java b/presto-main/src/main/java/com/facebook/presto/type/UnknownType.java index 67d41492775c..097ecf2307e4 100644 --- a/presto-main/src/main/java/com/facebook/presto/type/UnknownType.java +++ b/presto-main/src/main/java/com/facebook/presto/type/UnknownType.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.type; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockBuilderStatus; import com.facebook.presto.spi.block.BlockCursor; @@ -56,7 +56,7 @@ public int getFixedSize() } @Override - public Object getObjectValue(Session session, Slice slice, int offset) + public Object getObjectValue(ConnectorSession session, Slice slice, int offset) { // This type is always null, so this method should never be called throw new UnsupportedOperationException(); diff --git a/presto-main/src/test/java/com/facebook/presto/AbstractTestQueryFramework.java b/presto-main/src/test/java/com/facebook/presto/AbstractTestQueryFramework.java index 869ac093427c..b2f38c8315e5 100644 --- a/presto-main/src/test/java/com/facebook/presto/AbstractTestQueryFramework.java +++ b/presto-main/src/test/java/com/facebook/presto/AbstractTestQueryFramework.java @@ -19,11 +19,11 @@ import com.facebook.presto.index.IndexManager; import com.facebook.presto.metadata.InMemoryNodeManager; import com.facebook.presto.metadata.MetadataManager; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableMetadata; import com.facebook.presto.spi.RecordCursor; import com.facebook.presto.spi.RecordSet; import com.facebook.presto.spi.SchemaTableName; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.type.Type; import com.facebook.presto.split.SplitManager; import com.facebook.presto.sql.analyzer.FeaturesConfig; @@ -87,7 +87,7 @@ public abstract class AbstractTestQueryFramework { private Handle handle; - private Session session; + private ConnectorSession session; @BeforeClass(alwaysRun = true) public void setupDatabase() @@ -148,14 +148,14 @@ public void cleanupDatabase() } } - protected Session getSession() + protected ConnectorSession getSession() { return session; } protected abstract int getNodeCount(); - protected abstract Session setUpQueryFramework() + protected abstract ConnectorSession setUpQueryFramework() throws Exception; protected void tearDownQueryFramework() diff --git a/presto-main/src/test/java/com/facebook/presto/TestLocalQueries.java b/presto-main/src/test/java/com/facebook/presto/TestLocalQueries.java index dfd7adc74dcd..1912b2fb63c0 100644 --- a/presto-main/src/test/java/com/facebook/presto/TestLocalQueries.java +++ b/presto-main/src/test/java/com/facebook/presto/TestLocalQueries.java @@ -13,7 +13,7 @@ */ package com.facebook.presto; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.tpch.SampledTpchConnectorFactory; import com.facebook.presto.tpch.TpchConnectorFactory; import com.facebook.presto.tpch.TpchMetadata; @@ -60,9 +60,9 @@ protected int getNodeCount() } @Override - protected Session setUpQueryFramework() + protected ConnectorSession setUpQueryFramework() { - Session session = new Session("user", "test", "local", TpchMetadata.TINY_SCHEMA_NAME, UTC_KEY, Locale.ENGLISH, null, null); + ConnectorSession session = new ConnectorSession("user", "test", "local", TpchMetadata.TINY_SCHEMA_NAME, UTC_KEY, Locale.ENGLISH, null, null); localQueryRunner = new LocalQueryRunner(session, getExecutor()); localSampledQueryRunner = new LocalQueryRunner(session, getExecutor()); diff --git a/presto-main/src/test/java/com/facebook/presto/TestLocalQueriesIndexed.java b/presto-main/src/test/java/com/facebook/presto/TestLocalQueriesIndexed.java index 01083bba7f93..b3fac16d2a9d 100644 --- a/presto-main/src/test/java/com/facebook/presto/TestLocalQueriesIndexed.java +++ b/presto-main/src/test/java/com/facebook/presto/TestLocalQueriesIndexed.java @@ -13,7 +13,7 @@ */ package com.facebook.presto; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.tpch.IndexedTpchConnectorFactory; import com.facebook.presto.tpch.TpchMetadata; import com.facebook.presto.util.LocalQueryRunner; @@ -58,9 +58,9 @@ protected int getNodeCount() } @Override - protected Session setUpQueryFramework() + protected ConnectorSession setUpQueryFramework() { - Session session = new Session("user", "test", "local", TpchMetadata.TINY_SCHEMA_NAME, UTC_KEY, Locale.ENGLISH, null, null); + ConnectorSession session = new ConnectorSession("user", "test", "local", TpchMetadata.TINY_SCHEMA_NAME, UTC_KEY, Locale.ENGLISH, null, null); localIndexedQueryRunner = new LocalQueryRunner(session, getExecutor()); // add the tpch catalog diff --git a/presto-main/src/test/java/com/facebook/presto/TestLocalQueriesSampled.java b/presto-main/src/test/java/com/facebook/presto/TestLocalQueriesSampled.java index b128bca21a24..8a08e333fce2 100644 --- a/presto-main/src/test/java/com/facebook/presto/TestLocalQueriesSampled.java +++ b/presto-main/src/test/java/com/facebook/presto/TestLocalQueriesSampled.java @@ -13,7 +13,7 @@ */ package com.facebook.presto; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.tpch.SampledTpchConnectorFactory; import com.facebook.presto.tpch.TpchMetadata; import com.facebook.presto.util.LocalQueryRunner; @@ -58,9 +58,9 @@ protected int getNodeCount() } @Override - protected Session setUpQueryFramework() + protected ConnectorSession setUpQueryFramework() { - Session session = new Session("user", "test", "local", TpchMetadata.TINY_SCHEMA_NAME, UTC_KEY, Locale.ENGLISH, null, null); + ConnectorSession session = new ConnectorSession("user", "test", "local", TpchMetadata.TINY_SCHEMA_NAME, UTC_KEY, Locale.ENGLISH, null, null); localSampledQueryRunner = new LocalQueryRunner(session, getExecutor()); // add the tpch catalog diff --git a/presto-main/src/test/java/com/facebook/presto/benchmark/AbstractOperatorBenchmark.java b/presto-main/src/test/java/com/facebook/presto/benchmark/AbstractOperatorBenchmark.java index ff4d1aeecfc1..37696746ba27 100644 --- a/presto-main/src/test/java/com/facebook/presto/benchmark/AbstractOperatorBenchmark.java +++ b/presto-main/src/test/java/com/facebook/presto/benchmark/AbstractOperatorBenchmark.java @@ -19,7 +19,7 @@ import com.facebook.presto.operator.OperatorFactory; import com.facebook.presto.operator.TaskContext; import com.facebook.presto.operator.TaskStats; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.util.CpuTimer; import com.facebook.presto.util.CpuTimer.CpuDuration; import com.facebook.presto.util.LocalQueryRunner; @@ -83,7 +83,7 @@ protected void execute(TaskContext taskContext) @Override protected Map runOnce() { - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); ExecutorService executor = localQueryRunner.getExecutor(); TaskContext taskContext = new TaskContext( new TaskStateMachine(new TaskId("query", "stage", "task"), executor), diff --git a/presto-main/src/test/java/com/facebook/presto/benchmark/BenchmarkQueryRunner.java b/presto-main/src/test/java/com/facebook/presto/benchmark/BenchmarkQueryRunner.java index 773d588d441c..cdf5d124fad3 100644 --- a/presto-main/src/test/java/com/facebook/presto/benchmark/BenchmarkQueryRunner.java +++ b/presto-main/src/test/java/com/facebook/presto/benchmark/BenchmarkQueryRunner.java @@ -26,8 +26,8 @@ import com.facebook.presto.metadata.NativeRecordSinkProvider; import com.facebook.presto.metadata.QualifiedTableName; import com.facebook.presto.metadata.TableColumnMapper; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.NodeManager; -import com.facebook.presto.spi.Session; import com.facebook.presto.split.NativeDataStreamProvider; import com.facebook.presto.split.NativePartitionKey; import com.facebook.presto.split.NativeSplitManager; @@ -57,7 +57,7 @@ private BenchmarkQueryRunner() public static LocalQueryRunner createLocalSampledQueryRunner(ExecutorService executor) { - Session session = new Session("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); + ConnectorSession session = new ConnectorSession("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); LocalQueryRunner localQueryRunner = new LocalQueryRunner(session, executor); // add sampled tpch @@ -83,7 +83,7 @@ public static LocalQueryRunner createLocalSampledQueryRunner(ExecutorService exe public static LocalQueryRunner createLocalQueryRunner(ExecutorService executor) { - Session session = new Session("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); + ConnectorSession session = new ConnectorSession("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); LocalQueryRunner localQueryRunner = new LocalQueryRunner(session, executor); // add tpch diff --git a/presto-main/src/test/java/com/facebook/presto/block/BlockAssertions.java b/presto-main/src/test/java/com/facebook/presto/block/BlockAssertions.java index 549b9512280a..d71dcf83bfc7 100644 --- a/presto-main/src/test/java/com/facebook/presto/block/BlockAssertions.java +++ b/presto-main/src/test/java/com/facebook/presto/block/BlockAssertions.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.block; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.Block; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockBuilderStatus; @@ -50,7 +50,7 @@ public final class BlockAssertions { - public static final Session SESSION = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + public static final ConnectorSession SESSION = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); private BlockAssertions() { diff --git a/presto-main/src/test/java/com/facebook/presto/block/BlockCursorAssertions.java b/presto-main/src/test/java/com/facebook/presto/block/BlockCursorAssertions.java index 99eef59f7724..1532b2f5fde7 100644 --- a/presto-main/src/test/java/com/facebook/presto/block/BlockCursorAssertions.java +++ b/presto-main/src/test/java/com/facebook/presto/block/BlockCursorAssertions.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.block; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockCursor; import com.facebook.presto.spi.type.Type; @@ -33,7 +33,7 @@ public final class BlockCursorAssertions { - public static final Session SESSION = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + public static final ConnectorSession SESSION = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); private BlockCursorAssertions() {} diff --git a/presto-main/src/test/java/com/facebook/presto/execution/TestSqlStageExecution.java b/presto-main/src/test/java/com/facebook/presto/execution/TestSqlStageExecution.java index 93cb99d12ac2..b35d56e9bec0 100644 --- a/presto-main/src/test/java/com/facebook/presto/execution/TestSqlStageExecution.java +++ b/presto-main/src/test/java/com/facebook/presto/execution/TestSqlStageExecution.java @@ -30,11 +30,11 @@ import com.facebook.presto.metadata.Split; import com.facebook.presto.metadata.TableHandle; import com.facebook.presto.operator.TaskContext; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorSplit; import com.facebook.presto.spi.FixedSplitSource; import com.facebook.presto.spi.HostAddress; import com.facebook.presto.spi.Node; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.type.Type; import com.facebook.presto.sql.analyzer.FeaturesConfig; import com.facebook.presto.sql.planner.PlanFragment; @@ -93,7 +93,7 @@ @Test(singleThreaded = true) public class TestSqlStageExecution { - public static final Session SESSION = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + public static final ConnectorSession SESSION = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); MetadataManager metadata; LocationFactory locationFactory = new MockLocationFactory(); @@ -360,7 +360,7 @@ private MockRemoteTaskFactory(Executor executor) @Override public RemoteTask createRemoteTask( - Session session, + ConnectorSession session, TaskId taskId, Node node, PlanFragment fragment, @@ -395,7 +395,7 @@ public MockRemoteTask(TaskId taskId, { this.taskStateMachine = new TaskStateMachine(checkNotNull(taskId, "taskId is null"), checkNotNull(executor, "executor is null")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); this.taskContext = new TaskContext(taskStateMachine, executor, session, new DataSize(256, MEGABYTE), new DataSize(1, MEGABYTE), true); this.location = URI.create("fake://task/" + taskId); diff --git a/presto-main/src/test/java/com/facebook/presto/execution/TestSqlTaskExecution.java b/presto-main/src/test/java/com/facebook/presto/execution/TestSqlTaskExecution.java index e6b8ec6c699d..b7610b2f6348 100644 --- a/presto-main/src/test/java/com/facebook/presto/execution/TestSqlTaskExecution.java +++ b/presto-main/src/test/java/com/facebook/presto/execution/TestSqlTaskExecution.java @@ -32,10 +32,10 @@ import com.facebook.presto.operator.RecordSinkManager; import com.facebook.presto.spi.ConnectorColumnHandle; import com.facebook.presto.spi.ConnectorPartitionResult; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorSplit; import com.facebook.presto.spi.ConnectorSplitSource; import com.facebook.presto.spi.SchemaTableName; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.TupleDomain; import com.facebook.presto.spi.type.Type; import com.facebook.presto.split.DataStreamManager; @@ -84,7 +84,7 @@ @Test(singleThreaded = true) public class TestSqlTaskExecution { - private static final Session SESSION = new Session("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); + private static final ConnectorSession SESSION = new ConnectorSession("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); private TaskExecutor taskExecutor; private ConnectorSplit split; private ExecutorService taskNotificationExecutor; @@ -147,7 +147,7 @@ public void setUp() ImmutableList.of()); TaskId taskId = new TaskId("query", "stage", "task"); - Session session = new Session("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, "test", "test"); + ConnectorSession session = new ConnectorSession("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, "test", "test"); taskNotificationExecutor = Executors.newCachedThreadPool(threadsNamed("task-notification-%d")); diff --git a/presto-main/src/test/java/com/facebook/presto/execution/TestSqlTaskManager.java b/presto-main/src/test/java/com/facebook/presto/execution/TestSqlTaskManager.java index d1d2c6364f53..bf33ed276d63 100644 --- a/presto-main/src/test/java/com/facebook/presto/execution/TestSqlTaskManager.java +++ b/presto-main/src/test/java/com/facebook/presto/execution/TestSqlTaskManager.java @@ -32,9 +32,9 @@ import com.facebook.presto.operator.RecordSinkManager; import com.facebook.presto.spi.ConnectorColumnHandle; import com.facebook.presto.spi.ConnectorPartitionResult; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.Node; import com.facebook.presto.spi.SchemaTableName; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.TupleDomain; import com.facebook.presto.spi.type.Type; import com.facebook.presto.split.DataStreamManager; @@ -89,7 +89,7 @@ public class TestSqlTaskManager private TaskExecutor taskExecutor; private LocalExecutionPlanner planner; private TaskId taskId; - private Session session; + private ConnectorSession session; private Symbol symbol; private ColumnHandle columnHandle; private TableHandle tableHandle; @@ -158,7 +158,7 @@ public void setUp() ImmutableList.of()); taskId = new TaskId("query", "stage", "task"); - session = new Session("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, "test", "test"); + session = new ConnectorSession("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, "test", "test"); } @AfterMethod diff --git a/presto-main/src/test/java/com/facebook/presto/metadata/TestDatabaseLocalStorageManager.java b/presto-main/src/test/java/com/facebook/presto/metadata/TestDatabaseLocalStorageManager.java index 26250b3ca306..c7ac1abb6960 100644 --- a/presto-main/src/test/java/com/facebook/presto/metadata/TestDatabaseLocalStorageManager.java +++ b/presto-main/src/test/java/com/facebook/presto/metadata/TestDatabaseLocalStorageManager.java @@ -21,7 +21,7 @@ import com.facebook.presto.operator.Page; import com.facebook.presto.operator.TaskContext; import com.facebook.presto.spi.ConnectorColumnHandle; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.util.MaterializedResult; import com.google.common.collect.ImmutableList; import com.google.common.collect.Iterables; @@ -73,7 +73,7 @@ public void setup() DatabaseLocalStorageManagerConfig config = new DatabaseLocalStorageManagerConfig().setDataDirectory(dataDir); storageManager = new DatabaseLocalStorageManager(dbi, createTestingBlockEncodingManager(), config); executor = newCachedThreadPool(daemonThreadsNamed("test")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session) .addPipelineContext(true, true) .addDriverContext(); diff --git a/presto-main/src/test/java/com/facebook/presto/metadata/TestJsonTableHandle.java b/presto-main/src/test/java/com/facebook/presto/metadata/TestJsonTableHandle.java index 8e6ff84a380f..a79d0732ae4a 100644 --- a/presto-main/src/test/java/com/facebook/presto/metadata/TestJsonTableHandle.java +++ b/presto-main/src/test/java/com/facebook/presto/metadata/TestJsonTableHandle.java @@ -20,9 +20,9 @@ import com.facebook.presto.connector.system.SystemHandleResolver; import com.facebook.presto.connector.system.SystemTableHandle; import com.facebook.presto.spi.ConnectorHandleResolver; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableHandle; import com.facebook.presto.spi.SchemaTableName; -import com.facebook.presto.spi.Session; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; import com.google.common.collect.ImmutableMap; @@ -48,7 +48,7 @@ @Test(singleThreaded = true) public class TestJsonTableHandle { - private static final Session SESSION = new Session("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); + private static final ConnectorSession SESSION = new ConnectorSession("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); private static final Map NATIVE_AS_MAP = ImmutableMap.of("type", "native", "schemaName", "native_schema", diff --git a/presto-main/src/test/java/com/facebook/presto/metadata/TestNativeMetadata.java b/presto-main/src/test/java/com/facebook/presto/metadata/TestNativeMetadata.java index 963f956fcce6..ce33e1c2da63 100644 --- a/presto-main/src/test/java/com/facebook/presto/metadata/TestNativeMetadata.java +++ b/presto-main/src/test/java/com/facebook/presto/metadata/TestNativeMetadata.java @@ -16,11 +16,11 @@ import com.facebook.presto.spi.ConnectorColumnHandle; import com.facebook.presto.spi.ColumnMetadata; import com.facebook.presto.spi.ConnectorMetadata; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableHandle; import com.facebook.presto.spi.ConnectorTableMetadata; import com.facebook.presto.spi.SchemaTableName; import com.facebook.presto.spi.SchemaTablePrefix; -import com.facebook.presto.spi.Session; import com.facebook.presto.split.NativePartitionKey; import com.facebook.presto.type.TypeRegistry; import com.google.common.collect.ImmutableList; @@ -47,7 +47,7 @@ @Test(singleThreaded = true) public class TestNativeMetadata { - private static final Session SESSION = new Session("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); + private static final ConnectorSession SESSION = new ConnectorSession("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); private static final SchemaTableName DEFAULT_TEST_ORDERS = new SchemaTableName("test", "orders"); private Handle dummyHandle; diff --git a/presto-main/src/test/java/com/facebook/presto/operator/OperatorAssertion.java b/presto-main/src/test/java/com/facebook/presto/operator/OperatorAssertion.java index 6e3fdb1355a6..96750b3af989 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/OperatorAssertion.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/OperatorAssertion.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.operator; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.Block; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockBuilderStatus; @@ -126,7 +126,7 @@ private static void addRemainingOutputPages(Operator operator, ImmutableList.Bui assertEquals(operator.getOutput(), null); } - public static MaterializedResult toMaterializedResult(Session session, List types, List pages) + public static MaterializedResult toMaterializedResult(ConnectorSession session, List types, List pages) { // materialize pages MaterializedResult.Builder resultBuilder = MaterializedResult.resultBuilder(session, types); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/TestAggregationOperator.java b/presto-main/src/test/java/com/facebook/presto/operator/TestAggregationOperator.java index 45ca737149cd..d035ad0d5138 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/TestAggregationOperator.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/TestAggregationOperator.java @@ -15,7 +15,7 @@ import com.facebook.presto.execution.TaskId; import com.facebook.presto.operator.AggregationOperator.AggregationOperatorFactory; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.planner.plan.AggregationNode.Step; import com.facebook.presto.sql.tree.Input; import com.facebook.presto.util.MaterializedResult; @@ -57,7 +57,7 @@ public class TestAggregationOperator public void setUp() { executor = newCachedThreadPool(daemonThreadsNamed("test")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session) .addPipelineContext(true, true) .addDriverContext(); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/TestAlignmentOperator.java b/presto-main/src/test/java/com/facebook/presto/operator/TestAlignmentOperator.java index 3a4154d70f49..bd6bda37a408 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/TestAlignmentOperator.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/TestAlignmentOperator.java @@ -16,7 +16,7 @@ import com.facebook.presto.block.BlockIterable; import com.facebook.presto.execution.TaskId; import com.facebook.presto.operator.AlignmentOperator.AlignmentOperatorFactory; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import org.testng.annotations.AfterMethod; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; @@ -47,7 +47,7 @@ public class TestAlignmentOperator public void setUp() { executor = newCachedThreadPool(daemonThreadsNamed("test")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session) .addPipelineContext(true, true) .addDriverContext(); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/TestDistinctLimitOperator.java b/presto-main/src/test/java/com/facebook/presto/operator/TestDistinctLimitOperator.java index b9f627e073d8..427498760a95 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/TestDistinctLimitOperator.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/TestDistinctLimitOperator.java @@ -14,7 +14,7 @@ package com.facebook.presto.operator; import com.facebook.presto.execution.TaskId; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.util.MaterializedResult; import com.google.common.collect.ImmutableList; import org.testng.annotations.AfterMethod; @@ -42,7 +42,7 @@ public class TestDistinctLimitOperator public void setUp() { executor = newCachedThreadPool(daemonThreadsNamed("test")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session) .addPipelineContext(true, true) .addDriverContext(); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/TestDriver.java b/presto-main/src/test/java/com/facebook/presto/operator/TestDriver.java index 5a383ce531ab..280905e2910f 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/TestDriver.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/TestDriver.java @@ -18,9 +18,9 @@ import com.facebook.presto.execution.TaskId; import com.facebook.presto.metadata.ColumnHandle; import com.facebook.presto.metadata.Split; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorSplit; import com.facebook.presto.spi.HostAddress; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.type.Type; import com.facebook.presto.split.DataStreamProvider; import com.facebook.presto.sql.planner.plan.PlanNodeId; @@ -68,7 +68,7 @@ public void setUp() throws Exception { executor = newCachedThreadPool(daemonThreadsNamed("test")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session) .addPipelineContext(true, true) .addDriverContext(); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/TestExchangeOperator.java b/presto-main/src/test/java/com/facebook/presto/operator/TestExchangeOperator.java index 42ba8edf07c7..bc0af6b4e9b8 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/TestExchangeOperator.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/TestExchangeOperator.java @@ -17,7 +17,7 @@ import com.facebook.presto.metadata.Split; import com.facebook.presto.operator.ExchangeOperator.ExchangeOperatorFactory; import com.facebook.presto.serde.PagesSerde; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.Type; import com.facebook.presto.split.RemoteSplit; import com.facebook.presto.sql.planner.plan.PlanNodeId; @@ -266,7 +266,7 @@ private SourceOperator createExchangeOperator() { ExchangeOperatorFactory operatorFactory = new ExchangeOperatorFactory(0, new PlanNodeId("test"), exchangeClientSupplier, TYPES); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); DriverContext driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session) .addPipelineContext(true, true) .addDriverContext(); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/TestFilterAndProjectOperator.java b/presto-main/src/test/java/com/facebook/presto/operator/TestFilterAndProjectOperator.java index 0b0a3ee14b32..47cb207d687a 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/TestFilterAndProjectOperator.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/TestFilterAndProjectOperator.java @@ -15,8 +15,8 @@ import com.facebook.presto.execution.TaskId; import com.facebook.presto.operator.FilterAndProjectOperator.FilterAndProjectOperatorFactory; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.RecordCursor; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockCursor; import com.facebook.presto.spi.type.Type; @@ -49,7 +49,7 @@ public class TestFilterAndProjectOperator public void setUp() { executor = newCachedThreadPool(daemonThreadsNamed("test")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session) .addPipelineContext(true, true) .addDriverContext(); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/TestHashAggregationOperator.java b/presto-main/src/test/java/com/facebook/presto/operator/TestHashAggregationOperator.java index e60a6478cf51..1cc33df6100d 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/TestHashAggregationOperator.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/TestHashAggregationOperator.java @@ -16,9 +16,9 @@ import com.facebook.presto.ExceededMemoryLimitException; import com.facebook.presto.execution.TaskId; import com.facebook.presto.operator.HashAggregationOperator.HashAggregationOperatorFactory; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.PrestoException; import com.facebook.presto.spi.block.BlockBuilder; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.block.BlockBuilderStatus; import com.facebook.presto.sql.planner.plan.AggregationNode.Step; import com.facebook.presto.sql.tree.Input; @@ -70,7 +70,7 @@ public class TestHashAggregationOperator public void setUp() { executor = newCachedThreadPool(daemonThreadsNamed("test")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session) .addPipelineContext(true, true) .addDriverContext(); @@ -175,7 +175,7 @@ public void testMemoryLimit() .addSequencePage(10, 100, 0, 300, 0) .build(); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); DriverContext driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session, new DataSize(10, Unit.BYTE)) .addPipelineContext(true, true) .addDriverContext(); @@ -208,7 +208,7 @@ public void testHashBuilderResize() .addSequencePage(10, 100) .build(); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); DriverContext driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session, new DataSize(3, Unit.MEGABYTE)) .addPipelineContext(true, true) .addDriverContext(); @@ -239,7 +239,7 @@ public void testHashBuilderResizeLimit() .addSequencePage(10, 100) .build(); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); DriverContext driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session, new DataSize(3, Unit.MEGABYTE)) .addPipelineContext(true, true) .addDriverContext(); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/TestHashJoinOperator.java b/presto-main/src/test/java/com/facebook/presto/operator/TestHashJoinOperator.java index 05bc56a2ceda..e2c1c033279c 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/TestHashJoinOperator.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/TestHashJoinOperator.java @@ -16,7 +16,7 @@ import com.facebook.presto.ExceededMemoryLimitException; import com.facebook.presto.execution.TaskId; import com.facebook.presto.operator.HashBuilderOperator.HashBuilderOperatorFactory; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.util.MaterializedResult; import com.google.common.collect.ImmutableList; import com.google.common.primitives.Ints; @@ -48,7 +48,7 @@ public class TestHashJoinOperator public void setUp() { executor = newCachedThreadPool(daemonThreadsNamed("test")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); taskContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session); } @@ -447,7 +447,7 @@ public void testOuterJoinWithNullOnBothSides() public void testMemoryLimit() throws Exception { - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); DriverContext driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session, new DataSize(100, BYTE)) .addPipelineContext(true, true) .addDriverContext(); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/TestHashSemiJoinOperator.java b/presto-main/src/test/java/com/facebook/presto/operator/TestHashSemiJoinOperator.java index 1f0f72bed3a7..a84dfc2befde 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/TestHashSemiJoinOperator.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/TestHashSemiJoinOperator.java @@ -17,7 +17,7 @@ import com.facebook.presto.execution.TaskId; import com.facebook.presto.operator.HashSemiJoinOperator.HashSemiJoinOperatorFactory; import com.facebook.presto.operator.SetBuilderOperator.SetBuilderOperatorFactory; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.util.MaterializedResult; import com.google.common.collect.ImmutableList; import io.airlift.units.DataSize; @@ -48,7 +48,7 @@ public class TestHashSemiJoinOperator public void setUp() { executor = newCachedThreadPool(daemonThreadsNamed("test")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); taskContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session); } @@ -254,7 +254,7 @@ public void testProbeAndBuildNulls() public void testMemoryLimit() throws Exception { - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); DriverContext driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session, new DataSize(100, BYTE)) .addPipelineContext(true, true) .addDriverContext(); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/TestLimitOperator.java b/presto-main/src/test/java/com/facebook/presto/operator/TestLimitOperator.java index 3f443e7678ef..48500e040316 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/TestLimitOperator.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/TestLimitOperator.java @@ -15,7 +15,7 @@ import com.facebook.presto.execution.TaskId; import com.facebook.presto.operator.LimitOperator.LimitOperatorFactory; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.google.common.base.Optional; import com.google.common.collect.ImmutableList; import org.testng.annotations.AfterMethod; @@ -43,7 +43,7 @@ public class TestLimitOperator public void setUp() { executor = newCachedThreadPool(daemonThreadsNamed("test")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session) .addPipelineContext(true, true) .addDriverContext(); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/TestMarkDistinctOperator.java b/presto-main/src/test/java/com/facebook/presto/operator/TestMarkDistinctOperator.java index ec70b524b83b..1863ebbc8516 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/TestMarkDistinctOperator.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/TestMarkDistinctOperator.java @@ -15,7 +15,7 @@ import com.facebook.presto.execution.TaskId; import com.facebook.presto.operator.MarkDistinctOperator.MarkDistinctOperatorFactory; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.util.MaterializedResult; import com.google.common.base.Optional; import com.google.common.collect.ImmutableList; @@ -46,7 +46,7 @@ public class TestMarkDistinctOperator public void setUp() { executor = newCachedThreadPool(daemonThreadsNamed("test")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session) .addPipelineContext(true, true) .addDriverContext(); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/TestMaterializeSampleOperator.java b/presto-main/src/test/java/com/facebook/presto/operator/TestMaterializeSampleOperator.java index 12fe6497e586..9ebd336c98f0 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/TestMaterializeSampleOperator.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/TestMaterializeSampleOperator.java @@ -15,7 +15,7 @@ import com.facebook.presto.execution.TaskId; import com.facebook.presto.operator.MaterializeSampleOperator.MaterializeSampleOperatorFactory; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.util.MaterializedResult; import com.google.common.collect.ImmutableList; import org.testng.annotations.AfterMethod; @@ -44,7 +44,7 @@ public class TestMaterializeSampleOperator public void setUp() { executor = newCachedThreadPool(daemonThreadsNamed("test")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session) .addPipelineContext(true, true) .addDriverContext(); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/TestOrderByOperator.java b/presto-main/src/test/java/com/facebook/presto/operator/TestOrderByOperator.java index a75978d91915..3dffc1d77b70 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/TestOrderByOperator.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/TestOrderByOperator.java @@ -16,7 +16,7 @@ import com.facebook.presto.ExceededMemoryLimitException; import com.facebook.presto.execution.TaskId; import com.facebook.presto.operator.OrderByOperator.OrderByOperatorFactory; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.util.MaterializedResult; import com.google.common.collect.ImmutableList; import io.airlift.units.DataSize; @@ -52,7 +52,7 @@ public class TestOrderByOperator public void setUp() { executor = newCachedThreadPool(daemonThreadsNamed("test")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session) .addPipelineContext(true, true) .addDriverContext(); @@ -172,7 +172,7 @@ public void testMemoryLimit() .row(4, 0.4) .build(); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); DriverContext driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session, new DataSize(10, Unit.BYTE)) .addPipelineContext(true, true) .addDriverContext(); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/TestRecordProjectOperator.java b/presto-main/src/test/java/com/facebook/presto/operator/TestRecordProjectOperator.java index 48ad2b6fe541..32e8ce121fc6 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/TestRecordProjectOperator.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/TestRecordProjectOperator.java @@ -14,8 +14,8 @@ package com.facebook.presto.operator; import com.facebook.presto.execution.TaskId; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.InMemoryRecordSet; -import com.facebook.presto.spi.Session; import com.facebook.presto.util.InfiniteRecordSet; import com.facebook.presto.util.MaterializedResult; import com.google.common.collect.ImmutableList; @@ -47,7 +47,7 @@ public class TestRecordProjectOperator public void setUp() { executor = newCachedThreadPool(daemonThreadsNamed("test")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session) .addPipelineContext(true, true) .addDriverContext(); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/TestTopNOperator.java b/presto-main/src/test/java/com/facebook/presto/operator/TestTopNOperator.java index 6a5c854b270b..b9f8fbefa565 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/TestTopNOperator.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/TestTopNOperator.java @@ -15,7 +15,7 @@ import com.facebook.presto.execution.TaskId; import com.facebook.presto.operator.TopNOperator.TopNOperatorFactory; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.util.MaterializedResult; import com.google.common.base.Optional; import com.google.common.collect.ImmutableList; @@ -50,7 +50,7 @@ public class TestTopNOperator public void setUp() { executor = newCachedThreadPool(daemonThreadsNamed("test")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session) .addPipelineContext(true, true) .addDriverContext(); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/TestWindowOperator.java b/presto-main/src/test/java/com/facebook/presto/operator/TestWindowOperator.java index 54a79caf170c..dbafcad57bfe 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/TestWindowOperator.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/TestWindowOperator.java @@ -18,7 +18,7 @@ import com.facebook.presto.operator.WindowOperator.WindowOperatorFactory; import com.facebook.presto.operator.window.RowNumberFunction; import com.facebook.presto.operator.window.WindowFunction; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.SortOrder; import com.facebook.presto.util.MaterializedResult; import com.google.common.collect.ImmutableList; @@ -57,7 +57,7 @@ public class TestWindowOperator public void setUp() { executor = newCachedThreadPool(daemonThreadsNamed("test")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session) .addPipelineContext(true, true) .addDriverContext(); @@ -194,7 +194,7 @@ public void testMemoryLimit() .row(4, 0.4) .build(); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); DriverContext driverContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session, new DataSize(10, Unit.BYTE)) .addPipelineContext(true, true) .addDriverContext(); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/scalar/FunctionAssertions.java b/presto-main/src/test/java/com/facebook/presto/operator/scalar/FunctionAssertions.java index 81436257d0a8..00a6951e25ad 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/scalar/FunctionAssertions.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/scalar/FunctionAssertions.java @@ -33,11 +33,11 @@ import com.facebook.presto.operator.SourceOperatorFactory; import com.facebook.presto.operator.TaskContext; import com.facebook.presto.operator.ValuesOperator; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorSplit; import com.facebook.presto.spi.HostAddress; import com.facebook.presto.spi.InMemoryRecordSet; import com.facebook.presto.spi.RecordSet; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.block.Block; import com.facebook.presto.spi.block.BlockCursor; import com.facebook.presto.spi.type.Type; @@ -103,7 +103,7 @@ public final class FunctionAssertions { - public static final Session SESSION = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + public static final ConnectorSession SESSION = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); private static final ExecutorService EXECUTOR = Executors.newCachedThreadPool(Threads.daemonThreadsNamed("test-%s")); @@ -151,7 +151,7 @@ public final class FunctionAssertions private static final DataStreamProvider DATA_STREAM_PROVIDER = new TestDataStreamProvider(); private static final PlanNodeId SOURCE_ID = new PlanNodeId("scan"); - private final Session session; + private final ConnectorSession session; private final LocalQueryRunner runner; private final MetadataManager metadataManager; private final ExpressionCompiler compiler; @@ -161,7 +161,7 @@ public FunctionAssertions() this(SESSION); } - public FunctionAssertions(Session session) + public FunctionAssertions(ConnectorSession session) { this.session = checkNotNull(session, "session is null"); runner = new LocalQueryRunner(session, EXECUTOR); @@ -203,7 +203,7 @@ public Object selectSingleValue(String projection) return selectSingleValue(projection, session); } - public Object selectSingleValue(String projection, Session session) + public Object selectSingleValue(String projection, ConnectorSession session) { List results = executeProjectionWithAll(projection, session); HashSet resultSet = new HashSet<>(results); @@ -214,7 +214,7 @@ public Object selectSingleValue(String projection, Session session) return Iterables.getOnlyElement(resultSet); } - public List executeProjectionWithAll(String projection, Session session) + public List executeProjectionWithAll(String projection, ConnectorSession session) { checkNotNull(projection, "projection is null"); @@ -263,13 +263,13 @@ public List executeProjectionWithAll(String projection, Session session) return results; } - public Object selectSingleValue(OperatorFactory operatorFactory, Session session) + public Object selectSingleValue(OperatorFactory operatorFactory, ConnectorSession session) { Operator operator = operatorFactory.createOperator(createDriverContext(session)); return selectSingleValue(operator); } - public Object selectSingleValue(SourceOperatorFactory operatorFactory, Split split, Session session) + public Object selectSingleValue(SourceOperatorFactory operatorFactory, Split split, ConnectorSession session) { SourceOperator operator = operatorFactory.createOperator(createDriverContext(session)); operator.addSplit(split); @@ -309,7 +309,7 @@ public void assertFilter(String filter, boolean expected, boolean withNoInputCol assertEquals((boolean) Iterables.getOnlyElement(resultSet), expected); } - public List executeFilterWithAll(String filter, Session session, boolean executeWithNoInputColumns) + public List executeFilterWithAll(String filter, ConnectorSession session, boolean executeWithNoInputColumns) { checkNotNull(filter, "filter is null"); @@ -385,17 +385,17 @@ public Expression rewriteExpression(Expression node, Void context, ExpressionTre return canonicalizeExpression(rewrittenExpression); } - private static boolean executeFilterWithNoInputColumns(OperatorFactory operatorFactory, Session session) + private static boolean executeFilterWithNoInputColumns(OperatorFactory operatorFactory, ConnectorSession session) { return executeFilterWithNoInputColumns(operatorFactory.createOperator(createDriverContext(session))); } - private static boolean executeFilter(OperatorFactory operatorFactory, Session session) + private static boolean executeFilter(OperatorFactory operatorFactory, ConnectorSession session) { return executeFilter(operatorFactory.createOperator(createDriverContext(session))); } - private static boolean executeFilter(SourceOperatorFactory operatorFactory, Split split, Session session) + private static boolean executeFilter(SourceOperatorFactory operatorFactory, Split split, ConnectorSession session) { SourceOperator operator = operatorFactory.createOperator(createDriverContext(session)); operator.addSplit(split); @@ -454,7 +454,7 @@ protected Void visitQualifiedNameReference(QualifiedNameReference node, Void con return hasQualifiedNameReference.get(); } - private Operator interpretedFilterProject(Expression filter, Expression projection, Session session) + private Operator interpretedFilterProject(Expression filter, Expression projection, ConnectorSession session) { FilterFunction filterFunction = new InterpretedFilterFunction( filter, @@ -565,7 +565,7 @@ private static Page getAtMostOnePage(Operator operator, Page sourcePage) return result; } - private static DriverContext createDriverContext(Session session) + private static DriverContext createDriverContext(ConnectorSession session) { return new TaskContext(new TaskId("query", "stage", "task"), EXECUTOR, session) .addPipelineContext(true, true) diff --git a/presto-main/src/test/java/com/facebook/presto/operator/scalar/TestDateTimeFunctions.java b/presto-main/src/test/java/com/facebook/presto/operator/scalar/TestDateTimeFunctions.java index 08d1f0448798..f332b2e0216d 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/scalar/TestDateTimeFunctions.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/scalar/TestDateTimeFunctions.java @@ -13,8 +13,8 @@ */ package com.facebook.presto.operator.scalar; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.PrestoException; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.type.SqlDate; import com.facebook.presto.spi.type.SqlTime; import com.facebook.presto.spi.type.SqlTimeWithTimeZone; @@ -64,13 +64,13 @@ public class TestDateTimeFunctions private static final String WEIRD_TIMESTAMP_LITERAL = "TIMESTAMP '2001-08-22 03:04:05.321 +07:09'"; private static final TimeZoneKey WEIRD_TIME_ZONE_KEY = getTimeZoneKeyForOffset(7 * 60 + 9); - private Session session; + private ConnectorSession session; private FunctionAssertions functionAssertions; @BeforeClass public void setUp() { - session = new Session("user", "test", "catalog", "schema", TIME_ZONE_KEY, Locale.ENGLISH, null, null); + session = new ConnectorSession("user", "test", "catalog", "schema", TIME_ZONE_KEY, Locale.ENGLISH, null, null); functionAssertions = new FunctionAssertions(session); } @@ -614,7 +614,7 @@ public void testDateParse() public void testLocale() { Locale locale = Locale.JAPANESE; - session = new Session("user", "test", "catalog", "schema", TIME_ZONE_KEY, locale, null, null); + session = new ConnectorSession("user", "test", "catalog", "schema", TIME_ZONE_KEY, locale, null, null); functionAssertions = new FunctionAssertions(session); diff --git a/presto-main/src/test/java/com/facebook/presto/operator/window/TestWindowFunctions.java b/presto-main/src/test/java/com/facebook/presto/operator/window/TestWindowFunctions.java index 705a310e57a9..84a52230f6aa 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/window/TestWindowFunctions.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/window/TestWindowFunctions.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.operator.window; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.util.MaterializedResult; import org.testng.annotations.AfterMethod; import org.testng.annotations.BeforeMethod; @@ -34,7 +34,7 @@ @Test(singleThreaded = true) public class TestWindowFunctions { - private static final Session SESSION = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + private static final ConnectorSession SESSION = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); private ExecutorService executor; @BeforeMethod diff --git a/presto-main/src/test/java/com/facebook/presto/operator/window/WindowAssertions.java b/presto-main/src/test/java/com/facebook/presto/operator/window/WindowAssertions.java index dc30aecf1264..455d2f40f4bc 100644 --- a/presto-main/src/test/java/com/facebook/presto/operator/window/WindowAssertions.java +++ b/presto-main/src/test/java/com/facebook/presto/operator/window/WindowAssertions.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.operator.window; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.tpch.TpchConnectorFactory; import com.facebook.presto.tpch.TpchMetadata; import com.facebook.presto.util.LocalQueryRunner; @@ -34,7 +34,7 @@ private WindowAssertions() {} public static MaterializedResult computeActual(@Language("SQL") String sql, ExecutorService executor) { - Session session = new Session("user", "test", "tpch", TpchMetadata.TINY_SCHEMA_NAME, UTC_KEY, Locale.ENGLISH, null, null); + ConnectorSession session = new ConnectorSession("user", "test", "tpch", TpchMetadata.TINY_SCHEMA_NAME, UTC_KEY, Locale.ENGLISH, null, null); LocalQueryRunner localQueryRunner = new LocalQueryRunner(session, executor); localQueryRunner.createCatalog("tpch", new TpchConnectorFactory(localQueryRunner.getNodeManager(), 1), ImmutableMap.of()); diff --git a/presto-main/src/test/java/com/facebook/presto/split/TestNativeSplitManager.java b/presto-main/src/test/java/com/facebook/presto/split/TestNativeSplitManager.java index 61f159b56c09..1292bab4f197 100644 --- a/presto-main/src/test/java/com/facebook/presto/split/TestNativeSplitManager.java +++ b/presto-main/src/test/java/com/facebook/presto/split/TestNativeSplitManager.java @@ -26,13 +26,13 @@ import com.facebook.presto.spi.ConnectorColumnHandle; import com.facebook.presto.spi.ConnectorPartition; import com.facebook.presto.spi.ConnectorPartitionResult; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorSplitSource; import com.facebook.presto.spi.ConnectorTableHandle; import com.facebook.presto.spi.ConnectorTableMetadata; import com.facebook.presto.spi.Domain; import com.facebook.presto.spi.PartitionKey; import com.facebook.presto.spi.Range; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.SortedRangeSet; import com.facebook.presto.spi.TupleDomain; import com.facebook.presto.spi.type.BigintType; @@ -62,7 +62,7 @@ @Test(singleThreaded = true) public class TestNativeSplitManager { - private static final Session SESSION = new Session("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); + private static final ConnectorSession SESSION = new ConnectorSession("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); private static final ConnectorTableMetadata TEST_TABLE = TableMetadataBuilder.tableMetadataBuilder("demo", "test_table") .partitionKeyColumn("ds", VARCHAR) .column("foo", VARCHAR) diff --git a/presto-main/src/test/java/com/facebook/presto/sql/TestExpressionInterpreter.java b/presto-main/src/test/java/com/facebook/presto/sql/TestExpressionInterpreter.java index bbd1f8b6d9e2..2cc00a1cf6a6 100644 --- a/presto-main/src/test/java/com/facebook/presto/sql/TestExpressionInterpreter.java +++ b/presto-main/src/test/java/com/facebook/presto/sql/TestExpressionInterpreter.java @@ -14,9 +14,9 @@ package com.facebook.presto.sql; import com.facebook.presto.operator.scalar.FunctionAssertions; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.PrestoException; import com.facebook.presto.spi.RecordCursor; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.type.Type; import com.facebook.presto.sql.planner.ExpressionInterpreter; import com.facebook.presto.sql.planner.Symbol; @@ -65,7 +65,7 @@ public class TestExpressionInterpreter { - private static final Session SESSION = new Session("user", "test", "catalog", "schema", UTC_KEY, Locale.ENGLISH, null, null); + private static final ConnectorSession SESSION = new ConnectorSession("user", "test", "catalog", "schema", UTC_KEY, Locale.ENGLISH, null, null); private static final Map SYMBOL_TYPES = ImmutableMap.builder() .put(new Symbol("bound_long"), BIGINT) .put(new Symbol("bound_string"), VARCHAR) diff --git a/presto-main/src/test/java/com/facebook/presto/sql/analyzer/TestAnalyzer.java b/presto-main/src/test/java/com/facebook/presto/sql/analyzer/TestAnalyzer.java index 2c78d75b3733..08e842abacbb 100644 --- a/presto-main/src/test/java/com/facebook/presto/sql/analyzer/TestAnalyzer.java +++ b/presto-main/src/test/java/com/facebook/presto/sql/analyzer/TestAnalyzer.java @@ -17,9 +17,9 @@ import com.facebook.presto.metadata.MetadataManager; import com.facebook.presto.metadata.TableMetadata; import com.facebook.presto.spi.ColumnMetadata; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableMetadata; import com.facebook.presto.spi.SchemaTableName; -import com.facebook.presto.spi.Session; import com.facebook.presto.sql.parser.SqlParser; import com.facebook.presto.sql.tree.Statement; import com.facebook.presto.type.TypeRegistry; @@ -58,7 +58,7 @@ @Test(singleThreaded = true) public class TestAnalyzer { - private static final Session SESSION = new Session("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); + private static final ConnectorSession SESSION = new ConnectorSession("user", "test", "default", "default", UTC_KEY, Locale.ENGLISH, null, null); private Analyzer analyzer; private Analyzer approximateDisabledAnalyzer; @@ -581,8 +581,8 @@ public void setup() new ColumnMetadata("a", BIGINT, 0, false), new ColumnMetadata("b", BIGINT, 1, false))))); - analyzer = new Analyzer(new Session("user", "test", "tpch", "default", UTC_KEY, Locale.ENGLISH, null, null), metadata, Optional.absent(), true); - approximateDisabledAnalyzer = new Analyzer(new Session("user", "test", "tpch", "default", UTC_KEY, Locale.ENGLISH, null, null), metadata, Optional.absent(), false); + analyzer = new Analyzer(new ConnectorSession("user", "test", "tpch", "default", UTC_KEY, Locale.ENGLISH, null, null), metadata, Optional.absent(), true); + approximateDisabledAnalyzer = new Analyzer(new ConnectorSession("user", "test", "tpch", "default", UTC_KEY, Locale.ENGLISH, null, null), metadata, Optional.absent(), false); } private void analyze(@Language("SQL") String query) diff --git a/presto-main/src/test/java/com/facebook/presto/sql/gen/TestExpressionCompiler.java b/presto-main/src/test/java/com/facebook/presto/sql/gen/TestExpressionCompiler.java index 50f0af4a39c9..1d3ccc914a9c 100644 --- a/presto-main/src/test/java/com/facebook/presto/sql/gen/TestExpressionCompiler.java +++ b/presto-main/src/test/java/com/facebook/presto/sql/gen/TestExpressionCompiler.java @@ -19,7 +19,7 @@ import com.facebook.presto.operator.scalar.MathFunctions; import com.facebook.presto.operator.scalar.RegexpFunctions; import com.facebook.presto.operator.scalar.StringFunctions; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.SqlTimestampWithTimeZone; import com.facebook.presto.sql.planner.LikeUtils; import com.facebook.presto.sql.tree.Extract.Field; @@ -963,7 +963,7 @@ public void testExtract() } @SuppressWarnings("fallthrough") - private static long callExtractFunction(Session session, long value, Field field) + private static long callExtractFunction(ConnectorSession session, long value, Field field) { switch (field) { case YEAR: diff --git a/presto-main/src/test/java/com/facebook/presto/sql/gen/TestJoinProbeCompiler.java b/presto-main/src/test/java/com/facebook/presto/sql/gen/TestJoinProbeCompiler.java index 0f1eca3a7565..83e4d1996873 100644 --- a/presto-main/src/test/java/com/facebook/presto/sql/gen/TestJoinProbeCompiler.java +++ b/presto-main/src/test/java/com/facebook/presto/sql/gen/TestJoinProbeCompiler.java @@ -25,7 +25,7 @@ import com.facebook.presto.operator.SequencePageBuilder; import com.facebook.presto.operator.TaskContext; import com.facebook.presto.operator.ValuesOperator; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockCursor; import com.facebook.presto.spi.block.RandomAccessBlock; import com.facebook.presto.sql.gen.JoinCompiler.LookupSourceFactory; @@ -59,7 +59,7 @@ public class TestJoinProbeCompiler public void setUp() { executor = newCachedThreadPool(daemonThreadsNamed("test")); - Session session = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + ConnectorSession session = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); taskContext = new TaskContext(new TaskId("query", "stage", "task"), executor, session); } diff --git a/presto-main/src/test/java/com/facebook/presto/sql/planner/TestDomainTranslator.java b/presto-main/src/test/java/com/facebook/presto/sql/planner/TestDomainTranslator.java index fd0792c88533..019d4bacdb47 100644 --- a/presto-main/src/test/java/com/facebook/presto/sql/planner/TestDomainTranslator.java +++ b/presto-main/src/test/java/com/facebook/presto/sql/planner/TestDomainTranslator.java @@ -16,9 +16,9 @@ import com.facebook.presto.metadata.Metadata; import com.facebook.presto.metadata.MetadataManager; import com.facebook.presto.metadata.ColumnHandle; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.Domain; import com.facebook.presto.spi.Range; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.SortedRangeSet; import com.facebook.presto.spi.TupleDomain; import com.facebook.presto.spi.type.Type; @@ -74,7 +74,7 @@ public class TestDomainTranslator { private static final Metadata MANAGER = new MetadataManager(); - private static final Session SESSION = new Session("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); + private static final ConnectorSession SESSION = new ConnectorSession("user", "source", "catalog", "schema", UTC_KEY, Locale.ENGLISH, "address", "agent"); private static final Symbol A = new Symbol("a"); private static final ColumnHandle ACH = newColumnHandle("a"); diff --git a/presto-main/src/test/java/com/facebook/presto/sql/planner/TestInterpretedFilterFunction.java b/presto-main/src/test/java/com/facebook/presto/sql/planner/TestInterpretedFilterFunction.java index 52a2a3fdb517..bbe661017cd0 100644 --- a/presto-main/src/test/java/com/facebook/presto/sql/planner/TestInterpretedFilterFunction.java +++ b/presto-main/src/test/java/com/facebook/presto/sql/planner/TestInterpretedFilterFunction.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.sql.planner; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.Type; import com.facebook.presto.sql.tree.ComparisonExpression; import com.facebook.presto.sql.tree.Expression; @@ -193,7 +193,7 @@ public void testComparisonExpressionWithNulls() public static void assertFilter(String expression, boolean expectedValue) { Expression parsed = createExpression(expression, DUAL_METADATA_MANAGER, ImmutableMap.of()); - Session session = new Session("user", "test", "catalog", "schema", UTC_KEY, Locale.ENGLISH, null, null); + ConnectorSession session = new ConnectorSession("user", "test", "catalog", "schema", UTC_KEY, Locale.ENGLISH, null, null); InterpretedFilterFunction filterFunction = new InterpretedFilterFunction(parsed, ImmutableMap.of(), diff --git a/presto-main/src/test/java/com/facebook/presto/sql/planner/TestInterpretedProjectionFunction.java b/presto-main/src/test/java/com/facebook/presto/sql/planner/TestInterpretedProjectionFunction.java index 0754699ae167..063b0510bec6 100644 --- a/presto-main/src/test/java/com/facebook/presto/sql/planner/TestInterpretedProjectionFunction.java +++ b/presto-main/src/test/java/com/facebook/presto/sql/planner/TestInterpretedProjectionFunction.java @@ -15,7 +15,7 @@ import com.facebook.presto.block.BlockAssertions; import com.facebook.presto.block.BlockUtils; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockBuilderStatus; import com.facebook.presto.spi.block.BlockCursor; @@ -171,7 +171,7 @@ private static void assertProjection( symbolTypes.build(), symbolToInputMappings, DUAL_METADATA_MANAGER, - new Session("user", "test", "catalog", "schema", UTC_KEY, Locale.ENGLISH, null, null) + new ConnectorSession("user", "test", "catalog", "schema", UTC_KEY, Locale.ENGLISH, null, null) ); // create output diff --git a/presto-main/src/test/java/com/facebook/presto/type/TestDate.java b/presto-main/src/test/java/com/facebook/presto/type/TestDate.java index d106998ff464..d618a73d2abf 100644 --- a/presto-main/src/test/java/com/facebook/presto/type/TestDate.java +++ b/presto-main/src/test/java/com/facebook/presto/type/TestDate.java @@ -14,7 +14,7 @@ */ import com.facebook.presto.operator.scalar.FunctionAssertions; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.SqlDate; import com.facebook.presto.spi.type.SqlTimestamp; import com.facebook.presto.spi.type.SqlTimestampWithTimeZone; @@ -40,7 +40,7 @@ public class TestDate @BeforeClass public void setUp() { - Session session = new Session("user", "test", "catalog", "schema", TIME_ZONE_KEY, Locale.ENGLISH, null, null); + ConnectorSession session = new ConnectorSession("user", "test", "catalog", "schema", TIME_ZONE_KEY, Locale.ENGLISH, null, null); functionAssertions = new FunctionAssertions(session); } diff --git a/presto-main/src/test/java/com/facebook/presto/type/TestDateTimeOperators.java b/presto-main/src/test/java/com/facebook/presto/type/TestDateTimeOperators.java index 368d846d50b2..dd582186e26e 100644 --- a/presto-main/src/test/java/com/facebook/presto/type/TestDateTimeOperators.java +++ b/presto-main/src/test/java/com/facebook/presto/type/TestDateTimeOperators.java @@ -14,7 +14,7 @@ package com.facebook.presto.type; import com.facebook.presto.operator.scalar.FunctionAssertions; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.SqlDate; import com.facebook.presto.spi.type.SqlTime; import com.facebook.presto.spi.type.SqlTimeWithTimeZone; @@ -41,13 +41,13 @@ public class TestDateTimeOperators private static final DateTimeZone WEIRD_TIME_ZONE = DateTimeZone.forOffsetHoursMinutes(5, 9); private static final TimeZoneKey WEIRD_TIME_ZONE_KEY = getTimeZoneKeyForOffset(5 * 60 + 9); - private Session session; + private ConnectorSession session; private FunctionAssertions functionAssertions; @BeforeClass public void setUp() { - session = new Session("user", "test", "catalog", "schema", TIME_ZONE_KEY, Locale.ENGLISH, null, null); + session = new ConnectorSession("user", "test", "catalog", "schema", TIME_ZONE_KEY, Locale.ENGLISH, null, null); functionAssertions = new FunctionAssertions(session); } diff --git a/presto-main/src/test/java/com/facebook/presto/type/TestTime.java b/presto-main/src/test/java/com/facebook/presto/type/TestTime.java index fa0e5dbd60ac..1796b4df139e 100644 --- a/presto-main/src/test/java/com/facebook/presto/type/TestTime.java +++ b/presto-main/src/test/java/com/facebook/presto/type/TestTime.java @@ -14,7 +14,7 @@ package com.facebook.presto.type; import com.facebook.presto.operator.scalar.FunctionAssertions; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.SqlTime; import com.facebook.presto.spi.type.SqlTimeWithTimeZone; import com.facebook.presto.spi.type.SqlTimestamp; @@ -40,7 +40,7 @@ public class TestTime @BeforeClass public void setUp() { - Session session = new Session("user", "test", "catalog", "schema", TIME_ZONE_KEY, Locale.ENGLISH, null, null); + ConnectorSession session = new ConnectorSession("user", "test", "catalog", "schema", TIME_ZONE_KEY, Locale.ENGLISH, null, null); functionAssertions = new FunctionAssertions(session); } diff --git a/presto-main/src/test/java/com/facebook/presto/type/TestTimeWithTimeZone.java b/presto-main/src/test/java/com/facebook/presto/type/TestTimeWithTimeZone.java index d2904de30551..044dfbbc3480 100644 --- a/presto-main/src/test/java/com/facebook/presto/type/TestTimeWithTimeZone.java +++ b/presto-main/src/test/java/com/facebook/presto/type/TestTimeWithTimeZone.java @@ -14,7 +14,7 @@ package com.facebook.presto.type; import com.facebook.presto.operator.scalar.FunctionAssertions; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.SqlTime; import com.facebook.presto.spi.type.SqlTimeWithTimeZone; import com.facebook.presto.spi.type.SqlTimestamp; @@ -34,13 +34,13 @@ public class TestTimeWithTimeZone private static final DateTimeZone WEIRD_ZONE = DateTimeZone.forOffsetHoursMinutes(7, 9); private static final TimeZoneKey WEIRD_TIME_ZONE_KEY = getTimeZoneKeyForOffset(7 * 60 + 9); - private Session session; + private ConnectorSession session; private FunctionAssertions functionAssertions; @BeforeClass public void setUp() { - session = new Session("user", "test", "catalog", "schema", TimeZoneKey.getTimeZoneKey("+06:09"), Locale.ENGLISH, null, null); + session = new ConnectorSession("user", "test", "catalog", "schema", TimeZoneKey.getTimeZoneKey("+06:09"), Locale.ENGLISH, null, null); functionAssertions = new FunctionAssertions(session); } diff --git a/presto-main/src/test/java/com/facebook/presto/type/TestTimestamp.java b/presto-main/src/test/java/com/facebook/presto/type/TestTimestamp.java index ce05b368975c..b78867743121 100644 --- a/presto-main/src/test/java/com/facebook/presto/type/TestTimestamp.java +++ b/presto-main/src/test/java/com/facebook/presto/type/TestTimestamp.java @@ -14,7 +14,7 @@ package com.facebook.presto.type; import com.facebook.presto.operator.scalar.FunctionAssertions; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.SqlDate; import com.facebook.presto.spi.type.SqlTime; import com.facebook.presto.spi.type.SqlTimeWithTimeZone; @@ -42,7 +42,7 @@ public class TestTimestamp @BeforeClass public void setUp() { - Session session = new Session("user", "test", "catalog", "schema", TIME_ZONE_KEY, Locale.ENGLISH, null, null); + ConnectorSession session = new ConnectorSession("user", "test", "catalog", "schema", TIME_ZONE_KEY, Locale.ENGLISH, null, null); functionAssertions = new FunctionAssertions(session); } diff --git a/presto-main/src/test/java/com/facebook/presto/type/TestTimestampWithTimeZone.java b/presto-main/src/test/java/com/facebook/presto/type/TestTimestampWithTimeZone.java index b84459b37d14..2a2d87bb649f 100644 --- a/presto-main/src/test/java/com/facebook/presto/type/TestTimestampWithTimeZone.java +++ b/presto-main/src/test/java/com/facebook/presto/type/TestTimestampWithTimeZone.java @@ -14,7 +14,7 @@ package com.facebook.presto.type; import com.facebook.presto.operator.scalar.FunctionAssertions; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.SqlDate; import com.facebook.presto.spi.type.SqlTime; import com.facebook.presto.spi.type.SqlTimeWithTimeZone; @@ -40,13 +40,13 @@ public class TestTimestampWithTimeZone private static final TimeZoneKey BERLIN_TIME_ZONE_KEY = getTimeZoneKey("Europe/Berlin"); private static final DateTimeZone BERLIN_ZONE = getDateTimeZone(BERLIN_TIME_ZONE_KEY); - private Session session; + private ConnectorSession session; private FunctionAssertions functionAssertions; @BeforeClass public void setUp() { - session = new Session("user", "test", "catalog", "schema", getTimeZoneKey("+06:09"), Locale.ENGLISH, null, null); + session = new ConnectorSession("user", "test", "catalog", "schema", getTimeZoneKey("+06:09"), Locale.ENGLISH, null, null); functionAssertions = new FunctionAssertions(session); } diff --git a/presto-main/src/test/java/com/facebook/presto/util/LocalQueryRunner.java b/presto-main/src/test/java/com/facebook/presto/util/LocalQueryRunner.java index 865e8e21d060..30fcb82f1a68 100644 --- a/presto-main/src/test/java/com/facebook/presto/util/LocalQueryRunner.java +++ b/presto-main/src/test/java/com/facebook/presto/util/LocalQueryRunner.java @@ -52,7 +52,7 @@ import com.facebook.presto.spi.ColumnMetadata; import com.facebook.presto.spi.Connector; import com.facebook.presto.spi.ConnectorFactory; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.SystemTable; import com.facebook.presto.spi.TupleDomain; import com.facebook.presto.spi.type.Type; @@ -104,7 +104,7 @@ public class LocalQueryRunner { - private final Session session; + private final ConnectorSession session; private final ExecutorService executor; private final InMemoryNodeManager nodeManager; @@ -121,7 +121,7 @@ public class LocalQueryRunner private boolean printPlan; - public LocalQueryRunner(Session session, ExecutorService executor) + public LocalQueryRunner(ConnectorSession session, ExecutorService executor) { this.session = checkNotNull(session, "session is null"); this.executor = checkNotNull(executor, "executor is null"); diff --git a/presto-main/src/test/java/com/facebook/presto/util/MaterializedResult.java b/presto-main/src/test/java/com/facebook/presto/util/MaterializedResult.java index 5538f29ba9cb..8e59b3779ea0 100644 --- a/presto-main/src/test/java/com/facebook/presto/util/MaterializedResult.java +++ b/presto-main/src/test/java/com/facebook/presto/util/MaterializedResult.java @@ -14,7 +14,7 @@ package com.facebook.presto.util; import com.facebook.presto.operator.Page; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.Block; import com.facebook.presto.spi.block.BlockCursor; import com.facebook.presto.spi.type.SqlDate; @@ -126,23 +126,23 @@ else if (prestoValue instanceof SqlTimestampWithTimeZone) { return new MaterializedRow(prestoRow.getPrecision(), jdbcValues); } - public static Builder resultBuilder(Session session, Type... types) + public static Builder resultBuilder(ConnectorSession session, Type... types) { return resultBuilder(session, ImmutableList.copyOf(types)); } - public static Builder resultBuilder(Session session, List types) + public static Builder resultBuilder(ConnectorSession session, List types) { return new Builder(session, ImmutableList.copyOf(types)); } public static class Builder { - private final Session session; + private final ConnectorSession session; private final List types; private final ImmutableList.Builder rows = ImmutableList.builder(); - Builder(Session session, List types) + Builder(ConnectorSession session, List types) { this.session = session; this.types = ImmutableList.copyOf(types); diff --git a/presto-server/src/main/java/com/facebook/presto/server/BasicQueryInfo.java b/presto-server/src/main/java/com/facebook/presto/server/BasicQueryInfo.java index bf876492e2d0..1a05686e525e 100644 --- a/presto-server/src/main/java/com/facebook/presto/server/BasicQueryInfo.java +++ b/presto-server/src/main/java/com/facebook/presto/server/BasicQueryInfo.java @@ -16,7 +16,7 @@ import com.facebook.presto.execution.QueryId; import com.facebook.presto.execution.QueryInfo; import com.facebook.presto.execution.QueryState; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.Objects; @@ -34,7 +34,7 @@ public class BasicQueryInfo { private final QueryId queryId; - private final Session session; + private final ConnectorSession session; private final QueryState state; private final URI self; private final String query; @@ -49,7 +49,7 @@ public class BasicQueryInfo @JsonCreator public BasicQueryInfo( @JsonProperty("queryId") QueryId queryId, - @JsonProperty("session") Session session, + @JsonProperty("session") ConnectorSession session, @JsonProperty("state") QueryState state, @JsonProperty("self") URI self, @JsonProperty("query") String query, @@ -104,7 +104,7 @@ public QueryId getQueryId() } @JsonProperty - public Session getSession() + public ConnectorSession getSession() { return session; } diff --git a/presto-server/src/main/java/com/facebook/presto/server/HttpRemoteTask.java b/presto-server/src/main/java/com/facebook/presto/server/HttpRemoteTask.java index d99641bde63a..555a49e335d6 100644 --- a/presto-server/src/main/java/com/facebook/presto/server/HttpRemoteTask.java +++ b/presto-server/src/main/java/com/facebook/presto/server/HttpRemoteTask.java @@ -30,8 +30,8 @@ import com.facebook.presto.metadata.Split; import com.facebook.presto.operator.TaskContext; import com.facebook.presto.operator.TaskStats; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.PrestoException; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.type.Type; import com.facebook.presto.sql.planner.PlanFragment; import com.facebook.presto.sql.planner.plan.PlanNodeId; @@ -102,7 +102,7 @@ public class HttpRemoteTask private final TaskId taskId; - private final Session session; + private final ConnectorSession session; private final String nodeId; private final PlanFragment planFragment; private final int maxConsecutiveErrorCount; @@ -141,7 +141,7 @@ public class HttpRemoteTask private final AtomicBoolean needsUpdate = new AtomicBoolean(true); - public HttpRemoteTask(Session session, + public HttpRemoteTask(ConnectorSession session, TaskId taskId, String nodeId, URI location, diff --git a/presto-server/src/main/java/com/facebook/presto/server/HttpRemoteTaskFactory.java b/presto-server/src/main/java/com/facebook/presto/server/HttpRemoteTaskFactory.java index 44b8d08961bb..52909de7aafa 100644 --- a/presto-server/src/main/java/com/facebook/presto/server/HttpRemoteTaskFactory.java +++ b/presto-server/src/main/java/com/facebook/presto/server/HttpRemoteTaskFactory.java @@ -22,7 +22,7 @@ import com.facebook.presto.execution.TaskInfo; import com.facebook.presto.metadata.Split; import com.facebook.presto.operator.ForScheduler; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.planner.PlanFragment; import com.facebook.presto.sql.planner.plan.PlanNodeId; import com.google.common.collect.Multimap; @@ -76,7 +76,7 @@ public ThreadPoolExecutorMBean getExecutor() } @Override - public RemoteTask createRemoteTask(Session session, + public RemoteTask createRemoteTask(ConnectorSession session, TaskId taskId, com.facebook.presto.spi.Node node, PlanFragment fragment, diff --git a/presto-server/src/main/java/com/facebook/presto/server/QueryResource.java b/presto-server/src/main/java/com/facebook/presto/server/QueryResource.java index 2e286a35223c..805b7ba730b6 100644 --- a/presto-server/src/main/java/com/facebook/presto/server/QueryResource.java +++ b/presto-server/src/main/java/com/facebook/presto/server/QueryResource.java @@ -17,7 +17,7 @@ import com.facebook.presto.execution.QueryInfo; import com.facebook.presto.execution.QueryManager; import com.facebook.presto.execution.StageId; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.google.common.collect.ImmutableList; import javax.inject.Inject; @@ -128,7 +128,7 @@ public Response createQuery( String remoteUserAddress = requestContext.getRemoteAddr(); - Session session = new Session(user, source, catalog, schema, getTimeZoneKey(timeZoneId), locale, remoteUserAddress, userAgent); + ConnectorSession session = new ConnectorSession(user, source, catalog, schema, getTimeZoneKey(timeZoneId), locale, remoteUserAddress, userAgent); QueryInfo queryInfo = queryManager.createQuery(session, statement); URI pagesUri = uriBuilderFrom(uriInfo.getRequestUri()).appendPath(queryInfo.getQueryId().toString()).build(); diff --git a/presto-server/src/main/java/com/facebook/presto/server/StatementResource.java b/presto-server/src/main/java/com/facebook/presto/server/StatementResource.java index c77947906da1..425c66f01954 100644 --- a/presto-server/src/main/java/com/facebook/presto/server/StatementResource.java +++ b/presto-server/src/main/java/com/facebook/presto/server/StatementResource.java @@ -30,7 +30,7 @@ import com.facebook.presto.execution.TaskInfo; import com.facebook.presto.operator.ExchangeClient; import com.facebook.presto.operator.Page; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockCursor; import com.facebook.presto.spi.type.TimeZoneKey; import com.facebook.presto.spi.type.TimeZoneNotSupportedException; @@ -167,7 +167,7 @@ public Response createQuery( String remoteUserAddress = requestContext.getRemoteAddr(); - Session session = new Session(user, source, catalog, schema, getTimeZoneKey(timeZoneId), locale, remoteUserAddress, userAgent); + ConnectorSession session = new ConnectorSession(user, source, catalog, schema, getTimeZoneKey(timeZoneId), locale, remoteUserAddress, userAgent); ExchangeClient exchangeClient = exchangeClientSupplier.get(); Query query = new Query(session, statement, queryManager, exchangeClient); @@ -243,7 +243,7 @@ public static class Query private final ExchangeClient exchangeClient; private final AtomicLong resultId = new AtomicLong(); - private final Session session; + private final ConnectorSession session; @GuardedBy("this") private QueryResults lastResult; @@ -254,7 +254,7 @@ public static class Query @GuardedBy("this") private List columns; - public Query(Session session, + public Query(ConnectorSession session, String query, QueryManager queryManager, ExchangeClient exchangeClient) @@ -616,10 +616,10 @@ private static QueryError toQueryError(QueryInfo queryInfo) private static class RowIterable implements Iterable> { - private final Session session; + private final ConnectorSession session; private final Page page; - private RowIterable(Session session, Page page) + private RowIterable(ConnectorSession session, Page page) { this.session = session; this.page = checkNotNull(page, "page is null"); @@ -635,10 +635,10 @@ public Iterator> iterator() private static class RowIterator extends AbstractIterator> { - private final Session session; + private final ConnectorSession session; private final BlockCursor[] cursors; - private RowIterator(Session session, Page page) + private RowIterator(ConnectorSession session, Page page) { this.session = session; cursors = new BlockCursor[page.getChannelCount()]; diff --git a/presto-server/src/main/java/com/facebook/presto/server/TaskUpdateRequest.java b/presto-server/src/main/java/com/facebook/presto/server/TaskUpdateRequest.java index 6f2d931e724f..550f52b56848 100644 --- a/presto-server/src/main/java/com/facebook/presto/server/TaskUpdateRequest.java +++ b/presto-server/src/main/java/com/facebook/presto/server/TaskUpdateRequest.java @@ -15,7 +15,7 @@ import com.facebook.presto.OutputBuffers; import com.facebook.presto.TaskSource; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.planner.PlanFragment; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; @@ -27,14 +27,14 @@ public class TaskUpdateRequest { - private final Session session; + private final ConnectorSession session; private final PlanFragment fragment; private final List sources; private final OutputBuffers outputIds; @JsonCreator public TaskUpdateRequest( - @JsonProperty("session") Session session, + @JsonProperty("session") ConnectorSession session, @JsonProperty("fragment") PlanFragment fragment, @JsonProperty("sources") List sources, @JsonProperty("outputIds") OutputBuffers outputIds) @@ -51,7 +51,7 @@ public TaskUpdateRequest( } @JsonProperty - public Session getSession() + public ConnectorSession getSession() { return session; } diff --git a/presto-server/src/test/java/com/facebook/presto/server/MockQueryManager.java b/presto-server/src/test/java/com/facebook/presto/server/MockQueryManager.java index cabab982b3f8..088e27089371 100644 --- a/presto-server/src/test/java/com/facebook/presto/server/MockQueryManager.java +++ b/presto-server/src/test/java/com/facebook/presto/server/MockQueryManager.java @@ -28,7 +28,7 @@ import com.facebook.presto.execution.StageStats; import com.facebook.presto.execution.TaskId; import com.facebook.presto.execution.TaskInfo; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.Type; import com.google.common.base.Function; import com.google.common.base.Preconditions; @@ -111,7 +111,7 @@ public QueryInfo getQueryInfo(QueryId queryId) } @Override - public QueryInfo createQuery(Session session, String query) + public QueryInfo createQuery(ConnectorSession session, String query) { Preconditions.checkNotNull(query, "query is null"); @@ -178,7 +178,7 @@ private QueryInfo getQueryInfo() throw new IllegalStateException("Unknown task state " + outputTask.getState()); } return new QueryInfo(outputTaskId.getQueryId(), - new Session("user", "test", "test_catalog", "test_schema", UTC_KEY, Locale.ENGLISH, null, null), + new ConnectorSession("user", "test", "test_catalog", "test_schema", UTC_KEY, Locale.ENGLISH, null, null), state, self, ImmutableList.of("out"), diff --git a/presto-server/src/test/java/com/facebook/presto/server/MockTaskManager.java b/presto-server/src/test/java/com/facebook/presto/server/MockTaskManager.java index f58948507d11..076d2dd4af55 100644 --- a/presto-server/src/test/java/com/facebook/presto/server/MockTaskManager.java +++ b/presto-server/src/test/java/com/facebook/presto/server/MockTaskManager.java @@ -24,7 +24,7 @@ import com.facebook.presto.execution.TaskStateMachine; import com.facebook.presto.operator.Page; import com.facebook.presto.operator.TaskContext; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.sql.planner.PlanFragment; import com.facebook.presto.sql.planner.plan.PlanNodeId; import com.facebook.presto.execution.ExecutionFailureInfo; @@ -115,7 +115,7 @@ public synchronized TaskInfo getTaskInfo(TaskId taskId, boolean full) } @Override - public synchronized TaskInfo updateTask(Session session, TaskId taskId, PlanFragment ignored, List sources, OutputBuffers outputBuffers) + public synchronized TaskInfo updateTask(ConnectorSession session, TaskId taskId, PlanFragment ignored, List sources, OutputBuffers outputBuffers) { checkNotNull(session, "session is null"); checkNotNull(taskId, "taskId is null"); @@ -194,7 +194,7 @@ public static class MockTask private final TaskContext taskContext; private final SharedBuffer sharedBuffer; - public MockTask(Session session, + public MockTask(ConnectorSession session, TaskId taskId, URI location, OutputBuffers outputBuffers, diff --git a/presto-server/src/test/java/com/facebook/presto/server/TestDistributedQueries.java b/presto-server/src/test/java/com/facebook/presto/server/TestDistributedQueries.java index 3a7e1b425484..3a5e96df8316 100644 --- a/presto-server/src/test/java/com/facebook/presto/server/TestDistributedQueries.java +++ b/presto-server/src/test/java/com/facebook/presto/server/TestDistributedQueries.java @@ -25,7 +25,7 @@ import com.facebook.presto.metadata.QualifiedTablePrefix; import com.facebook.presto.metadata.TableHandle; import com.facebook.presto.server.testing.TestingPrestoServer; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.Type; import com.facebook.presto.tpch.SampledTpchPlugin; import com.facebook.presto.tpch.TpchMetadata; @@ -95,7 +95,7 @@ public class TestDistributedQueries extends AbstractTestSampledQueries { - private static final Session SESSION = new Session("user", "test", TEST_CATALOG, "test", UTC_KEY, Locale.ENGLISH, null, null); + private static final ConnectorSession SESSION = new ConnectorSession("user", "test", TEST_CATALOG, "test", UTC_KEY, Locale.ENGLISH, null, null); private static final String ENVIRONMENT = "testing"; private static final Logger log = Logger.get(TestDistributedQueries.class.getSimpleName()); @@ -238,7 +238,7 @@ protected int getNodeCount() } @Override - protected Session setUpQueryFramework() + protected ConnectorSession setUpQueryFramework() throws Exception { try { diff --git a/presto-server/src/test/java/com/facebook/presto/server/TestDistributedQueriesIndexed.java b/presto-server/src/test/java/com/facebook/presto/server/TestDistributedQueriesIndexed.java index 92f9cd469383..715249ed14c6 100644 --- a/presto-server/src/test/java/com/facebook/presto/server/TestDistributedQueriesIndexed.java +++ b/presto-server/src/test/java/com/facebook/presto/server/TestDistributedQueriesIndexed.java @@ -21,7 +21,7 @@ import com.facebook.presto.client.StatementClient; import com.facebook.presto.metadata.AllNodes; import com.facebook.presto.server.testing.TestingPrestoServer; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.Type; import com.facebook.presto.tpch.IndexedTpchPlugin; import com.facebook.presto.tpch.TpchMetadata; @@ -65,7 +65,7 @@ public class TestDistributedQueriesIndexed extends AbstractTestIndexedQueries { - private static final Session SESSION = new Session("user", "test", "tpch_indexed", TpchMetadata.TINY_SCHEMA_NAME, UTC_KEY, Locale.ENGLISH, null, null); + private static final ConnectorSession SESSION = new ConnectorSession("user", "test", "tpch_indexed", TpchMetadata.TINY_SCHEMA_NAME, UTC_KEY, Locale.ENGLISH, null, null); private static final String ENVIRONMENT = "testing"; private static final Logger log = Logger.get(TestDistributedQueries.class.getSimpleName()); @@ -83,7 +83,7 @@ protected int getNodeCount() } @Override - protected Session setUpQueryFramework() + protected ConnectorSession setUpQueryFramework() throws Exception { try { diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/ConnectorMetadata.java b/presto-spi/src/main/java/com/facebook/presto/spi/ConnectorMetadata.java index 31c3363e64ba..9fb581f3ee1a 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/ConnectorMetadata.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/ConnectorMetadata.java @@ -22,12 +22,12 @@ public interface ConnectorMetadata /** * Returns the schemas provided by this connector. */ - List listSchemaNames(Session session); + List listSchemaNames(ConnectorSession session); /** * Returns a table handle for the specified table name, or null if the connector does not contain the table. */ - ConnectorTableHandle getTableHandle(Session session, SchemaTableName tableName); + ConnectorTableHandle getTableHandle(ConnectorSession session, SchemaTableName tableName); /** * Return the metadata for the specified table handle. @@ -39,7 +39,7 @@ public interface ConnectorMetadata /** * Get the names that match the specified table prefix (never null). */ - List listTables(Session session, String schemaNameOrNull); + List listTables(ConnectorSession session, String schemaNameOrNull); /** * Returns a handle for the specified table column, or null if the table does not contain the specified column. @@ -58,7 +58,7 @@ public interface ConnectorMetadata /** * Returns true iff this catalog supports creation of sampled tables */ - boolean canCreateSampledTables(Session session); + boolean canCreateSampledTables(ConnectorSession session); /** * Gets all of the columns on the specified table, or an empty map if the columns can not be enumerated. @@ -77,12 +77,12 @@ public interface ConnectorMetadata /** * Gets the metadata for all columns that match the specified table prefix. */ - Map> listTableColumns(Session session, SchemaTablePrefix prefix); + Map> listTableColumns(ConnectorSession session, SchemaTablePrefix prefix); /** * Creates a table using the specified table metadata. */ - ConnectorTableHandle createTable(Session session, ConnectorTableMetadata tableMetadata); + ConnectorTableHandle createTable(ConnectorSession session, ConnectorTableMetadata tableMetadata); /** * Drops the specified table @@ -94,7 +94,7 @@ public interface ConnectorMetadata /** * Begin the atomic creation of a table with data. */ - ConnectorOutputTableHandle beginCreateTable(Session session, ConnectorTableMetadata tableMetadata); + ConnectorOutputTableHandle beginCreateTable(ConnectorSession session, ConnectorTableMetadata tableMetadata); /** * Commit a table creation with data after the data is written. diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/Session.java b/presto-spi/src/main/java/com/facebook/presto/spi/ConnectorSession.java similarity index 89% rename from presto-spi/src/main/java/com/facebook/presto/spi/Session.java rename to presto-spi/src/main/java/com/facebook/presto/spi/ConnectorSession.java index 6c7ddf586ab2..b135d84208d6 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/Session.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/ConnectorSession.java @@ -21,7 +21,7 @@ import static java.util.Objects.requireNonNull; -public class Session +public class ConnectorSession { private final String user; private final String source; @@ -33,13 +33,13 @@ public class Session private final String schema; private final long startTime; - public Session(String user, String source, String catalog, String schema, TimeZoneKey timeZoneKey, Locale locale, String remoteUserAddress, String userAgent) + public ConnectorSession(String user, String source, String catalog, String schema, TimeZoneKey timeZoneKey, Locale locale, String remoteUserAddress, String userAgent) { this(user, source, catalog, schema, timeZoneKey, locale, remoteUserAddress, userAgent, System.currentTimeMillis()); } @JsonCreator - public Session( + public ConnectorSession( @JsonProperty("user") String user, @JsonProperty("source") String source, @JsonProperty("catalog") String catalog, @@ -73,12 +73,20 @@ public String getSource() return source; } + /** + * DO NOT CALL THIS FROM CONNECTORS. IT WILL BE REMOVED SOON. + */ + @Deprecated @JsonProperty public String getCatalog() { return catalog; } + /** + * DO NOT CALL THIS FROM CONNECTORS. IT WILL BE REMOVED SOON. + */ + @Deprecated @JsonProperty public String getSchema() { diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/ReadOnlyConnectorMetadata.java b/presto-spi/src/main/java/com/facebook/presto/spi/ReadOnlyConnectorMetadata.java index 1394d637f2be..b4317aaf2dfa 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/ReadOnlyConnectorMetadata.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/ReadOnlyConnectorMetadata.java @@ -19,7 +19,7 @@ public abstract class ReadOnlyConnectorMetadata implements ConnectorMetadata { @Override - public final ConnectorTableHandle createTable(Session session, ConnectorTableMetadata tableMetadata) + public final ConnectorTableHandle createTable(ConnectorSession session, ConnectorTableMetadata tableMetadata) { throw new UnsupportedOperationException(); } @@ -31,13 +31,13 @@ public final void dropTable(ConnectorTableHandle tableHandle) } @Override - public final boolean canCreateSampledTables(Session session) + public final boolean canCreateSampledTables(ConnectorSession session) { return false; } @Override - public final ConnectorOutputTableHandle beginCreateTable(Session session, ConnectorTableMetadata tableMetadata) + public final ConnectorOutputTableHandle beginCreateTable(ConnectorSession session, ConnectorTableMetadata tableMetadata) { throw new UnsupportedOperationException(); } diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/block/AbstractFixedWidthBlock.java b/presto-spi/src/main/java/com/facebook/presto/spi/block/AbstractFixedWidthBlock.java index dae787183e6e..661356ca81ed 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/block/AbstractFixedWidthBlock.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/block/AbstractFixedWidthBlock.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.block; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.FixedWidthType; import io.airlift.slice.Slice; import io.airlift.slice.Slices; @@ -97,7 +97,7 @@ public double getDouble(int position) } @Override - public Object getObjectValue(Session session, int position) + public Object getObjectValue(ConnectorSession session, int position) { checkReadablePosition(position); if (isNull(position)) { diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/block/AbstractVariableWidthRandomAccessBlock.java b/presto-spi/src/main/java/com/facebook/presto/spi/block/AbstractVariableWidthRandomAccessBlock.java index 7a585b0a14e5..393e739e932b 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/block/AbstractVariableWidthRandomAccessBlock.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/block/AbstractVariableWidthRandomAccessBlock.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.block; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.Type; import com.facebook.presto.spi.type.VariableWidthType; import io.airlift.slice.Slice; @@ -95,7 +95,7 @@ public double getDouble(int position) } @Override - public Object getObjectValue(Session session, int position) + public Object getObjectValue(ConnectorSession session, int position) { checkReadablePosition(position); if (isNull(position)) { diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/block/BlockCursor.java b/presto-spi/src/main/java/com/facebook/presto/spi/block/BlockCursor.java index 076658525cb6..9551f80ccadc 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/block/BlockCursor.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/block/BlockCursor.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.block; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.Type; import io.airlift.slice.Slice; @@ -134,7 +134,7 @@ public interface BlockCursor * @throws IllegalStateException if this cursor is not at a valid position * @param session */ - Object getObjectValue(Session session); + Object getObjectValue(ConnectorSession session); /** * Is the current value null? diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/block/FixedWidthBlockCursor.java b/presto-spi/src/main/java/com/facebook/presto/spi/block/FixedWidthBlockCursor.java index 9c2f20aaf9db..8c115cdfceac 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/block/FixedWidthBlockCursor.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/block/FixedWidthBlockCursor.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.block; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.FixedWidthType; import com.facebook.presto.spi.type.Type; import io.airlift.slice.Slice; @@ -190,7 +190,7 @@ public Slice getSlice() } @Override - public Object getObjectValue(Session session) + public Object getObjectValue(ConnectorSession session) { checkReadablePosition(); if (isNull()) { diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/block/RandomAccessBlock.java b/presto-spi/src/main/java/com/facebook/presto/spi/block/RandomAccessBlock.java index 6c40210b142e..1a2428fb62ea 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/block/RandomAccessBlock.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/block/RandomAccessBlock.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.block; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import io.airlift.slice.Slice; public interface RandomAccessBlock @@ -60,7 +60,7 @@ public interface RandomAccessBlock * * @throws IllegalArgumentException if this position is not valid */ - Object getObjectValue(Session session, int position); + Object getObjectValue(ConnectorSession session, int position); /** * Gets the value at the specified position as a single element block. diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/block/VariableWidthBlockCursor.java b/presto-spi/src/main/java/com/facebook/presto/spi/block/VariableWidthBlockCursor.java index b9137afc4f7b..fb6cfb700b56 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/block/VariableWidthBlockCursor.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/block/VariableWidthBlockCursor.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.block; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.type.Type; import com.facebook.presto.spi.type.VariableWidthType; import io.airlift.slice.Slice; @@ -208,7 +208,7 @@ public Slice getSlice() } @Override - public Object getObjectValue(Session session) + public Object getObjectValue(ConnectorSession session) { if (isNull()) { return null; diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/classloader/ClassLoaderSafeConnectorMetadata.java b/presto-spi/src/main/java/com/facebook/presto/spi/classloader/ClassLoaderSafeConnectorMetadata.java index 262a79d11658..4e91a23a96a3 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/classloader/ClassLoaderSafeConnectorMetadata.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/classloader/ClassLoaderSafeConnectorMetadata.java @@ -17,11 +17,11 @@ import com.facebook.presto.spi.ColumnMetadata; import com.facebook.presto.spi.ConnectorMetadata; import com.facebook.presto.spi.ConnectorOutputTableHandle; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableHandle; import com.facebook.presto.spi.ConnectorTableMetadata; import com.facebook.presto.spi.SchemaTableName; import com.facebook.presto.spi.SchemaTablePrefix; -import com.facebook.presto.spi.Session; import java.util.Collection; import java.util.List; @@ -42,7 +42,7 @@ public ClassLoaderSafeConnectorMetadata(ConnectorMetadata delegate, ClassLoader } @Override - public List listSchemaNames(Session session) + public List listSchemaNames(ConnectorSession session) { try (ThreadContextClassLoader ignored = new ThreadContextClassLoader(classLoader)) { return delegate.listSchemaNames(session); @@ -50,7 +50,7 @@ public List listSchemaNames(Session session) } @Override - public ConnectorTableHandle getTableHandle(Session session, SchemaTableName tableName) + public ConnectorTableHandle getTableHandle(ConnectorSession session, SchemaTableName tableName) { try (ThreadContextClassLoader ignored = new ThreadContextClassLoader(classLoader)) { return delegate.getTableHandle(session, tableName); @@ -66,7 +66,7 @@ public ConnectorTableMetadata getTableMetadata(ConnectorTableHandle table) } @Override - public List listTables(Session session, String schemaNameOrNull) + public List listTables(ConnectorSession session, String schemaNameOrNull) { try (ThreadContextClassLoader ignored = new ThreadContextClassLoader(classLoader)) { return delegate.listTables(session, schemaNameOrNull); @@ -90,7 +90,7 @@ public ConnectorColumnHandle getSampleWeightColumnHandle(ConnectorTableHandle ta } @Override - public boolean canCreateSampledTables(Session session) + public boolean canCreateSampledTables(ConnectorSession session) { try (ThreadContextClassLoader ignored = new ThreadContextClassLoader(classLoader)) { return delegate.canCreateSampledTables(session); @@ -114,7 +114,7 @@ public ColumnMetadata getColumnMetadata(ConnectorTableHandle tableHandle, Connec } @Override - public Map> listTableColumns(Session session, SchemaTablePrefix prefix) + public Map> listTableColumns(ConnectorSession session, SchemaTablePrefix prefix) { try (ThreadContextClassLoader ignored = new ThreadContextClassLoader(classLoader)) { return delegate.listTableColumns(session, prefix); @@ -122,7 +122,7 @@ public Map> listTableColumns(Session sessi } @Override - public ConnectorTableHandle createTable(Session session, ConnectorTableMetadata tableMetadata) + public ConnectorTableHandle createTable(ConnectorSession session, ConnectorTableMetadata tableMetadata) { try (ThreadContextClassLoader ignored = new ThreadContextClassLoader(classLoader)) { return delegate.createTable(session, tableMetadata); @@ -138,7 +138,7 @@ public void dropTable(ConnectorTableHandle tableHandle) } @Override - public ConnectorOutputTableHandle beginCreateTable(Session session, ConnectorTableMetadata tableMetadata) + public ConnectorOutputTableHandle beginCreateTable(ConnectorSession session, ConnectorTableMetadata tableMetadata) { try (ThreadContextClassLoader ignored = new ThreadContextClassLoader(classLoader)) { return delegate.beginCreateTable(session, tableMetadata); diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/type/BigintType.java b/presto-spi/src/main/java/com/facebook/presto/spi/type/BigintType.java index ba326d0b6c28..134e504e6144 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/type/BigintType.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/type/BigintType.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.type; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockBuilderStatus; import com.facebook.presto.spi.block.BlockCursor; @@ -61,7 +61,7 @@ public int getFixedSize() } @Override - public Object getObjectValue(Session session, Slice slice, int offset) + public Object getObjectValue(ConnectorSession session, Slice slice, int offset) { return slice.getLong(offset); } diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/type/BooleanType.java b/presto-spi/src/main/java/com/facebook/presto/spi/type/BooleanType.java index 9a6f1bdc63d8..1651af7342c2 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/type/BooleanType.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/type/BooleanType.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.type; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockBuilderStatus; import com.facebook.presto.spi.block.BlockCursor; @@ -61,7 +61,7 @@ public int getFixedSize() } @Override - public Object getObjectValue(Session session, Slice slice, int offset) + public Object getObjectValue(ConnectorSession session, Slice slice, int offset) { return slice.getByte(offset) != 0; } diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/type/DateType.java b/presto-spi/src/main/java/com/facebook/presto/spi/type/DateType.java index 7169d088367e..6a6b5b44e415 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/type/DateType.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/type/DateType.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.type; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockBuilderStatus; import com.facebook.presto.spi.block.BlockCursor; @@ -71,7 +71,7 @@ public int getFixedSize() } @Override - public Object getObjectValue(Session session, Slice slice, int offset) + public Object getObjectValue(ConnectorSession session, Slice slice, int offset) { // convert date to timestamp at midnight in local time zone long date = slice.getLong(offset); diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/type/DoubleType.java b/presto-spi/src/main/java/com/facebook/presto/spi/type/DoubleType.java index adaa95cc1336..1bab5afb805b 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/type/DoubleType.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/type/DoubleType.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.type; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockBuilderStatus; import com.facebook.presto.spi.block.BlockCursor; @@ -61,7 +61,7 @@ public int getFixedSize() } @Override - public Object getObjectValue(Session session, Slice slice, int offset) + public Object getObjectValue(ConnectorSession session, Slice slice, int offset) { return slice.getDouble(offset); } diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/type/FixedWidthType.java b/presto-spi/src/main/java/com/facebook/presto/spi/type/FixedWidthType.java index 60344b474bf3..70b18b3ac3dc 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/type/FixedWidthType.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/type/FixedWidthType.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.type; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockCursor; import io.airlift.slice.Slice; @@ -42,7 +42,7 @@ public interface FixedWidthType * at the specified offset. This is the value returned to the user via the * REST endpoint and therefore must be JSON serializable. */ - Object getObjectValue(Session session, Slice slice, int offset); + Object getObjectValue(ConnectorSession session, Slice slice, int offset); /** * Gets the value at the specified offset in the specified slice as a boolean. diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/type/HyperLogLogType.java b/presto-spi/src/main/java/com/facebook/presto/spi/type/HyperLogLogType.java index 74cc684232b5..fa7a71644c56 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/type/HyperLogLogType.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/type/HyperLogLogType.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.type; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockBuilderStatus; import com.facebook.presto.spi.block.BlockCursor; @@ -118,7 +118,7 @@ public void appendTo(Slice slice, int offset, SliceOutput sliceOutput) } @Override - public Object getObjectValue(Session session, Slice slice, int offset) + public Object getObjectValue(ConnectorSession session, Slice slice, int offset) { return ""; } diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/type/IntervalDayTimeType.java b/presto-spi/src/main/java/com/facebook/presto/spi/type/IntervalDayTimeType.java index 314219846fee..e8c7728f7726 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/type/IntervalDayTimeType.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/type/IntervalDayTimeType.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.type; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockBuilderStatus; import com.facebook.presto.spi.block.BlockCursor; @@ -61,7 +61,7 @@ public int getFixedSize() } @Override - public Object getObjectValue(Session session, Slice slice, int offset) + public Object getObjectValue(ConnectorSession session, Slice slice, int offset) { return new SqlIntervalDayTime((int) slice.getLong(offset)); } diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/type/IntervalYearMonthType.java b/presto-spi/src/main/java/com/facebook/presto/spi/type/IntervalYearMonthType.java index d01eff7f8f7d..30ace0fd8b20 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/type/IntervalYearMonthType.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/type/IntervalYearMonthType.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.type; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockBuilderStatus; import com.facebook.presto.spi.block.BlockCursor; @@ -61,7 +61,7 @@ public int getFixedSize() } @Override - public Object getObjectValue(Session session, Slice slice, int offset) + public Object getObjectValue(ConnectorSession session, Slice slice, int offset) { return new SqlIntervalYearMonth((int) slice.getLong(offset)); } diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/type/TimeType.java b/presto-spi/src/main/java/com/facebook/presto/spi/type/TimeType.java index ebf5c2939b49..d2d731a6eed7 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/type/TimeType.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/type/TimeType.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.type; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockBuilderStatus; import com.facebook.presto.spi.block.BlockCursor; @@ -65,7 +65,7 @@ public int getFixedSize() } @Override - public Object getObjectValue(Session session, Slice slice, int offset) + public Object getObjectValue(ConnectorSession session, Slice slice, int offset) { return new SqlTime(slice.getLong(offset), session.getTimeZoneKey()); } diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/type/TimeWithTimeZoneType.java b/presto-spi/src/main/java/com/facebook/presto/spi/type/TimeWithTimeZoneType.java index 8d12efbf7cd5..4ab27f1669a3 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/type/TimeWithTimeZoneType.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/type/TimeWithTimeZoneType.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.type; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockBuilderStatus; import com.facebook.presto.spi.block.BlockCursor; @@ -62,7 +62,7 @@ public int getFixedSize() } @Override - public Object getObjectValue(Session session, Slice slice, int offset) + public Object getObjectValue(ConnectorSession session, Slice slice, int offset) { return new SqlTimeWithTimeZone(slice.getLong(offset)); } diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/type/TimestampType.java b/presto-spi/src/main/java/com/facebook/presto/spi/type/TimestampType.java index 0bba3a77314d..dde5479d739d 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/type/TimestampType.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/type/TimestampType.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.type; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockBuilderStatus; import com.facebook.presto.spi.block.BlockCursor; @@ -66,7 +66,7 @@ public int getFixedSize() } @Override - public Object getObjectValue(Session session, Slice slice, int offset) + public Object getObjectValue(ConnectorSession session, Slice slice, int offset) { return new SqlTimestamp(slice.getLong(offset), session.getTimeZoneKey()); } diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/type/TimestampWithTimeZoneType.java b/presto-spi/src/main/java/com/facebook/presto/spi/type/TimestampWithTimeZoneType.java index 497dd816e1a6..a0ec34e53665 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/type/TimestampWithTimeZoneType.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/type/TimestampWithTimeZoneType.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.type; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockBuilderStatus; import com.facebook.presto.spi.block.BlockCursor; @@ -62,7 +62,7 @@ public int getFixedSize() } @Override - public Object getObjectValue(Session session, Slice slice, int offset) + public Object getObjectValue(ConnectorSession session, Slice slice, int offset) { return new SqlTimestampWithTimeZone(slice.getLong(offset)); } diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/type/VarcharType.java b/presto-spi/src/main/java/com/facebook/presto/spi/type/VarcharType.java index e8319dd5b746..e195279767dc 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/type/VarcharType.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/type/VarcharType.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.type; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockBuilderStatus; import com.facebook.presto.spi.block.BlockCursor; @@ -57,7 +57,7 @@ public Class getJavaType() } @Override - public Object getObjectValue(Session session, Slice slice, int offset) + public Object getObjectValue(ConnectorSession session, Slice slice, int offset) { return slice.toString(offset + SIZE_OF_INT, getValueSize(slice, offset), UTF_8); } diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/type/VariableWidthType.java b/presto-spi/src/main/java/com/facebook/presto/spi/type/VariableWidthType.java index c0326d7a8bf6..b45939e44a79 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/type/VariableWidthType.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/type/VariableWidthType.java @@ -13,7 +13,7 @@ */ package com.facebook.presto.spi.type; -import com.facebook.presto.spi.Session; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.block.BlockBuilder; import com.facebook.presto.spi.block.BlockCursor; import io.airlift.slice.Slice; @@ -30,7 +30,7 @@ public interface VariableWidthType * at the specified offset. This is the value returned to the user via the * REST endpoint and therefore must be JSON serializable. */ - Object getObjectValue(Session session, Slice slice, int offset); + Object getObjectValue(ConnectorSession session, Slice slice, int offset); /** * Gets the length of the value at the specified offset in the specified slice. diff --git a/presto-tpch/src/main/java/com/facebook/presto/tpch/TpchMetadata.java b/presto-tpch/src/main/java/com/facebook/presto/tpch/TpchMetadata.java index a3f1f74bd32a..91f68a9e6fb3 100644 --- a/presto-tpch/src/main/java/com/facebook/presto/tpch/TpchMetadata.java +++ b/presto-tpch/src/main/java/com/facebook/presto/tpch/TpchMetadata.java @@ -15,12 +15,12 @@ import com.facebook.presto.spi.ConnectorColumnHandle; import com.facebook.presto.spi.ColumnMetadata; +import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.ConnectorTableHandle; import com.facebook.presto.spi.ConnectorTableMetadata; import com.facebook.presto.spi.ReadOnlyConnectorMetadata; import com.facebook.presto.spi.SchemaTableName; import com.facebook.presto.spi.SchemaTablePrefix; -import com.facebook.presto.spi.Session; import com.facebook.presto.spi.type.Type; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; @@ -60,13 +60,13 @@ public TpchMetadata(String connectorId) } @Override - public List listSchemaNames(Session session) + public List listSchemaNames(ConnectorSession session) { return ImmutableList.of(TINY_SCHEMA_NAME, "sf1", "sf100", "sf300", "sf1000", "sf3000", "sf10000", "sf30000", "sf100000"); } @Override - public TpchTableHandle getTableHandle(Session session, SchemaTableName tableName) + public TpchTableHandle getTableHandle(ConnectorSession session, SchemaTableName tableName) { checkNotNull(tableName, "tableName is null"); if (!tableNames.contains(tableName.getTableName())) { @@ -130,7 +130,7 @@ public ConnectorColumnHandle getSampleWeightColumnHandle(ConnectorTableHandle ta } @Override - public Map> listTableColumns(Session session, SchemaTablePrefix prefix) + public Map> listTableColumns(ConnectorSession session, SchemaTablePrefix prefix) { ImmutableMap.Builder> tableColumns = ImmutableMap.builder(); for (String schemaName : getSchemaNames(session, prefix.getSchemaName())) { @@ -160,7 +160,7 @@ public ColumnMetadata getColumnMetadata(ConnectorTableHandle tableHandle, Connec } @Override - public List listTables(Session session, String schemaNameOrNull) + public List listTables(ConnectorSession session, String schemaNameOrNull) { ImmutableList.Builder builder = ImmutableList.builder(); for (String schemaName : getSchemaNames(session, schemaNameOrNull)) { @@ -171,7 +171,7 @@ public List listTables(Session session, String schemaNameOrNull return builder.build(); } - private List getSchemaNames(Session session, String schemaNameOrNull) + private List getSchemaNames(ConnectorSession session, String schemaNameOrNull) { List schemaNames; if (schemaNameOrNull == null) {