You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@curator.apache.org by "Simon Billingsley (JIRA)" <ji...@apache.org> on 2018/02/15 13:24:00 UTC

[jira] [Created] (CURATOR-454) Curator 4.0.0 be used with Zookeeper 3.4.10 due to compile-time issues

Simon Billingsley created CURATOR-454:
-----------------------------------------

             Summary: Curator 4.0.0 be used with Zookeeper 3.4.10 due to compile-time issues
                 Key: CURATOR-454
                 URL: https://issues.apache.org/jira/browse/CURATOR-454
             Project: Apache Curator
          Issue Type: Bug
          Components: Framework
    Affects Versions: 4.0.0
            Reporter: Simon Billingsley


I see compile issues when trying to compile a project with a library that depends on apache curator 4.0.0. 

We are trying to upgrade to a newer version of Zookeeper (3.4.10) due to security issues in ZK 3.4.9 and have been forced to upgrade to a newer version of curator (from 2.11.1 due to other curator issues) but we keep hitting compile-time issues (see below) which mean that we need to use ZK 3.5.3-beta at compile time even though we will use ZK 3.4.10 at runtime.

Here is an example of the javac verbose output (via maven):

{{[loading ZipFileIndexFileObject[/Users/sbilling/.m2/repository/org/apache/curator/curator-framework/4.0.0/curator-framework-4.0.0.jar(org/apache/curator/framework/api/transaction/CuratorOp.class)]]}}
{{[loading ZipFileIndexFileObject[/Users/sbilling/.m2/repository/org/apache/zookeeper/zookeeper/3.4.10/zookeeper-3.4.10.jar(org/apache/zookeeper/Op.class)]]}}
{{[loading ZipFileIndexFileObject[/Users/sbilling/.m2/repository/org/apache/zookeeper/zookeeper/3.4.10/zookeeper-3.4.10.jar(org/apache/zookeeper/Op$Create.class)]]}}
{{[loading ZipFileIndexFileObject[/Users/sbilling/.m2/repository/org/apache/zookeeper/zookeeper/3.4.10/zookeeper-3.4.10.jar(org/apache/zookeeper/Op$Delete.class)]]}}
{{[loading ZipFileIndexFileObject[/Users/sbilling/.m2/repository/org/apache/zookeeper/zookeeper/3.4.10/zookeeper-3.4.10.jar(org/apache/zookeeper/Op$SetData.class)]]}}
{{[loading ZipFileIndexFileObject[/Users/sbilling/.m2/repository/org/apache/zookeeper/zookeeper/3.4.10/zookeeper-3.4.10.jar(org/apache/zookeeper/Op$Check.class)]]}}
{{[loading ZipFileIndexFileObject[/Users/sbilling/.m2/repository/org/apache/curator/curator-framework/4.0.0/curator-framework-4.0.0.jar(org/apache/curator/framework/api/transaction/TypeAndPath.class)]]}}
{{[loading ZipFileIndexFileObject[/Users/sbilling/.m2/repository/org/apache/curator/curator-framework/4.0.0/curator-framework-4.0.0.jar(org/apache/curator/framework/api/SyncBuilder.class)]]}}
{{[loading ZipFileIndexFileObject[/Users/sbilling/.m2/repository/org/apache/curator/curator-framework/4.0.0/curator-framework-4.0.0.jar(org/apache/curator/framework/api/RemoveWatchesBuilder.class)]]}}
{{[loading ZipFileIndexFileObject[/Users/sbilling/.m2/repository/org/apache/curator/curator-framework/4.0.0/curator-framework-4.0.0.jar(org/apache/curator/framework/api/RemoveWatchesType.class)]]}}
{{[loading ZipFileIndexFileObject[/Users/sbilling/.m2/repository/org/apache/curator/curator-framework/4.0.0/curator-framework-4.0.0.jar(org/apache/curator/framework/api/RemoveWatchesLocal.class)]]}}
{{[loading ZipFileIndexFileObject[/Users/sbilling/.m2/repository/org/apache/curator/curator-framework/4.0.0/curator-framework-4.0.0.jar(org/apache/curator/framework/api/BackgroundPathableQuietlyable.class)]]}}{{java.lang.RuntimeException: com.sun.tools.javac.code.Symbol$CompletionFailure: class file for org.apache.zookeeper.Watcher$WatcherType not found}}

If I look through the source code I see that RemoveWatchesType imports and uses org.apache.zookeeper.Watcher$WatcherType in the 'ofType' method.

I don't understand how the backwards-compatibility is meant to work. It is also strange that this compile error only appears for a few of the modules in the project, so it must depend on which classes are used by the library and so which classes are loaded into the compile tree.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)