Spring-data-commons 2.0+ support for spring-data-aerospike

spring

#1

Hi,

As far as I have checked there is no support for spring-data-commons 2.0. Is there any future plan to introduce spring-data-commons 2.0?

Are there any implementations available with spring-data-commons 2.0?

I have to use spring-data-aerospike in a project with spring-data-commons 2.0 version.


#2

There are other Aerospike users who are involved with Spring Data, for example playtika/spring-data-aerospike. Keep an eye on that repo.

Similarly, I want to encourage you to fork and contribute to the repo. This is what open source is about - you may be using Aerospike Community Edition for free, and one way to continue a healthy community around Aerospike and Spring Data is to contribute code, bug reports, documentation.


#3

I have just completed the upgrade to spring-data 2.0. The repository can be found forgeAI/spring-data-aerospike .

The following is an overview of the changes

NOTE: spring-data has changed method signatures. Below are some examples

  • save(collection) to saveAll(collection)
  • exists(string) to existsById(string)
  • findOne to findById, return methods are Optional

AerospikeKeyValueAdapter. AbstractKeyValueAdapter method signature changed.

AerospikeMappingContext. AbstractMappingContext method signature changed.

CachingAerospikePersistentProperty BasicAerospikePersistentProperty AnnotationBasedPersistentProperty constructor signature changed

AerospikeRepositoryFactory. RepositoryFactorySupport method signature changed.

SimpleAerospikeRepository

Package location of MappingException changed.

assertJ would randomly fail on conditions that should pass. IE an example is in the AerospikeTemplateIndexTests.findMultipleFiltersFilterAndQualifier. The method would return the expected results but the assertion would still fail.

Pom Changes Aerospike -> 4.1.5 Aerospace-helper -> 1.2.2 Springdata-commons -> 2.0.5.RELEASE Springdata-keyvalue -> 2.0.5.RELEASE Spring-boot-starter-test -> 2.0.0.RELEASE Spring-cloud-starter -> 2.0.0.M6 Embedded-aerospike -> 1.6 Spring-cloud-dependencies -> Finchley.M9 Log4j-over-slf4j -> 1.7.25

Required to include the spring milestone repository. Spring-cloud-starter 2.0.0.M6 and spring-cloud-dependencies are required for testing. Log4j-over-slf4j was also required for testing (might be required at runtime) as some direct log4j apis are used.