Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for alternative databases / Fork a BerkeleyDB-free version #4

Open
chmeyer opened this issue Aug 4, 2015 · 5 comments
Open
Assignees

Comments

@chmeyer
Copy link
Member

chmeyer commented Aug 4, 2015

Originally reported on Google Code with ID 4

I wanted to note that although 'jwktl' is covered by an Apache license, it has a deep
dependency on Berkeley DB. Oracle dual licenses Berkeley DB; its open source license
is now AGPL (see e.g. http://www.infoworld.com/d/open-source-software/oracle-switches-berkeley-db-license-222097)
 This makes it impractical to use jwktl in any commercial application, unless a very
costly commercial license (on a per-processor basis) is acquired from Oracle.

I have not dug into the source code yet, but I would like to have some informed opinion
on the feasibility of moving from using Berkeley DB to a more open licensed database
system - either purely relational such as the excellent H2, or the powerful XML database
system BaseX.

Reported by newintellectual on 2013-10-28 14:58:40

@chmeyer
Copy link
Member Author

chmeyer commented Aug 4, 2015

The "deep dependency" is known and explicitly mentioned on the homepage. I'm not an
expert in licensing models, but I have been told that releasing JWKTL under the Apache
license is OK also with the Berkeley DB dependancy, as long as this is made clear.
As such, I don't see a contradictory licensing.

Regarding your issue of using JWKTL for a commercial application: it is well possible
that the Oracle dependency does not allow this; I don't know exactly.

Switching to a different database is well possible and there are some first steps towards
supporting multiple databases already in the code. However, there's no quick solution
to that. I suggest keeping this ticket under the heading of adding support for a different
database and maybe splitting the licenses for API and database. 

Reported by chmeyer.de on 2013-12-04 16:05:33

  • Labels added: Type-Enhancement, Priority-Low
  • Labels removed: Type-Defect, Priority-Medium

@chmeyer
Copy link
Member Author

chmeyer commented Aug 4, 2015

I'd also like to see the support of other databases, as using BerkleyDB with Android
is kind of a mess

Reported by JohannesHomeier93 on 2015-01-26 19:46:15

@chmeyer
Copy link
Member Author

chmeyer commented Aug 4, 2015

MapDB (http://www.mapdb.org/) is an interesting alternative to Berkely DB. Apache license.

Reported by jobb@hcholm.net on 2015-07-01 07:15:58

chmeyer pushed a commit that referenced this issue Aug 5, 2015
@amirouche
Copy link

wiredtiger (documentation) is the successor of BerkeleyDB. It's GPLv2 or GPLv3 (like Linux) which means you can sell a service using a proprietary database based on wiredtiger if you do not ship the software. 64bits machine only.

@jberkel
Copy link
Contributor

jberkel commented Sep 22, 2015

looks like wiredtiger is now part of mongodb?

I'd advocate to add support for plain old fashioned SQL databases, and maybe use an abstraction layer such as jooq to make sure it can easily be used with all types of databases (e.g. sqlite for an embedded context, mysql/postgres for a server environment).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants