Uploaded image for project: 'Ignite'
  1. Ignite
  2. IGNITE-9878

Failed to start near cache after second call of getOrCreateCache

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 2.6
    • None
    • cache
    • None

    Description

      Repeated call of `Ignite.getOrCreateCache(CacheConfiguration<K, V> cacheCfg, NearCacheConfiguration<K, V> nearCfg)` lead the following exception:

      javax.cache.CacheException: class org.apache.ignite.IgniteCheckedException: Failed to start near cache (local node is an affinity node for cache): ignite-test-near-rep
      	at org.apache.ignite.internal.processors.cache.GridCacheUtils.convertToCacheException(GridCacheUtils.java:1305)
      	at org.apache.ignite.internal.IgniteKernal.getOrCreateCache(IgniteKernal.java:2995)
      	at org.apache.ignite.reproducers.cache.NearCacheIssueReproducer.testRepeatedGetOrCreateCache(NearCacheIssueReproducer.java:24)
      Caused by: class org.apache.ignite.IgniteCheckedException: Failed to start near cache (local node is an affinity node for cache): ignite-test-near-rep
      	at org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCacheChangeRequest(GridCacheProcessor.java:5235)
      	at org.apache.ignite.internal.processors.cache.GridCacheProcessor.dynamicStartCache(GridCacheProcessor.java:3621)
      	at org.apache.ignite.internal.processors.cache.GridCacheProcessor.dynamicStartCache(GridCacheProcessor.java:3560)
      	at org.apache.ignite.internal.IgniteKernal.getOrCreateCache(IgniteKernal.java:2983)
      	... 23 more
      

      Also, if a cache is specified in the IgniteConfiguration, `Ignite#getOrCreateNearCache` will fail with the following exception:

      javax.cache.CacheException: class org.apache.ignite.IgniteCheckedException: Failed to start near cache (a cache with the same name without near cache is already started)
      	at org.apache.ignite.internal.processors.cache.GridCacheUtils.convertToCacheException(GridCacheUtils.java:1305)
      	at org.apache.ignite.internal.IgniteKernal.getOrCreateNearCache(IgniteKernal.java:3072)
      	at org.apache.ignite.reproducers.cache.NearCacheIssueReproducer.testGetOrCreateNearCache(NearCacheIssueReproducer.java:32)
      Caused by: class org.apache.ignite.IgniteCheckedException: Failed to start near cache (a cache with the same name without near cache is already started)
      	at org.apache.ignite.internal.IgniteKernal.checkNearCacheStarted(IgniteKernal.java:3085)
      	at org.apache.ignite.internal.IgniteKernal.getOrCreateNearCache(IgniteKernal.java:3067)
      	... 23 more
      

      The test is attached NearCacheIssueReproducer.java. The workaround is to put near cache config into cache configuration `CacheConfiguration.setNearConfiguration`.

      Attachments

        1. NearCacheIssueReproducer.java
          2 kB
          Roman Guseinov
        2. NearCacheTest.java
          2 kB
          Valentin Kulichenko

        Activity

          People

            guseinov Roman Guseinov
            guseinov Roman Guseinov
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated: