facebook / rocksdb

A library that provides an embeddable, persistent key-value store for fast storage.
http://rocksdb.org
GNU General Public License v2.0
27.86k stars 6.2k forks source link

utilities/transactions/lock/range/range_tree/lib lacks license applicability information #11970

Open georgthegreat opened 8 months ago

georgthegreat commented 8 months ago

While RocksDB is itself explicitly dual licensed under GPL-2.0-only OR Apache-2.0, it vendors parts of Percona database in utilities/transactions/lock/range/range_tree/lib.

The named directory contains three licenses being

There is no additional text covering the applicability of these licenses. Assuming the worst case (that is, logical AND between all three licenses) would lead to license violation, as Apache-2.0 licensed sofrware can not depend on GPL (as explained here).

Is it possible to make some kind of clarification? If not, is it possible to rewrite this code to avoid violations?

ajkr commented 8 months ago

See also #10478, #11086. I realize those are different as they assume there is a choice among the three licenses, except for one file. Whereas this issue questions whether there is a choice among the three licenses in any range_tree/lib file. But we can hopefully clean up these issues in one shot some day

ajkr commented 8 months ago

Have you considered asking for clarification in Percona's repo, or point us to any clarifying text in their repo? I'd be fine with pulling from there. https://github.com/percona/PerconaFT

georgthegreat commented 8 months ago

I will create a symmetric issue in Percona repo. Let's keep this issue open for a while.

georgthegreat commented 8 months ago

@ajkr, actually there is a clarification already: https://github.com/percona/PerconaFT/blob/master/README.md

License

Portions of the PerconaFT library (the 'locktree' and 'omt') are available under the Apache version 2 license. PerconaFT is available under the GPL version 2, and AGPL version 3. See COPYING.APACHEv2, COPYING.AGPLv3, COPYING.GPLv2, and PATENTS.

If I read it correctly, portability, ft and util directories are not available under neither Apache-2.0 nor any compatible license. Unfortunately, Percona does not have issues on the GitHub, so I am unable to ask for clarification.

ajkr commented 8 months ago

If I read it correctly, portability, ft and util directories are not available under neither Apache-2.0 nor any compatible license.

Seems inconsistent with the changes in https://github.com/percona/PerconaFT/commit/d5178f513c0b4144a5ac9358ec0f6a3b54a28e76, which we pulled

Unfortunately, Percona does not have issues on the GitHub, so I am unable to ask for clarification.

Oh ok, thanks for checking

georgthegreat commented 8 months ago

Ok, let's see if the clarification PR will be merged: https://github.com/percona/PerconaFT/pull/468