We are running 4.16.01 OPDK and we'd like to know what is the recommended way to change configuration on Cassandra.
We're trying to increase Xmx to 16GB and to use G1GC instead of CMS. I tried a few different things without success so far.
1) trying to add tokens on the cassandra.properties under /opt/apige/customer/application though I couldn't find the tokens or values in the files that are in apigee-cassandra/conf.
2) change values and configuration on the file /opt/apigee/apigee-cassandra/conf/cassandra-env.sh I read this comment https://community.apigee.com/answers/24212/view.html though it doesn't explain exactly how to do it. I tried a few things but it didn't work. Also, if I try to change the values in cassandra-env.sh file once the process it's restarted it overrides all the values with the default ones.
One thing I noticed is that the logic on that file (below) is alway forcing the process to start with a maximum heap size of 8GB. In our case we have 48 GB on that box, we don't want to use all that for that process but 16GB would make more sense. I understand that this is a Cassandra recommendation but given our case we would like to bump up that number.
if [ "$half_system_memory_in_mb" -gt "1024" ] then half_system_memory_in_mb="1024" fi if [ "$quarter_system_memory_in_mb" -gt "8192" ] then quarter_system_memory_in_mb="8192" fi if [ "$half_system_memory_in_mb" -gt "$quarter_system_memory_in_mb" ] then max_heap_size_in_mb="$half_system_memory_in_mb" else max_heap_size_in_mb="$quarter_system_memory_in_mb" fi MAX_HEAP_SIZE="${max_heap_size_in_mb}M"
The change for the G1GC is because when we run nodetool repair on some nodes we're getting an OutOfMemoryError and we are hoping to avoid that with these changes.