Thomas Diesler created CAMEL-10310:
--------------------------------------

             Summary: Lucene upgrade violates elasticsearch assertion
                 Key: CAMEL-10310
                 URL: https://issues.apache.org/jira/browse/CAMEL-10310
             Project: Camel
          Issue Type: Bug
            Reporter: Thomas Diesler
             Fix For: 2.18.0


Elastic search asserts the current Lucene version like this

{code}
    public static final Version V_2_3_1 = new Version(V_2_3_1_ID, false, 
org.apache.lucene.util.Version.LUCENE_5_5_0);

    public static final Version CURRENT = V_2_3_1;

    static {
        assert CURRENT.luceneVersion.equals(Lucene.VERSION) : "Version must be 
upgraded to [" + Lucene.VERSION + "] is still set to [" + CURRENT.luceneVersion 
+ "]";
    }
{code}

which effectively means that no other Lucene version is accepted but 5.5.0

Camel now integrates lucene-5.5.3 as part of 
[this|https://github.com/apache/camel/commit/6bf1d36ae11815e59fd2777a1f748c8966460bd0]
 commit, which then leads to

{code}
11:54:49,545 SEVERE [org.jboss.arquillian.protocol.jmx.JMXTestRunner] 
(pool-3-thread-1) Failed: 
org.wildfly.camel.test.elasticsearch.ElasticSearchIntegrationTest.testIndexContentUsingHeaders:
 java.lang.AssertionError: Version must be upgraded to [5.5.3] is still set to 
[5.5.0]
        at org.elasticsearch.Version.<clinit>(Version.java:302)
        at org.elasticsearch.node.Node.<init>(Node.java:140)
        at org.elasticsearch.node.NodeBuilder.build(NodeBuilder.java:143)
        at org.elasticsearch.node.NodeBuilder.node(NodeBuilder.java:150)
        at 
org.wildfly.camel.test.elasticsearch.ElasticSearchIntegrationTest.initEleasticSearchClient(ElasticSearchIntegrationTest.java:220)
        at 
org.wildfly.camel.test.elasticsearch.ElasticSearchIntegrationTest.testIndexContentUsingHeaders(ElasticSearchIntegrationTest.java:80)
...
java.lang.NoClassDefFoundError: Could not initialize class 
org.elasticsearch.Version
        at org.elasticsearch.node.Node.<init>(Node.java:140)
        at org.elasticsearch.node.NodeBuilder.build(NodeBuilder.java:143)
        at org.elasticsearch.node.NodeBuilder.node(NodeBuilder.java:150)
        at 
org.wildfly.camel.test.elasticsearch.ElasticSearchIntegrationTest.initEleasticSearchClient(ElasticSearchIntegrationTest.java:220)
        at 
org.wildfly.camel.test.elasticsearch.ElasticSearchIntegrationTest.testGetContent(ElasticSearchIntegrationTest.java:112)
{code}

Camel can likely not use another version of Lucene than Elasticsearch defines. 
Alternatively it may be possible to install multiple versions of Lucene and 
wire Elasticsearch to the one it requires. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to