spring-bootignitecrud-repository

IgniteRepository CrudRepository have the same erasure, yet neither overrides the other


I have implemented ignite repository as below -

    @Repository
    @RepositoryConfig(cacheName = "ObjCache")
    public interface ObjCacheRepository extends IgniteRepository<ObjDTO, Long> {
    }

IgniteConfig

   `@Slf4j
    @Configuration
    @EnableIgniteRepositories
    public class IgniteConfig {
    @Bean
    public Ignite igniteInstance(Ignite ignite) {
      return ignite;
    }

    @Bean
    public IgniteConfigurer configurer() {
      return igniteConfiguration -> {
        CacheConfiguration cache = new CacheConfiguration("objCache");
        cacheContracts.setIndexedTypes(Long.class, ObjDTO.class);
       igniteConfiguration.setCacheConfiguration(cache);
    };
  }
  }`

Using below dependency for ignite

ignite depedencies

Spring boot version dependencies are of 2.5.2

spring boot dependecies

While running the project i get below error -

java: name clash: deleteAllById(java.lang.Iterable<? extends java.lang.Long>) in org.springframework.data.repository.CrudRepository and deleteAllById(java.lang.Iterable<java.lang.Long>) in org.apache.ignite.springdata22.repository.IgniteRepository have the same erasure, yet neither overrides the other

I have read in threads related to similar issue that ignite spring data_2.0 resolves the issue but i am already using ignite spring data_2.2 2.9.1. I am struggling to find the right solution so please suggest.


Solution

  • At this moment ignite-spring-data incompatible with spring data 2.5 and higher. It's known issue which will be fixed in one of the upcoming releases. https://issues.apache.org/jira/browse/IGNITE-16124