ShardingSphere-JDBC5.1.2版本关于SELECT LAST_INSERT_ID()本人发现还是存在路由问题

圆我梦 发布于 07/01 16:54
阅读 291
收藏 0

开源之夏第三届火热来袭,高校学生参与赢万元奖金!>>>

运行环境:
idea、jdk8、
依赖版本springboot-2.3.0、ShardingSphere-JDBC5.1.2、mybatis-spring-boot-starter-2.1.4、tk.mybatis-2.1.5

项目大体分俩块数据存储,任务主表以及任务明细表,其中任务明细是做了分表处理,主表并没有进行分表策略处理,
但是主表进行insert的时候(新增是使用tk框架封装好的insert方法),还是存在路由错误的问题,试过很多次SELECT LAST_INSERT_ID()都是会从不同数据源去获取,结果始终导致获取新增id为0


【ps:另外吐槽一下ShardingSphere的依赖包实在是太多了,满满的一沓页】

加载中
0
kakai
kakai

都分库分表了,还是用雪花算法生成唯一ID吧

0
圆我梦
圆我梦

引用来自“kakai”的评论

都分库分表了,还是用雪花算法生成唯一ID吧

现在是用分布式id了,因为说看到5.1.2版本上面正好写了修复了主键生成的路由问题,只是对这个还有疑问😂

圆我梦
圆我梦
回复 @端小强 : 是分表了,所以5.1.2当前版本,分表插入数据获取id还是存在路由问题是吧
端小强
端小强
Release Note 是修复了读写分离场景下 SELECT LAST_INSERT_ID () 的问题,如果是分片场景,可以参考上面同学建议的分布式 ID。
端小强
端小强
请问你的配置是什么?分片?
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部