logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【SpringBoot】多数据源事务卡死@DSTransactional,当某一个数据库挂掉了,系统卡死问题解决

记录最近发生并解决的一个问题。在一个事务内,操作多个数据库,当其中一个数据库挂掉后,默认无限重连,导致事务无法正常结束,导致系统卡死

文章图片
#数据库
【数据库】死锁排查方式

select sql_text from v$sql where hash_value in(select sql_hash_value from v$session where sid in(select session_id from v$locked_object));

文章图片
#数据库
【数据库】MyBatis拦截器失效,导致MyBatisPlus分页失效

mybatis的拦截器是责任链模式,在PageInterceptor这里断掉了,没有往后传递导致没进MybatisPlusInterceptor

文章图片
#mybatis#java
【数据库】Oracle手动清理归档日志

Oracle数据库归档日志dbf文件会占用大量磁盘空间但不会自动删除。本文介绍使用RMAN安全清理的方法:先执行CATALOG命令识别所有归档文件,再通过DELETE ARCHIVELOG ALL命令批量删除。注意不能直接使用rm删除文件,否则可能导致问题。清理过程耗时与数据量相关,3TB数据约需2-3分钟。

#数据库#oracle
【数据库】@DSTransactional无效问题记录

DSTransactional原理:定义一个方法拦截器 ,将有@DSTransactional的方法搞到Advisor里,再由Spring Aop来扫进容器,当执行方法的时候,会执行拦截逻辑,进行事务提交或回滚操作。DynamicDataSourceAnnotationAdvisor:将有注解的方法(@DSTransactional,@DS),增加方法拦截器。另外, 方法非public,事务也是无

文章图片
#mybatis#数据库
【OpenAI】AI写代码,idea插件、vscode插件

试了下AI自动写代码,在idea和vscode的插件市场能搜到五花八门的AI插件,感觉还可以的两个。aiXcoder和Tabnine。

文章图片
#intellij-idea#vscode#java +1
【数据库】银行转账并发问题

假设账户A的余额是200,B、C分别给A转账100,A自己又消费了50,期望A的余额是350,那么如何做才能确保数据的一致性?

文章图片
#数据库
【问题记录】POI合并单元格导致统计数据不对

当通过代码开创建表格,并合并单元格时,需要把被合并的数据清空,否则虽然肉眼看不到,但是数据依然存在。

文章图片
到底了