ITADN

Replay API 的并发缺陷

#857Closedcuicanx 创建于 2026-05-01
resolution: fixed / doneversion: invalid
C
cuicanxcommented
### 服务端版本 Leaves Version 1.21.11-2 ### 预期的行为 Expected behavior 插件运行正常,后台不报错 ### 观测到的实际行为 Observed/Actual behavior [17:30:14 警告]: Exception in thread "pool-94-thread-1" java.util.ConcurrentModificationException ... at org.leavesmc.leaves.replay.ReplayFile.saveMetaData(ReplayFile.java:111) at org.leavesmc.leaves.replay.Recorder.lambda$saveMetadata$4(Recorder.java:225) 服务器控制台出现了此警告,我使用了一个依赖此API的插件 https://github.com/MC-XiaoHei/ISeeYou 开启了全天候录制 这是AI的解析 这是Leaves Replay API 中的线程安全问题。Recorder.java 在一个异步线程里保存元数据时,另一个主线程(或玩家操作)修改了同一个 HashMap,触发了经典的"并发修改"报错。 ### 复现步骤 Steps/models to reproduce 安装此插件 ### 插件与数据包列表。 Plugin and Datapack List. [22:20:11 信息]: ℹ Server Plugins (58): [22:20:11 信息]: Paper Plugins (7): [22:20:11 信息]: - ExcellentEnchants, ISeeYou, MechanicsCore, nightcore, PlugManX, TNTRegen, WeaponMechanics [22:20:11 信息]: Bukkit Plugins (51): [22:20:11 信息]: - AdvancedAchievements, AntiAttackRL, AuraSkills, AuthMe, AxSmithing, BedrockPlayerSupport, ClientDetectorPlus, CommandAPI, CoreProtect, Dominion [22:20:11 信息]: DropHead, EasyGuiShop, eBackup, EliteMobs, Essentials, EssentialsX-GUI, ESU, FirstJoinKits, floodgate, ForcePack [22:20:11 信息]: Geyser-Spigot, GeyserExtras_CN, GeyserMenu, GiveClock, GrimAC, GSit, InteractionVisualizer, InventoryRollbackPlus, InvSeePlusPlus, Kilacraft-AI [22:20:11 信息]: LagFixer, LevelledMobs, LiteSignIn, lovelyCreeper, LuckPerms, packetevents, PlaceholderAPI, PlasmoVoice, PlayerTitle, PotatoIpDisplay [22:20:11 信息]: ProtocolLib, SkinsRestorer, SoulGain, TAB, TPA, TrChat, TrMenu, Vault, ViaBackwards, ViaVersion [22:20:11 信息]: WorldAliasVariables ### 更多详细信息。 The more information. 完整服务器日志 https://mclo.gs/4StPpo1
关闭于 2026-05-03 1 条评论