Uwe Schindler created SOLR-10951:
------------------------------------
Summary: Update hadoop-common dependency, so Solr works with Java 9
Key: SOLR-10951
URL: https://issues.apache.org/jira/browse/SOLR-10951
Project: Solr
Issue Type: Task
Security Level: Public (Default Security Level. Issues are Public)
Components: Hadoop Integration, hdfs
Reporter: Uwe Schindler
See issue: HADOOP-14586
Since Java 9 build 175 (the first Java 9 relaese candidate), Haddop integration
fails in Java 9:
{noformat}
[junit4] 2> 129956 ERROR (jetty-launcher-232-thread-2) [ ]
o.a.s.c.SolrCore null:java.lang.ExceptionInInitializerError
[junit4] 2> at
org.apache.hadoop.util.StringUtils.<clinit>(StringUtils.java:80)
[junit4] 2> at
org.apache.hadoop.conf.Configuration.getBoolean(Configuration.java:1437)
[junit4] 2> at
org.apache.hadoop.security.token.delegation.web.DelegationTokenManager.<init>(DelegationTokenManager.java:115)
[junit4] 2> at
org.apache.hadoop.security.token.delegation.web.DelegationTokenAuthenticationHandler.initTokenManager(DelegationTokenAuthenticationHandler.java:148)
[junit4] 2> at
org.apache.hadoop.security.token.delegation.web.DelegationTokenAuthenticationHandler.init(DelegationTokenAuthenticationHandler.java:118)
[junit4] 2> at
org.apache.hadoop.security.authentication.server.AuthenticationFilter.initializeAuthHandler(AuthenticationFilter.java:238)
[junit4] 2> at
org.apache.hadoop.security.token.delegation.web.DelegationTokenAuthenticationFilter.initializeAuthHandler(DelegationTokenAuthenticationFilter.java:209)
[junit4] 2> at
org.apache.solr.security.HadoopAuthFilter.initializeAuthHandler(HadoopAuthFilter.java:120)
[junit4] 2> at
org.apache.hadoop.security.authentication.server.AuthenticationFilter.init(AuthenticationFilter.java:227)
[junit4] 2> at
org.apache.hadoop.security.token.delegation.web.DelegationTokenAuthenticationFilter.init(DelegationTokenAuthenticationFilter.java:175)
[junit4] 2> at
org.apache.solr.security.HadoopAuthFilter.init(HadoopAuthFilter.java:68)
[junit4] 2> at
org.apache.solr.security.HadoopAuthPlugin.init(HadoopAuthPlugin.java:142)
[junit4] 2> at
org.apache.solr.core.CoreContainer.initializeAuthenticationPlugin(CoreContainer.java:360)
[junit4] 2> at
org.apache.solr.core.CoreContainer.reloadSecurityProperties(CoreContainer.java:684)
[junit4] 2> at
org.apache.solr.core.CoreContainer.load(CoreContainer.java:522)
[junit4] 2> at
org.apache.solr.servlet.SolrDispatchFilter.createCoreContainer(SolrDispatchFilter.java:257)
[junit4] 2> at
org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:177)
[junit4] 2> at
org.eclipse.jetty.servlet.FilterHolder.initialize(FilterHolder.java:137)
[junit4] 2> at
org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:873)
[junit4] 2> at
org.eclipse.jetty.servlet.ServletHandler.updateMappings(ServletHandler.java:1565)
[junit4] 2> at
org.eclipse.jetty.servlet.ServletHandler.setFilterMappings(ServletHandler.java:1599)
[junit4] 2> at
org.eclipse.jetty.servlet.ServletHandler.addFilterMapping(ServletHandler.java:1285)
[junit4] 2> at
org.eclipse.jetty.servlet.ServletHandler.addFilterWithMapping(ServletHandler.java:1130)
[junit4] 2> at
org.eclipse.jetty.servlet.ServletContextHandler.addFilter(ServletContextHandler.java:448)
[junit4] 2> at
org.apache.solr.client.solrj.embedded.JettySolrRunner$1.lifeCycleStarted(JettySolrRunner.java:306)
[junit4] 2> at
org.eclipse.jetty.util.component.AbstractLifeCycle.setStarted(AbstractLifeCycle.java:179)
[junit4] 2> at
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:69)
[junit4] 2> at
org.apache.solr.client.solrj.embedded.JettySolrRunner.start(JettySolrRunner.java:394)
[junit4] 2> at
org.apache.solr.client.solrj.embedded.JettySolrRunner.start(JettySolrRunner.java:367)
[junit4] 2> at
org.apache.solr.cloud.MiniSolrCloudCluster.startJettySolrRunner(MiniSolrCloudCluster.java:382)
[junit4] 2> at
org.apache.solr.cloud.MiniSolrCloudCluster.lambda$new$0(MiniSolrCloudCluster.java:245)
[junit4] 2> at
java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[junit4] 2> at
org.apache.solr.common.util.ExecutorUtil$MDCAwareThreadPoolExecutor.lambda$execute$0(ExecutorUtil.java:188)
[junit4] 2> at
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1161)
[junit4] 2> at
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[junit4] 2> at java.base/java.lang.Thread.run(Thread.java:844)
[junit4] 2> Caused by: java.lang.StringIndexOutOfBoundsException: begin 0,
end 3, length 1
[junit4] 2> at
java.base/java.lang.String.checkBoundsBeginEnd(String.java:3116)
[junit4] 2> at
java.base/java.lang.String.substring(String.java:1885)
[junit4] 2> at org.apache.hadoop.util.Shell.<clinit>(Shell.java:51)
[junit4] 2> ... 36 more
[junit4] 2>
{noformat}
This means we can for now only disable all tests using Hadoop, if Java 9 is
detected.
On Policeman Jenkins the HDFS integration is already disabled, but there are 2
more tests that fail:
- org.apache.solr.security.hadoop.TestDelegationWithHadoopAuth
- org.apache.solr.cloud.TestSolrCloudWithDelegationTokens
I will add an assumeFalse for a while, until Hadoop fixed the issue.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]