当前使用版本(必填,否则不予处理)

latest:3.5.1

该问题是如何引起的?(确定最新版也有问题再提!!!)

其他的业务,数据插入很快,但是执行下面sql 自定义建表就特别慢。是为什么呢?

MyBatis-Plus 自定义sql 进行运行时动态建表问题请教

严重的时候 有3秒的耗时 MyBatis-Plus 自定义sql 进行运行时动态建表问题请教

重现步骤(如果有就写完整)

关于建表逻辑请参考这个 issue: #4400

这个是数据:

2022-03-31 16:40:45,703 [ForkJoinPool-1-worker-3] DEBUG [c.h.r.mapper.ArchiveTableMapper.createTable] BaseJdbcLogger.java:137 - ==>  Preparing: create table xxx_archive_form_1648716044796 ( `db_field_0` int , `db_field_1` bigint , `db_field_2` varchar(12) , `db_field_3` int , `db_field_4` bigint , `db_field_5` varchar(15) , `db_field_6` int , `db_field_7` bigint , `db_field_8` varchar(18) , `db_field_9` int ) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
2022-03-31 16:40:45,704 [ForkJoinPool-1-worker-3] DEBUG [c.h.r.mapper.ArchiveTableMapper.createTable] BaseJdbcLogger.java:137 - ==> Parameters: 
2022-03-31 16:40:46,885 [ForkJoinPool-1-worker-3] DEBUG [c.h.r.mapper.ArchiveTableMapper.createTable] BaseJdbcLogger.java:137 - <==    Updates: 0

Comment From: jhx-zc

已解决。再次测试后发现是因为上面这个测试用的数据库在另一个电脑的docker里面运行的,哪怕是通过数据库工具执行create table也会很慢。切换数据源延时大大缩小。是硬件资源的问题,与代码关系不大

Comment From: jhx-zc

只是为什么其他的sql执行又很快呢? 而且其他的sql执行需要传输的数据量跟create table也不差的。基本上可以排除网络传输的问题

留一个小尾巴

Comment From: miemieYaho

执行sql都是mybatis的事