On 09/10/2014 12:45, Charlie Orford wrote:
Hi List
Posting here on the suggestion of steffkes in IRC.
We currently run a multicore Solr 4.7.2 installation on debian wheezy
using the debian provided "default-headless-jre" package for java
which is JDK 6 based. We also use some ICU filters in our schema.xml
files so we have icu4j-52.1.jar, lucene-analyzers-common-4.7.2.jar,
lucene-analyzers-icu-4.7.2.jar, lucene-analyzers-smartcn-4.7.2.jar,
lucene-analyzers-stempel-4.7.2.jar and solr-analysis-extras-4.7.2.jar
in our solr-home/lib folder.
We want to move to Solr 4.10.1 which needs Java 7.
Before upgrading Solr, we first uninstalled the "default-jre-headless"
package and then installed "openjdk-7-jre-headless" so the Java 7
dependency was met.
However, doing this causes Solr 4.7.2 to throw a core error on start:
"ERROR org.apache.solr.core.SolrCore Error loading
core:java.util.concurrent.ExecutionException:
java.lang.NoClassDefFoundError: com/ibm/icu/text/Normalizer2"
If we uninstall the "openjdk-7-jre-headless" package and re-install
the "default-headless-jre" package Solr 4.7.2 starts fine.
We've also tested a clean install of Solr 4.10.1 on a different
machine with the debian "openjdk-7-jre-headless" package installed
(and the 4.10.1 versions of the relevant lucene/solr ICU jar libs) and
encounter the same NoClassDefFoundError: com/ibm/icu/text/Normalizer2
error whenever we try to create a core that uses the
solr.ICUNormalizer2FilterFactory in its schema.
Unfortunately, we aren't Java people and only use it for Solr so we're
not sure how to debug this. Is the problem with the debian package? Is
the problem with icu4j-52.1.jar? Or is the problem something else
entirely?
Any insight appreciated!
Charlie
Here are the startup logs from Solr (first one shows running under Java
6 and working, second one is the very same installation runing under
Java 7 and failing):
http://hastebin.com/yapuqonide.vhdl
http://hastebin.com/edigeduset.pas
Charlie