Details
-
Question
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
JMH (Java Microbenchmark Harness) seems to be the only sane approach to create benchmarks for Java libraries nowdays. Basically it allows to measure how fast or slow Java code works.
Apache Calcite uses JMH for that reason, however there's a question:
1) The license for JMH is GPL
2) Apache Calcite has a ubenchmark module (Maven module if that matters), which heavily relies on JMH to perform measurements. That is Calcite's code relies on JMH, and basically there's no alternative (there's no alternative that one can supply instead of JMH in order to make ubenchmark module work)
3) ubenchmark is currently included into the release, however in fact no-one expects that module to be used by the end users. In other words, ubenchmark module is typically used for research purposes only, and it is not touched in any way during normal operation of Apache Calcite
Here are the questions:
Q1) Is it a valid use for GPL-licensed JMH in Apache Calcite code?
Q2) Does ubenchmark code count as a derivative work on top of JMH?
Q3) Do we have to use GPL license for ubenchmark code?
Relevant directory in Apache Calcite repository that uses JMH:
Attachments
Issue Links
- is related to
-
HDDS-10021 Investigate how to use jmh-generator-annprocess legally
- Open