You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by da...@apache.org on 2018/09/14 02:48:34 UTC

lucene-solr:jira/http2: Workaround for HADOOP-15681

Repository: lucene-solr
Updated Branches:
  refs/heads/jira/http2 1976b8f5f -> 802f36786


Workaround for HADOOP-15681


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/802f3678
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/802f3678
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/802f3678

Branch: refs/heads/jira/http2
Commit: 802f36786dc4a3a60c239649676da7c87d823854
Parents: 1976b8f
Author: Cao Manh Dat <da...@apache.org>
Authored: Fri Sep 14 09:48:26 2018 +0700
Committer: Cao Manh Dat <da...@apache.org>
Committed: Fri Sep 14 09:48:26 2018 +0700

----------------------------------------------------------------------
 .../apache/solr/security/DelegationTokenKerberosFilter.java  | 5 +++++
 .../src/java/org/apache/solr/security/HadoopAuthFilter.java  | 5 +++++
 .../src/java/org/apache/solr/security/KerberosFilter.java    | 8 +++++++-
 .../src/test/org/apache/solr/cloud/KerberosTestServices.java | 4 ++--
 4 files changed, 19 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/802f3678/solr/core/src/java/org/apache/solr/security/DelegationTokenKerberosFilter.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/security/DelegationTokenKerberosFilter.java b/solr/core/src/java/org/apache/solr/security/DelegationTokenKerberosFilter.java
index ce3544c..8a12168 100644
--- a/solr/core/src/java/org/apache/solr/security/DelegationTokenKerberosFilter.java
+++ b/solr/core/src/java/org/apache/solr/security/DelegationTokenKerberosFilter.java
@@ -21,6 +21,7 @@ import java.lang.invoke.MethodHandles;
 import java.util.Enumeration;
 import java.util.LinkedList;
 import java.util.List;
+import java.util.Locale;
 
 import javax.servlet.FilterChain;
 import javax.servlet.FilterConfig;
@@ -61,6 +62,7 @@ public class DelegationTokenKerberosFilter extends DelegationTokenAuthentication
   private static final Logger log = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
 
   private CuratorFramework curatorFramework;
+  private final Locale defaultLocale = Locale.getDefault();
 
   @Override
   public void init(FilterConfig conf) throws ServletException {
@@ -118,6 +120,7 @@ public class DelegationTokenKerberosFilter extends DelegationTokenAuthentication
       @Override
       public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse)
           throws IOException, ServletException {
+        Locale.setDefault(defaultLocale);
         HttpServletRequest httpRequest = (HttpServletRequest) servletRequest;
 
         UserGroupInformation ugi = HttpUserGroupInformation.get();
@@ -131,6 +134,8 @@ public class DelegationTokenKerberosFilter extends DelegationTokenAuthentication
       }
     };
 
+    // A hack until HADOOP-15681 get committed
+    Locale.setDefault(Locale.US);
     super.doFilter(requestNonNullQueryString, response, filterChainWrapper);
   }
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/802f3678/solr/core/src/java/org/apache/solr/security/HadoopAuthFilter.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/security/HadoopAuthFilter.java b/solr/core/src/java/org/apache/solr/security/HadoopAuthFilter.java
index 205becc..2706a25 100644
--- a/solr/core/src/java/org/apache/solr/security/HadoopAuthFilter.java
+++ b/solr/core/src/java/org/apache/solr/security/HadoopAuthFilter.java
@@ -19,6 +19,7 @@ package org.apache.solr.security;
 import java.io.IOException;
 import java.util.LinkedList;
 import java.util.List;
+import java.util.Locale;
 
 import javax.servlet.FilterChain;
 import javax.servlet.FilterConfig;
@@ -58,6 +59,7 @@ public class HadoopAuthFilter extends DelegationTokenAuthenticationFilter {
   static final String DELEGATION_TOKEN_ZK_CLIENT = "solr.kerberos.delegation.token.zk.client";
 
   private CuratorFramework curatorFramework;
+  private final Locale defaultLocale = Locale.getDefault();
 
   @Override
   public void init(FilterConfig conf) throws ServletException {
@@ -94,6 +96,7 @@ public class HadoopAuthFilter extends DelegationTokenAuthenticationFilter {
       @Override
       public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse)
           throws IOException, ServletException {
+        Locale.setDefault(defaultLocale);
         HttpServletRequest httpRequest = (HttpServletRequest) servletRequest;
 
         UserGroupInformation ugi = HttpUserGroupInformation.get();
@@ -107,6 +110,8 @@ public class HadoopAuthFilter extends DelegationTokenAuthenticationFilter {
       }
     };
 
+    // A hack until HADOOP-15681 get committed
+    Locale.setDefault(Locale.US);
     super.doFilter(requestNonNullQueryString, response, filterChainWrapper);
   }
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/802f3678/solr/core/src/java/org/apache/solr/security/KerberosFilter.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/security/KerberosFilter.java b/solr/core/src/java/org/apache/solr/security/KerberosFilter.java
index d725d09..8f97695 100644
--- a/solr/core/src/java/org/apache/solr/security/KerberosFilter.java
+++ b/solr/core/src/java/org/apache/solr/security/KerberosFilter.java
@@ -17,6 +17,7 @@
 package org.apache.solr.security;
 
 import java.io.IOException;
+import java.util.Locale;
 
 import javax.servlet.FilterChain;
 import javax.servlet.FilterConfig;
@@ -29,7 +30,9 @@ import org.apache.hadoop.security.authentication.server.AuthenticationFilter;
 import org.apache.hadoop.security.authentication.server.AuthenticationHandler;
 
 public class KerberosFilter extends AuthenticationFilter {
-  
+
+  private final Locale defaultLocale = Locale.getDefault();
+
   @Override
   public void init(FilterConfig conf) throws ServletException {
     super.init(conf);
@@ -51,12 +54,15 @@ public class KerberosFilter extends AuthenticationFilter {
   @Override
   protected void doFilter(FilterChain filterChain, HttpServletRequest request,
       HttpServletResponse response) throws IOException, ServletException {
+    Locale.setDefault(defaultLocale);
     super.doFilter(filterChain, request, response);
   }
   
   @Override
   public void doFilter(ServletRequest request, ServletResponse response,
       FilterChain filterChain) throws IOException, ServletException {
+    // A hack until HADOOP-15681 get committed
+    Locale.setDefault(Locale.US);
     super.doFilter(request, response, filterChain);
   }
 }

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/802f3678/solr/core/src/test/org/apache/solr/cloud/KerberosTestServices.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/cloud/KerberosTestServices.java b/solr/core/src/test/org/apache/solr/cloud/KerberosTestServices.java
index f6a0241..ab8761a 100644
--- a/solr/core/src/test/org/apache/solr/cloud/KerberosTestServices.java
+++ b/solr/core/src/test/org/apache/solr/cloud/KerberosTestServices.java
@@ -52,9 +52,9 @@ public class KerberosTestServices {
   }
 
   public void start() throws Exception {
-    //TODO nocommit, since some language may contains unicode character their week days, therefore hpack can't encrypt it
-//    if (brokenLanguagesWithMiniKdc.contains(Locale.getDefault().getLanguage()))
+    if (brokenLanguagesWithMiniKdc.contains(Locale.getDefault().getLanguage())) {
       Locale.setDefault(Locale.US);
+    }
 
     if (kdc != null) kdc.start();
     Configuration.setConfiguration(jaasConfiguration);