You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by br...@apache.org on 2011/10/04 17:34:25 UTC
svn commit: r1178833 - in /cassandra/branches/cassandra-1.0.0: CHANGES.txt
conf/cassandra-env.sh
Author: brandonwilliams
Date: Tue Oct 4 15:34:24 2011
New Revision: 1178833
URL: http://svn.apache.org/viewvc?rev=1178833&view=rev
Log:
Change default heap thresholds to max(min(1/2 ram, 1G), min(1/4 ram,
8GB)).
Patch by satishbabu, reviewed by brandonwilliams for CASSANDRA-3295
Modified:
cassandra/branches/cassandra-1.0.0/CHANGES.txt
cassandra/branches/cassandra-1.0.0/conf/cassandra-env.sh
Modified: cassandra/branches/cassandra-1.0.0/CHANGES.txt
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0.0/CHANGES.txt?rev=1178833&r1=1178832&r2=1178833&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0.0/CHANGES.txt (original)
+++ cassandra/branches/cassandra-1.0.0/CHANGES.txt Tue Oct 4 15:34:24 2011
@@ -11,6 +11,8 @@
* (Hadoop) check all interfaces for a match with split location
before falling back to random replica (CASSANDRA-3211)
* Fix stress COUNTER_GET option (CASSANDRA-3301)
+ * Change default heap thresholds to max(min(1/2 ram, 1G), min(1/4 ram, 8GB))
+ (CASSANDRA-3295)
1.0.0-rc2
Modified: cassandra/branches/cassandra-1.0.0/conf/cassandra-env.sh
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0.0/conf/cassandra-env.sh?rev=1178833&r1=1178832&r2=1178833&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0.0/conf/cassandra-env.sh (original)
+++ cassandra/branches/cassandra-1.0.0/conf/cassandra-env.sh Tue Oct 4 15:34:24 2011
@@ -40,7 +40,28 @@ calculate_heap_sizes()
system_cpu_cores="2"
;;
esac
- max_heap_size_in_mb=`expr $system_memory_in_mb / 2`
+
+ # set max heap size based on the following
+ # max(min(1/2 ram, 1024MB), min(1/4 ram, 8GB))
+ # calculate 1/2 ram and cap to 1024MB
+ # calculate 1/4 ram and cap to 8192MB
+ # pick the max
+ half_system_memory_in_mb=`expr $system_memory_in_mb / 2`
+ quarter_system_memory_in_mb=`expr $half_system_memory_in_mb / 2`
+ 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"
# Young gen: min(max_sensible_per_modern_cpu_core * num_cores, 1/4 * heap size)