We now properly throw an IllegalArgumentException. Previously, the update object was attempted to being mapped and this failed as the update object was null.
We now inspect the value type of a SettableValue before attempting to convert a value into an array type. This check allows applying custom conversions to map objects to a simple type and bypassing the array conversion afterwards.
Previously, we just relied on the property type without checking whether the value qualifies for array type conversion.
Added test and tweaked documentation to clarify that other numeric types beyond `Integer` are admissible.
Split a test in order to have meaningful test names.
Original pull request: #238.
We now support returning the affected rows count for repository query methods that are annotated with the Modifying annotation. A modifying query method can return either the affected row count, a boolean value whether at least one row was updated or suppress value emission.
@Query("UPDATE person SET firstname = :firstname where lastname = :lastname")
Mono<Integer> setFixedFirstnameFor(String firstname, String lastname);
Original pull request: #238.
We now emit a TransientDataAccessException if an object with a provided Id yields no affected rows. Such an arrangement is typically an indicator for a bug where calling code expects the object to be inserted with a provided Id.
By adding an entry for pluginRepository pointing to https://repo.spring.io/plugins-release, Spring Data R2dbc should be able to successfully pull down the proper version of artifactory-maven-plugin.
ConnectionFactoryInitializer.execute(…) now calls .block() to subscribe to database initializer and database cleaner.
Previously, the resulting Mono wasn't subscribed to and the database was not initialized.