流水账-20240314

目录

  • Linux系统删除文件后,磁盘大小没变化
  • mysql事务和neo4j事务冲突误诊
    • 描述
    • 解决方法
      • 网上提供的方法
      • 重置Neo4j密码,成功解决问题
        • 高版本
        • 低版本

Linux系统删除文件后,磁盘大小没变化

  • lsof +L1|grep 删除的文件名
  • kill进程
    在这里插入图片描述

mysql事务和neo4j事务冲突误诊

org.springframework.transaction.CannotCreateTransactionException: Could not open Neo4j Session for transaction; nested exception is org.neo4j.driver.v1.exceptions.AuthenticationException: The client is unauthorized due to authentication failure.
	at org.springframework.data.neo4j.transaction.Neo4jTransactionManager.doBegin(Neo4jTransactionManager.java:203)
	at org.sp...
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:270)
	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
	at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:806)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:938)
	at java.lang.Thread.run(Thread.java:748)
Caused by: org.neo4j.driver.v1.exceptions.AuthenticationException: The client is unauthorized due to authentication failure.
	at org.neo4j.driver.internal.util.ErrorUtil.newNeo4jError(ErrorUtil.java:58)
	at org.neo4j.driver.internal.async.inbound.InboundMessageDispatcher.handleFailureMessage(InboundMessageDispatcher.java:142)
	at org.neo4j.driver.internal.messaging.PackStreamMessageFormatV1$ReaderV1.unpackFailureMessage(PackStreamMessageFormatV1.java:337)
	at org.neo4j.driver.internal.messaging.PackStreamMessageFormatV1$ReaderV1.read(PackStreamMessageFormatV1.java:301)
	at org.neo4j.driver.internal.async.inbound.InboundMessageHandler.channelRead0(InboundMessageHandler.java:83)
	at org.neo4j.driver.internal.async.inbound.InboundMessageHandler.channelRead0(InboundMessageHandler.java:35)
	at 

在这里插入图片描述

描述

在使用mybatis-plus提供的批量插入方法的时候,报了上面的neo4j的错,实际上并不涉及neo4j操作
在这里插入图片描述

解决方法

项目中配置了mysqlneo4j,怀疑是事务冲突导致的,然后走了一圈弯路,因为根本没用到neo4j,所以一直没管上面的报错(neo4j服务连不上),结果发现并不是事务冲突导致的,就是neo4j连不上导致的。重置neo4j密码,连接成功之后,问题解决。在事务提交阶段,可能会检查所有参与事务的数据源,是否都能正常提交,因此批量保存方法事务中,虽然只对 MySQL 执行了操作,但 Neo4j 连接有问题,也会在事务提交时,导致整个事务回滚!

网上提供的方法

  • 创建一个新的事务

    @Service
    public class YourService {
    
        @Autowired
        private DataSource mysqlDataSource; // 引入MySQL数据源
    
        @Autowired
        private PlatformTransactionManager transactionManager; // 引入事务管理器
    
        public void yourMethod(List<YourEntity> entities) {
            TransactionTemplate template = new TransactionTemplate(transactionManager);
            template.setIsolationLevel(TransactionDefinition.ISOLATION_DEFAULT);
            template.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);
            template.execute(new TransactionCallbackWithoutResult() {
                @Override
                protected void doInTransactionWithoutResult(TransactionStatus status) {
                    yourService.saveBatch(entities); // 调用带有@Transactional的方法
                }
            });
        }
    }
    
  • 确保注解@EnableTransactionManagement只作用在想要的数据源事务管理器上

  • 按照上面方法试了半天也没解决,因为压根不是事务冲突导致的,SpringBoot项目一般不需要配置这些,默认使用的事务就是配置的第一个数据源
    在这里插入图片描述
    在这里插入图片描述

重置Neo4j密码,成功解决问题

