Continuum
  1. Continuum
  2. CONTINUUM-1799

Thread count for schedule is not configurable

    Details

    • Type: Bug Bug
    • Status: Closed Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.1
    • Fix Version/s: 1.2
    • Component/s: None
    • Labels:
      None
    • Complexity:
      Intermediate
    • Number of attachments :
      0

      Description

      Their are 15 Quartz worker threads in the default configuration, In environment swhere the number of threads per process is limited, for example HP-UX 11.x's default limit is 64, this may prevent the including of Continuum in an existing Servlet engine, i.e. Tomcat. It appears the number of thread was configurable in components.xml, but that changed around 16-may-2006[1].

      This issue is a result of the thread titled 'Getting "java.lang.OutOfMemoryError: unable to create new native thread"Link to this message" on the continuum user mailing list.

      [1]http://svn.apache.org/viewvc/continuum/trunk/continuum-core/src/main/resources/META-INF/plexus/components.xml?r1=344177&r2=406895&diff_format=h

        Issue Links

          Activity

          Hide
          Paul Spencer added a comment -

          I coppied the org.apache.maven.continuum.scheduler.ContinuumScheduler component descriptor into classes/META-INF/plexus/application.xml per Emmanuel Venisse[1], but this did not change the number of threads. I then reviewed DefaultContinuumScheduler.java and found where the Quartz schedule was created, but it appears the properties sent to the factory may not have been populated.

          [1] http://markmail.org/message/zpuq4tm2luopyz4h

          Show
          Paul Spencer added a comment - I coppied the org.apache.maven.continuum.scheduler.ContinuumScheduler component descriptor into classes/META-INF/plexus/application.xml per Emmanuel Venisse [1] , but this did not change the number of threads. I then reviewed DefaultContinuumScheduler.java and found where the Quartz schedule was created, but it appears the properties sent to the factory may not have been populated. [1] http://markmail.org/message/zpuq4tm2luopyz4h
          Hide
          Paul Spencer added a comment -

          An enhancement would be to add Quartz schedule configuration to Continuums schedule configuration. That way the "DEFAULT_SCHEDULE" count be limited to threads as a way of limiting the impact on system resources. This also makes it easier to run Continuum without unpacking the war.

          Show
          Paul Spencer added a comment - An enhancement would be to add Quartz schedule configuration to Continuums schedule configuration. That way the "DEFAULT_SCHEDULE" count be limited to threads as a way of limiting the impact on system resources. This also makes it easier to run Continuum without unpacking the war.
          Hide
          Paul Spencer added a comment -

          The Affects Version/s should include 1.1. I selected 1.0.2 in error.

          Show
          Paul Spencer added a comment - The Affects Version/s should include 1.1. I selected 1.0.2 in error.
          Hide
          Olivier Lamy added a comment -

          As I see in the code the component org.apache.maven.continuum.scheduler.ContinuumScheduler is not used anymore.
          Only org.apache.maven.continuum.build.settings.SchedulesActivator is used.
          This means we have to add in application.xml in the webapp, a declaration of the default plexus-quartz component with the value :

          <property>
            <name>org.quartz.threadPool.threadCount</name>
            <value>7</value>
          </property>
          

          7 should be enough for Continuum.
          Fixed in rev 673519

          Show
          Olivier Lamy added a comment - As I see in the code the component org.apache.maven.continuum.scheduler.ContinuumScheduler is not used anymore. Only org.apache.maven.continuum.build.settings.SchedulesActivator is used. This means we have to add in application.xml in the webapp, a declaration of the default plexus-quartz component with the value : <property> <name> org.quartz.threadPool.threadCount </name> <value> 7 </value> </property> 7 should be enough for Continuum. Fixed in rev 673519

            People

            • Assignee:
              Olivier Lamy
              Reporter:
              Paul Spencer
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: