David Handermann created NIFI-15398:
---------------------------------------

             Summary: Replace Apache Debry with HSQLDB for Testing
                 Key: NIFI-15398
                 URL: https://issues.apache.org/jira/browse/NIFI-15398
             Project: Apache NiFi
          Issue Type: Improvement
          Components: Extensions
            Reporter: David Handermann
            Assignee: David Handermann


The [Apache Derby|https://db.apache.org/derby/] project was retired on 
2025-10-10 and will not be receiving future updates. Usage in Apache NiFi is 
limited to unit tests, so there is no direct impact on operational components.

There are several embedded relational databases available for Java, including 
[H2|https://www.h2database.com/], 
[SQLite|https://github.com/xerial/sqlite-jdbc], and 
[HSQLDB|https://hsqldb.org/].

Apache NiFi had historical usage of H2 for both runtime and testing features, 
but has shifted away from H2 due to a combination of compatibility issues 
between minor versions and some implications of copyleft licensing. These 
issues do not necessarily impact usage for unit tests, but prompted an 
evaluation of alternatives.

SQLite has a solid foundation in a native library implementation with a JNI 
wrapper. HSQLDB is implemented in Java without native libraries, and is 
licensed under a flavor of BSD-3, which is a Category A license according to 
the Apache Software Foundation. Other Apache projects such as Hop, Log4j, and 
Shiro also depend on HSQLDB for testing.

For the purpose of testing JDBC-based components, HSQLDB provides a strong 
solution that implements an extensive set of capabilities, requiring minimal 
changes to existing test code in Apache NiFi.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to