Uploaded image for project: 'Kylin'
  1. Kylin
  2. KYLIN-2699

Tomcat LinkageError for curator-client jar file conflict

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • v2.0.0
    • v2.1.0
    • Job Engine, Web
    • None

    Description

      Exception: java.lang.LinkageError: loader constraint violation: loader (instance of sun/misc/Launcher$AppClassLoader) previously initiated loading for a different type with name "org/apache/curator/RetryPolicy"
      at java.lang.ClassLoader.defineClass1(Native Method)
      at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
      at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
      at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
      at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
      at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
      at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
      at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
      at org.apache.curator.CuratorZookeeperClient.<init>(CuratorZookeeperClient.java:97)
      at org.apache.curator.framework.imps.CuratorFrameworkImpl.<init>(CuratorFrameworkImpl.java:108)
      at org.apache.curator.framework.CuratorFrameworkFactory$Builder.build(CuratorFrameworkFactory.java:124)
      at org.apache.kylin.storage.hbase.util.ZookeeperJobLock.lock(ZookeeperJobLock.java:70)
      at org.apache.kylin.job.impl.threadpool.DefaultScheduler.init(DefaultScheduler.java:208)
      at org.apache.kylin.rest.service.JobService$1.run(JobService.java:116)
      at java.lang.Thread.run(Thread.java:745)

      This exception will make kylin job engine does not work. And I found it occured because in the kylin/WEB-INF/lib contains the curator-client-2.7.1.jar which make some conflicts. In general, the HBase and Hadoop cluster always contain their own curator-client jar files. So there is no need to include the curator-client jar file in kylin/WEB-INF/lib.

      Attachments

        1. KYLIN-2699.patch
          1 kB
          Mingming Qiu

        Issue Links

          Activity

            People

              lidong_sjtu Dong Li
              qmm Mingming Qiu
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: