diff --git a/presto-main/src/main/java/com/facebook/presto/Session.java b/presto-main/src/main/java/com/facebook/presto/Session.java index c67959db91769..8ccca2db4d3de 100644 --- a/presto-main/src/main/java/com/facebook/presto/Session.java +++ b/presto-main/src/main/java/com/facebook/presto/Session.java @@ -803,6 +803,11 @@ public Identity getIdentity() return this.identity; } + public Optional getSchema() + { + return Optional.ofNullable(this.schema); + } + public Optional getSource() { return Optional.ofNullable(this.source); diff --git a/presto-main/src/main/java/com/facebook/presto/server/SessionPropertyDefaults.java b/presto-main/src/main/java/com/facebook/presto/server/SessionPropertyDefaults.java index 71a778646f2a8..aa6491b04e775 100644 --- a/presto-main/src/main/java/com/facebook/presto/server/SessionPropertyDefaults.java +++ b/presto-main/src/main/java/com/facebook/presto/server/SessionPropertyDefaults.java @@ -118,6 +118,7 @@ public void applyDefaultProperties( SessionConfigurationContext context = new SessionConfigurationContext( sessionBuilder.getIdentity().getUser(), + sessionBuilder.getSchema(), sessionBuilder.getSource(), sessionBuilder.getClientTags(), queryType, diff --git a/presto-session-property-managers/src/test/java/com/facebook/presto/session/TestFileSessionPropertyManager.java b/presto-session-property-managers/src/test/java/com/facebook/presto/session/TestFileSessionPropertyManager.java index 02278e7a6cef8..efd2c0f6b6411 100644 --- a/presto-session-property-managers/src/test/java/com/facebook/presto/session/TestFileSessionPropertyManager.java +++ b/presto-session-property-managers/src/test/java/com/facebook/presto/session/TestFileSessionPropertyManager.java @@ -40,6 +40,7 @@ public class TestFileSessionPropertyManager { private static final SessionConfigurationContext CONTEXT = new SessionConfigurationContext( "user", + Optional.empty(), Optional.of("source"), ImmutableSet.of("tag1", "tag2"), Optional.of(QueryType.DATA_DEFINITION.toString()), diff --git a/presto-spi/src/main/java/com/facebook/presto/spi/session/SessionConfigurationContext.java b/presto-spi/src/main/java/com/facebook/presto/spi/session/SessionConfigurationContext.java index 9d33c4b5f00a3..c57a1750f5152 100644 --- a/presto-spi/src/main/java/com/facebook/presto/spi/session/SessionConfigurationContext.java +++ b/presto-spi/src/main/java/com/facebook/presto/spi/session/SessionConfigurationContext.java @@ -25,6 +25,7 @@ public final class SessionConfigurationContext { private final String user; + private final Optional schema; private final Optional source; private final Set clientTags; private final Optional queryType; @@ -34,6 +35,7 @@ public final class SessionConfigurationContext public SessionConfigurationContext( String user, + Optional schema, Optional source, Set clientTags, Optional queryType, @@ -42,6 +44,7 @@ public SessionConfigurationContext( String prestoServerVersion) { this.user = requireNonNull(user, "user is null"); + this.schema = requireNonNull(schema, "schema is null"); this.source = requireNonNull(source, "source is null"); this.clientTags = unmodifiableSet(new HashSet<>(requireNonNull(clientTags, "clientTags is null"))); this.queryType = requireNonNull(queryType, "queryType is null"); @@ -55,6 +58,11 @@ public String getUser() return user; } + public Optional getSchema() + { + return schema; + } + public Optional getSource() { return source;