NIFI-15398 Replace Apache Derby with HSQLDB for Testing#10703
Closed
exceptionfactory wants to merge 1 commit intoapache:mainfrom
Closed
NIFI-15398 Replace Apache Derby with HSQLDB for Testing#10703exceptionfactory wants to merge 1 commit intoapache:mainfrom
exceptionfactory wants to merge 1 commit intoapache:mainfrom
Conversation
650f5f5 to
06571d6
Compare
- Added Embedded Database Service module with shared implementation for testing - Added Apache Derby to banned dependencies - Removed Apache Derby dependencies
06571d6 to
0628af7
Compare
pvillard31
approved these changes
Dec 30, 2025
Contributor
pvillard31
left a comment
There was a problem hiding this comment.
Everything is LGTM, +1, merging.
Thanks @exceptionfactory for working through those very welcome changes and making it work on the Windows build ;)
mark-bathori
pushed a commit
to mark-bathori/nifi
that referenced
this pull request
Feb 5, 2026
- Added Embedded Database Service module with shared implementation for testing - Added Apache Derby to banned dependencies - Removed Apache Derby dependencies Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com> This closes apache#10703.
yisun-anetac
pushed a commit
to Eng-Anetac/nifi
that referenced
this pull request
Apr 4, 2026
- Added Embedded Database Service module with shared implementation for testing - Added Apache Derby to banned dependencies - Removed Apache Derby dependencies Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com> This closes apache#10703.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
NIFI-15398 Replaces references to Apache Derby with HSQLDB for testing. The Apache DB project retired Derby on 2025-10-10 and is no longer providing updates.
HSQLDB implements an extensive set of JDBC features, making it an ideal option for testing relational database features. HSQLDB is licensed under a flavor of BSD-3, which is less of a concern as a test-scoped dependency, but provides optimal compatibility with Apache Software License Version 2. Several other Apache projects including Hop, Log4j, and Shiro use HSQLDB for testing.
Changes include adding Apache Derby to the list of banned dependencies, removing all references to Derby libraries, and adjusting some test SQL statements to work with HSQLDB. The majority of test SQL statements remain unchanged. Part of the changes include consolidating similar usage of Database Connection Pool implementations in a shared
nifi-embedded-database-servicemodule. Some modules do not use the DBCP Service interface and still require direct references to the HSQLDB JDBC Driver.Runtime code changes are minimal, and include adjusting a check for the
errorCodefield onSQLExceptioninPutSQL, allowing negative values as returned from some HSQLDB exceptions.Tracking
Please complete the following tracking steps prior to pull request creation.
Issue Tracking
Pull Request Tracking
NIFI-00000NIFI-00000Pull Request Formatting
mainbranchVerification
Please indicate the verification steps performed prior to pull request creation.
Build
./mvnw clean install -P contrib-checkLicensing
LICENSEandNOTICEfilesDocumentation