Uploaded image for project: 'JBoss Transaction Manager'
  1. JBoss Transaction Manager
  2. JBTM-3451

Use byteman for predictable LRA testing

    XMLWordPrintable

Details

    • Enhancement
    • Resolution: Unresolved
    • Major
    • None
    • 5.11.0.Final
    • LRA, Testing
    • Undefined

    Description

      LRA uses a transaction model that assumes a relaxed form of consistency where the system is only guaranteed to be eventually consistent. This model makes testing challenging since the period to wait for checking LRA states cannot be determined in advance. For example the test io.narayana.lra.coordinator.domain.model.LRATest#testRecovery often fails on a busy CI.

      For those time bound tests where the test sleeps for an arbitrary period it would be preferable to use a more predictable technique such as byteman to wait for the recovery system to start and to complete a recovery cycle using a byteman rendezvous (eg https://developer.jboss.org/thread/240489). Once the rendezvous is hit the test can then check that the LRA is in the correct state.

      Attachments

        Activity

          People

            Unassigned Unassigned
            rhn-engineering-mmusgrov Michael Musgrove
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated: