Cockroach Labs has become the latest open source vendor to run for cover from AWS and other cloud vendors, by relicensing its CockroachDB under the Business Source License.
In a post explaining the move, the companies’ founders wrote “We’re witnessing the rise of highly-integrated providers take advantage of their unique position to offer “as-a-service” versions of OSS products, and offer a superior user experience as a consequence of their integrations.” They cited AWS’ forked version of ElasticSearch.
So CockroachDB will shift from the Apache License version 2 it has used since launch, and adopt “an extremely permissive version of the Business Source Licence.”
So how permissive is the new license? The company goes on to say that ”users can scale CockroachDB to any number of nodes. They can use CockroachDB or embed it in their applications (whether they ship those applications to customers or run them as a service). They can even run it as a service internally.”
But, they continue, “The one and only thing that you cannot do is offer a commercial version of CockroachDB as a service without buying a license.”
The firm added that “In order to continue building a strong open source core, this restriction has a rolling time limit: three years after each release, the license converts to the standard Apache 2.0 license.”
This, they argued, would “simultaneously create a competitive database as a service (DBaaS) while also providing a guarantee that the core product will become pure open source.”
In the lengthy statement on the move, CockroachDB goes through the other options. Copy left models, as adopted by MongoDB with the Server Side Public License, “do both too much and too little.” Users are “scared off” by the publication requirements, while “competitors are both willing and able to publish enough code to enable their own services, without providing any commensurate benefit to the authors of the core technology.”
A three-tiered model of open source core, enterprise components, and a “middle ground” of features that are available at no cost “creates bad incentives for our company” by producing “pressure to avoid creating new features in the core and do as much work as possible in the non-open-source components”.
The new license will kick in with v19.2, which is due in October, “adding the restriction that it may not be used in a commercial database-as-a-service (DBaaS) without a license agreement with Cockroach Labs.” Enterprise features will continue to use the Cockroach Community License, and the use of enterprise features will require a license agreement.
Cockroach Labs is just the latest open source vendor to rethink its licensing position as they watch the likes of AWS take their free code, and build a paid-for managed service around it. As well as ElasticSearch, MongoDB opted for the Server Side Public License option, and drew user ire for its pains. More importantly, perhaps, RedHat nixed support for MongoDB in RHEL 8.
The announcement comes just days after the company touted its Multi Cloud Database Partnership programme, citing partnerships with Google Cloud Platform, Microsoft Azure, IBM Cloud, Rackspace, Oracle Cloud, Digital Ocean, and OpenShift…and AWS.
CockroachDB watchers on Twitter were split on the move, with some expressing support, while others were…less enamoured.