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

Using engine configuration isDbEntityCacheReuseEnabled shows non-transactional behavior

XMLWordPrintable

    • Icon: Bug Report Bug Report
    • Resolution: Unresolved
    • Icon: L3 - Default L3 - Default
    • None
    • 7.2.0, 7.3.0, 7.4.0-alpha1
    • engine
    • None

      The configuration option "isDbEntityCacheReuseEnabled" makes the engine share an entity cache between multiple transactions of job execution. However, it also shares it with the transaction that handles the failure of job execution, where the current cache state is not valid anymore, because a previous transaction has been rolled back.

      Example:

      • see attached diagram
      • Task A is async
      • Task C fails on execution

      When the job is executed the first time, the executing transaction fails (due to Task C), however the transaction handling the failed job flushes all the changes made by the previous transaction since it shares the entity cache. This results in:

      • Unwanted history entries (here: activity instances for Task A, B, and C although the transaction was rolled back)
      • Inconsistent execution state (here: the execution is set to Task C by the failed job handling transaction, thus B is skipped when the job is executed the next time; for the same reason, the failed job command is not able to read the configuration for Task A)

      By default, the option isDbEntityCacheReuseEnabled is set to false (which is also the workaround for this problem).

      related forum post:

      https://groups.google.com/forum/?utm_medium=email&utm_source=footer#!msg/camunda-bpm-users/RNS1o7Koi_E/gtklpds7q5wJ

        This is the controller panel for Smart Panels app

          1. process.png
            6 kB
            Thorben Lindhauer

              Unassigned Unassigned
              thorben.lindhauer Thorben Lindhauer
              Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated: