I want to create GeodeRedisServer what the regiontype is REPLICATE_PERSISTENT. According to the documentation:
gfsh> start server --name=server1 --redis-bind-address=localhost
--redis-port=11211 --J=-Dgemfireredis.regiontype=PARTITION_PERSISTENT
I use the command, but it is not successful. An error is :
gfsh>start server --name=server2 --server-port=40405 --redis-bind-address=192.168.16.36 --redis-port=6372 --J=-Dgemfireredis.regiontype=REPLICATE_PERSISTENT
Starting a Geode Server in /home/apache-geode-1.10.0/my_geode/server2...
The Cache Server process terminated unexpectedly with exit status 1. Please refer to the log file in /home/apache-geode-1.10.0/my_geode/server2 for full details.
Exception in thread "main" java.lang.NullPointerException
at org.apache.geode.internal.cache.LocalRegion.findDiskStore(LocalRegion.java:7436)
at org.apache.geode.internal.cache.LocalRegion.<init>(LocalRegion.java:595)
at org.apache.geode.internal.cache.LocalRegion.<init>(LocalRegion.java:541)
...
the log i can see:
[info 2019/12/10 15:55:11.097 CST <main> tid=0x1] _monitoringRegion_192.168.16.36<v1>41001 is done getting image from 192.168.16.36(locator1:62278:locator)<ec><v0>:41000. isDeltaGII is false
[info 2019/12/10 15:55:11.097 CST <main> tid=0x1] Initialization of region _monitoringRegion_192.168.16.36<v1>41001 completed
[info 2019/12/10 15:55:11.379 CST <main> tid=0x1] Initialized cache service org.apache.geode.connectors.jdbc.internal.JdbcConnectorServiceImpl
[info 2019/12/10 15:55:11.396 CST <main> tid=0x1] Initialized cache service org.apache.geode.cache.lucene.internal.LuceneServiceImpl
[info 2019/12/10 15:55:11.397 CST <main> tid=0x1] Starting GeodeRedisServer on bind address 192.168.16.36 on port 6379
[error 2019/12/10 15:55:11.402 CST <main> tid=0x1] java.lang.NullPointerException
[info 2019/12/10 15:55:11.405 CST <Distributed system shutdown hook> tid=0x15] VM is exiting - shutting down distributed system
but when i change the the regiontype is REPLICATE, success.
And I want to make my redis service highly available, now i can create redis adapter service, but once it hangs, it is not available. Is there any way to create a redis adapter cluster? I haven’t found an available method in the official documentation, I hope someone can help me, thank you very much。
As a side note, the version I tested was 1.9.0.
2
Answers
Unfortunately this appears to be broken and I don’t think there is a good workaround. I’ve opened a ticket for this: https://issues.apache.org/jira/browse/GEODE-7721
I think Jens is right that the REPLICATE_PERSISTENT policy seems to be broken.
You also asked “Is there any way to create a redis adapter cluster?” If you use the REPLICATE or PARTITION_REDUNDANT data policies, I think it should work. If you start additional geode servers they will make redundant copies of your data.
Do be aware that this adapter is still experimental and in development.