解决com.kingbase8.util.KSQLException: This _connection has been closed.

 问题描述

一个消息管理系统,系统采用kingbase8数据库,数据库采用单体模式,后台应用也采用springboot单体模式。系统正式上线后,出现几个JDBC响应的异常信息:

  • com.kingbase8.util.KSQLException: An I/O error occurred while sending to the backend.
  • java.net.SocketTimeoutException: Read timed out.
  • com.kingbase8.util.KSQLException: This _connection has been closed.
  • org.springframework.dao.DataAccessResourceFailureException: JDBC rollback; This _connection has been closed.; nested exception is com.kingbase8.util.KSQLException: This _connection has been closed.

完整错误日志如下:

2025-01-24 15:28:34.585 [http-nio-8015-exec-2] [1;31mERROR[0;39m [36mdruid.sql.Statement:148[0;39m - {conn-10720, pstmt-2487241} execute error. UPDATE ehc_task SET name = ?, event_type_code = ?, task_type = ?, start_time = ?, end_time = ?, start_time_cycle = ?, end_time_cycle = ?, event_type_name = ?, content = ?, is_flow = ?, initiator = ?, handle_status = ?, lamp_color = ?, status = ?, create_user_id = ?, create_user_name = ?, handle_dimension = ?, type = ?, task_uid = ?, union_id = ?, union_name = ?, is_expire = ?, is_urgent = ?, create_by = ?, create_time = ?, update_by = ?, update_time = ? WHERE id = ? AND is_del = 0
java.sql.BatchUpdateException: Batch entry 0 UPDATE ehc_task SET name = '测试事件', event_type_code = 'SJSN', task_type = 1, start_time = '2025-01-01 00:00:00+08', end_time = '2025-01-27 00:00:00+08', start_time_cycle = '', end_time_cycle = '', event_type_name = '工作盯盯', content = '测试内容', is_flow = '0', initiator = '蹇杨', handle_status = 2, lamp_color = '#FFCE20', status = 2, create_user_id = '1802631429172006913', create_user_name = '蹇杨', handle_dimension = 2, type = 2, task_uid = '2a159287', union_id = 6, union_name = '成都市武侯区总工会', is_expire = '0', is_urgent = '0', create_by = '蹇杨', create_time = '2025-01-23 13:42:48.833+08', update_by = '朱燕', update_time = '2025-01-24 15:28:24.54+08' WHERE id = 1553 AND is_del = 0 was aborted: An I/O error occurred while sending to the backend.  Call getNextException to see other _errors in the batch.at com.kingbase8.jdbc.BatchResultHandler.handleError(BatchResultHandler.java:286)at com.kingbase8.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:674)at com.kingbase8.jdbc.KbStatement.internalExecuteBatch_(KbStatement.java:1403)at com.kingbase8.jdbc.KbStatement.executeBatch(KbStatement.java:1438)at com.kingbase8.jdbc.KbPreparedStatement.executeBatch(KbPreparedStatement.java:3051)at com.alibaba.druid.filter.FilterChainImpl.statement_executeBatch(FilterChainImpl.java:3101)at com.alibaba.druid.filter.FilterAdapter.statement_executeBatch(FilterAdapter.java:2506)at com.alibaba.druid.filter.FilterEventAdapter.statement_executeBatch(FilterEventAdapter.java:273)at com.alibaba.druid.filter.FilterChainImpl.statement_executeBatch(FilterChainImpl.java:3099)at com.alibaba.druid.filter.FilterAdapter.statement_executeBatch(FilterAdapter.java:2506)at com.alibaba.druid.filter.FilterEventAdapter.statement_executeBatch(FilterEventAdapter.java:273)at com.alibaba.druid.filter.FilterChainImpl.statement_executeBatch(FilterChainImpl.java:3099)at com.alibaba.druid.proxy.jdbc.StatementProxyImpl.executeBatch(StatementProxyImpl.java:198)at com.alibaba.druid.pool.DruidPooledPreparedStatement.executeBatch(DruidPooledPreparedStatement.java:551)at org.apache.ibatis.executor.BatchExecutor.doFlushStatements(BatchExecutor.java:123)at org.apache.ibatis.executor.BaseExecutor.flushStatements(BaseExecutor.java:129)at org.apache.ibatis.executor.BaseExecutor.flushStatements(BaseExecutor.java:122)at org.apache.ibatis.executor.CachingExecutor.flushStatements(CachingExecutor.java:114)at sun.reflect.GeneratedMethodAccessor100.invoke(Unknown Source)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:64)at com.sun.proxy.$Proxy401.flushStatements(Unknown Source)at sun.reflect.GeneratedMethodAccessor100.invoke(Unknown Source)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:64)at com.sun.proxy.$Proxy401.flushStatements(Unknown Source)at org.apache.ibatis.session.defaults.DefaultSqlSession.flushStatements(DefaultSqlSession.java:249)at com.baomidou.mybatisplus.extension.toolkit.SqlHelper.lambda$executeBatch$1(SqlHelper.java:224)at com.baomidou.mybatisplus.extension.toolkit.SqlHelper.executeBatch(SqlHelper.java:182)at com.baomidou.mybatisplus.extension.toolkit.SqlHelper.executeBatch(SqlHelper.java:217)at com.baomidou.mybatisplus.extension.service.impl.ServiceImpl.executeBatch(ServiceImpl.java:240)at com.baomidou.mybatisplus.extension.service.impl.ServiceImpl.updateBatchById(ServiceImpl.java:192)at com.baomidou.mybatisplus.extension.service.IService.updateBatchById(IService.java:268)at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke(<generated>)at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:793)at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:137)at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123)at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388)at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119)at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:708)at org.jeecg.modules.eventhub.dao.impl.EhcTaskDaoImpl$$EnhancerBySpringCGLIB$$7771ddc5.updateBatchById(<generated>)at org.jeecg.modules.base.task.TaskJob.updateLampColor(TaskJob.java:306)at org.jeecg.modules.base.task.TaskJob$$FastClassBySpringCGLIB$$13b3c93b.invoke(<generated>)at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:704)at org.jeecg.modules.base.task.TaskJob$$EnhancerBySpringCGLIB$$aa5db2df.updateLampColor(<generated>)at org.jeecg.modules.eventhub.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/69432.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ubuntu24.04安装布置ros

最近换电脑布置机器人环境&#xff0c;下了24.04&#xff0c;但是网上的都不太合适&#xff0c;于是自己试着布置好了&#xff0c;留作有需要的人一起看看。 文章目录 目录 前言 一、确认 ROS 发行版名称 二、检查你的 Ubuntu 版本 三、安装正确的 ROS 发行版 四、对于Ubuntu24…

什么是中间件中间件有哪些

什么是中间件&#xff1f; 中间件&#xff08;Middleware&#xff09;是指在客户端和服务器之间的一层软件组件&#xff0c;用于处理请求和响应的过程。 中间件是指介于两个不同系统之间的软件组件&#xff0c;它可以在两个系统之间传递、处理、转换数据&#xff0c;以达到协…

linux下Maven的安装配置详解

一. maven下载 官网下载后上传到服务器 二. 压缩文件解压安装 tar -zxvf 压缩包.tar.gz -C 目标目录 tar -zxvf apache-maven-3.9.9-bin.tar.gz -C /usr/local三. 更换国内镜像 进入maven文件夹内部 创建依赖仓库 mkdir repository2. 编辑setting.xml 文件 vim conf/…

(1/100)每日小游戏平台系列

每日小游戏平台 项目简介以及地址 准备开发一个一百天小游戏平台&#xff0c;使用Flask构建的简单游戏导航网站&#xff0c;无需登录&#xff0c;让大家在返工的同时也可以愉快的摸鱼玩耍。 每天更新一个小游戏上传&#xff0c;看看能不能坚持一百天。 这些小游戏主要使用前端…

解锁Spring Boot 3.1 + JDK 17:分布式系统的变革力量

分布式系统发展的现状与挑战 在当今数字化时代&#xff0c;分布式系统已成为互联网技术领域的核心支撑。从电商平台的海量交易处理&#xff0c;到社交网络的实时互动&#xff0c;再到金融领域的安全交易保障&#xff0c;分布式系统无处不在&#xff0c;它如同无形的纽带&#…

Qt:Qt Creator项目创建

目录 认识Qt Creator Qt Creator概览 使用Qt Creator新建项目 选择项目模板 选择项目路径 选择构建系统 填写类信息设置界面 选择语言和翻译文件 选择Qt套件 选择版本控制系统 最终效果 认识Qt Creator Qt Creator概览 从开始菜单或者快捷方式打开Qt Creator集成开…

Vue笔记(六)

一、路由设计配置--一级路由配置 在路由文件&#xff08;一般是 router/index.js &#xff09;里定义路由对象数组&#xff0c;每个对象包含 path &#xff08;路由路径&#xff0c;如 / 代表首页&#xff09;、 name &#xff08;路由名称&#xff0c;方便代码引用&#xff09…

深度学习-神经机器翻译模型

以下为你介绍使用Python和深度学习框架Keras&#xff08;基于TensorFlow后端&#xff09;实现一个简单的神经机器翻译模型的详细步骤和代码示例&#xff0c;该示例主要处理英 - 法翻译任务。 1. 安装必要的库 首先&#xff0c;确保你已经安装了以下库&#xff1a; pip insta…

