Uploaded image for project: 'JS - JobScheduler'
  1. JS - JobScheduler
  2. JS-2150

Transferring orders to the latest workflow version fails in case of changes to Notice Board references

    XMLWordPrintable

Details

    Description

      Current Situation

      • Consider the following use case:
        • A workflow using a single Notice Board in an ExpectNotices Instruction is deployed. The workflow is added an order that waits for the related Notice.
        • The workflow is modified to specify two Notice Boards in the ExpectNotices Instruction.
        • In the Workflows view users find two versions of the workflow.
        • When transferring an order to the latest version of the workflow, then this operation is not possible and will disrupt the order.

      Desired Behavior

      • The operation to transfer orders between workflow versions that include changes to an ExpectNotices Instruction or ConsumeNotices Instruction that an order is currently waiting for, is not possible.
      • The operation should be denied by an error message that explains the situation:
        [OrderBroken] id=#2024-08-02#T59149823401-root, pos=0, Error (status=failed, reason=broken, msg=Instruction does not match Order.State: ExpectNotices('JS-2150-1' && 'JS-2150-2' && 'JS-2150-3',None) <-> ExpectingNotices(Vector(Expected(Board:JS-2150-1,NoticeId:2024-08-02), Expected(Board:JS-2150-2,NoticeId:2024-08-02))))
        

        The error mesage explains that the newer version of the workflow is waiting for Notices from 3 Notice Boards, while the existing order is waiting for a Notice from a single Notice Board. As a result the orders is put to the failed state.

      Maintainer Notes

      • Users have to either let the order complete the previous workflow version, or to cancel the order and to add a new order to the latest version of the workflow.
      • JS-2152 brings the suspend/abort operation to abort the ExpectNotices Instruction and to suspend the order. Suspended orders can safely be transferred to the latest versions of a workflow from which they can be resumed.
         

      Attachments

        Issue Links

          Activity

            People

              jz Joacim Zschimmer
              ap Andreas Püschel
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: