Hi all
Following Awasum’s review / sign-off, I’ve merged in PR1990 to remove the
unsupported / unmaintained Drizzle JDBC driver.
This PR has been “in progress” for a long time - most of the excellent work was
done by IOHacker (Victor Romero)
This PR achieves the following changes:
- Drops the unsupported / unmaintained Drizzle JDBC driver from the distribution
- Integration tests and Docker use MariaDB instead of MySQL as the database
- Integration tests and bootRun use MariaDB JDBC connector instead of Drizzle
- Docker image includes MariaDB JDBC connector instead of MySQL and Drizzle
connectors
- Licenses and README updated to reflect the fact that we no longer bundle
Drizzle
As we are not allowed to bundle MariaDB JDBC driver in the binary distribution,
this introduces the following breaking changes to how you start Fineract:
- No changes if you use bootRun - the driver is automatically downloaded when
you run “./gradlew bootRun”
- No changes if you use the Docker images - the driver is automatically
downloaded into the images being built
- If you use the JAR file, you need to download a JDBC driver of your choice
and pass the location of the driver on the command line. For example:
wget
https://downloads.mariadb.com/Connectors/java/connector-java-2.7.3/mariadb-java-client-2.7.3.jar
java -Dloader.path=. -jar
fineract-provider/build/libs/fineract-provider.jar
- If you use external Tomcat, you need to add a JDBC driver in Tomcat’s
classpath.
Finally you choose to use another JDBC driver than MariaDB, you naturally need
to update the relevant JDBC properties / environment variables to point to the
right driver & connection string.
I think this is a long overdue change but I agree it might cause some pain. If
you hit any problems, please ask for help here on the dev list and let’s work
out together how to best address any issues you’ve encountered.
Regards
Petri