Details

    • Type: Feature Request
    • Status: Open (View Workflow)
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: 5.next
    • Component/s: Compensations
    • Labels:
      None

      Description

      Background
      Currently Compensations API cannot handle system failures. Transaction state is not persisted in any stage. Thus no handlers will be invoked in case of the system crash.

      Requirements

      1. Make handlers persistable (CompensationHandler, ConfirmationHandler, TransactionLoggedHandler).
        1. Require Serializable interface.
        2. Create PersistableHandler interface (similar to PersistableParticipant in RTS integration).
      2. Make participant persistable (ParticipantImpl, LocalParticipant, RemoteParticipant).
        1. Make transaction identifier persistable (converting it to String should work).
        2. Implement PersistableParticipant in ParticipantImpl.
        3. Investigate if PARTICIPANT_COUNTERS in ParticipatnImpl have to be updated.
      3. Make compensation scoped beans persistable.

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  ochaloup Ondrej Chaloupka
                  Reporter:
                  tomjenkinson Thomas Jenkinson
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  2 Start watching this issue

                  Dates

                  • Created:
                    Updated: