11 ms·
A Change in License for Berkeley DB
- DoubleMalt 13y agoWhile I don't have made up my mind completely about AGPL but lean to liking it, changing to it for an infrastructure library, is really a backstabbing move. Nice to see a company so consistently living up to its reputation. And one simply must appreciate the elegant irony of using a strong copyleft license as a dagger.
- davidw 13y ago> And one simply must appreciate the elegant irony of using a strong copyleft license as a dagger. That's always been one of the ways to make money from free software. Mysql did the same thing, and I think Qt did as well at some point in its history. If I recall correctly, even RMS sort of approves of it. Downvoters: go read some history, there's nothing factually incorrect in what I wrote above. The bozo proliferation seems to continue unabated here:-( Here's RMS himself: http://www.fsf.org/blogs/rms/selling-exceptions http://www.fsf.org/blogs/rms/selling-exceptions
- DoubleMalt 13y agoThe difference being that these projects had the restrictive licenses from early on. They did not change from permissive (and in the context of web service infrastructure GPL is actually a permissive license) to something more restrictive. On the contrary Qt changed the license from GPL to LGPL what definitely helped the proliferation (and the survival after the Nokia disaster). MySQL ... well moving this to AGPL would give MariaDB the final push it needs (if it still needs one). So they just let it rot. Too bad there was no equivalent project for BerkeleyDB.
- davidw 13y agoYou can always fork from the last version that had a license you found acceptable. Also, a relatively restrictive (not BSD!) license has been a feature of Berkeley DB for a while: http://en.wikipedia.org/wiki/Sleepycat_Software http://en.wikipedia.org/wiki/Sleepycat_Software
- moderation 13y agoOpenLDAP LMDB (http://symas.com/mdb/ http://symas.com/mdb/) may be an alternative via http://developers.slashdot.org/story/13/07/05/1647215/oracle-quietly-switches-berkeleydb-to-agpl http://developers.slashdot.org/story/13/07/05/1647215/oracle...
- jcrites 13y agoRegarding a Berkeley DB equivalent, how about Tupl? https://github.com/cojen/Tupl https://github.com/cojen/Tupl > Tupl is a high-performance, concurrent, transactional, scalable, low-level database. Intended to replace BerkeleyDB, Tupl supports true record-level locking. Unlike BerkeleyDB-JE, Tupl doesn't suffer from garbage collection pauses with very large databases. Tupl also includes support for cursors, upgradable locks, deadlock detection, hot backups, striped files, encryption, nested transaction scopes, and direct lock control.
- evgen 13y agoIn Java. For a low-level in-process library that most people link in to their actual app Java is completely unsuitable. Not quite sure how this replaces most of the BDB use-cases, but if you are going to run in another process then there are a whole host of options to consider. Tupl looks pretty interesting and it would be fun to have a reason to play with it, but this does not handle any of the cases where I turn to BDB.
- danieldk 13y agochanging to it for an infrastructure library, is really a backstabbing move. Well, Berkeley DB was already a copyleft library[1] (basically a BSD/MIT-style license with an extra copyleft clause). So, unless you had a commercial DB license, you already had to provide the source code for applications that used it. This 'just' extends it to applications that are used over a network. [1] From the Berkeley DB license: 3. Redistributions in any form must be accompanied by information on how to obtain complete source code for the DB software and any accompanying software that uses the DB software. The source code must either be included in the distribution or be available for no more than the cost of distribution plus a nominal fee, and must be freely redistributable under reasonable conditions. [...]
- ricardobeat 13y agoThe old license only required providing source code if you redistributed it. The new license requires it even if you never distribute anything, e.g., you use it in the backend of a SaaS app.
- davidw 13y agoSo fork it from the older version - that is still available under the old license.
- danieldk 13y agoYes, that's what I said, it's the definition of copyleft. For most companies the open source version was not acceptable anyway. E.g. most customers with sensitive information (such as government organizations) require on-site firewalled installations of your software anyway. So, you either pony up the relatively high per-CPU cost, or use a less restrictively licensed alternative such as leveldb. This change will mostly make a difference for web applications. But my point was that Berkeley DB was already licensed quite restrictively before, contrary to some people's beliefs.
- mjn 13y agoThat more or less just brings the license up to date with the original intent. You used to typically have to distribute apps if you wanted end-users to run them. Now you can half-distribute the app by only distributing the client half to browsers, and claim that that doesn't constitute redistribution. The AGPL, on the other hand, defines that kind of half-distribution as distribution.
- beedogs 13y agoWhat an absolutely horrible company Oracle is. They are without a doubt the biggest enemy to free and open source software, and I'll be glad when they're gone.
- reeses 13y agoI agree with much of this, but mainly on their sales and marketing tactics. However, what does your rationale for finding them reprehensible have to do with the article? The Affero GPL/GPLv3 is arguably the most open source license available.
- toyg 13y agoAs TFA says, the problem is the anti-tivoization clause, which creates issues for web developers, issues which weren't there with the previous licenses and that should push more people to buy commercial licenses as insurance.
- Flimm 13y agoNo, the article does not mention the anti-tivoization clause. The AGPL requires you to share the source code with users, even when the software is hosted on your machines. That's what differentiates AGPL from GPLv3.
- makomk 13y agoThe Affero GPL has a clause requiring the operators of network servers that use AGPL code to provide full source of the network server. Berkley DB is used in, amongst other places, Subversion - so when they next do a distro upgrade in a few months, a whole bunch of developers are going to find they're no longer license compliant and have no easy way of becoming license compliant.
- tome 13y agoSubversion is Apache licensed, so I fail to see how this would be a problem.
- chenster 13y agoWow, Oracle has did again. Oracle has proven again it is now the single most evil software company out there, surpassing Microsoft. What they are doing is to incrementally convert open source free software into their proprietary cash cow.
- dvirsky 13y agohow does this affect Python users? Berkeley is part of the default standard library and is installed by all Python users everywhere.
- stock_toaster 13y agoWasn't it removed in python3, and deprecated since 2.6?
- dvirsky 13y agostill included with the batteries in 2.7, which comes with most distros.
- Yver 13y agoOh that AGPL cash cow... Damn you Richard Stallman and your capitalistic ways!
- smnrchrds 13y agoIn Python 2.x there was a module for Berkley DB which is removed in Python 3 (bsddb module). I'm curious that since Berkley DB has always had a strong copyright license and it was not PSFL, how things worked legally. There is no mention in the docs[1] that if you use an import bsddb in your code you have to make it open-source. When they decided to remove it there was no mention of the license, just difficulty of maintenance[2]. So, was it possible to use Berkley DB without releasing your code as open-source before this change or was it because no one thought it was necessary to mention it in the docs? [1] http://docs.python.org/2/library/bsddb.html http://docs.python.org/2/library/bsddb.html [2] http://jessenoller.com/2008/09/04/stirred-up-dem-bees-should-bsddb-be-removed-from-python/ http://jessenoller.com/2008/09/04/stirred-up-dem-bees-should...
- toyg 13y agoI thought bsddb was not actually shipped with CPython, and had to be manually built (which was a pain and would invariably fail, IIRC). I guess people were supposed to check source docs.
- smnrchrds 13y agoNo, not really. This is what happens in my normal Python installation in Windows: Python 2.7.5 (default, May 15 2013, 22:43:36) [MSC v.1500 32 bit (Intel)] on win 32 Type "help", "copyright", "credits" or "license" for more information. >>> from bsddb import db >>> print db.DB_VERSION_STRING Berkeley DB 4.7.25: (May 15, 2008) >>> And this[1] works completely. Just replace bsddb3 with bsddb. [1] http://code.activestate.com/recipes/189060-using-berkeley-db-database/ http://code.activestate.com/recipes/189060-using-berkeley-db...
- justincormack 13y agoIt was only possible if you bought a commercial license from Oracle. You do check licenses for everything you import don't you - you should!
- smnrchrds 13y ago
- DrJokepu 13y agoI don't understand the sentiments in this thread. They own the thing. They do whatever they want with it. They have paid good money for it. Yet they have chosen to give it away as free software (with a license even Richard Stallman and the other FSF folks would approve). What is this sense of entitlement here on HN?
- nknighthb 13y agoYour comment demonstrates the difference between legal obligations and social obligations. Oracle has forced their way into and destroyed multiple communities. They have that legal right, but we also have the right to dislike them for it.
- valisystem 13y agoIt is not the change of license in itself that makes people think it is a questionable move, it is the strategic nature of this decision. When building a solution/product, you have to choose the components you use, and invest in it, in time and sometimes money, and its technical and legal specificities can have strong implications on your solution. License change is a hazard than can happen, and it is also one the harder to foresee, and when it happens to a product to you depend on it can have a big impact. And it is Berkeley DB, same house as BSD known for the ultra permissive license. I wouldn't have anticipated that, and I guess with many others. Given the fact that you may not be able to move to another product, and that your business may depend on the license permissiveness, it can be assimilated with totally legal, but nonetheless, extortion.
- DrJokepu 13y agoBerkeleyDB was distributed with the "Sleepycat License" since 1996 which is similar to GPL in terms of permissiveness so it's not like BerkeleyDB has been distributed with a permissive license in the past. If the Sleepycat License suits your needs but for some reason AGPL doesn't, why don't you just take the last Sleepycat-licensed version and keep using that? It still does everything it did when it was released. People could even fork it and make improvements to it.
- 13y ago
- deleted 13y ago[deleted]
- znowi 13y agoOracle is the Wall Street of IT industry. Toxic business practices and disregard to customer interest. Profit is the only imperative.
- digismack 13y agoIf you change a software license, are users of that software bound to the new terms if they don't "update" to the version of the software released with the updated terms?
- ExpiredLink 13y agoWhy do people complain when Oracle changes the license to a Free license? Just kidding. Denounce Oracle but also denounce the "Free" software zealots who invented unfair licenses like AGPL.
- icebraining 13y agoWhat makes the license "unfair"?
- ExpiredLink 13y agoTo be more precise: AGPL was invented by commercial software vendors to combine the aura of free and open software with a (largely unsuccessful) Shareware/Freemium business model.
- DigitalSea 13y agoOracle angering people with questionable money-driven greedy decisions? Yep, sure sounds like the Oracle we've come to know over the years. While the licence in itself isn't bad, making such a big change like that and essentially forcing people to buy licences is a dog move.
- anon1385 13y agoPersonally I think this is great news. Great news for free software, great news for users, great news for the AGPL. So very few web apps are open source, despite so many of the people who develop them claiming to support free/open source software. It seems that the only way to make the web open source is to force the hand of the developers, and that means we need to start pushing copyleft licences like the AGPL. The GPL was created for a different age. So much of the software people use now runs on a different machine; we can't continue to ignore this loophole. BDB has had a commercial licence available for a long time, this move just closes a loophole that people were exploiting to use BDB in non-free software without contributing back. Additionally, to the people saying 'oracle are only doing this to make money', this is one of the ways you are supposed to make money/fund the development of free software. RMS talks about it here: http://www.fsf.org/blogs/rms/selling-exceptions http://www.fsf.org/blogs/rms/selling-exceptions I consider selling exceptions an acceptable thing for a company to do, and I will suggest it where appropriate as a way to get programs freed. -- RMS
- pyre 13y ago> So very few web apps are open source, > despite so many of the people who > develop them claiming to support > free/open source software. So, if they use GPL'd software, and contribute back to it, but don't release their own software as GPL, then they are just a bunch of 'evil fat cats' that are leeching off of FOSS?
- jasonlotito 13y agoReally? Do you have to start playing that game here? Can't you at least try to contribute in a meaningful way before you start acting like this? Let me do the same to you. > 'evil fat cats' He didn't say "evil fat cats", so why do you feel the need to lie and say he did? Only a worthless troll would use those words, and words like "leeching" in place of discussing what he actually said. So really? Is that what you want from HN? Couldn't you have spent a minute and phrased that without being so rude? Regardless, that's not what he said, so your point doesn't make sense.
- 13y ago
- __alexs 13y agoThose people who think this is some sort of enormously evil event that will kill BerkeleyDB because the AGPL is the evilest most restrictive free software license ever should probably read Section 13 here http://www.gnu.org/licenses/agpl.html http://www.gnu.org/licenses/agpl.html This pretty much only affects you if you are running some weird internal forked version that has upstream merged into it regularly. I don't get the impression that this is a common situation for BDB users. (Although since Oracle did it it's probably inherently evil anyway of course.)
- pron 13y agoYou are absolutely right about the license, but I think you're confusing Oracle with Google. Oracle aren't evil, they just want your money. It's Google that wants to know everything about your life so that it can give you an IV line of ads. Google - evil, Oracle - just greedy :)
- qwerta 13y agoMy startup works on free alternative (apache licensed) db engine. When I saw title I was really woried they would change license to more liberal. That would affect our future sales seriously. But this is great new for us! :-)
- apendleton 13y agoFortunately for those not keen on the new licensing scheme, it seems like there are some other solid options on the market now for on-disk embedded key-value storage, under a variety of licenses: LevelDB, Kyoto Cabinet, and the new LSM library from sqlite4.
- halayli 13y agoI feel this post has shown that many don't understand what AGPL is or just assumed that because the article is about Oracle and licensing then it got to be evil, let's bash Oracle!