From 96b346c5072c7c7ca9f0b894f6ef5c957076dcf2 Mon Sep 17 00:00:00 2001 From: Gian Merlino Date: Tue, 13 Mar 2018 14:17:49 -0700 Subject: [PATCH] SQL: Remove unused escalator, authConfig from various classes. DruidPlanner.plan is responsible for checking authorization, so these objects weren't needed in as many places as they were injected. --- .../druid/benchmark/query/SqlBenchmark.java | 8 ++-- .../sql/QuantileSqlAggregatorTest.java | 18 +++++--- .../druid/server/security/NoopEscalator.java | 28 +++++++++++++ .../druid/server/security/EscalatorTest.java | 41 +++++++++++++++++++ .../java/io/druid/sql/avatica/DruidMeta.java | 7 +--- .../io/druid/sql/avatica/DruidStatement.java | 2 +- .../sql/calcite/planner/DruidPlanner.java | 37 +++++++++++------ .../sql/calcite/planner/PlannerFactory.java | 12 +----- .../sql/calcite/view/DruidViewMacro.java | 9 +++- .../calcite/view/InProcessViewManager.java | 11 +++-- .../java/io/druid/sql/http/SqlResource.java | 2 +- .../sql/avatica/DruidAvaticaHandlerTest.java | 8 ---- .../druid/sql/avatica/DruidStatementTest.java | 4 -- .../druid/sql/calcite/CalciteQueryTest.java | 7 +--- .../sql/calcite/http/SqlResourceTest.java | 3 -- 15 files changed, 132 insertions(+), 65 deletions(-) create mode 100644 server/src/test/java/io/druid/server/security/EscalatorTest.java diff --git a/benchmarks/src/main/java/io/druid/benchmark/query/SqlBenchmark.java b/benchmarks/src/main/java/io/druid/benchmark/query/SqlBenchmark.java index 0f4d6604282e..0eaa149bf594 100644 --- a/benchmarks/src/main/java/io/druid/benchmark/query/SqlBenchmark.java +++ b/benchmarks/src/main/java/io/druid/benchmark/query/SqlBenchmark.java @@ -37,7 +37,6 @@ import io.druid.query.dimension.DimensionSpec; import io.druid.query.groupby.GroupByQuery; import io.druid.segment.QueryableIndex; -import io.druid.server.security.AuthConfig; import io.druid.server.security.AuthTestUtils; import io.druid.server.security.NoopEscalator; import io.druid.sql.calcite.planner.DruidPlanner; @@ -118,9 +117,7 @@ public void setup() throws Exception CalciteTests.createOperatorTable(), CalciteTests.createExprMacroTable(), plannerConfig, - new AuthConfig(), AuthTestUtils.TEST_AUTHORIZER_MAPPER, - new NoopEscalator(), CalciteTests.getJsonMapper() ); groupByQuery = GroupByQuery @@ -182,7 +179,10 @@ public void queryNative(Blackhole blackhole) throws Exception public void queryPlanner(Blackhole blackhole) throws Exception { try (final DruidPlanner planner = plannerFactory.createPlanner(null)) { - final PlannerResult plannerResult = planner.plan(sqlQuery); + final PlannerResult plannerResult = planner.plan( + sqlQuery, + NoopEscalator.getInstance().createEscalatedAuthenticationResult() + ); final List results = plannerResult.run().toList(); blackhole.consume(results); } diff --git a/extensions-core/histogram/src/test/java/io/druid/query/aggregation/histogram/sql/QuantileSqlAggregatorTest.java b/extensions-core/histogram/src/test/java/io/druid/query/aggregation/histogram/sql/QuantileSqlAggregatorTest.java index 1ceab0e529ec..e78190cc942c 100644 --- a/extensions-core/histogram/src/test/java/io/druid/query/aggregation/histogram/sql/QuantileSqlAggregatorTest.java +++ b/extensions-core/histogram/src/test/java/io/druid/query/aggregation/histogram/sql/QuantileSqlAggregatorTest.java @@ -47,7 +47,6 @@ import io.druid.segment.incremental.IncrementalIndexSchema; import io.druid.segment.virtual.ExpressionVirtualColumn; import io.druid.segment.writeout.OffHeapMemorySegmentWriteOutMediumFactory; -import io.druid.server.security.AuthConfig; import io.druid.server.security.AuthTestUtils; import io.druid.server.security.NoopEscalator; import io.druid.sql.calcite.filtration.Filtration; @@ -137,9 +136,7 @@ public void setUp() throws Exception operatorTable, CalciteTests.createExprMacroTable(), plannerConfig, - new AuthConfig(), AuthTestUtils.TEST_AUTHORIZER_MAPPER, - new NoopEscalator(), CalciteTests.getJsonMapper() ); } @@ -167,7 +164,10 @@ public void testQuantileOnFloatAndLongs() throws Exception + "APPROX_QUANTILE(cnt, 0.5)\n" + "FROM foo"; - final PlannerResult plannerResult = planner.plan(sql); + final PlannerResult plannerResult = planner.plan( + sql, + NoopEscalator.getInstance().createEscalatedAuthenticationResult() + ); // Verify results final List results = plannerResult.run().toList(); @@ -249,7 +249,10 @@ public void testQuantileOnComplexColumn() throws Exception + "APPROX_QUANTILE(hist_m1, 0.999) FILTER(WHERE dim1 = 'abc')\n" + "FROM foo"; - final PlannerResult plannerResult = planner.plan(sql); + final PlannerResult plannerResult = planner.plan( + sql, + NoopEscalator.getInstance().createEscalatedAuthenticationResult() + ); // Verify results final List results = plannerResult.run().toList(); @@ -302,7 +305,10 @@ public void testQuantileOnInnerQuery() throws Exception final String sql = "SELECT AVG(x), APPROX_QUANTILE(x, 0.98)\n" + "FROM (SELECT dim2, SUM(m1) AS x FROM foo GROUP BY dim2)"; - final PlannerResult plannerResult = planner.plan(sql); + final PlannerResult plannerResult = planner.plan( + sql, + NoopEscalator.getInstance().createEscalatedAuthenticationResult() + ); // Verify results final List results = plannerResult.run().toList(); diff --git a/server/src/main/java/io/druid/server/security/NoopEscalator.java b/server/src/main/java/io/druid/server/security/NoopEscalator.java index 45f22deecc05..bcab5c092d5e 100644 --- a/server/src/main/java/io/druid/server/security/NoopEscalator.java +++ b/server/src/main/java/io/druid/server/security/NoopEscalator.java @@ -19,10 +19,19 @@ package io.druid.server.security; +import com.fasterxml.jackson.annotation.JsonCreator; import io.druid.java.util.http.client.HttpClient; public class NoopEscalator implements Escalator { + private static final NoopEscalator INSTANCE = new NoopEscalator(); + + @JsonCreator + public static NoopEscalator getInstance() + { + return INSTANCE; + } + @Override public HttpClient createEscalatedClient(HttpClient baseClient) { @@ -34,4 +43,23 @@ public AuthenticationResult createEscalatedAuthenticationResult() { return AllowAllAuthenticator.ALLOW_ALL_RESULT; } + + @Override + public boolean equals(final Object obj) + { + //noinspection ObjectEquality + return obj.getClass() == getClass(); + } + + @Override + public int hashCode() + { + return 0; + } + + @Override + public String toString() + { + return "NoopEscalator{}"; + } } diff --git a/server/src/test/java/io/druid/server/security/EscalatorTest.java b/server/src/test/java/io/druid/server/security/EscalatorTest.java new file mode 100644 index 000000000000..ad7b23203249 --- /dev/null +++ b/server/src/test/java/io/druid/server/security/EscalatorTest.java @@ -0,0 +1,41 @@ +/* + * Licensed to Metamarkets Group Inc. (Metamarkets) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. Metamarkets licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package io.druid.server.security; + +import com.fasterxml.jackson.databind.ObjectMapper; +import io.druid.segment.TestHelper; +import org.junit.Assert; +import org.junit.Test; + +public class EscalatorTest +{ + @Test + public void testSerde() throws Exception + { + final ObjectMapper objectMapper = TestHelper.makeJsonMapper(); + Assert.assertEquals( + NoopEscalator.getInstance(), + objectMapper.readValue( + objectMapper.writeValueAsString(NoopEscalator.getInstance()), + Escalator.class + ) + ); + } +} diff --git a/sql/src/main/java/io/druid/sql/avatica/DruidMeta.java b/sql/src/main/java/io/druid/sql/avatica/DruidMeta.java index eb1a32961565..05b92e4e97a6 100644 --- a/sql/src/main/java/io/druid/sql/avatica/DruidMeta.java +++ b/sql/src/main/java/io/druid/sql/avatica/DruidMeta.java @@ -34,7 +34,6 @@ import io.druid.java.util.common.ISE; import io.druid.java.util.common.StringUtils; import io.druid.java.util.common.logger.Logger; -import io.druid.server.security.AuthConfig; import io.druid.server.security.AuthenticationResult; import io.druid.server.security.Authenticator; import io.druid.server.security.AuthenticatorMapper; @@ -67,7 +66,6 @@ public class DruidMeta extends MetaImpl private final PlannerFactory plannerFactory; private final ScheduledExecutorService exec; private final AvaticaServerConfig config; - private final AuthConfig authConfig; private final List authenticators; // Used to track logical connections. @@ -81,14 +79,12 @@ public class DruidMeta extends MetaImpl public DruidMeta( final PlannerFactory plannerFactory, final AvaticaServerConfig config, - final AuthConfig authConfig, final Injector injector ) { super(null); this.plannerFactory = Preconditions.checkNotNull(plannerFactory, "plannerFactory"); this.config = config; - this.authConfig = authConfig; this.exec = Executors.newSingleThreadScheduledExecutor( new ThreadFactoryBuilder() .setNameFormat(StringUtils.format("DruidMeta@%s-ScheduledExecutor", Integer.toHexString(hashCode()))) @@ -183,7 +179,8 @@ public ExecuteResult prepareAndExecute( if (authenticationResult == null) { throw new ForbiddenException("Authentication failed."); } - final Signature signature = druidStatement.prepare(plannerFactory, sql, maxRowCount, authenticationResult).getSignature(); + final Signature signature = druidStatement.prepare(plannerFactory, sql, maxRowCount, authenticationResult) + .getSignature(); final Frame firstFrame = druidStatement.execute() .nextFrame( DruidStatement.START_OFFSET, diff --git a/sql/src/main/java/io/druid/sql/avatica/DruidStatement.java b/sql/src/main/java/io/druid/sql/avatica/DruidStatement.java index b06d827c2ba5..bb29c04a29d8 100644 --- a/sql/src/main/java/io/druid/sql/avatica/DruidStatement.java +++ b/sql/src/main/java/io/druid/sql/avatica/DruidStatement.java @@ -162,7 +162,7 @@ public DruidStatement prepare( try (final DruidPlanner planner = plannerFactory.createPlanner(queryContext)) { synchronized (lock) { ensure(State.NEW); - this.plannerResult = planner.plan(query, null, authenticationResult); + this.plannerResult = planner.plan(query, authenticationResult); this.maxRowCount = maxRowCount; this.query = query; this.signature = Meta.Signature.create( diff --git a/sql/src/main/java/io/druid/sql/calcite/planner/DruidPlanner.java b/sql/src/main/java/io/druid/sql/calcite/planner/DruidPlanner.java index 4a9feae0cd27..b6e02c22ec4c 100644 --- a/sql/src/main/java/io/druid/sql/calcite/planner/DruidPlanner.java +++ b/sql/src/main/java/io/druid/sql/calcite/planner/DruidPlanner.java @@ -20,11 +20,13 @@ package io.druid.sql.calcite.planner; import com.google.common.base.Function; +import com.google.common.base.Preconditions; import com.google.common.base.Supplier; import com.google.common.base.Suppliers; import com.google.common.collect.ImmutableList; import com.google.common.collect.Iterables; import com.google.common.collect.Sets; +import io.druid.java.util.common.ISE; import io.druid.java.util.common.guava.Sequence; import io.druid.java.util.common.guava.Sequences; import io.druid.server.security.Access; @@ -32,7 +34,6 @@ import io.druid.server.security.AuthenticationResult; import io.druid.server.security.AuthorizationUtils; import io.druid.server.security.AuthorizerMapper; -import io.druid.server.security.Escalator; import io.druid.server.security.ForbiddenException; import io.druid.sql.calcite.rel.DruidConvention; import io.druid.sql.calcite.rel.DruidRel; @@ -61,6 +62,7 @@ import org.apache.calcite.tools.ValidationException; import org.apache.calcite.util.Pair; +import javax.annotation.Nullable; import javax.servlet.http.HttpServletRequest; import java.io.Closeable; import java.util.ArrayList; @@ -72,33 +74,44 @@ public class DruidPlanner implements Closeable private final Planner planner; private final PlannerContext plannerContext; private final AuthorizerMapper authorizerMapper; - private final Escalator escalator; - public DruidPlanner( + DruidPlanner( final Planner planner, final PlannerContext plannerContext, - final AuthorizerMapper authorizerMapper, - final Escalator escalator + final AuthorizerMapper authorizerMapper ) { this.planner = planner; this.plannerContext = plannerContext; this.authorizerMapper = authorizerMapper; - this.escalator = escalator; } - public PlannerResult plan(final String sql) throws SqlParseException, ValidationException, RelConversionException + public PlannerResult plan( + final String sql, + final HttpServletRequest request + ) throws SqlParseException, ValidationException, RelConversionException, ForbiddenException { - AuthenticationResult authenticationResult = escalator.createEscalatedAuthenticationResult(); - return plan(sql, null, authenticationResult); + return plan(sql, Preconditions.checkNotNull(request, "request"), null); } public PlannerResult plan( final String sql, - final HttpServletRequest request, final AuthenticationResult authenticationResult ) throws SqlParseException, ValidationException, RelConversionException, ForbiddenException { + return plan(sql, null, Preconditions.checkNotNull(authenticationResult, "authenticationResult")); + } + + private PlannerResult plan( + final String sql, + @Nullable final HttpServletRequest request, + @Nullable final AuthenticationResult authenticationResult + ) throws SqlParseException, ValidationException, RelConversionException, ForbiddenException + { + if (authenticationResult != null && request != null) { + throw new ISE("Cannot specify both 'request' and 'authenticationResult'"); + } + SqlExplain explain = null; SqlNode parsed = planner.parse(sql); if (parsed.getKind() == SqlKind.EXPLAIN) { @@ -137,8 +150,8 @@ public void close() private PlannerResult planWithDruidConvention( final SqlExplain explain, final RelRoot root, - final HttpServletRequest request, - final AuthenticationResult authenticationResult + @Nullable final HttpServletRequest request, + @Nullable final AuthenticationResult authenticationResult ) throws RelConversionException, ForbiddenException { final DruidRel druidRel = (DruidRel) planner.transform( diff --git a/sql/src/main/java/io/druid/sql/calcite/planner/PlannerFactory.java b/sql/src/main/java/io/druid/sql/calcite/planner/PlannerFactory.java index 843003c0b45f..a5d8627cadac 100644 --- a/sql/src/main/java/io/druid/sql/calcite/planner/PlannerFactory.java +++ b/sql/src/main/java/io/druid/sql/calcite/planner/PlannerFactory.java @@ -24,9 +24,7 @@ import io.druid.guice.annotations.Json; import io.druid.math.expr.ExprMacroTable; import io.druid.server.QueryLifecycleFactory; -import io.druid.server.security.AuthConfig; import io.druid.server.security.AuthorizerMapper; -import io.druid.server.security.Escalator; import io.druid.sql.calcite.rel.QueryMaker; import io.druid.sql.calcite.schema.DruidSchema; import org.apache.calcite.avatica.util.Casing; @@ -64,10 +62,7 @@ public class PlannerFactory private final ExprMacroTable macroTable; private final PlannerConfig plannerConfig; private final ObjectMapper jsonMapper; - - private final AuthConfig authConfig; private final AuthorizerMapper authorizerMapper; - private final Escalator escalator; @Inject public PlannerFactory( @@ -76,9 +71,7 @@ public PlannerFactory( final DruidOperatorTable operatorTable, final ExprMacroTable macroTable, final PlannerConfig plannerConfig, - final AuthConfig authConfig, final AuthorizerMapper authorizerMapper, - final Escalator escalator, final @Json ObjectMapper jsonMapper ) { @@ -87,9 +80,7 @@ public PlannerFactory( this.operatorTable = operatorTable; this.macroTable = macroTable; this.plannerConfig = plannerConfig; - this.authConfig = authConfig; this.authorizerMapper = authorizerMapper; - this.escalator = escalator; this.jsonMapper = jsonMapper; } @@ -151,8 +142,7 @@ public SqlConformance conformance() return new DruidPlanner( Frameworks.getPlanner(frameworkConfig), plannerContext, - authorizerMapper, - escalator + authorizerMapper ); } } diff --git a/sql/src/main/java/io/druid/sql/calcite/view/DruidViewMacro.java b/sql/src/main/java/io/druid/sql/calcite/view/DruidViewMacro.java index c6c6ff5c380a..f7007b0c370d 100644 --- a/sql/src/main/java/io/druid/sql/calcite/view/DruidViewMacro.java +++ b/sql/src/main/java/io/druid/sql/calcite/view/DruidViewMacro.java @@ -21,6 +21,7 @@ import com.google.common.base.Throwables; import com.google.common.collect.ImmutableList; +import io.druid.server.security.Escalator; import io.druid.sql.calcite.planner.DruidPlanner; import io.druid.sql.calcite.planner.PlannerFactory; import io.druid.sql.calcite.schema.DruidSchema; @@ -36,11 +37,13 @@ public class DruidViewMacro implements TableMacro { private final PlannerFactory plannerFactory; + private final Escalator escalator; private final String viewSql; - public DruidViewMacro(final PlannerFactory plannerFactory, final String viewSql) + public DruidViewMacro(final PlannerFactory plannerFactory, final Escalator escalator, final String viewSql) { this.plannerFactory = plannerFactory; + this.escalator = escalator; this.viewSql = viewSql; } @@ -49,7 +52,9 @@ public TranslatableTable apply(final List arguments) { final RelDataType rowType; try (final DruidPlanner planner = plannerFactory.createPlanner(null)) { - rowType = planner.plan(viewSql).rowType(); + // Using an escalator here is a hack, but it's currently needed to get the row type. Ideally, some + // later refactoring would make this unnecessary, since there is no actual query going out herem. + rowType = planner.plan(viewSql, escalator.createEscalatedAuthenticationResult()).rowType(); } catch (Exception e) { throw Throwables.propagate(e); diff --git a/sql/src/main/java/io/druid/sql/calcite/view/InProcessViewManager.java b/sql/src/main/java/io/druid/sql/calcite/view/InProcessViewManager.java index d569e4c2fc13..a698df253e7d 100644 --- a/sql/src/main/java/io/druid/sql/calcite/view/InProcessViewManager.java +++ b/sql/src/main/java/io/druid/sql/calcite/view/InProcessViewManager.java @@ -21,6 +21,7 @@ import com.google.inject.Inject; import io.druid.java.util.common.ISE; +import io.druid.server.security.Escalator; import io.druid.sql.calcite.planner.PlannerFactory; import org.apache.calcite.schema.TableMacro; @@ -35,17 +36,21 @@ public class InProcessViewManager implements ViewManager { private final ConcurrentMap views; + private final Escalator escalator; @Inject - public InProcessViewManager() + public InProcessViewManager( + final Escalator escalator + ) { this.views = new ConcurrentHashMap<>(); + this.escalator = escalator; } @Override public void createView(final PlannerFactory plannerFactory, final String viewName, final String viewSql) { - final TableMacro oldValue = views.putIfAbsent(viewName, new DruidViewMacro(plannerFactory, viewSql)); + final TableMacro oldValue = views.putIfAbsent(viewName, new DruidViewMacro(plannerFactory, escalator, viewSql)); if (oldValue != null) { throw new ISE("View[%s] already exists", viewName); } @@ -54,7 +59,7 @@ public void createView(final PlannerFactory plannerFactory, final String viewNam @Override public void alterView(final PlannerFactory plannerFactory, final String viewName, final String viewSql) { - final TableMacro oldValue = views.replace(viewName, new DruidViewMacro(plannerFactory, viewSql)); + final TableMacro oldValue = views.replace(viewName, new DruidViewMacro(plannerFactory, escalator, viewSql)); if (oldValue != null) { throw new ISE("View[%s] does not exist", viewName); } diff --git a/sql/src/main/java/io/druid/sql/http/SqlResource.java b/sql/src/main/java/io/druid/sql/http/SqlResource.java index dd73cd44c375..8364ca01966e 100644 --- a/sql/src/main/java/io/druid/sql/http/SqlResource.java +++ b/sql/src/main/java/io/druid/sql/http/SqlResource.java @@ -85,7 +85,7 @@ public Response doPost( final DateTimeZone timeZone; try (final DruidPlanner planner = plannerFactory.createPlanner(sqlQuery.getContext())) { - plannerResult = planner.plan(sqlQuery.getQuery(), req, null); + plannerResult = planner.plan(sqlQuery.getQuery(), req); timeZone = planner.getPlannerContext().getTimeZone(); // Remember which columns are time-typed, so we can emit ISO8601 instead of millis values. diff --git a/sql/src/test/java/io/druid/sql/avatica/DruidAvaticaHandlerTest.java b/sql/src/test/java/io/druid/sql/avatica/DruidAvaticaHandlerTest.java index 4d89fd9170a7..1637369d0b99 100644 --- a/sql/src/test/java/io/druid/sql/avatica/DruidAvaticaHandlerTest.java +++ b/sql/src/test/java/io/druid/sql/avatica/DruidAvaticaHandlerTest.java @@ -41,12 +41,10 @@ import io.druid.java.util.common.StringUtils; import io.druid.math.expr.ExprMacroTable; import io.druid.server.DruidNode; -import io.druid.server.security.AuthConfig; import io.druid.server.security.AuthTestUtils; import io.druid.server.security.AuthenticatorMapper; import io.druid.server.security.AuthorizerMapper; import io.druid.server.security.Escalator; -import io.druid.server.security.NoopEscalator; import io.druid.sql.calcite.planner.Calcites; import io.druid.sql.calcite.planner.DruidOperatorTable; import io.druid.sql.calcite.planner.PlannerConfig; @@ -160,13 +158,10 @@ public void configure(Binder binder) operatorTable, macroTable, plannerConfig, - new AuthConfig(), CalciteTests.TEST_AUTHORIZER_MAPPER, - CalciteTests.TEST_AUTHENTICATOR_ESCALATOR, CalciteTests.getJsonMapper() ), AVATICA_CONFIG, - new AuthConfig(), injector ); final DruidAvaticaHandler handler = new DruidAvaticaHandler( @@ -744,13 +739,10 @@ public int getMaxRowsPerFrame() operatorTable, macroTable, plannerConfig, - new AuthConfig(), AuthTestUtils.TEST_AUTHORIZER_MAPPER, - new NoopEscalator(), CalciteTests.getJsonMapper() ), smallFrameConfig, - new AuthConfig(), injector ) { diff --git a/sql/src/test/java/io/druid/sql/avatica/DruidStatementTest.java b/sql/src/test/java/io/druid/sql/avatica/DruidStatementTest.java index f225a8d2f83c..5fe911ba3b25 100644 --- a/sql/src/test/java/io/druid/sql/avatica/DruidStatementTest.java +++ b/sql/src/test/java/io/druid/sql/avatica/DruidStatementTest.java @@ -24,9 +24,7 @@ import io.druid.java.util.common.DateTimes; import io.druid.math.expr.ExprMacroTable; import io.druid.server.security.AllowAllAuthenticator; -import io.druid.server.security.AuthConfig; import io.druid.server.security.AuthTestUtils; -import io.druid.server.security.NoopEscalator; import io.druid.sql.calcite.planner.DruidOperatorTable; import io.druid.sql.calcite.planner.PlannerConfig; import io.druid.sql.calcite.planner.PlannerFactory; @@ -74,9 +72,7 @@ public void setUp() throws Exception operatorTable, macroTable, plannerConfig, - new AuthConfig(), AuthTestUtils.TEST_AUTHORIZER_MAPPER, - new NoopEscalator(), CalciteTests.getJsonMapper() ); } diff --git a/sql/src/test/java/io/druid/sql/calcite/CalciteQueryTest.java b/sql/src/test/java/io/druid/sql/calcite/CalciteQueryTest.java index c575971b1699..432b1907391a 100644 --- a/sql/src/test/java/io/druid/sql/calcite/CalciteQueryTest.java +++ b/sql/src/test/java/io/druid/sql/calcite/CalciteQueryTest.java @@ -84,7 +84,6 @@ import io.druid.segment.column.Column; import io.druid.segment.column.ValueType; import io.druid.segment.virtual.ExpressionVirtualColumn; -import io.druid.server.security.AuthConfig; import io.druid.server.security.AuthenticationResult; import io.druid.server.security.ForbiddenException; import io.druid.sql.calcite.filtration.Filtration; @@ -6484,7 +6483,7 @@ private List getResults( final AuthenticationResult authenticationResult ) throws Exception { - final InProcessViewManager viewManager = new InProcessViewManager(); + final InProcessViewManager viewManager = new InProcessViewManager(CalciteTests.TEST_AUTHENTICATOR_ESCALATOR); final DruidSchema druidSchema = CalciteTests.createMockSchema(walker, plannerConfig, viewManager); final DruidOperatorTable operatorTable = CalciteTests.createOperatorTable(); final ExprMacroTable macroTable = CalciteTests.createExprMacroTable(); @@ -6495,9 +6494,7 @@ private List getResults( operatorTable, macroTable, plannerConfig, - new AuthConfig(), CalciteTests.TEST_AUTHORIZER_MAPPER, - CalciteTests.TEST_AUTHENTICATOR_ESCALATOR, CalciteTests.getJsonMapper() ); @@ -6515,7 +6512,7 @@ private List getResults( ); try (DruidPlanner planner = plannerFactory.createPlanner(queryContext)) { - final PlannerResult plan = planner.plan(sql, null, authenticationResult); + final PlannerResult plan = planner.plan(sql, authenticationResult); return plan.run().toList(); } } diff --git a/sql/src/test/java/io/druid/sql/calcite/http/SqlResourceTest.java b/sql/src/test/java/io/druid/sql/calcite/http/SqlResourceTest.java index 640d5e752e3f..809e758f0168 100644 --- a/sql/src/test/java/io/druid/sql/calcite/http/SqlResourceTest.java +++ b/sql/src/test/java/io/druid/sql/calcite/http/SqlResourceTest.java @@ -32,7 +32,6 @@ import io.druid.server.security.AllowAllAuthenticator; import io.druid.server.security.AuthConfig; import io.druid.server.security.AuthTestUtils; -import io.druid.server.security.NoopEscalator; import io.druid.sql.calcite.planner.DruidOperatorTable; import io.druid.sql.calcite.planner.PlannerConfig; import io.druid.sql.calcite.planner.PlannerContext; @@ -108,9 +107,7 @@ public void setUp() throws Exception operatorTable, macroTable, plannerConfig, - new AuthConfig(), AuthTestUtils.TEST_AUTHORIZER_MAPPER, - new NoopEscalator(), CalciteTests.getJsonMapper() ) );