Skip to content

LRA RecoveryCoordinator should provide a way to replace/remove participant #297

Description

@marcosgopen

replaces https://redhat.atlassian.net/browse/JBTM-3396

There is currently no way how to replace or remove LRA participant from the LRA processing in case the LRA was decided to close or cancel.

The participant could be removed from the LRA when LRA was not yet finished with leaveLRA method of the LRA Coordinator (https://github.com/jbosstm/narayana/blob/5.10.6.Final/rts/lra/lra-coordinator-jar/src/main/java/io/narayana/lra/coordinator/api/Coordinator.java#L534).

The LRA RecoveryCoordinator has got a prepared method replaceCompensator (https://github.com/jbosstm/narayana/blob/5.10.6.Final/rts/lra/lra-coordinator-jar/src/main/java/io/narayana/lra/coordinator/api/RecoveryCoordinator.java#L115). But this method cannot be used as there is no JAX-RS binding for parameter (newCompensatorUrl) - aka. the functionality does not work and is not tested while the recovery coordinator API provides information there is such a method.

When the compensator replacement is permitted it could be considered to provide a way to forcibly remove the LRA participant despite the LRA was closed/cancelled.

NOTE: This is maybe rather a bug than a task depending on what is resolution for the scope of this issue.

Activity

  1. marcosgopen commented on Apr 2, 2026

    @marcosgopen
    MemberAuthor

    Assigning this to Mike as it was https://redhat.atlassian.net/browse/JBTM-3396

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions