Redis Labs-created modules have been moved to a new – not open source – license, trying to tackle problems not really new to open source projects.
Redis Source Available License, short RSAL, was introduced this week only months after Redis Labs had changed the module’s license to a Apache License 2.0 modified with Commons Clause, in order to maintain “sustainable business in the cloud era”. This construct, according to RedisLabs’ Yiftach Shoolman, however led to confusion amongst users, who sometimes thought they were only bound by the terms of the Apache license, and stirred up discussions over the term “substantial” used in the Common Clause.
For now RSAL applies to the modules RediSearch, RedisGraph, RedisJSON, RedisML, and RedisBloom, while the Redis core for example stays open source under the 3-Clause-BSD license. RSAL lets developers use the software protected by it, modify its source code, integrate it with an application and also distribute or sell the latter.
This however doesn’t hold true for applications that can be categorised as a database product, which includes databases, caching engines, stream processing engines, search engines, indexing engines, or machine learning/deep learning/artificial intelligence serving engines. Anyone interested in building such a thing with the modules mentioned has to buy a commercial licence.
The restriction of commercial use is meant to keep cloud providers like AWS “from gaining commercial benefit from software that was not developed by them”. Redis Labs isn’t the only company changing their licensing strategy in order to make repackaging their offerings into proprietary services harder (and therefore helping their own commercial interests). Confluent and, maybe most prominently, MongoDB have taken similar steps, which in MongoDB’s case lead to some vendors dropping the database from their products.
Earlier this week Redis Labs announced a $60 million series E funding, apparently getting it to a total of $146 million in raised capital, without yet being “cash positive”. Along with that went a quote by Redis Labs CEO Ofer Bengal, saying that the “original concept of open source has to be fixed because it isn’t suitable anymore”.
While it might not be the concept that needs fixing as much as its implementation (or even the expectations towards it), open source veterans on social media were quick to point out, that the trouble Redis and others face had been there pretty much from the beginning and isn’t only due to cloud providers either. Many of them in fact have been quite active in the open source community recently. But while the idea of working together on a project to improve quality and having it accessible to a wide audience seems appealing, not every open source project has the luxury of being Kubernetes with a variety of large companies putting in engineering time.
Creator of serverless functions project OpenFaaS Alex Ellis knows the dilemma, stating on Twitter that “very few OpenFaaS end-users give back with contributions and none of them sponsor the project even with a dime despite huge time and engineering savings and dependency on the project in their solutions” – something at least a few maintainers will be able to sympathise with.
The fact that the system isn’t working out quite the way many imagined in the beginning is not only reflected by the license changes in recent years on the commercial end of the spectrum, but also on the human side since for example core contributors keep stepping back from or at least questioning their role because they feel underappreciated at best.
If there’s a way to fix all of this, it surely doesn’t look like it has become any easier.