forked from Slimefun/Slimefun4
-
-
Notifications
You must be signed in to change notification settings - Fork 73
Open
Labels
Description
问题描述
当同时收货和催熟的异域花园植物过多时,粘液科技就会经常抛出MYSQL主键重复错误。
问题复现率
必现
复现步骤
- 建造很多的魔法植物和机器人,不停地收割和催熟(植物数量达到64个时容易复现,达到128个时容易刷屏)。
2025-02-22.14-03-53.mp4
- 后台报错。
[13:46:46] [SF-Database-Thread #23/ERROR]: [Slimefun] Exception thrown while executing write task:
[13:46:46] [SF-Database-Thread #23/WARN]: java.lang.IllegalStateException: An exception thrown while executing sql: INSERT INTO slimefun_block_record (chunk, loc, sf_id) VALUES ('world;-9:-3', 'world;-129:65:-48', 'NETHERITE_ESSENCE');
[13:46:46] [SF-Database-Thread #23/WARN]: at Slimefun-3c3fb0d-Insider.jar//com.xzavier0722.mc.plugin.slimefun4.storage.adapter.sqlcommon.SqlCommonAdapter.executeSql(SqlCommonAdapter.java:48)
[13:46:46] [SF-Database-Thread #23/WARN]: at Slimefun-3c3fb0d-Insider.jar//com.xzavier0722.mc.plugin.slimefun4.storage.adapter.mysql.MysqlAdapter.setData(MysqlAdapter.java:87)
[13:46:46] [SF-Database-Thread #23/WARN]: at Slimefun-3c3fb0d-Insider.jar//com.xzavier0722.mc.plugin.slimefun4.storage.controller.ADataController.lambda$scheduleWriteTask$1(ADataController.java:88)
[13:46:46] [SF-Database-Thread #23/WARN]: at Slimefun-3c3fb0d-Insider.jar//com.xzavier0722.mc.plugin.slimefun4.storage.task.QueuedWriteTask.run(QueuedWriteTask.java:24)
[13:46:46] [SF-Database-Thread #23/WARN]: at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
[13:46:46] [SF-Database-Thread #23/WARN]: at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
[13:46:46] [SF-Database-Thread #23/WARN]: at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
[13:46:46] [SF-Database-Thread #23/WARN]: at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
[13:46:46] [SF-Database-Thread #23/WARN]: at java.base/java.lang.Thread.run(Thread.java:1583)
[13:46:46] [SF-Database-Thread #23/WARN]: Caused by: java.sql.SQLIntegrityConstraintViolationException: Duplicate entry 'world;-129:65:-48' for key 'slimefun_block_record.PRIMARY'
[13:46:46] [SF-Database-Thread #23/WARN]: at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:109)
[13:46:46] [SF-Database-Thread #23/WARN]: at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:113)
[13:46:46] [SF-Database-Thread #23/WARN]: at com.mysql.cj.jdbc.StatementImpl.executeInternal(StatementImpl.java:829)
[13:46:46] [SF-Database-Thread #23/WARN]: at com.mysql.cj.jdbc.StatementImpl.execute(StatementImpl.java:681)
[13:46:46] [SF-Database-Thread #23/WARN]: at Slimefun-3c3fb0d-Insider.jar//com.zaxxer.hikari.pool.ProxyStatement.execute(ProxyStatement.java:94)
[13:46:46] [SF-Database-Thread #23/WARN]: at Slimefun-3c3fb0d-Insider.jar//com.zaxxer.hikari.pool.HikariProxyStatement.execute(HikariProxyStatement.java)
[13:46:46] [SF-Database-Thread #23/WARN]: at Slimefun-3c3fb0d-Insider.jar//com.xzavier0722.mc.plugin.slimefun4.storage.adapter.sqlcommon.SqlUtils.execSql(SqlUtils.java:164)
[13:46:46] [SF-Database-Thread #23/WARN]: at Slimefun-3c3fb0d-Insider.jar//com.xzavier0722.mc.plugin.slimefun4.storage.adapter.sqlcommon.SqlCommonAdapter.executeSql(SqlCommonAdapter.java:46)
[13:46:46] [SF-Database-Thread #23/WARN]: ... 8 more
服务端类型
Paper
Minecraft 版本
1.21.x
Slimefun 版本
> sf versions
[14:13:38 INFO]: Slimefun 运行的服务器环境:
Paper 1.21.1-123-aebbdc9 (MC: 1.21.1)
Slimefun 3c3fb0d-Insider
构建时间 2025-02-20 07:18:55
Java 21
由 StarWishsama 汉化
请不要将此版本信息截图到 Discord/Github 反馈 Bug
优先到汉化页面反馈
安装的附属插件: (2)
GuizhanLibPlugin vBuild 58 (git e776d1e)
ExoticGarden vBuild 19 (git 0994db4)
其他插件信息
No response
补充信息
-
block-storage.yml:
storageType: MYSQL base64EncodeVal: true dataLoadMode: LOAD_WITH_CHUNK readExecutorThread: 15 writeExecutorThread: 5 delayedWriting: enable: true delayedSecond: 5 forceSavePeriod: 300 sqlite: maxConnection: 5 mysql: host: localhost port: 3306 database: test_sf_new tablePrefix: slimefun_ user: root password: '' useSSL: false maxConnection: 10 postgresql: host: 127.0.0.1 port: 3306 database: '' tablePrefix: '' user: '' password: '' useSSL: false maxConnection: 10 -
复现大礼包: