Hello everyone,

Has anyone gotten oak org.apache.jackrabbit/oak-solr-osgi/1.8.8 running 
alongside org.apache.jackrabbit/oak-lucene/1.8.8? It appears that oak-solr-osgi 
uses SolR version 5.5.5 (which requires Lucene 5.0), but oak-lucene will use 
Lucene version 4.7.1. The result of loading both of them on a sling instance is 
that I can get the two of them loaded together, but when I try to create a SolR 
index I get the following error (and a few subsequent errors relaying the same 
information):

10.02.2020 11:44:33.160 *ERROR* [coreLoadExecutor-6-thread-1] 
org.apache.solr.core.CoreContainer Error creating core [oak]: An SPI class of 
type org.apache.lucene.codecs.PostingsFormat with name 'Lucene50' does not 
exist.  You need to add the corresponding JAR file supporting this SPI to your 
classpath.  The current classpath supports the following names: [completion]
 org.apache.solr.common.SolrException: An SPI class of type 
org.apache.lucene.codecs.PostingsFormat with name 'Lucene50' does not exist.  
You need to add the corresponding JAR file supporting this SPI to  your 
classpath.  The current classpath supports the following names: [completion]
   at org.apache.solr.core.SolrCore.<init>(SolrCore.java:820) 
[org.apache.jackrabbit.oak-solr-osgi:1.8.8]
   at org.apache.solr.core.SolrCore.<init>(SolrCore.java:658) 
[org.apache.jackrabbit.oak-solr-osgi:1.8.8]
   at org.apache.solr.core.CoreContainer.create(CoreContainer.java:820) 
[org.apache.jackrabbit.oak-solr-osgi:1.8.8]
   at org.apache.solr.core.CoreContainer.access$000(CoreContainer.java:90) 
[org.apache.jackrabbit.oak-solr-osgi:1.8.8]
   at org.apache.solr.core.CoreContainer$1.call(CoreContainer.java:473) 
[org.apache.jackrabbit.oak-solr-osgi:1.8.8]
   at org.apache.solr.core.CoreContainer$1.call(CoreContainer.java:464) 
[org.apache.jackrabbit.oak-solr-osgi:1.8.8]
   at java.util.concurrent.FutureTask.run(FutureTask.java:266)
   at 
org.apache.solr.common.util.ExecutorUtil$MDCAwareThreadPoolExecutor$1.run(ExecutorUtil.java:231)
 [org.apache.jackrabbit.oak-solr-osgi:1.8.8]
   at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
   at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
   at java.lang.Thread.run(Thread.java:748)

I did some digging and I think the problem is that the same version of both 
oak-solr-osgi and oak-lucene contain 
META-INF/services/org.apache.lucene.codecs.PostingsFormat, but while 
oak-solr-osgi exports 
org.apache.lucene.search.suggest.document.Completion50PostingsFormat in there, 
oak-lucene exports org.apache.lucene.codecs.lucene40.Lucene40PostingsFormat and 
org.apache.lucene.codecs.lucene41.Lucene41PostingsFormat. (I'd post a link to 
the source but I'm not sure how this mailing list handles links)

Has anyone gotten these two packages running together? I'd ideally like to use 
both Lucene indexes and SolR indexes in my database, and found it odd that the 
two seem incompatible even when both packages are the same version.

Sorry if this is the wrong mailing list -- I wasn't sure which one to send this 
to.

Thanks,
Francis Nguyen

Reply via email to