webpack【初体验】使用 webpack 打包一个程序

打包前 共 3 个文件 dist\index.html <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Webpack 示例&…

Spring Boot接入Deep Seek的API

1&#xff0c;首先进入deepseek的官网&#xff1a;DeepSeek | 深度求索&#xff0c;单击右上角的API开放平台。 2&#xff0c;单击API keys&#xff0c;创建一个API&#xff0c;创建完成务必复制&#xff01;&#xff01;不然关掉之后会看不看api key&#xff01;&#xff01;&…

02.07 TCP服务器与客户端的搭建

一.思维导图 二.使用动态协议包实现服务器与客户端 1. 协议包的结构定义 首先&#xff0c;是协议包的结构定义。在两段代码中&#xff0c;pack_t结构体都被用来表示协议包&#xff1a; typedef struct Pack {int size; // 记录整个协议包的实际大小enum Type type; …

Java 读取 PDF 模板文档并替换内容重新生成 PDF

朋友们&#xff01;在实际开发里&#xff0c;经常会遇到需要根据 PDF 模板文档生成特定 PDF 的需求&#xff0c;比如合同、证书等。咱们可以借助 iText 库来实现读取 PDF 模板文档、替换指定内容&#xff0c;最后重新生成新 PDF 的功能。下面我就详细给大家讲讲具体怎么做。 1.…

动手写ORM框架 - GeeORM第一天 database/sql 基础

文章目录 1 初识 SQLite2 database/sql 标准库3 实现一个简单的 log 库4 核心结构 Session本文是7天用Go从零实现ORM框架GeeORM的第一篇。介绍了 SQLite 的基础操作(连接数据库,创建表、增删记录等)。使用 Go 语言标准库 database/sql 连接并操作 SQLite 数据库,并简单封装…

DeepSeek和ChatGPT的对比

最近DeepSeek大放异彩&#xff0c;两者之间有什么差异呢&#xff1f;根据了解到的信息&#xff0c;简单做了一个对比。 DeepSeek 和 ChatGPT 是两种不同的自然语言处理&#xff08;NLP&#xff09;模型架构&#xff0c;尽管它们都基于 Transformer 架构&#xff0c;但在设计目标…

如何在 Java 应用中实现数据库的主从复制(读写分离)?请简要描述架构和关键代码实现?

在Java应用中实现数据库主从复制&#xff08;读写分离&#xff09; 一、架构描述 &#xff08;一&#xff09;整体架构 主库&#xff08;Master&#xff09; 负责处理所有的写操作&#xff08;INSERT、UPDATE、DELETE等&#xff09;。它是数据的源头&#xff0c;所有的数据变…

笔灵ai写作技术浅析(六):智能改写与续写

笔灵AI写作中的智能改写和续写技术是其核心功能之一,旨在帮助用户生成高质量、多样化的文本内容。 一、智能改写技术 1. 基本原理 智能改写的目标是在保持原文语义不变的前提下,对文本进行重新表述,生成语法正确、语义连贯且风格多样的新文本。其核心思想是通过语义理解和…

Rust语言的计算机基础

Rust语言的计算机基础 引言 在当今计算机科学的广阔领域中&#xff0c;编程语言是技术发展的基础。不同的编程语言应运而生&#xff0c;各自具有不同的特性和应用场景。Rust语言作为一种新兴的系统编程语言&#xff0c;凭借其卓越的性能和安全性&#xff0c;逐渐受到开发者的…

3.如何标注数据集

软件安装&#xff1a; Labelme&#xff0c;打开链接之后跳转如下&#xff1a; 这里往下翻&#xff0c;如下&#xff1a; 选择上图圈起来的exe进行下载就可以了&#xff0c;下载完成之后就可以双击直接打开了。如果通过github下载很慢的话可以直接选择通过网盘分享的文件&…

【分布式理论7】分布式调用之:服务间的(RPC)远程调用

文章目录 一、RPC 调用过程二、RPC 动态代理&#xff1a;屏蔽远程通讯细节1. 动态代理示例2. 如何将动态代理应用于 RPC 三、RPC序列化与协议编码1. RPC 序列化2. RPC 协议编码2.1. 协议编码的作用2.2. RPC 协议消息组成 四、RPC 网络传输1. 网络传输流程2. 关键优化点 一、RPC…

SSA-TCN麻雀算法优化时间卷积神经网络时间序列预测未来Matlab实现

SSA-TCN麻雀算法优化时间卷积神经网络时间序列预测未来Matlab实现 目录 SSA-TCN麻雀算法优化时间卷积神经网络时间序列预测未来Matlab实现预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.Matlab实现SSA-TCN麻雀算法优化时间卷积神经网络时间序列预测未来&#xff08;优…