Uploaded image for project: 'Geode'
  1. Geode
  2. GEODE-7721

Unable to define Redis default regions with persistence

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.12.0
    • redis
    • None

    Description

      The Redis adapter is able to override the default region type; for example:

      --J=-Dgemfireredis.regiontype=PARTITION
      

      However, when using a default region type with PERSISTENCE (for example PARTITION_PERSISTENT, the following exception is thrown:

      [info 2020/01/17 10:59:03.392 PST <main> tid=0x1] Starting GeodeRedisServer on bind address 127.0.0.1 on port 6379
      
      [warn 2020/01/17 10:59:03.407 PST <main> tid=0x1] Cache service org.apache.geode.redis.internal.GeodeRedisService failed to initialize
      java.lang.NullPointerException
      	at org.apache.geode.internal.cache.LocalRegion.findDiskStore(LocalRegion.java:7473)
      	at org.apache.geode.internal.cache.PartitionedRegion.findDiskStore(PartitionedRegion.java:9182)
      	at org.apache.geode.internal.cache.LocalRegion.<init>(LocalRegion.java:602)
      	at org.apache.geode.internal.cache.LocalRegion.<init>(LocalRegion.java:546)
      	at org.apache.geode.internal.cache.PartitionedRegion.<init>(PartitionedRegion.java:758)
      	at org.apache.geode.internal.cache.GemFireCacheImpl.createVMRegion(GemFireCacheImpl.java:2923)
      	at org.apache.geode.internal.cache.GemFireCacheImpl.basicCreateRegion(GemFireCacheImpl.java:2867)
      	at org.apache.geode.internal.cache.GemFireCacheImpl.createRegion(GemFireCacheImpl.java:2851)
      	at org.apache.geode.cache.RegionFactory.create(RegionFactory.java:768)
      	at org.apache.geode.redis.GeodeRedisServer.initializeRedis(GeodeRedisServer.java:423)
      	at org.apache.geode.redis.GeodeRedisServer.start(GeodeRedisServer.java:379)
      	at org.apache.geode.redis.internal.GeodeRedisService.startRedisServer(GeodeRedisService.java:61)
      	at org.apache.geode.redis.internal.GeodeRedisService.init(GeodeRedisService.java:35)
      	at org.apache.geode.internal.cache.GemFireCacheImpl.initializeServices(GemFireCacheImpl.java:1416)
      	at org.apache.geode.internal.cache.GemFireCacheImpl.initialize(GemFireCacheImpl.java:1358)
      	at org.apache.geode.internal.cache.InternalCacheBuilder.create(InternalCacheBuilder.java:191)
      	at org.apache.geode.internal.cache.InternalCacheBuilder.create(InternalCacheBuilder.java:158)
      	at org.apache.geode.cache.CacheFactory.create(CacheFactory.java:142)
      	at org.apache.geode.distributed.internal.DefaultServerLauncherCacheProvider.createCache(DefaultServerLauncherCacheProvider.java:52)
      	at org.apache.geode.distributed.ServerLauncher.createCache(ServerLauncher.java:894)
      	at org.apache.geode.distributed.ServerLauncher.start(ServerLauncher.java:809)
      	at org.apache.geode.distributed.ServerLauncher.run(ServerLauncher.java:739)
      	at org.apache.geode.distributed.ServerLauncher.main(ServerLauncher.java:256)
      

      This is a lifecycle problem since the cache services (Redis is a CacheService) are started before the cache is fully and completely initiailized.

      Attachments

        Activity

          People

            echobravo Ernest Burghardt
            jens.deppe Jens Deppe
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: