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

Retry settings don't follow ISO 8601 or documented behaviour

XMLWordPrintable

    • Icon: Bug Report Bug Report
    • Resolution: Won't Do
    • Icon: L3 - Default L3 - Default
    • None
    • 7.12.0
    • engine
    • None

      I've been trying to configure reliable at-least-once delivery (see https://www.futurice.com/blog/at-least-once-delivery-for-serverless-camunda-workflow-automation)

      I notices the retry parameter has some stranger behavior. I want two things

      1. Infinite retries
      2. A sane backoff policy

      According to your docs "The configuration follows the ISO_8601 standard for repeating time intervals. In the example, R5/PT5M means that the maximum number of retries is 5 (R5) and the delay of retry is 5 minutes (PT5M)."

      So for my first attempt I used R/PT30S for an infinite retry with a 30 second wait between reties. THIS DOES NOT WORK. For some reason the engine just retries 3 times. This is not ISO 8061 compliant. OK, so I set it to R99999/PT30S and things work as expected. But then the 30 second delay kills throughput so I try to add a backoff policy with:

      R1/PT1S,R1/PT3S,R99999/PT30S

      THIS DOES NOT WORK! It goes back to retrying only 3 times!

      All in all, its very confusing and it takes me a very long time to see the misconfiguration manifest in production. And I still cannot figure out how to achieve sane backoff with very high retries. I see two bugs, R/ doesn't do infinite retries. Comma separated ISO 8601 don't seem to count retries up properly.

       

        This is the controller panel for Smart Panels app

              Unassigned Unassigned
              tlarkworthy Thomas Larkworthy
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: