Commit Graph

1614 Commits

Author SHA1 Message Date
Mark Paluch
809bc52660 Prepare 4.0 M2 (2022.0.0).
See #1210
2022-03-21 16:34:37 +01:00
Mark Paluch
0dd8398873 Remove usage of SocketUtils in test code.
See #1228
2022-03-17 15:30:22 +01:00
Mark Paluch
3a93a83b17 Create a new conversion context for projection properties.
We now create a new conversion context to ensure that we use the correct property type to avoid type retention when mapping complex objects within a projection.

Closes #1240
2022-03-16 16:47:34 +01:00
Mark Paluch
30438906b1 Upgrade to Cassandra driver 4.14.0.
Closes #1238
2022-03-10 11:26:54 +01:00
Mark Paluch
d0cfcac4a7 Polishing.
Add cassandra-thrift as test dependency since it was removed with the Cassandra 3.11.11 upgrade.

See #1234
2022-03-04 15:03:14 +01:00
Mark Paluch
f7edf29d19 Use prepare(String) for Prepared Statement preparation to prevent bind values from being cached.
We now also apply query options from the initial statement to the bound statement by copying these if query options are set.

Closes #1213
2022-03-04 15:03:14 +01:00
Mark Paluch
e8d3da2d6f Introduce customization hook for PreparedStatementHandler.
CassandraTemplate and its asynchronous and reactive variants now define a createPreparedStatementHandler() template method to customize CQL preparation and binding.

Closes #1237
2022-03-04 15:03:14 +01:00
Mark Paluch
d0a7f21fcf Lazily obtain CQL for exception translation.
Closes #1236
2022-03-03 09:17:01 +01:00
Sam Lightfoot
01629f5ab5 Add missing log guard to ReactiveCqlTemplate.
Closes #1235
2022-03-03 09:17:01 +01:00
Mark Paluch
fba813b27e Upgrade to Apache Cassandra 3.11.12.
Closes #1234
2022-02-23 14:26:00 -06:00
Mark Paluch
abf7349c6c Update CI properties.
See #1210
2022-02-23 14:25:52 -06:00
Christoph Strobl
fe0f58f0a2 Update copyright year to 2022.
See: #1224
2022-02-23 14:25:46 -06:00
Rémi Bleuse
2818350227 Fix typo in Update documentation.
See #1223
2022-02-23 14:25:38 -06:00
Oliver Drotbohm
43e482e6a7 Adapt to changes in entity creation metadata APIs in Spring Data Commons. 2022-02-16 08:51:44 +01:00
Greg L. Turnquist
3f02e39d89 Update CI properties.
See #1210
2022-02-15 09:00:21 -06:00
Mark Paluch
d5106b6be3 Polishing.
Reorder methods and query options alphabetically. Update since tags.

See #1220
2022-02-15 14:23:10 +01:00
samueldlightfoot
96d7e9fc9d Extend supported fields for query options.
We now accept idempotent, routingKey, and routingKeyspace options.

Closes #1220
2022-02-15 14:21:16 +01:00
Mark Paluch
93f7c57201 Polishing.
Use ClassUtils.isAssignableValue(…) instead of ClassUtils.resolvePrimitiveIfNecessary(target).isAssignableFrom(…).

Closes #1218
2022-02-14 11:55:22 +01:00
Mark Paluch
3ae40aae35 Use Reactor's expand(…) operator for recursive pagination.
We now use Mono.expand(…) to recursively read paginated results. Using Mono.expand(…) avoids deep stack recursion and therefore doesn't lead to StackOverflowError.

Closes #1215
2022-02-14 11:48:56 +01:00
Mark Paluch
2b49f2c50a Introduce caching for commonly used model computations.
We now cache the outcome for column types, AnnotatedType lookuop by annotation and bypass the conversion service by considering primitive type wrappers in the assignability check.

Closes #1218
2022-02-11 15:38:32 +01:00
Mark Paluch
e6ef5caf58 Polishing.
Update assertions after Kotlin upgrade.

See #1217
2022-02-11 11:01:51 +01:00
Mark Paluch
3514a03db0 Adapt repository to List-based interface variants.
Closes #1217
2022-02-11 11:01:51 +01:00
Greg L. Turnquist
6a31901ad7 Use Harbor Proxy for containers.
Leverage internal infrastructure for pulling Docker container images. Reduces pressure on Docker Hub and reduces risk of hitting rate limits.

Closes #1216.
Related https://github.com/spring-projects/spring-data-build/issues/1630.
2022-02-07 13:43:02 -06:00
Mark Paluch
f5bcdbc558 Polishing.
Extract Artifactory credentials into properties file.

See #1214
2022-02-04 09:44:31 +01:00
Mark Paluch
fdefabe1a9 Polishing.
Extract docker credentials into properties file.

See #1214
2022-02-04 09:30:09 +01:00
Greg L. Turnquist
75244b4187 Externalize build properties.
By reading a properties file from an external location, it is possible to inject a consistent set of properties from Spring Data Build. This also supports repeatable builds.

