Skip to content

Releases: susom/database

database-4.0

16 Dec 06:42
Compare
Choose a tag to compare

Features and bug fixes

  • Basic support for Google BigQuery queries (read-only). DDL/DML operations may or may not work. See #41 for details.
  • Removed Sql.finalSql to make debugging easier (#50).
  • Updated HikariCP from version 2.7.1 to 4.0.3.
  • Updated slf4j-api from version 1.7.25 to 1.7.32.
  • Fixed some bugs based on SonarCloud analysis (#64).

Quality improvements

  • Updated lots of internally used Maven plugins and dependencies (including Vert.x 4).
  • Travis now runs tests with Java 8 and 11 and with multiple versions of PostgreSQL, SQL Server, and Oracle.
  • Use the now public Oracle JDBC drivers.
  • Incorporated SonarCloud into the Travis build.
  • Fix tests so SonarCloud code coverage works.

database-3.3

11 Sep 05:27
Compare
Choose a tag to compare

Features and bug fixes

  • Avoid a NullPointerException if DatabaseProvider.get() is never called (#35)

database-3.2

02 Jul 21:15
Compare
Choose a tag to compare

Features and bug fixes

  • The Schema class has changed the default behavior for sequence creation to disable caching. Previous behavior was to explicitly cache 20 values, and attempts to disable that on Oracle and SQL Server did not work (#32). This new default is safer in case applications rely on monotonically increasing values, but be aware it can significantly impact performance. If your application supports caching of a particular sequence, you should set the cache() value explicitly.
  • The Oracle flavor now explicitly specifies that character lengths are in characters, not bytes (#30). This helps when moving data between different database flavors.
  • Upgrade PostgreSQL JDBC driver to 42.2.5 (#31). This new version includes security fixes.

database-3.1

07 Feb 00:28
Compare
Choose a tag to compare

Features and bug fixes

  • Better support for integers and floats in MS SQL server.
  • Support for LocalDate (date without timezone).
  • Bugfix for MS SQL server Boolean evaluation.
  • Bugfix for commitAndClose/rollbackAndClose.
  • Upgrade most third-party libraries.

database-3.0

19 Apr 17:57
Compare
Choose a tag to compare

Features and bug fixes

  • Remove dependency on javax.inject.Provider (667a4c5). This is a backwards incompatible change. You should update your code to use java.util.function.Supplier instead. If you were already using lambdas (which you should), you might not notice this change.
  • Avoid silently truncating column names when reading them from a result set (#15). This may now result in errors if column aliases exceed the limit for the database (either naturally or because we automatically assigned a missing/duplicate alias).
  • Add variable substitutions in config values via ConfigFrom.substitutions() (#11).
  • Add transactReturning() variations to the database providers to avoid having to use ugly tricks like array wrappers (d058c5a).
  • Add convenience methods for reading properties from a "standard" set of files (c37ca9f).
  • Add on delete cascade as an option for foreign keys in Schema (#6).
  • Upgrade most third-party libraries.

database-2.5

21 Sep 20:52
Compare
Choose a tag to compare

Features and bug fixes

  • Prevent silly errors by throwing an exception if you call Schema.Table.addPrimaryKey(name, column...) and the first parameter matches a column name
  • Improve the logic for foreign key indexing to avoid redundant multi-column indexes

Compatibility note: in some cases the indexes generated by Schema may differ, so you may want to check schemas generated with older versions and drop the redundant indexes to stay in sync.

database-2.4

29 Aug 06:29
Compare
Choose a tag to compare

Features and bug fixes

  • Actually create unique indexes when Index.unique() is called
  • Fail fast when VertUtil is invoked incorrectly so we get meaningful stack traces

Compatibility note: in some cases the indexes generated by Schema will now be unique, so you may want to check schemas generated with older versions and recreate the non-unique indexes to stay in sync.

database-2.3

27 Jul 21:52
Compare
Choose a tag to compare

Features and bug fixes

  • Add SqlSelect.fetchSize() to allow control over the fetch size for queries (7506b00)
  • Make sure parameters are logged for calls to argClobString()
  • Update to PostgreSQL driver version 42.1.1 (3f85839)
  • Update to HikariCP version 2.6.1 (10669b5)
  • Update to Vert.x version 3.4.2
  • Minor documentation fixes

database-2.2

05 Apr 19:02
Compare
Choose a tag to compare

Features and bug fixes

  • Make sure the result handler runs on the correct Vert.x context (422b310).
  • Add When.sqlserver() convenience method (3c93e8c).
  • Update Vert.x to 3.3.3 (ca2485c).
  • Minor documentation fixes.

database-2.1

06 Oct 04:43
Compare
Choose a tag to compare

Features and bug fixes

  • Verify DriverManager can access the database driver and avoid problems with multiple drivers on the classpath (e3e7242).
  • Add hooks for closing the database pool (e41c437).
  • Always set the HikariCP pool name to avoid errors inside security sandbox (6757a36).
  • Use a custom Vert.x worker pool with size matching database pool (284cdf6) to prevent blocking when all pool connections are in use. This improves concurrency and allows segregating slow/fast pools (see the VertxServerFastAndSlow.java demo).
  • Make MDC handling in Vert.x more robust (993ca1c).
  • Relax the requirement to check results after insert (1773d66) and update (1e77028).
  • Add Config.sources() to provide visibility into where configuration values come from (c9effc7).
  • Add exception type ConfigInvalidException for bad configuration values (361660b).
  • Added ConfigFrom.firstOf() as an alternative to Config.from() (e991c98).
  • Config extends Function<String, String> and Supplier<Config> to allow reduced coupling by passing Config as a standard Java interface and added ConfigFrom.other() to convert these back to Config (e991c98).
  • Add ConfigFrom.env() to allow picking up values from System.getenv() (e991c98).
  • Add ConfigFrom.rename(), .includeKeys(), and .excludeKeys() for more control over filtering keys/values (e991c98).
  • Remove ConfigStrings interface, replacing it with Function<String, String> (e991c98).

Documentation and demo

  • Clean up documentation a bit (923f158).
  • Clean up the Vert.x sample and fix metrics and logging (85ef013).
  • Fix demo build so checker works (57496f0).
  • Add a simple Jetty example (55ec810).
  • Add sample I was using to verify worker pool concurrency (ead5530).

Third-party libraries