高版本
  • 停止 Neo4j 服务bin/neo4j stop
    在这里插入图片描述

  • 直接编辑 Neo4j 配置文件conf/neo4j.conf,找到 dbms.security.auth_enabled 参数,将其设置为 false 来禁用身份验证
    在这里插入图片描述

  • 启动 Neo4j 服务bin/neo4j start
    在这里插入图片描述

  • 登录页面
    通过浏览器访问 Neo4j 的图形界面(地址通常是 http://localhost:7474http://your_ip:7474),由于身份验证已禁用,可以直接进入。
    在这里插入图片描述

  • Cypher 语句修改密码

     ALTER USER neo4j SET PASSWORD 'new_password';
    
    CALL dbms.changePassword('neo4j', 'old_password', 'new_password');
    CALL dbms.changePassword('neo4j', '', 'new_password');
    

在这里插入图片描述

低版本

上面通过Cypher 语句修改密码失败,因为项目使用的Neo4j 3.5 版本,不支持Cypher 语句更改用户密码,通过以下替代方法修改:

  • 通过 REST API 删除原有用户(neo4j),然后再创建一个新的管理员用户,设置新密码
    在这里插入图片描述

    curl -X DELETE http://localhost:7474/user/neo4j
    
    curl -X POST -H "Content-Type: application/json" -d '{"password":"new_password", "username": "neo4j", "roles": ["admin"]}' http://localhost:7474/user
    
  • 直接清空 graph.db 目录(不建议,个人环境随意)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

VC-旅游系统-213-(代码+说明)

转载地址: http://www.3q2008.com/soft/search.asp?keyword旅游系统 旅游信息管理系统开题报告 一、研究目的 旅游信息管理系统能帮助旅行社在游客的市场开拓、游客的信息管理、客户服务等方面进行综合处理。使旅行社能够准确的掌握客户的市场动态&#xff0c;充分了解对客户…

高等数学相关知识点整理汇总

说明&#xff1a;由于工作原因可能更新不及时&#xff0c;内容逐步完善中… 一、空间解析几何与向量代数 二、多元函数的微分学 三、重积分 四、曲线积分与曲面积分 五、常微分方程 六、无穷级数

Qt 5.14.2插入VTK 9.0.1 窗口并绘制图形

文章目录 准备环境使用VS创建Qt Widget项目配置VTK依赖调试C/C链接器 添加vtk窗口测试代码 参考链接&#xff1a; VS2017配置QT环境(详细版)_vs2017 qt-CSDN博客 QT5VTK9.1最新配置方法_qt vtk-CSDN博客 VTK笔记-Qt5.12.11编译VTK9.0.3-QVTKOpenGLNativeWidget-CSDN博客 准…

音视频实战---读取音视频文件的AAC音频保存成aac文件

1、使用avformat_open_input函数打开音视频文件 2、使用avformat_find_stream_info函数获取解码器信息。 3、使用av_dump_format设置打印信息 4、使用av_init_packet初始化AVPacket。 5、使用av_find_best_stream查找对应音视频流的流下标。 6、使用av_read_frame读取音视…

深信服技术认证“SCCA-C”划重点:深信服应用交付AD

为帮助大家更加系统化地学习云计算知识&#xff0c;高效通过云计算工程师认证&#xff0c;深信服特推出“SCCA-C认证备考秘笈”&#xff0c;共十期内容。“考试重点”内容框架&#xff0c;帮助大家快速get重点知识 划重点来啦 *点击图片放大展示 深信服云计算认证&#xff08;S…

leetcode代码记录(找到小镇的法官

目录 1. 题目&#xff1a;2. 我的代码&#xff1a;小结&#xff1a; 1. 题目&#xff1a; 小镇里有 n 个人&#xff0c;按从 1 到 n 的顺序编号。传言称&#xff0c;这些人中有一个暗地里是小镇法官。 如果小镇法官真的存在&#xff0c;那么&#xff1a; 小镇法官不会信任任何…

如何做好适老化设计?适老化设计组件库必不可少

我以前读过一篇文章&#xff0c;中国有2.5亿老年人被智能手机“抛弃”&#xff0c;这让人们非常难过。在当今时代&#xff0c;智能手机和互联网已经成为日常生活的一部分&#xff0c;不会上网和使用手机的老年人到处“困难”&#xff0c;比如旅行看健康代码&#xff0c;买东西扫…

C++面试题和笔试题(四)

一、intx[6][4],(*p)[4];px;则*(p2)指向哪里&#xff1f; A X[0][1]B X[0][2]C X[1][0]D X[2][0] 官方解释&#xff1a; D int x[6][4], (*p)[4]; p x; 在这里&#xff0c;x 是一个二维数组&#xff0c;它有6行和4列。p 是一个指向具有4个整数的数组的指针。 当你执行…

自动化测试如何区分用例集合及编写规范

前言 前面的文章介绍过如何设计自动化测试case&#xff0c;有同学在后台问到&#xff1a;业务比较复杂&#xff0c;有很多串行并行甚至组合的业务场景&#xff0c;执行case时经常遇到由于前后依赖导致的case失败问题&#xff0c;该如何处理&#xff1f; 当业务复杂度和工作量…

电脑软件:非常好用的万能格式转换软件File Converter介绍

目录 一、软件介绍 二、软件安装 三、使用教程 四、软件设置 五、软件获取 大家在日常工作和娱乐当中&#xff0c;难免会遇到格式转换的情况&#xff0c;很多人会直接互联网搜索在线转换或者尝试下载一些格式转换软件基本上都很难找到适合的软件&#xff0c;因为大部分要么…

幼儿园管理系统|基于springboot框架+ Mysql+Java+Tomcat的幼儿园管理系统设计与实现(可运行源码+数据库+设计文档+部署说明)

推荐阅读100套最新项目 最新ssmjava项目文档视频演示可运行源码分享 最新jspjava项目文档视频演示可运行源码分享 最新Spring Boot项目文档视频演示可运行源码分享 目录 用户功能模块 管理员功能登录前台功能效果图 教师功能模块 系统功能设计 数据库E-R图设计 lunwen参…

[数据结构]二叉树(上)

目录 一、树 1.树的概念 2.树的相关概念 3.树的表示 4.树的应用 二、二叉树 1.二叉树的概念 2.二叉树的性质 3.特殊的二叉树 4.二叉树的顺序存储 一、树 1.树的概念 树是一种非线性的数据结构&#xff0c;它是由n&#xff08;n>0&#xff09;个有限结点组成一个具…

2024.3.11 训练记录(14)

继续补题 文章目录 ICPC 2018青岛I Soldier GameICPC 2018青岛K Airdrop ICPC 2018青岛I Soldier Game 题目链接 线段树 果然稍微复杂一点的线段树就很难实现啊&#xff0c;不看题解根本没反应过来是线段树 struct Node {int l, r, lb, rb, nb, b; } tr[N * 4];其中&#x…

Linux:kubernetes(k8s)Deployment的操作(13)

创建deployment 命令 kubectl create deploy nginx-deploy --imagenginx:1.7.9 再去使用以下命令分别查询 ubectl get deploy kubectl get replicaset kubectl get pod 他是一个层层嵌套的一个关系 首先是创建了一个 deploy 里面包含着replicaset replicaset里面含有…

如何改掉坏习惯?

每个人在生活中&#xff0c;多多少少都有一些根深蒂固的坏习惯。 比如&#xff1a; 闲暇无聊时总会下意识刷瀑布流、短视频&#xff0c;不知不觉就是一个小时过去&#xff1b; 明明说好要早睡&#xff0c;但睡前总是忍不住东逛逛、西看看&#xff0c;熬到实在撑不住了才上床&a…

uniapp运行钉钉小程序

因项目原因&#xff0c;公司需要在钉钉里面开发小程序。之前用uniapp开发过app&#xff0c;H5&#xff0c;小程序。还真没尝试过钉钉小程序&#xff0c;今天就简单的记录下uniapp运行钉钉小程序中的过程。 在项目目录新建package.json文件&#xff0c;在文件中添加如下代码&am…

计算机视觉研究院 | EdgeYOLO:边缘设备上实时运行的目标检测器及Pytorch实现

本文来源公众号“计算机视觉研究院”&#xff0c;仅用于学术分享&#xff0c;侵权删&#xff0c;干货满满。 原文链接&#xff1a;EdgeYOLO&#xff1a;边缘设备上实时运行的目标检测器及Pytorch实现 代码地址&#xff1a;https://github.com/LSH9832/edgeyolo 今天分享的研究…

如果利用AOP/Aspect来修改方法的入参

问题描述&#xff1a; 最近项目代码过三方测试&#xff08;国企项目&#xff09;&#xff0c;在一系列代码扫描审计检查下&#xff0c;代码发现一部分修改&#xff0c;例如请求参数发生了编码/加密&#xff0c;导致后台需要对请求的参数进行解码/解密&#xff0c;后端那么接口&…

山景BP1048 烧录器烧写

1.首先确保硬件连接没问题&#xff0c;烧写器不能亮红灯&#xff0c;亮红灯说明硬件没正确连接。硬件连接如下&#xff1a; 2.点击Flash Burner 3.编程目标闪存选择SDK包自带的烧写驱动器&#xff0c;闪存映像档选择编译好的bin文件。 4.点击刻录 5.看见有进度条在跑&#x…

MISC:杂项

一、文件类型识别 背景&#xff1a;遇到文件没有后缀&#xff0c;不知道文件类型。 方法一、使用Linux中的file命令 原理&#xff1a;file命令会识别文件的文件头&#xff0c;通过文件头识别出文件类型。 命令格式&#xff1a;file <filename> 而文件头则可通过010edito…