1
我使用Spring 3.0.5,3.6.7休眠,Atomikos公司TransactionEssentials 3.7.0和MySQL 5.5简历XID上调0:未知
我最近所面对的问题,在我的ConnectionPool已逾时连接8小时后并被服务器重置,从而产生消息“XID恢复'???'提出了0:未知
这里是我的数据源配置:
<bean id="myDataSource"
class="com.atomikos.jdbc.AtomikosDataSourceBean"
init-method="init"
destroy-method="close"
depends-on="myConfigurer">
<property name="uniqueResourceName" value="myPUDataSource" />
<property name="xaDataSourceClassName" value="$CONF{database.XAdriver}" />
<property name="poolSize" value="10" />
<property name="xaProperties">
<props>
<prop key="user">$CONF{database.user}</prop>
<prop key="password">$CONF{database.password}</prop>
<prop key="URL">$CONF{database.url}</prop>
<prop key="pinGlobalTxToPhysicalConnection">true</prop>
<prop key="autoReconnect">true</prop>
</props>
</property>
</bean>
当我调查,我发现,autoReconnect的= TRUE仅坠崖2秒的延迟后,我的断块连接(该选项是configurabe我认为) 浏览网页我发现解决方案建议增加MySQL服务器中的wait_timeout,我认为这不是一个真正的解决方案 应用程序应该能够处理死连接并自动重新连接,因为可能存在其他问题也有连接丢失 (我不想对服务器做任何指示应用程序使用)。
最后我找到了一个很好的解决方案,我会发布答案来帮助人们面对相同或类似的问题。
很伤心。我不能在接下来的8个小时内回答这个问题。为什么总是8小时?每天工作8小时,wait_timeout = 8小时,等待我回答:8小时。这不应该是23或者42? – AlexS 2012-02-09 09:18:58