You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@polaris.apache.org by sn...@apache.org on 2025/01/07 09:22:44 UTC

(polaris) branch main updated: Remove map of parameters from `CallContextResolver` and `RealmContextResolver` (#617)

This is an automated email from the ASF dual-hosted git repository.

snazy pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/polaris.git


The following commit(s) were added to refs/heads/main by this push:
     new 84b61db6 Remove map of parameters from `CallContextResolver` and `RealmContextResolver` (#617)
84b61db6 is described below

commit 84b61db6fd8b88da3a042067577156749017a09d
Author: Robert Stupp <sn...@snazy.de>
AuthorDate: Tue Jan 7 10:22:40 2025 +0100

    Remove map of parameters from `CallContextResolver` and `RealmContextResolver` (#617)
    
    No implementation uses the `queryParams` `Map`, the code to build this parameter is also wrong, see #616
    
    Fixes #616
---
 .../polaris/service/dropwizard/PolarisApplication.java       |  6 ------
 .../service/dropwizard/test/PolarisConnectionExtension.java  |  3 +--
 .../apache/polaris/service/context/CallContextResolver.java  |  6 +-----
 .../polaris/service/context/DefaultCallContextResolver.java  |  7 +------
 .../polaris/service/context/DefaultRealmContextResolver.java | 12 ++----------
 .../apache/polaris/service/context/RealmContextResolver.java |  6 +-----
 6 files changed, 6 insertions(+), 34 deletions(-)

diff --git a/dropwizard/service/src/main/java/org/apache/polaris/service/dropwizard/PolarisApplication.java b/dropwizard/service/src/main/java/org/apache/polaris/service/dropwizard/PolarisApplication.java
index 29afa31a..98c852a3 100644
--- a/dropwizard/service/src/main/java/org/apache/polaris/service/dropwizard/PolarisApplication.java
+++ b/dropwizard/service/src/main/java/org/apache/polaris/service/dropwizard/PolarisApplication.java
@@ -502,18 +502,12 @@ public class PolarisApplication extends Application<PolarisApplicationConfig> {
               httpRequest.getRequestURL().toString(),
               httpRequest.getMethod(),
               httpRequest.getRequestURI().substring(1),
-              request.getParameterMap().entrySet().stream()
-                  .collect(
-                      Collectors.toMap(Map.Entry::getKey, (e) -> ((String[]) e.getValue())[0])),
               headers);
       CallContext currentCallContext =
           callContextResolver.resolveCallContext(
               currentRealmContext,
               httpRequest.getMethod(),
               httpRequest.getRequestURI().substring(1),
-              request.getParameterMap().entrySet().stream()
-                  .collect(
-                      Collectors.toMap(Map.Entry::getKey, (e) -> ((String[]) e.getValue())[0])),
               headers);
       CallContext.setCurrentContext(currentCallContext);
       try (MDC.MDCCloseable ignored1 =
diff --git a/dropwizard/service/src/test/java/org/apache/polaris/service/dropwizard/test/PolarisConnectionExtension.java b/dropwizard/service/src/test/java/org/apache/polaris/service/dropwizard/test/PolarisConnectionExtension.java
index e11cc19b..a7d08d1c 100644
--- a/dropwizard/service/src/test/java/org/apache/polaris/service/dropwizard/test/PolarisConnectionExtension.java
+++ b/dropwizard/service/src/test/java/org/apache/polaris/service/dropwizard/test/PolarisConnectionExtension.java
@@ -99,12 +99,11 @@ public class PolarisConnectionExtension
                   String.format("%s://%s", testEnvUri.getScheme(), testEnvUri.getHost()),
                   "GET",
                   path,
-                  Map.of(),
                   Map.of(REALM_PROPERTY_KEY, realm));
       CallContext ctx =
           config
               .findService(CallContextResolver.class)
-              .resolveCallContext(realmContext, "GET", path, Map.of(), Map.of());
+              .resolveCallContext(realmContext, "GET", path, Map.of());
       CallContext.setCurrentContext(ctx);
       PolarisMetaStoreManager metaStoreManager =
           metaStoreManagerFactory.getOrCreateMetaStoreManager(ctx.getRealmContext());
diff --git a/service/common/src/main/java/org/apache/polaris/service/context/CallContextResolver.java b/service/common/src/main/java/org/apache/polaris/service/context/CallContextResolver.java
index 71b21d0f..16b8c180 100644
--- a/service/common/src/main/java/org/apache/polaris/service/context/CallContextResolver.java
+++ b/service/common/src/main/java/org/apache/polaris/service/context/CallContextResolver.java
@@ -25,9 +25,5 @@ import org.apache.polaris.core.context.RealmContext;
 /** Uses the resolved RealmContext to further resolve elements of the CallContext. */
 public interface CallContextResolver {
   CallContext resolveCallContext(
-      RealmContext realmContext,
-      String method,
-      String path,
-      Map<String, String> queryParams,
-      Map<String, String> headers);
+      RealmContext realmContext, String method, String path, Map<String, String> headers);
 }
diff --git a/service/common/src/main/java/org/apache/polaris/service/context/DefaultCallContextResolver.java b/service/common/src/main/java/org/apache/polaris/service/context/DefaultCallContextResolver.java
index d4396686..cbaaabf3 100644
--- a/service/common/src/main/java/org/apache/polaris/service/context/DefaultCallContextResolver.java
+++ b/service/common/src/main/java/org/apache/polaris/service/context/DefaultCallContextResolver.java
@@ -49,17 +49,12 @@ public class DefaultCallContextResolver implements CallContextResolver {
 
   @Override
   public CallContext resolveCallContext(
-      final RealmContext realmContext,
-      String method,
-      String path,
-      Map<String, String> queryParams,
-      Map<String, String> headers) {
+      final RealmContext realmContext, String method, String path, Map<String, String> headers) {
     LOGGER
         .atDebug()
         .addKeyValue("realmContext", realmContext.getRealmIdentifier())
         .addKeyValue("method", method)
         .addKeyValue("path", path)
-        .addKeyValue("queryParams", queryParams)
         .addKeyValue("headers", headers)
         .log("Resolving CallContext");
 
diff --git a/service/common/src/main/java/org/apache/polaris/service/context/DefaultRealmContextResolver.java b/service/common/src/main/java/org/apache/polaris/service/context/DefaultRealmContextResolver.java
index 6e81a120..9b4f40eb 100644
--- a/service/common/src/main/java/org/apache/polaris/service/context/DefaultRealmContextResolver.java
+++ b/service/common/src/main/java/org/apache/polaris/service/context/DefaultRealmContextResolver.java
@@ -42,20 +42,12 @@ public class DefaultRealmContextResolver implements RealmContextResolver {
 
   @Override
   public RealmContext resolveRealmContext(
-      String requestURL,
-      String method,
-      String path,
-      Map<String, String> queryParams,
-      Map<String, String> headers) {
+      String requestURL, String method, String path, Map<String, String> headers) {
     // Since this default resolver is strictly for use in test/dev environments, we'll consider
     // it safe to log all contents. Any "real" resolver used in a prod environment should make
     // sure to only log non-sensitive contents.
     LOGGER.debug(
-        "Resolving RealmContext for method: {}, path: {}, queryParams: {}, headers: {}",
-        method,
-        path,
-        queryParams,
-        headers);
+        "Resolving RealmContext for method: {}, path: {}, headers: {}", method, path, headers);
     final Map<String, String> parsedProperties = parseBearerTokenAsKvPairs(headers);
 
     if (!parsedProperties.containsKey(REALM_PROPERTY_KEY)
diff --git a/service/common/src/main/java/org/apache/polaris/service/context/RealmContextResolver.java b/service/common/src/main/java/org/apache/polaris/service/context/RealmContextResolver.java
index 66e0c99d..23a8b64e 100644
--- a/service/common/src/main/java/org/apache/polaris/service/context/RealmContextResolver.java
+++ b/service/common/src/main/java/org/apache/polaris/service/context/RealmContextResolver.java
@@ -24,11 +24,7 @@ import org.apache.polaris.core.context.RealmContext;
 public interface RealmContextResolver {
 
   RealmContext resolveRealmContext(
-      String requestURL,
-      String method,
-      String path,
-      Map<String, String> queryParams,
-      Map<String, String> headers);
+      String requestURL, String method, String path, Map<String, String> headers);
 
   void setDefaultRealm(String defaultRealm);