Uploaded image for project: 'Kuali Rice Development'
  1. Kuali Rice Development
  2. KULRICE-373

Implement consistent JTA transaction timeout behavior across Rice Modules

    Details

    • Rice Module:
      KSB, KEW
    • Application Requirement:
      KFS

      Description

      Currently, the bus is starting up using the default transaction timeout of JTA which is 60 seconds. This is causing issues for people who are running against remote database since the initial read of the service registry is taking > 60 seconds (a separate issue).

      I think what we need is a default.transaction.timeout configuration parameter to Rice which gets read in and sets the default timeout on the javax.transaction.TransactionManager during Rice startup (prior to the startup of either KSB or KEW).

      KEW is currently doing this itself in it's TransactionTimeoutLifecycle class but I think we need to push this up to the Rice level since JTA cross-cuts all of our modules.

        Attachments

          Issue Links

            Activity

            Hide
            ewestfal Eric Westfall added a comment -

            I think the workaround for this for the bus now is to just run in DEV mode but I think we will still have the problem if we run in non-dev mode. At any rate, we'll want this to be configurable by the end user.

            Show
            ewestfal Eric Westfall added a comment - I think the workaround for this for the bus now is to just run in DEV mode but I think we will still have the problem if we run in non-dev mode. At any rate, we'll want this to be configurable by the end user.
            Hide
            agodert Aaron Godert (Inactive) added a comment -

            This is just a general issue that we need to solve, right Eric? This wasn't specific to the Rice merge, was it?

            Show
            agodert Aaron Godert (Inactive) added a comment - This is just a general issue that we need to solve, right Eric? This wasn't specific to the Rice merge, was it?
            Hide
            ewestfal Eric Westfall added a comment -

            Yeah, it is a general issue but it was exposed by the ksb extraction from KEW. Essentially, KEW handles setting this transaction timeout appropriately but the KSB does not. So when the KSB was extracted, it lost this feature. Additionally, I think it makes sense to push this up to a higer level than KEW any way.

            Show
            ewestfal Eric Westfall added a comment - Yeah, it is a general issue but it was exposed by the ksb extraction from KEW. Essentially, KEW handles setting this transaction timeout appropriately but the KSB does not. So when the KSB was extracted, it lost this feature. Additionally, I think it makes sense to push this up to a higer level than KEW any way.
            Hide
            agodert Aaron Godert (Inactive) added a comment -

            We'll talk about this one tomorrow at our Rice weekly meeting.

            Show
            agodert Aaron Godert (Inactive) added a comment - We'll talk about this one tomorrow at our Rice weekly meeting.
            Hide
            ewestfal Eric Westfall added a comment -

            I removed the defaulting of timeout from the KewSpringBeans.xml and added the following to ServerKewSpringBeans.xml

            <bean id="jotm" class="org.springframework.transaction.jta.JotmFactoryBean">
            <property name="defaultTimeout" value="$

            {transaction.timeout}

            "/>
            </bean>

            Other applications using rice and configuring JOTM will need to do the same thing.

            Show
            ewestfal Eric Westfall added a comment - I removed the defaulting of timeout from the KewSpringBeans.xml and added the following to ServerKewSpringBeans.xml <bean id="jotm" class="org.springframework.transaction.jta.JotmFactoryBean"> <property name="defaultTimeout" value="$ {transaction.timeout} "/> </bean> Other applications using rice and configuring JOTM will need to do the same thing.

              People

              • Assignee:
                ewestfal Eric Westfall
                Reporter:
                ewestfal Eric Westfall
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Due:
                  Created:
                  Updated:
                  Resolved: