Yes, I copied the jars to all nodes and restarted Solr service.


<response>
<lst name="responseHeader"><int name="status">0</int><int
name="QTime">4212</int></lst><lst
name="failure"><str>org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException:Error
CREATEing SolrCore 'ems-collection-700_shard1_replica2': Unable to create
core: ems-collection-700_shard1_replica2 Caused by: Class
org.apache.hadoop.fs.adl.HdiAdlFileSystem not
found</str><str>org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException:Error
CREATEing SolrCore 'ems-collection-700_shard2_replica1': Unable to create
core: ems-collection-700_shard2_replica1 Caused by:
org.apache.hadoop.fs.FileSystem: Provider
org.apache.hadoop.fs.azure.NativeAzureFileSystem not a
subtype</str><str>org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException:Error
CREATEing SolrCore 'ems-collection-700_shard2_replica2': Unable to create
core: ems-collection-700_shard2_replica2 Caused by: Class
org.apache.hadoop.fs.adl.HdiAdlFileSystem not
found</str><str>org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException:Error
CREATEing SolrCore 'ems-collection-700_shard1_replica1': Unable to create
core: ems-collection-700_shard1_replica1 Caused by:
org.apache.hadoop.fs.FileSystem: Provider
org.apache.hadoop.fs.azure.NativeAzureFileSystem not a subtype</str></lst>
</response>

Here is an excerpt from the logs:

ERROR - 2018-03-26 18:09:45.033; org.apache.solr.core.CoreContainer; Unable
to create core: ems-collection-700_shard2_replica1
org.apache.solr.common.SolrException: org.apache.hadoop.fs.FileSystem:
Provider org.apache.hadoop.fs.azure.NativeAzureFileSystem not a subtype
at org.apache.solr.core.SolrCore.<init>(SolrCore.java:868)
at org.apache.solr.core.SolrCore.<init>(SolrCore.java:643)
at org.apache.solr.core.CoreContainer.create(CoreContainer.java:556)
at
org.apache.solr.handler.admin.CoreAdminHandler.handleCreateAction(CoreAdminHandler.java:569)
at
org.apache.solr.handler.admin.CoreAdminHandler.handleRequestInternal(CoreAdminHandler.java:198)
at
org.apache.solr.handler.admin.CoreAdminHandler.handleRequestBody(CoreAdminHandler.java:187)
at
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
at
org.apache.solr.servlet.SolrDispatchFilter.handleAdminRequest(SolrDispatchFilter.java:729)
at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:258)
at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:207)
at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419)
at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:455)
at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557)
at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1075)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:384)
at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1009)
at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)
at
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154)
at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
at org.eclipse.jetty.server.Server.handle(Server.java:368)
at
org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
at
org.eclipse.jetty.server.BlockingHttpConnection.handleRequest(BlockingHttpConnection.java:53)
at
org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:953)
at
org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1014)
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:861)
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
at
org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:72)
at
org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:264)
at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
at
org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.util.ServiceConfigurationError:
org.apache.hadoop.fs.FileSystem: Provider
org.apache.hadoop.fs.azure.NativeAzureFileSystem not a subtype





On Mon, Mar 26, 2018 at 11:28 AM, Erick Erickson <erickerick...@gmail.com>
wrote:

> Several things:
>
> 1> I often start with an absolute path, knowing the exact relative
> path from where Solr starts can be confusing. If you've pathed
> properly and the jar file is in the path, it'll be found.
>
> 2> Are you sure HdiAdlFileSystem is in one of the jars?
>
> 3> did you restart the JVM?
>
> Best,
> Erick
>
> On Mon, Mar 26, 2018 at 6:49 AM, Abhi Basu <9000r...@gmail.com> wrote:
> > Adding this to solrconfig.xml did not work. I put all the azure and
> hadoop
> > jars in the ext folder.
> >
> > <lib dir="../../../example/lib/ext" regex=".*\.jar" />
> >
> > Caused by: Class org.apache.hadoop.fs.adl.HdiAdlFileSystem not found
> >
> > Thanks,
> >
> > Abhi
> >
> > On Fri, Mar 23, 2018 at 7:40 PM, Abhi Basu <9000r...@gmail.com> wrote:
> >
> >> I'll try it out.
> >>
> >> Thanks
> >>
> >> Abhi
> >>
> >> On Fri, Mar 23, 2018, 6:22 PM Rick Leir <rl...@leirtech.com> wrote:
> >>
> >>> Abhi
> >>> Check your lib directives.
> >>> https://lucene.apache.org/solr/guide/6_6/lib-directives-
> >>> in-solrconfig.html#lib-directives-in-solrconfig
> >>>
> >>> I suspect your jars are not in a lib dir mentioned in solrconfig.xml
> >>> Cheers -- Rick
> >>>
> >>> On March 23, 2018 11:12:17 AM EDT, Abhi Basu <9000r...@gmail.com>
> wrote:
> >>> >MS Azure does not support Solr 4.9 on HDI, so I am posting here. I
> >>> >would
> >>> >like to write index collection data to HDFS (hosted on ADL).
> >>> >
> >>> >Note: I am able to get to ADL from hadoop fs command like, so hadoop
> is
> >>> >configured correctly to get to ADL:
> >>> >hadoop fs -ls adl://
> >>> >
> >>> >This is what I have done so far:
> >>> >1. Copied all required jars to sol ext lib folder:
> >>> >sudo cp -f /usr/hdp/current/hadoop-client/*.jar
> >>> >/usr/hdp/current/solr/example/lib/ext
> >>> >sudo cp -f /usr/hdp/current/hadoop-client/lib/*.jar
> >>> >/usr/hdp/current/solr/example/lib/ext
> >>> >sudo cp -f /usr/hdp/current/hadoop-hdfs-client/*.jar
> >>> >/usr/hdp/current/solr/example/lib/ext
> >>> >sudo cp -f /usr/hdp/current/hadoop-hdfs-client/lib/*.jar
> >>> >/usr/hdp/current/solr/example/lib/ext
> >>> >sudo cp -f
> >>> >/usr/hdp/current/storm-client/contrib/storm-hbase/storm-hbase*.jar
> >>> >/usr/hdp/current/solr/example/lib/ext
> >>> >sudo cp -f /usr/hdp/current/phoenix-client/lib/phoenix*.jar
> >>> >/usr/hdp/current/solr/example/lib/ext
> >>> >sudo cp -f /usr/hdp/current/hbase-client/lib/hbase*.jar
> >>> >/usr/hdp/current/solr/example/lib/ext
> >>> >
> >>> >This includes the Azure active data lake jars also.
> >>> >
> >>> >2. Edited my solr-config.xml file for my collection:
> >>> >
> >>> ><dataDir>${solr.core.name}/data/</dataDir>
> >>> >
> >>> ><directoryFactory name="DirectoryFactory"
> >>> >class="solr.HdfsDirectoryFactory">
> >>> ><str
> >>> >name="solr.hdfs.home">adl://esodevdleus2.azuredatalakestore.net/
> >>> clusters/esohadoopdeveus2/solr/</str>
> >>> >  <str name="solr.hdfs.confdir">/usr/hdp/2.6.2.25-1/hadoop/conf</str>
> >>> ><str
> >>> >name="solr.hdfs.blockcache.global">${solr.hdfs.
> >>> blockcache.global:true}</str>
> >>> >  <bool name="solr.hdfs.blockcache.enabled">true</bool>
> >>> >  <int name="solr.hdfs.blockcache.slab.count">1</int>
> >>> > <bool name="solr.hdfs.blockcache.direct.memory.allocation">
> true</bool>
> >>> >  <int name="solr.hdfs.blockcache.blocksperbank">16384</int>
> >>> >  <bool name="solr.hdfs.blockcache.read.enabled">true</bool>
> >>> >  <bool name="solr.hdfs.nrtcachingdirectory.enable">true</bool>
> >>> >  <int name="solr.hdfs.nrtcachingdirectory.maxmergesizemb">16</int>
> >>> ></directoryFactory>
> >>> >
> >>> >
> >>> >When this collection is deployed to solr, I see this error message:
> >>> >
> >>> ><response>
> >>> ><lst name="responseHeader">
> >>> ><int name="status">0</int>
> >>> ><int name="QTime">2189</int></lst>
> >>> ><lst name="failure">
> >>> ><str>org.apache.solr.client.solrj.impl.HttpSolrServer$
> >>> RemoteSolrException:Error
> >>> >CREATEing SolrCore 'ems-collection_shard2_replica2':
> >>> >Unable to create core: ems-collection_shard2_replica2 Caused by: Class
> >>> >org.apache.hadoop.fs.adl.HdiAdlFileSystem not
> >>> >found</str><str>org.apache.solr.client.solrj.impl.HttpSolrServer$
> >>> RemoteSolrException:Error
> >>> >CREATEing SolrCore 'ems-collection_shard2_replica1': Unable to create
> >>> >core: ems-collection_shard2_replica1 Caused by: Class
> >>> >org.apache.hadoop.fs.adl.HdiAdlFileSystem not
> >>> >found</str><str>org.apache.solr.client.solrj.impl.HttpSolrServer$
> >>> RemoteSolrException:Error
> >>> >CREATEing SolrCore 'ems-collection_shard1_replica1': Unable to create
> >>> >core: ems-collection_shard1_replica1 Caused by: Class
> >>> >org.apache.hadoop.fs.adl.HdiAdlFileSystem not
> >>> >found</str><str>org.apache.solr.client.solrj.impl.HttpSolrServer$
> >>> RemoteSolrException:Error
> >>> >CREATEing SolrCore 'ems-collection_shard1_replica2': Unable to create
> >>> >core: ems-collection_shard1_replica2 Caused by: Class
> >>> >org.apache.hadoop.fs.adl.HdiAdlFileSystem not found</str>
> >>> ></lst>
> >>> ></response>
> >>> >
> >>> >
> >>> >Has anyone done this and can help me out?
> >>> >
> >>> >Thanks,
> >>> >
> >>> >Abhi
> >>> >
> >>> >
> >>> >--
> >>> >Abhi Basu
> >>>
> >>> --
> >>> Sorry for being brief. Alternate email is rickleir at yahoo dot com
> >>
> >>
> >
> >
> > --
> > Abhi Basu
>



-- 
Abhi Basu

Reply via email to