[elephant-devel] QDBM Support

Robert L. Read read at robertlread.net
Thu Feb 14 03:42:14 UTC 2008


I am not a lawyer either, but I believe there is some confusion.  You
correctly give a link to the most recent versions of BDB, which is
released by Oracle under quite different conditions than the original
sleepycat license.

By my reading of this license,

http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicense.html

1) whether your purpose is commercial or not has no relevance.
2) If you were to redistribute a binary or source that uses BDB, you
would have to redistribute the code that you wrote in source form along
with it.

There is some question as to whether presenting a website constitutes
"redistribution", but I think it does not.

Therefore, in contrast to some of the things mentioned in this thread,
it seems to me that:

1)  You can build a website against BDB without paying for it.
2)  If you ship, release, or distribute a product, for free or for
money, that uses BDB (I would interpret that to mean "uses in any way"),
you must either distribute the source code or purchase some other
license from Oracle.

This is especially confusing because in fact I wrote the CL-SQL backend
(some 3 years ago) not to avoid THIS license, but to avoid the SLEEPYCAT
license.   After the CL-SQL backend was a part of Elephant, Oracle
bought Sleepycat and released BDB under this current license.

In my non-professional opinion, the original purpose I had, of
presenting a website with Elephant without purchasing BDB, has now
evaporated.  So it goes.  That work still has a bit of value, since it
enabled the postmodern backend and might help other integrations, and
someone could very well wish to redistribute a product with Elephant.
However, from the point of view of hosting a website, I think one can
currently use BDB.

After I wrote the CL-SQL backend, Ian Eslick cleaned things up a great
deal and then implemented the class-based persistence (as opposed to the
raw-btree model that was present from the beginning.)  Then Alex and
Henrik wrote the postmodern backend, which is much better than the
CL-SQL backend.

Although a lot of this is subjective, I think the fact that we can
operate against multiple backends remains a great strength, and that
will be true even after a LISP-native backend is implemented.  



On Wed, 2008-02-13 at 09:41 +0100, Leslie P. Polzer wrote:
> > I recently purchased LispWorks for Windows. Downloaded Elephant and was able to make it
> > work with BDB. Thanks (and congrats!) for such a nice package. I have heard that QDBM is
> > much better than BDB in terms of performance and does not have the same licensing issues
> > (there are royalty payments for embeding BDB in an application).
> 
> IANAL, but the licensing FAQ has a case that can be made be analogous to Elephant:
> 
> “Do I have to pay for a Berkeley DB license to use it in my Perl or Python scripts?
> 
> No, you may use the Berkeley DB open source license at no cost. The Berkeley DB open
> source license requires that software that uses Berkeley DB be freely redistributable.
> In the case of Perl or Python, that software is Perl or Python, and not your scripts.
> Any scripts you write are your property, including scripts that make use of Berkeley DB.
> None of the Perl, Python or Berkeley DB licenses place any restrictions on what you may
> do with them.”[1]
> 
> Also, when we talk about QDBM, I must ask: do you know of its successor, Tokyo Cabinet[2]?
> 
>   Leslie
> 
> 
> [1] http://www.oracle.com/technology/software/products/berkeley-db/htdocs/licensing.html
> [2] http://tokyocabinet.sourceforge.net/
> 




More information about the elephant-devel mailing list