Uploaded image for project: 'camunda BPM'
  1. camunda BPM
  2. CAM-9135

JobExecutor acquisition endless loop if waitTimeInMillis is larger then maxWait

    XMLWordPrintable

Details

    • Bug Report
    • Status: Open
    • L3 - Default
    • Resolution: Unresolved
    • 7.6.0, 7.7.0, 7.8.0, 7.9.0
    • 7.7.x, 7.8.x, 7.9.x
    • engine
    • None

    Description

      If the waitTimeInMillis is configured larger then the maxWait, which could accidentally happen if waitTimeInMillis is only set and the maxWait default is used, then
      the job acquisition timeout is repeatedly zero. This will end in an endless loop.

      Locally I was not able to clean shutdown the tomcat, I had to kill it.

      Reproduced with 7.9.0 tomcat distro and following bpm-platform.xml :

      <?xml version="1.0" encoding="UTF-8"?>
      <bpm-platform xmlns="http://www.camunda.org/schema/1.0/BpmPlatform" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.camunda.org/schema/1.0/BpmPlatform http://www.camunda.org/schema/1.0/BpmPlatform ">
      
        <job-executor>
        <job-acquisition name="default">
          <properties>
            <property name="maxJobsPerAcquisition">5</property>
            <property name="waitTimeInMillis">600000</property>
            <property name="lockTimeInMillis">400000</property>
          </properties>
        </job-acquisition>
        <properties>
          <!-- Note: the following properties only take effect in a Tomcat environment -->
          <property name="queueSize">3</property>
          <property name="corePoolSize">5</property>
          <property name="maxPoolSize">10</property>
          <property name="keepAliveTime">0</property>
        </properties>
      </job-executor>
      
        <process-engine name="default">
          <job-acquisition>default</job-acquisition>
          <configuration>org.camunda.bpm.engine.impl.cfg.StandaloneProcessEngineConfiguration</configuration>
          <datasource>java:jdbc/ProcessEngine</datasource>
      
          <properties>
            <property name="history">full</property>
            <property name="databaseSchemaUpdate">true</property>
            <property name="authorizationEnabled">true</property>
            <property name="jobExecutorDeploymentAware">true</property>
            <property name="historyCleanupBatchWindowStartTime">00:01</property>
          </properties>
      
          <plugins>
            <!-- plugin enabling Process Application event listener support -->
            <plugin>
              <class>org.camunda.bpm.application.impl.event.ProcessApplicationEventListenerPlugin</class>
            </plugin>
      
            <!-- plugin enabling integration of camunda Spin -->
            <plugin>
              <class>org.camunda.spin.plugin.impl.SpinProcessEnginePlugin</class>
            </plugin>
      
            <!-- plugin enabling connect support -->
            <plugin>
              <class>org.camunda.connect.plugin.impl.ConnectProcessEnginePlugin</class>
            </plugin>
      
          <!-- LDAP CONFIGURATION -->
          <!-- Uncomment this section in order to enable LDAP support for this process engine -->
          <!-- Adjust configuration, see ( http://docs.camunda.org/latest/guides/user-guide/#process-engine-identity-service-the-ldap-identity-service ) -->
          <!--
            <plugin>
              <class>org.camunda.bpm.identity.impl.ldap.plugin.LdapIdentityProviderPlugin</class>
              <properties>
      
                <property name="serverUrl">ldaps://localhost:4334/</property>
                <property name="acceptUntrustedCertificates">false</property>
                <property name="managerDn">uid=jonny,ou=office-berlin,o=camunda,c=org</property>
                <property name="managerPassword">s3cr3t</property>
      
                <property name="baseDn">o=camunda,c=org</property>
      
                <property name="userSearchBase"></property>
                <property name="userSearchFilter">(objectclass=person)</property>
      
                <property name="userIdAttribute">uid</property>
                <property name="userFirstnameAttribute">cn</property>
                <property name="userLastnameAttribute">sn</property>
                <property name="userEmailAttribute">mail</property>
                <property name="userPasswordAttribute">userpassword</property>
      
                <property name="groupSearchBase"></property>
                <property name="groupSearchFilter">(objectclass=groupOfNames)</property>
                <property name="groupIdAttribute">cn</property>
                <property name="groupNameAttribute">cn</property>
      
                <property name="groupMemberAttribute">member</property>
                <property name="sortControlSupported">false</property>
      
              </properties>
            </plugin>
            -->
      
            <!-- LDAP CONFIGURATION -->
            <!-- The following plugin allows you to grant administrator authorizations to an existing LDAP user -->
            <!--
            <plugin>
              <class>org.camunda.bpm.engine.impl.plugin.AdministratorAuthorizationPlugin</class>
              <properties>
                <property name="administratorUserName">admin</property>
              </properties>
            </plugin>
            -->
      
          </plugins>
      
      
        </process-engine>
      
      </bpm-platform>
      
      

      mgm-controller-panel

        This is the controller panel for Smart Panels app

        Attachments

          Activity

            People

              Unassigned Unassigned
              christopher.zell Christopher Zell
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:

                Salesforce