Uploaded image for project: 'Apache Storm'
  1. Apache Storm
  2. STORM-2978

The fix for STORM-2706 is broken, and adds a transitive dependency on Zookeeper 3.5.3-beta for projects that depend on e.g. storm-kafka

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Fixed
    • 2.0.0, 1.1.2, 1.2.1
    • 2.0.0, 1.1.3, 1.2.2
    • None

    Description

      Shinhyung Yang wrote on the mailing list:

      I have been running the Yahoo streaming benchmarks on Storm 0.9.7 [...] With the introduction of Storm 1.2.0, I decided to upgrade from 0.9.7 to 1.2.0. Currently I'm testing Yahoo streaming benchmark's topology on the new setup and I end up getting the following exceptions:

      [...]
      Caused by: org.apache.zookeeper.KeeperException$UnimplementedException: KeeperErrorCode = Unimplemented for /ad-events/7183b5b2-4971-41a1-b86d-0788f646bc64/partition_0
      [...]

      When fixing STORM-2706, I used the Storm parent's DependencyManagement section to force Zookeeper to version 3.4.6 everywhere in Storm. Sadly it turns out that this mechanism doesn't extend to external projects that depend on Storm components. While e.g. storm-kafka will use Zookeeper 3.4.6 when built as part of Storm, it will have a transitive dependency on Zookeeper 3.5.3-beta when an external project declares a dependency on storm-kafka.

      A quick google indicates that the "proper" way to export the transitive dependency versions to downstream projects would be with a BOM pom, i.e. we'd create a separate BOM project for Storm that exports our DependencyManagement, and users would then import the BOM. I'm not sure if we want to do that on master, but since it is a breaking change I don't think we should do this on 1.x.

      For 1.x (and maybe master?), we'll have to make sure that Curator dependencies always exclude Zookeeper, and all projects depending on Curator will have to explicitly declare the right Zookeeper dependency version.

      Attachments

        Activity

          People

            srdo Stig Rohde Døssing
            srdo Stig Rohde Døssing
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0h
                0h
                Logged:
                Time Spent - 50m
                50m