Cassandra Targett created SOLR-10215:
----------------------------------------
Summary: Cannot use the namenode for HDFS HA as of Solr 6.4
Key: SOLR-10215
URL: https://issues.apache.org/jira/browse/SOLR-10215
Project: Solr
Issue Type: Bug
Security Level: Public (Default Security Level. Issues are Public)
Components: Hadoop Integration
Affects Versions: 6.4.1
Reporter: Cassandra Targett
As of Solr 6.4, it seems it's no longer possible to use a namenode instead of a
server address with the {{solr.hdfs.home}} parameter when configuring Solr with
HDFS high availability (HA).
Startup is fine, but when trying to create a collection, this error is in the
logs:
{code}
2017-02-27 22:22:57.359 ERROR (qtp401424608-21) [c:testing s:shard1
x:testing_shard1_replica1] o.a.s.c.CoreContainer Error creating core
[testing_shard1_replica1]: Error Instantiating Update Handler,
solr.DirectUpdateHandler2 failed to instantiate
org.apache.solr.update.UpdateHandler
org.apache.solr.common.SolrException: Error Instantiating Update Handler,
solr.DirectUpdateHandler2 failed to instantiate
org.apache.solr.update.UpdateHandler
{code}
And after the full stack trace (which I will put in a comment), there is this:
{code}
Caused by: java.lang.IllegalArgumentException: java.net.UnknownHostException:
mycluster
{code}
I started Solr with the params configured as system params instead of in
{{solrconfig.xml}}, so my {{solr.in.sh}} has this:
{code}
SOLR_OPTS="$SOLR_OPTS $SOLR_ZK_CREDS_AND_ACLS
-Dsolr.directoryFactory=HdfsDirectoryFactory -Dsolr.lock.type=hdfs
-Dsolr.hdfs.home=hdfs://mycluster:8020/solr-index
-Dsolr.hdfs.confdir=/etc/hadoop/conf/"
{code}
Solr in this case is running on the same nodes as Hadoop (Hortonworks HDP 2.5).
I tried with a couple variations of defining the Solr home parameter:
* {{hdfs://mycluster:8020/solr-index}}
* {{hdfs://mycluster/solr-index}}
* {{solr-index}}
None of these variations worked with Solr 6.4.1 (the first 2 got the same error
as above, the last was just wrong so it got a different error).
I believe this problem is isolated to Solr 6.4.1. I tested the same setup (as
in the {{solr.in.sh}} above) with 6.3.0 and it worked fine. Using the server
address also works fine, but that negates the High Availability feature (which
is like failover, for those who don't know).
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]