Uploaded image for project: 'Nutch'
  1. Nutch
  2. NUTCH-2473

Elasticsearch REST Indexer broken due to wrong depenency

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.14
    • 1.14
    • None
    • None
    • Important

    Description

      When trying to index into Elasticsearch using indexer-elastic-rest the following error is being thrown:

      Exception in thread "main" java.lang.LinkageError: loader constraint violation: when resolving method "org.slf4j.impl.StaticLoggerBinder.getLoggerFactory()Lorg/slf4j/ILoggerFactory;" the class loader (instance of org/apache/nutch/plugin/PluginClassLoader) of the current class, org/slf4j/LoggerFactory, and the class loader (instance of sun/misc/Launcher$AppClassLoader) for the method's defining class, org/slf4j/impl/StaticLoggerBinder, have different Class objects for the type org/slf4j/ILoggerFactory used in the signature
          at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:418)
          at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:357)
          at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:383)
          at org.apache.nutch.indexwriter.elasticrest.ElasticRestIndexWriter.<clinit>(ElasticRestIndexWriter.java:71)
          at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
          at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
          at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
          at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
          at java.lang.Class.newInstance(Class.java:442)
          at org.apache.nutch.plugin.Extension.getExtensionInstance(Extension.java:161)
          at org.apache.nutch.indexer.IndexWriters.<init>(IndexWriters.java:57)
          at org.apache.nutch.indexer.IndexingJob.index(IndexingJob.java:123)
          at org.apache.nutch.indexer.IndexingJob.run(IndexingJob.java:230)
          at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
          at org.apache.nutch.indexer.IndexingJob.main(IndexingJob.java:239)
      

      e66d44d removed the runtime dependency on slf4j-api-1.7.21.jar everywhere but in indexer-elastic-rest.
      Possible fix: https://github.com/apache/nutch/pull/253

      Attachments

        Issue Links

          Activity

            People

              snagel Sebastian Nagel
              mfeltscher Moreno Feltscher
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: