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

Job acquisition wait time is reset after hint

    Details

      Description

      Currently if the engine is started, for example in an application server as shared engine, the job executor is also started.

      After start up the executor finds no jobs to acquire and suspends for 5 seconds, after 5 seconds
      he tries to acquire new jobs. If no jobs are found he suspends for 10 seconds and so on until the max suspend time is reached, which is 60 seconds.

      If now a process is started, with for example a boundary timer event, the job executor gets an hint, but since the timer is in the future he can't acquire the job and suspends for 60 seconds again.

      Is the timer duration less then a minute this represents a problem because the timer is executed after 60 seconds, since the job executor suspends for this time.

      AT:

      • The job executor waiting time should be reseted after a hint was given to the initial waiting
        time. So if again the job executor acquire no jobs he suspends for 5 seconds and tries again
        not for 1 minute!

        Issue Links

          Activity

          Hide
          christopher.zell Christopher Zell added a comment -

          Add link to commit, since commit message has no reference.

          Show
          christopher.zell Christopher Zell added a comment - Add link to commit, since commit message has no reference.
          Hide
          joern.horstmann@zalando.de Jörn Horstmann added a comment -

          We also ran into this issue and would love to use a release version of 7.4.9 with the fix.

          The scenario for us was that we had several thousand processes accumulated due to a network problem. The process would execute one service task and then wait for a intermediate timer catch event. Because adding a timer did not hint the job executor, it would execute a few processes and then sleep for 60 seconds before acquiring the next batch of jobs, even though there were still a few thousand jobs available for execution.

          A unit test can be found at https://github.com/lukasniemeier-zalando/camunda-engine-unittest/blob/job-jam/src/test/java/org/camunda/bpm/unittest/SimpleTestCase.java

          Show
          joern.horstmann@zalando.de Jörn Horstmann added a comment - We also ran into this issue and would love to use a release version of 7.4.9 with the fix. The scenario for us was that we had several thousand processes accumulated due to a network problem. The process would execute one service task and then wait for a intermediate timer catch event. Because adding a timer did not hint the job executor, it would execute a few processes and then sleep for 60 seconds before acquiring the next batch of jobs, even though there were still a few thousand jobs available for execution. A unit test can be found at https://github.com/lukasniemeier-zalando/camunda-engine-unittest/blob/job-jam/src/test/java/org/camunda/bpm/unittest/SimpleTestCase.java
          Hide
          michael.schoettes Michael Schoettes added a comment - - edited

          Hi Jörn,

          We have scheduled a release date for version 7.4.9 by the end of this month. Is that suitable for you?

          Cheers
          Michael

          Show
          michael.schoettes Michael Schoettes added a comment - - edited Hi Jörn, We have scheduled a release date for version 7.4.9 by the end of this month. Is that suitable for you? Cheers Michael
          Hide
          joern.horstmann@zalando.de Jörn Horstmann added a comment -

          Hi Michael, end of October is fine, thanks.

          Show
          joern.horstmann@zalando.de Jörn Horstmann added a comment - Hi Michael, end of October is fine, thanks.

            People

            • Assignee:
              michael.schoettes Michael Schoettes
              Reporter:
              christopher.zell Christopher Zell
            • Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development