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

Cleanup JRubyPuppet-related resources during shutdown



    • Type: Improvement
    • Status: Closed
    • Priority: Normal
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: SERVER 2.3.0
    • Component/s: None
    • Labels:
    • Template:
    • Epic Link:
    • Sub-team:
    • Story Points:
    • Sprint:
      Server Jade 2015-12-30, Server Jade 2016-01-13, Server Jade 2016-01-27


      Currently, there is no logic in Puppet Server's master service to halt the initialization of JRubyPuppet instances and cleanup any previously initialized ScriptingContainers when the Puppet Server service is shut down.

      For the JRubyPool initialization case, this logic would be nice for improving performance for short-run Puppet Server service executions when the pool is intended to hold more than one instance. For example, if the pool is intended to eventually have 8 instances in it but a shutdown is requested while we're in the middle of initializing the first instance - a situation that might happen frequently during testing - it could be nice to have Puppet Server, on completing the initialization of the first instance, detect that a shutdown has been requested and bail out on initializing any further instances.

      Also, when the shutdown occurs, it would be nice to ensure that any threads spun up for initialization have terminated before control is returned to the Trapperkeeper framework to complete the shutdown process and that any ScriptingContainers previously initialized during the startup of the service have been terminated. Both would serve to avoid leaving resources around between service executions. These could help for repeated restarts for repl development - avoiding memory leaks / frequent needs to restart the process running the repl - and for avoiding any bleed through from one service execution to another which may have an adverse effect on unit test runs.


          Issue Links



              matthaus Past Haus
              jeremy.barlow Jeremy Barlow
              QA Contact:
              Erik Dasher
              0 Vote for this issue
              5 Start watching this issue



                  Zendesk Support