Closes #1214.
2022-02-04 09:24:49 +01:00
Mark Paluch
e371f0cc72 After release cleanups.
See #1206
2022-01-14 14:43:22 +01:00
Mark Paluch
f036cd5645 Prepare next development iteration.
See #1206
2022-01-14 14:43:19 +01:00
Mark Paluch
c2573bf188 Release version 4.0 M1 (2022.0.0).
See #1206
2022-01-14 14:35:09 +01:00
Mark Paluch
a7f3256ecb Prepare 4.0 M1 (2022.0.0).
See #1206
2022-01-14 14:34:46 +01:00
Jens Schauder
4e753a9cfa Remove Eclipse Non-Javadoc comments.
Closes #1204
2022-01-05 14:02:59 +01:00
Mark Paluch
d9740d04ef Post-rebase. 2022-01-04 14:31:30 +01:00
Mark Paluch
73fffec6a7 Polishing.
Remove unused pom elements.

See #1169
2022-01-04 14:28:14 +01:00
Mark Paluch
3407d2aa51 Migrate to Jakarta EE 9.
Closes #1169
2022-01-04 14:28:14 +01:00
Mark Paluch
5b16a60430 Drop support for RxJava 1 and 2.
Closes #1173
2022-01-04 14:28:13 +01:00
Mark Paluch
d23b956473 Polishing.
Remove lingering dockerfiles. Use custom docker image for Cassandra build and OpenJDK 17 image for artifact deployment.

Apply consistent formatting. Add missing since tag.

See #1170
2022-01-04 14:28:13 +01:00
John Blum
89c7579fcd Prepare for Jakarta EE 9 migration.
Re-arrange spring dependency declarations.

Remove unnecessary javax.interceptor:javax.interceptor-api and javax.annotation:javax.annotation-api dependencies.

Declare jakarta.enterprise:jakarta.enterprise.cdi-api:3.0.0 dependency (commented out) in preparation for Jarkata EE 9 migration.

Add exclusion on the javax.inject:javax.inject dependency to the org.apache.cassandra:cassandra-all dependency.

Resolves #1170.
2022-01-04 14:28:13 +01:00
John Blum
1b19a877a4 Enable Jenkins CI build to fork Docker Containers (due to the use of Testcontainers) inside Docker.
See #1170.
2022-01-04 14:28:13 +01:00
John Blum
42a0011913 Change default Maven build profile to 'testcontainers-cassandra'.
The Cassandra server using the Apache Cassandra API CassandraDaemon class in the SD Cassandra EmbeddedCassandraServerHelper class does not run by default on Java 17.

See #1170.
2022-01-04 14:28:13 +01:00
John Blum
f332ea3e3f Declare 'cassandra.version' JVM System property on integration test JVM command-line.
This property is used to get the desired Cassandra Testcotnainer at our supported Apache Cassandra version when running SD Cassandrta integration tests using Testcontainers (profile).

Refactor CassandraDelegate to resolve the Cassandra version property used in the Testcontainers Docker Image name.

Refactor EmbeddedCassandraServerHelper to guard against NPEs when resolving the RPC address (InetAddress) hostname.

Add logging to distinguish which method (Embedded or Testcontainers) to start the Cassandra server.

See #1170.
2022-01-04 14:28:13 +01:00
John Blum
cd0e66935e Upgrade to Apache Cassandra 3.11.11.
See #1170.
2022-01-04 14:28:12 +01:00
John Blum
9210308ed0 Fix test failures related to Joda Time and ThreeTenBackport type mappings.
Refactor and cleanup codebase.

See #1170.
2022-01-04 14:28:11 +01:00
John Blum
967f67449e Remove support for Joda Time and ThreeTenBackport.
See #1170.
2022-01-04 14:27:47 +01:00
John Blum
03c4ef9553 Adapt to API changes in Spring Data Commons 3.0.
See #1170.
2022-01-04 14:27:17 +01:00
John Blum
b5f3b8eed8 Upgrade Jenkins CI build to JDK 17.
The Jenkinsfile will need to be edited once AdoptOpenJDK releases OpenJDK17.

See #1170.
2022-01-04 14:27:17 +01:00
John Blum
29114cb1b6 Prepare the Spring Data for Apache Cassandra 4.0.x branch.
Upgrade to Spring Data Build parent 3.0.0-SNAPSHOT.

Upgrade to Spring Data Commons 3.0.0-SNAPSHOT.

Set version to 4.0.0-SNAPSHOT.

See #1170.
2022-01-04 14:27:17 +01:00
Mark Paluch
ac0ca35a7f Adopt to Mockito changes.
Closes #1203
2022-01-04 14:27:05 +01:00
Christoph Strobl
61f30591d9 Polishing.
Reduce method visibility and update javadoc.

See: #1202
2021-12-15 13:01:33 +01:00
Mark Paluch
0e895395bf Add support for direct and nested projections.
Projections are now fully supported from within the CassandraConverter that can materialize DTO and interface projections without using intermediate entities.

Closes: #1202
2021-12-15 13:01:07 +01:00
CharlesZKQ
1c02d4cb6b Use stable sort order in CriteriaUnitTests.
Closes #1199
2021-12-07 09:04:38 +01:00