Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-2833

Default transaction timeout is not applied for EJB bean when set for second time

    Details

    • Target Release:
    • Steps to Reproduce:
      Hide
      • Start EAP server
      • Deploy app with EJB
      • Define transaction timeout
        • /subsystem=transactions:write-attribute(name=default-timeout, value = 1)
      • Call ejb method with Thread sleep greater than 1 (e.g. 5 seconds)
        • transaction will be timeouted (timeout is 1, sleep time is 5)
      • Define transaction timeout greater than bean sleep time (e.g. 10 seconds)
        • /subsystem=transactions:write-attribute(name=default-timeout, value = 10)
      • Call ejb method with Thread sleep less than 10 (e.g. 5 seconds)
        • transaction should not be timeouted (but it's which is wrong)

      There is a reproducer in eap management testsuite

      Show
      Start EAP server Deploy app with EJB Define transaction timeout /subsystem=transactions:write-attribute(name=default-timeout, value = 1) Call ejb method with Thread sleep greater than 1 (e.g. 5 seconds) transaction will be timeouted (timeout is 1, sleep time is 5) Define transaction timeout greater than bean sleep time (e.g. 10 seconds) /subsystem=transactions:write-attribute(name=default-timeout, value = 10) Call ejb method with Thread sleep less than 10 (e.g. 5 seconds) transaction should not be timeouted (but it's which is wrong) There is a reproducer in eap management testsuite git clone http://git.app.eng.bos.redhat.com/git/jbossqe-eap-tests-management.git cd jbossqe-eap-tests-management mvn clean integration-test -Dit.test=TimeoutITManual -Pintegration-tests -Djboss.home=$JBOSS_HOME
    • Affects:
      Release Notes
    • Release Notes Docs Status:
      Documented as Known Issue

      Description

      It seems that transaction subsystem attribute default-timeout does not have any effect for EJB if it's redefined. It means if I set the default transaction timeout in transaction subystem for second (and next) time it's not applied for EJB beans. It's used the firstly set value.

      The transaction timeout is not changed for EJB when server is reloaded. When server is restarted it refreshes all settings and EJB starts using the expected value for timeout settings.

      If the value is read from subsystem
      /subsystem=transactions:read-attribute(name=default-timeout)
      it shows correct value (that one set for second time). But EJB seems not applying it.

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  fedor.gavrilov Fedor Gavrilov
                  Reporter:
                  ochaloup Ondrej Chaloupka
                  Tester:
                  Ondrej Chaloupka
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  5 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: