I tried this - it didn't fail.  I don't know if it really started in
Denable.runtime.lib=true mode or not:

service solr start -Denable.runtime.lib=true

Of course, I'd still really rather be able to just drop jars into
/var/solr/data/lib and have them work...

Thanks all.

On Wed, Jun 1, 2016 at 12:42 PM, John Bickerstaff <j...@johnbickerstaff.com>
wrote:

> So - the instructions on using the Blob Store API say to use the
> Denable.runtime.lib=true option when starting Solr.
>
> Thing is, I've installed per the "for production" instructions which gives
> me an entry in /etc/init.d called solr.
>
> Two questions.
>
> To test this can I still use the start.jar in /opt/solr/server as long as
> I issue the "cloud mode" flag or does that no longer work in 5.x?
>
> Do I instead have to modify that start script in /etc/init.d ?
>
> On Wed, Jun 1, 2016 at 10:42 AM, John Bickerstaff <
> j...@johnbickerstaff.com> wrote:
>
>> Ahhh - gotcha.
>>
>> Well, not sure why it's not picked up - seems lots of other jars are...
>> Maybe Joe will comment...
>>
>> On Wed, Jun 1, 2016 at 10:22 AM, MaryJo Sminkey <mjsmin...@gmail.com>
>> wrote:
>>
>>> That refers to running Solr in cloud mode. We aren't there yet.
>>>
>>> MJ
>>>
>>>
>>>
>>> On Wed, Jun 1, 2016 at 12:20 PM, John Bickerstaff <
>>> j...@johnbickerstaff.com>
>>> wrote:
>>>
>>> > Hi Mary Jo,
>>> >
>>> > I'll point you to Joe's earlier comment about needing to use the Blob
>>> Store
>>> > API...  He put a link in his response.
>>> >
>>> > I'm about to try that today...  Given that Joe is a contributor to
>>> > hon_lucene.... there's a good chance his experience is correct here -
>>> > especially given the evidence you just provided...
>>> >
>>> > Here's a copy - paste for your convenience.  It's a bit convoluted,
>>> > although I totally get how this kind of approach is great for large
>>> Solr
>>> > Cloud installations that have machines or VMs coming up and going down
>>> as
>>> > part of a services-based approach...
>>> >
>>> > Joe said:
>>> > The docs are out of date for the synonym_edismax but it does work.
>>> Check
>>> > out the tests for working examples. I'll try to update it soon. I've
>>> run
>>> > the plugin on Solr 5 and 6, solrcloud and standalone. For running in
>>> > SolrCloud make sure you follow
>>> >
>>> >
>>> https://cwiki.apache.org/confluence/display/solr/Adding+Custom+Plugins+in+SolrCloud+Mode
>>> >
>>> > On Wed, Jun 1, 2016 at 10:15 AM, MaryJo Sminkey <mjsmin...@gmail.com>
>>> > wrote:
>>> >
>>> > > So we still can't get this to work, here's the latest update my
>>> server
>>> > guy
>>> > > gave me: It seems to not matter where the file is located, it does
>>> not
>>> > > load. Yet, the the Solr Java class path shows the file has loaded.
>>> Only
>>> > > this path (./server/lib/hon-lucene-synonyms-2.0.0.jar) will work in
>>> that
>>> > it
>>> > > loads in the java class path.  I've yet to find out what the error
>>> is.
>>> > All
>>> > > I can see is this "Error loading class". Okay, but why? What error
>>> was
>>> > > encountered in trying to load the class?  I can't find any of this
>>> > > information. I'm trying to work with the documentation that is
>>> located
>>> > here
>>> > > http://wiki.apache.org/solr/SolrPlugins
>>> > >
>>> > > I found that the jar file was put into each of these locations in an
>>> > > attempt to find a place where it will load without error.
>>> > >
>>> > > find .|grep hon-lucene
>>> > >
>>> > > ./server/lib/hon-lucene-synonyms-2.0.0.jar
>>> > >
>>> > > ./server/solr/plugins/hon-lucene-synonyms-2.0.0.jar
>>> > >
>>> > > ./server/solr/classic_newdb/lib/hon-lucene-synonyms-2.0.0.jar
>>> > >
>>> > > ./server/solr/classic_search/lib/hon-lucene-synonyms-2.0.0.jar
>>> > >
>>> > > ./server/solr-webapp/webapp/WEB-INF/lib/hon-lucene-synonyms-2.0.0.jar
>>> > >
>>> > >  The config specifies that files in certain paths can be loaded as
>>> > plugins
>>> > > or I can specify a path. Following the instructions I added this path
>>> > >
>>> > >   <lib
>>> > > dir="${solr.install.dir:../../../..}/contrib/hon-lucene-synonyms/lib"
>>> > > regex=".*\.jar" />
>>> > >
>>> > > And I put the jar file in that location.  This did not work either. I
>>> > also
>>> > > tried using an absolute path like this.
>>> > >
>>> > > <lib
>>> > >
>>> > >
>>> >
>>> dir="/opt/solr/contrib/hon-lucene-synonyms/lib/hon-lucene-synonyms-2.0.0.jar"
>>> > > />
>>> > >
>>> > > This did not work.
>>> > >
>>> > >
>>> > >
>>> > > I'm starting to think this isn't a configuration problem, but a
>>> > > compatibility problem. I have not seen anything from the maker of
>>> this
>>> > > plugin that it works on the exact version of Solr we are using.
>>> > >
>>> > >
>>> > >
>>> > >
>>> > >
>>> > > The best info I have found so far in the logs is this stack trace of
>>> the
>>> > > error. It still does not say why it failed to load.
>>> > >
>>> > > 2016-06-01 00:22:13.470 ERROR (qtp2096057945-14) [   ]
>>> > o.a.s.s.HttpSolrCall
>>> > > null:org.apache.solr.common.SolrException: SolrCore 'classic_search'
>>> is
>>> > not
>>> > > available due to init failure: Error loading class
>>> > > 'com.github.healthonnet.search.Syno
>>> > >
>>> > > nymExpandingExtendedDismaxQParserPlugin'
>>> > >
>>> > >         at
>>> > > org.apache.solr.core.CoreContainer.getCore(CoreContainer.java:993)
>>> > >
>>> > >         at
>>> > org.apache.solr.servlet.HttpSolrCall.init(HttpSolrCall.java:249)
>>> > >
>>> > >         at
>>> > org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:411)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:222)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:181)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
>>> > >
>>> > >         at
>>> > >
>>> >
>>> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
>>> > >
>>> > >         at
>>> > >
>>> >
>>> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
>>> > >
>>> > >         at
>>> > >
>>> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
>>> > >
>>> > >         at org.eclipse.jetty.server.Server.handle(Server.java:499)
>>> > >
>>> > >         at
>>> > > org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
>>> > >
>>> > >         at
>>> > >
>>> >
>>> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
>>> > >
>>> > >         at
>>> > >
>>> >
>>> org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
>>> > >
>>> > >         at java.lang.Thread.run(Thread.java:745)
>>> > >
>>> > > Caused by: org.apache.solr.common.SolrException: Error loading class
>>> > >
>>> >
>>> 'com.github.healthonnet.search.SynonymExpandingExtendedDismaxQParserPlugin'
>>> > >
>>> > >         at org.apache.solr.core.SolrCore.<init>(SolrCore.java:824)
>>> > >
>>> > >         at org.apache.solr.core.SolrCore.<init>(SolrCore.java:665)
>>> > >
>>> > >         at
>>> > > org.apache.solr.core.CoreContainer.create(CoreContainer.java:742)
>>> > >
>>> > >         at
>>> > > org.apache.solr.core.CoreContainer$1.call(CoreContainer.java:462)
>>> > >
>>> > >         at
>>> > > org.apache.solr.core.CoreContainer$1.call(CoreContainer.java:453)
>>> > >
>>> > >         at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.apache.solr.common.util.ExecutorUtil$MDCAwareThreadPoolExecutor$1.run(ExecutorUtil.java:232)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>>> > >
>>> > >         ... 1 more
>>> > >
>>> > > Caused by: org.apache.solr.common.SolrException: Error loading class
>>> > >
>>> >
>>> 'com.github.healthonnet.search.SynonymExpandingExtendedDismaxQParserPlugin'
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:559)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:490)
>>> > >
>>> > >         at
>>> > org.apache.solr.core.SolrCore.createInstance(SolrCore.java:573)
>>> > >
>>> > >         at
>>> > org.apache.solr.core.PluginBag.createPlugin(PluginBag.java:123)
>>> > >
>>> > >         at org.apache.solr.core.PluginBag.init(PluginBag.java:223)
>>> > >
>>> > >         at org.apache.solr.core.PluginBag.init(PluginBag.java:212)
>>> > >
>>> > >         at org.apache.solr.core.SolrCore.<init>(SolrCore.java:768)
>>> > >
>>> > >         ... 9 more
>>> > >
>>> > > Caused by: java.lang.ClassNotFoundException:
>>> > >
>>> com.github.healthonnet.search.SynonymExpandingExtendedDismaxQParserPlugin
>>> > >
>>> > >         at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
>>> > >
>>> > >         at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>>> > >
>>> > >         at
>>> > > java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:814)
>>> > >
>>> > >         at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>>> > >
>>> > >         at java.lang.Class.forName0(Native Method)
>>> > >
>>> > >         at java.lang.Class.forName(Class.java:348)
>>> > >
>>> > >         at
>>> > >
>>> > >
>>> >
>>> org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:543)
>>> > >
>>> > >         ... 15 more
>>> > >
>>> > > So we're giving up on this one, unless someone knows for sure it will
>>> > work
>>> > > on standalone Solr installs on 5.4+. Because as far as we can tell,
>>> it
>>> > > simply doesn't work.
>>> > >
>>> > >
>>> > > Mary Jo
>>> > >
>>> > >
>>> > >
>>> > > On Wed, Jun 1, 2016 at 1:35 AM, Shawn Heisey <apa...@elyograg.org>
>>> > wrote:
>>> > >
>>> > > > On 5/31/2016 3:13 PM, John Bickerstaff wrote:
>>> > > > > The suggestion on the readme is that I can drop the
>>> > > > > hon_lucene_synonyms jar file into the $SOLR_HOME directory, but
>>> this
>>> > > > > does not seem to be working - I'm getting class not found
>>> exceptions.
>>> > > >
>>> > > > What I typically do with *all* extra jars (dataimport, mysql, ICU
>>> jars,
>>> > > > etc) is put them into $SOLR_HOME/lib ... a directory that you will
>>> > > > usually need to create.  If the installer script is used with
>>> default
>>> > > > options, that directory will be /var/solr/data/lib.
>>> > > >
>>> > > > Any jar that you place in that directory will be loaded once at
>>> Solr
>>> > > > startup and available to all cores.  The best thing about this
>>> > directory
>>> > > > is that it requires zero configuration.
>>> > > >
>>> > > > For 5.3 and later, loading jars into
>>> > > > server/solr-webapp/webapp/WEB-INF/lib should also work, but then
>>> you
>>> > are
>>> > > > modifying the actual Solr install, which I normally avoid because
>>> it
>>> > > > makes it a little bit harder to upgrade Solr.
>>> > > >
>>> > > > > Does anyone on this list have direct experience with getting this
>>> > > > > plugin to work in Solr 5.x?
>>> > > >
>>> > > > I don't have any experience with that specific plugin, but I have
>>> > > > successfully used other plugin jars with the lib directory
>>> mentioned
>>> > > above.
>>> > > >
>>> > > > Thanks,
>>> > > > Shawn
>>> > > >
>>> > > >
>>> > >
>>> >
>>>
>>
>>
>

Reply via email to