Uploaded image for project: 'Puppet Server'
  1. Puppet Server
  2. SERVER-365

improve default value for heap size



    • Improvement
    • Status: Closed
    • Normal
    • Resolution: Won't Do
    • None
    • SERVER 1.y, SERVER 2.y
    • None
    • None
    • Major


      In OSS Puppet Server we ship with config files that set the max heap size to 2G, no matter what.

      Today, with the default number of JRuby instances set to num-cpus + 2, that doesn't make much sense. If the user installs Puppet Server on a machine that has a large number of cores, we're virtually guaranteed to get an OOM.

      In SERVER-364, we are considering lowering the default number of JRuby instances to a max of 4 or 6, but less for machines with a low number of CPU cores. If we do that, 2G may be a reasonable max heap size for machines that end up with the default of 6 jrubies, but for the smaller machines, it'd be nice if we could default to a lower value.

      To achieve this we'd need to be able to detect the number of cores and/or total system RAM during installation, and modify the defaults/sysconfig file to set an appropriate value during installation. If we can figure out a sane way to do that, we still need to decide on a formula for calculating the value based on the number of JRubies. We'll probably need to do some perf testing against SERVER-325 as input to this, because it's possible that that ticket will significantly reduce the RAM requirements overall.


        Issue Links



              Unassigned Unassigned
              chris Chris Price
              Erik Dasher Erik Dasher
              0 Vote for this issue
              3 Start watching this issue



                Zendesk Support