MongoDB Major Change to Licensing
-
MongoDB has been one of my favourite products in recent years, and we run on it here at ML. But MongoDB has changed their licensing model and for developers, this is pretty hugely significant.
Scylla looks at the new MongoDB open source license.
If you are an open source developer, this change probably does not affect you. But if you are a SaaS vendor looking at building software that uses MongoDB somewhere, you'd better get a lawyer looking over this license and how it applies to you.
In theory, the license change is to limit the ability to offer MongoDB as a service. But the wording appears to be vastly broader than that potentially catching all code in its sweep that is going to talk to MongoDB, including things you would often not own yourself.
Perhaps the license will change again, perhaps it has no viability in court, perhaps a lot of things. But what is certain is that using MongoDB now has a large legal overhead that doesn't exist for normal databases. The "open source makes licensing cheap" mantra no longer applies here.
-
Seems like a great opportunity to grab the last big of AGPL'd code and fork to a more viable licensing model.
-
What this change is reflective of is any business who creates a SaaS platform using FOSS, but not disclosing the platform portions of it.
Essentially this would be a lot like the Scale Server platform discussion that we had some time ago.
There was a topic here specifically about "well where are the tools to have the Scale interface" to which the reply was "that is what you are buying, not just the hardware".
Vendors like Amazon etc, who use FOSS to build their gigantic environments, are being forced to contribute back in ways beyond just the initial bits of code they use to create their platforms.
-
@DustinB3403 said in MongoDB Major Change to Licensing:
Vendors like Amazon etc, who use FOSS to build their gigantic environments, are being forced to contribute back in ways beyond just the initial bits of code they use to create their platforms.
"Being forced" by whom? No major vendor offers MongoDB as a service. What this impacts is potentially anyone using MongoDB as their database. It risks making MongoDB a non-viable vendor to work with.
Even if I use MongoDB in house, it is not clear when I can do so. And it is not clear how I am affected by the license if I get MongoDB hosted by someone else, like MongoDB themselves.
-
@DustinB3403 said in MongoDB Major Change to Licensing:
Vendors like Amazon etc, who use FOSS to build their gigantic environments, are being forced to contribute back in ways beyond just the initial bits of code they use to create their platforms.
I think that you are thinking of the AGPL. AGPL forces you to contribute back things you add to the software in question. That's what MongoDB is leaving, not what they are moving towards.
-
Full wording of "Clause 13"
- Offering the Program as a Service.
If you make the functionality of the Program or a modified version available to third parties as a service, you must make the Service Source Code available via network download to everyone at no charge, under the terms of this License. Making the functionality of the Program or modified version available to third parties as a service includes, without limitation, enabling third parties to interact with the functionality of the Program or modified version remotely through a computer network, offering a service the value of which entirely or primarily derives from the value of the Program or modified version, or offering a service that accomplishes for users the primary purpose of the Program or modified version.
“Service Source Code” means the Corresponding Source for the Program or the modified version, and the Corresponding Source for all programs that you use to make the Program or modified version available as a service, including, without limitation, management software, user interfaces, application program interfaces, automation software, monitoring software, backup software, storage software and hosting software, all such that a user could run an instance of the service using the Service Source Code you make available.
https://www.mongodb.com/licensing/server-side-public-license
-
@scottalanmiller said in MongoDB Major Change to Licensing:
@DustinB3403 said in MongoDB Major Change to Licensing:
Vendors like Amazon etc, who use FOSS to build their gigantic environments, are being forced to contribute back in ways beyond just the initial bits of code they use to create their platforms.
I think that you are thinking of the AGPL. AGPL forces you to contribute back things you add to the software in question. That's what MongoDB is leaving, not what they are moving towards.
Did you read the article?
A company, let’s call it CatWalkingStartup, uses MongoDB OSS to store cat walking paths. It’s definitely not a MongoDB competitor and not a database service, thus a valid use of the license. MongoDB as a service usage 2. A company, let’s call it BetterBiggerCloud, offers MongoDB as a service without contributing back a single line of code. This is not a valid use according to SSPL. In such a case, BetterBiggerCloud will either need to pay for an Enterprise license or open all of their code base (which is less likely to happen).```
-
@DustinB3403 said in MongoDB Major Change to Licensing:
@scottalanmiller said in MongoDB Major Change to Licensing:
@DustinB3403 said in MongoDB Major Change to Licensing:
Vendors like Amazon etc, who use FOSS to build their gigantic environments, are being forced to contribute back in ways beyond just the initial bits of code they use to create their platforms.
I think that you are thinking of the AGPL. AGPL forces you to contribute back things you add to the software in question. That's what MongoDB is leaving, not what they are moving towards.
Did you read the article?
A company, let’s call it CatWalkingStartup, uses MongoDB OSS to store cat walking paths. It’s definitely not a MongoDB competitor and not a database service, thus a valid use of the license. MongoDB as a service usage 2. A company, let’s call it BetterBiggerCloud, offers MongoDB as a service without contributing back a single line of code. This is not a valid use according to SSPL. In such a case, BetterBiggerCloud will either need to pay for an Enterprise license or open all of their code base (which is less likely to happen).```
Yes, did you?
-
@scottalanmiller Yes, and it very clearly is stating that they are going towards a 1) Buy a enterprise license or 2) provide the complete source code for your service.
AGPL says you should contribute back to the bits you are using. This SSPL is saying you need to contribute everything or purchase a license.
-
@DustinB3403 said in MongoDB Major Change to Licensing:
@scottalanmiller Yes, and it very clearly is stating that they are going towards a 1) Buy a enterprise license or 2) provide the complete source code for your service.
Exactly. So if you use MongoDB in the normal way, you risk having to open source everything that gets data from it. That's insane and no one on the market has ever offered a database like that. This is completely unique in the open source world.
-
@DustinB3403 said in MongoDB Major Change to Licensing:
AGPL says you should contribute back to the bits you are using. This SSPL is saying you need to contribute everything or purchase a license.
So you see the insanity and why this makes MongoDB no longer viable for pretty much anyone.
-
Redis tried something similar, and now the good way to use it is with GoodFORM.
MongoDB is ripe for being forked and left in the dust of history.
-
MongoDB's future
-
https://www.theregister.co.uk/2018/10/16/mongodb_licensning_change/
"MongoDB, which offers its database as a service, will not be playing by the same rules, however. "Because we own the IP, we are not obligated to open source our underlying management infrastructure," explained Ittycheria, who added that MongoDB has invested more than $300m developing its software."
Basically... customers of MongoDB have to go open source, but MongoDB doesn't have to. Which is fine and legal, but don't pretend this is about being open, this is about shutting down the ecosystem.
-
@scottalanmiller said in MongoDB Major Change to Licensing:
@DustinB3403 said in MongoDB Major Change to Licensing:
@scottalanmiller Yes, and it very clearly is stating that they are going towards a 1) Buy a enterprise license or 2) provide the complete source code for your service.
Exactly. So if you use MongoDB in the normal way, you risk having to open source everything that gets data from it. That's insane and no one on the market has ever offered a database like that. This is completely unique in the open source world.
No. . . only if I was selling a service that used MongoDB as the backend would I be forced to purchase a license or Open Source everything. If I ran a mongoDB internally and not sold it as a service I wouldn't have to contribute or open a single line of code for whatever I built internally that uses MongoDB.
@scottalanmiller said in MongoDB Major Change to Licensing:
@DustinB3403 said in MongoDB Major Change to Licensing:
AGPL says you should contribute back to the bits you are using. This SSPL is saying you need to contribute everything or purchase a license.
So you see the insanity and why this makes MongoDB no longer viable for pretty much anyone.
I never said otherwise.
-
@scottalanmiller said in MongoDB Major Change to Licensing:
https://www.theregister.co.uk/2018/10/16/mongodb_licensning_change/
"MongoDB, which offers its database as a service, will not be playing by the same rules, however. "Because we own the IP, we are not obligated to open source our underlying management infrastructure," explained Ittycheria, who added that MongoDB has invested more than $300m developing its software."
Basically... customers of MongoDB have to go open source, but MongoDB doesn't have to. Which is fine and legal, but don't pretend this is about being open, this is about shutting down the ecosystem.
You have to be extra stupid to do something like this. Open source projects especially ones with APIs thrive on large ecosystems of all types. If suddenly you create a window for only a few dozen notable projects, and many barely at that, suddenly there's no reason for people to keep using it and thus providing API support in languages and so on.
-
@DustinB3403 said in MongoDB Major Change to Licensing:
No. . . only if I was selling a service that used MongoDB as the backend would I be forced to purchase a license or Open Source everything. If I ran a mongoDB internally and not sold it as a service I wouldn't have to contribute or open a single line of code for whatever I built internally that uses MongoDB.
You sure? "As a service" doesn't imply selling it to third parties. Software is delivered "as a service" internally, too. And it's not just selling, but using. This license is broad, very broad. So broad that I think you might be completely missing how it risks tainting literally everything.
-
@scottalanmiller said in MongoDB Major Change to Licensing:
@DustinB3403 said in MongoDB Major Change to Licensing:
No. . . only if I was selling a service that used MongoDB as the backend would I be forced to purchase a license or Open Source everything. If I ran a mongoDB internally and not sold it as a service I wouldn't have to contribute or open a single line of code for whatever I built internally that uses MongoDB.
You sure? "As a service" doesn't imply selling it to third parties. Software is delivered "as a service" internally, too. And it's not just selling, but using. This license is broad, very broad. So broad that I think you might be completely missing how it risks tainting literally everything.
This change specifically targets MongoDB as a service that a (not mongoDB company) is selling a service and profiting from.
-
@DustinB3403 said in MongoDB Major Change to Licensing:
@scottalanmiller said in MongoDB Major Change to Licensing:
@DustinB3403 said in MongoDB Major Change to Licensing:
No. . . only if I was selling a service that used MongoDB as the backend would I be forced to purchase a license or Open Source everything. If I ran a mongoDB internally and not sold it as a service I wouldn't have to contribute or open a single line of code for whatever I built internally that uses MongoDB.
You sure? "As a service" doesn't imply selling it to third parties. Software is delivered "as a service" internally, too. And it's not just selling, but using. This license is broad, very broad. So broad that I think you might be completely missing how it risks tainting literally everything.
This change specifically targets MongoDB as a service that a (not mongoDB company) is selling a service and profiting from.
Intent isn't the same thing as result, especially if you scare people away with vague language... like GPL 3 and Linux
-
The basic tenants of open source licensing has always been that you be allowed to operate the product. But the MongoDB license restricts, heavily, the ability to use the software.
This is what is unique. Before, all licenses that addressed this talked about contributing back from products that use the code not the binaries. This is a binary use restriction that is unique and a show stopper.
It also means that, for example, if you wanted to host some software for your users, and you connected it to MongoDB, that you are forced to release that code - even if you didn't write it or have rights to it! See the difficulty here?