Uploaded image for project: 'Qpid'
  1. Qpid
  2. QPID-3504

add the bdb backed store implementation for the Java broker to our ASF repo as an optional build module



    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.13
    • Component/s: Broker-J
    • Labels:


      Email to the dev list from a couple weeks ago:

      Hi all,

      As some of you no doubt already know the Java broker has a few configuration/message store implementations, with there currently being Memory, Derby (to be split into truly generic JDBC + Derby implementations at some point), and BDB Java Edition backed implementations of the interfaces. Although the store code itself for the last of these implementations carries the Apache Licence v2.0 it depends on a library licenced under the Sleepycat licence [1], which is classed as a Category X dependency here at Apache and so can't be distributed by the project. As a result, this store implementation has always been hosted elsewhere and I recently began looking into moving it to Apache Extras. Having done so I was instead left with the impression that it would actually be possible to move the code into our ASF repo. This was reinforced after further investigation lead me to instances of other Apache projects that currently are or have previously been doing roughly what I thought to be allowable. I have since enquired on this possibility over on legal-discuss and my question was answered positively [2].

      Based on this I propose to do the following:

      • Move the BDB based store code into our ASF repo as the basis of an optional component that is not compiled by the build process by default, and is not referred to in the shipping broker configuration.
      • Add targets to our Ant build to allow downloading the BDB jar (with warning that it is Sleepycat licenced) and building the associated store module.
      • Improve the documentation describing how users would update their configuration to use the optional component, and where to download the necessary BDB dependency it requires (again with warning it is Sleepycat licenced).

      I think this will be easier going forward both for us developers and for users, but this is a heads up in case there are those in the community particularly against such a change being made; if so please speak up now, as I hope to get round to doing this in the not too distance future.


      [1] http://www.oracle.com/technetwork/database/berkeleydb/downloads/jeoslicense-086837.html
      [2] http://s.apache.org/nP




            • Assignee:
              kwall Keith Wall
              robbie Robbie Gemmell
            • Votes:
              0 Vote for this issue
              0 Start watching this issue


              • Created: