MQ异常断开
ActiveMQ:No operations allowed after statement closed问题及解决办法
现象:
JDBC Failure: No operations allowed after statement closed. com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after statement closed. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) ………… at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:227) at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83) at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:220) at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:202) at java.lang.Thread.run(Thread.java:662) Close failed: Already closed. |
看上去又是 mq broker 失去了数据库连接,但代码仍尝试在此连接上执行操作,所以 jdbc 直接抛异常。
Broker gets stuck with an error about using a closed JDBC statement
- } catch (SQLException sqlEx) {
- String sqlState = sqlEx.getSQLState();
- // 08S01就是这个异常的sql状态。单独处理手动重新连接即可。
- if ("08S01".equals(sqlState) || "40001".equals(sqlState))
01.conn.createStatement().execute(
"UPDATE checking_account SET balance = balance - 1000.00 WHERE customer='Smith'");
02.conn.createStatement().execute(
"UPDATE savings_account SET balance = balance + 1000.00 WHERE customer='Smith'");
03.conn.commit();
- 服务器端没有接到这个事务,因此什么也没发生;
- 服务器端接到了且执行了,但客户端没有收到 Response 。
- 临时表;
- 用户自定义变量;
- 服务器端预处理语句(Server-side prepared statements);
最新文章
- java面向对象_构造器
- MVC Html.ValidationSummary()样式优化
- ps 使用说明
- mariadb主从复制架构学习笔记
- WPS Office手机版调用接口代码指导帖之一(Android)
- 以&;运行在后台的程序,关闭terminal后,相应进进程自动关闭
- 谈论高并发(二十二)解决java.util.concurrent各种组件(四) 深入了解AQS(二)
- 关于IP选项
- iOS_20_微博OAuth授权_取得用户授权的accessToken
- Windows环境下IOS APP打包上传AppStore详细流程
- Python开发环境-Pyenv安装使用
- idea 启动 springBoot debug很慢,正常启动很快是什么原因
- 安装并运行Hello World
- 使用Angular2的Http发送AJAX请求
- android 基础题
- test4
- Scala使用Akka模拟RPC机制代码2
- js调试系列: 控制台命令行API
- 进程process与线程thread
- IoC Containers with Xamarin
热门文章
- 实现分页数据请求的思路/Element UI(Plus)的分页模板(Vue3.x写法),(直接使用<;script>;引入vue.js)
- Guava Retry重试机制
- 打包Assetbundle
- 杭电 oj 第几天?
- 解决PageHelper分页不正常,pages始终等于1,total 始终等于pageSize的问题
- flutter-linux(未完成)
- memoのQt自动调整窗口尺寸
- 【2020NOI.AC省选模拟#2】A. 旋转
- Spring Boot 启动时自动执行代码的几种方式
- 「NOTE」常系数齐次线性递推