【问题标题】:Strange issue with websphere 8.5.5 transaction timeout + Spring tx 4.2.5websphere 8.5.5 事务超时 + Spring tx 4.2.5 的奇怪问题
【发布时间】:2017-09-15 18:36:52
【问题描述】:

我在 Websphere 应用程序服务器上遇到了这个奇怪的问题,但我不明白它是从哪里来的。 如果我解释得不好,我很抱歉。 应用程序服务器配置了 60 秒的事务超时。 最近我们在 spring 中为使用 transactional 注释的方法添加了超时

@Transactional(timeout=15)

从部署的时间来看,所有使用事务注释的方法似乎都有 15 秒的事务超时。 我们已经检查,事务中涉及的所有方法在注解中没有任何超时。

应用服务器是带有 Spring Tx 4.2.5 的 Websphere 8.5.5.11。 我们没有尝试重新启动服务器,因为它正在生产中。 感谢您的耐心等待。

【问题讨论】:

    标签: spring timeout websphere


    【解决方案1】:

    我找到了解决方案。您必须明确设置默认超时,而不是自动使用 Web 服务器的超时。

        ### TRANSACTION MANAGER ###
    
        <bean id="jtaTransactionManager"  class="org.springframework.transaction.jta.JtaTransactionManager" >
             <property name="globalRollbackOnParticipationFailure" value="true" />
            <property name="defaultTimeout" value="120" />      
    </bean>     
    
    
    
            <tx:annotation-driven transaction-manager="jtaTransactionManager"  />
    

    不知道是不是spring tx库和与websphere事务管理器交互的问题。

    2018 年 3 月 30 日更新

    发现当前版本的spring-tx存在bug,改成4.3.12解决了一切问题,反正我之前贴的解决方法在老版本上如果不能升级库就可以了。

    【讨论】:

    • 你可能刚刚用这个拯救了我们的“软面”……对我来说,问题出在 websphere 方面,但是这些天我越来越“讨厌”WAS。非常感谢!
    • 嗨,Eugene,我忘了发布我们的解决方案,希望对您有所帮助!
    猜你喜欢
    • 1970-01-01
    • 2015-03-29
    • 2020-07-23
    • 1970-01-01
    • 2013-03-18
    • 2017-01-15
    • 2019-06-12
    • 1970-01-01
    • 2023-03-15
    相关资源
    最近更新 更多