lealone / Lealone

比 MySQL 和 MongoDB 快10倍的 OLTP 关系数据库和文档数据库
Other
2.44k stars 514 forks source link

在 idea开发时强制重启导致的bug。 #190

Closed cbqqkcel closed 1 year ago

cbqqkcel commented 1 year ago
2023-06-26T23:07:06.356+08:00  INFO 9960 --- [TcpServer-ShutdownHook-2] org.lealone.net.nio.ServerAccepter       : Stopping TcpServer accepter
2023-06-26T23:07:06.356+08:00  INFO 9960 --- [ScheduleService-0] org.lealone.net.nio.NioEventLoop         : Client socket channel closed: /127.0.0.1:8506
2023-06-26T23:07:06.357+08:00  INFO 9960 --- [TcpServer-ShutdownHook-2] org.lealone.main.Lealone                 : TcpServer stopped
2023-06-26T23:07:06.357+08:00 ERROR 9960 --- [CheckpointService] o.l.t.aote.AOTransactionEngine           : Failed to execute checkpoint

java.util.ConcurrentModificationException: null
    at java.base/java.util.TreeMap$PrivateEntryIterator.nextEntry(TreeMap.java:1486) ~[na:na]
    at java.base/java.util.TreeMap$KeyIterator.next(TreeMap.java:1540) ~[na:na]
    at org.lealone.storage.aose.btree.chunk.Chunk.writeRemovedPages(Chunk.java:158) ~[lealone-aose-5.1.2.jar:na]
    at org.lealone.storage.aose.btree.chunk.Chunk.write(Chunk.java:268) ~[lealone-aose-5.1.2.jar:na]
    at org.lealone.storage.aose.btree.BTreeStorage.executeSave(BTreeStorage.java:409) ~[lealone-aose-5.1.2.jar:na]
    at org.lealone.storage.aose.btree.BTreeStorage.save(BTreeStorage.java:377) ~[lealone-aose-5.1.2.jar:na]
    at org.lealone.storage.aose.btree.BTreeMap.save(BTreeMap.java:410) ~[lealone-aose-5.1.2.jar:na]
    at org.lealone.transaction.aote.AOTransactionEngine$CheckpointService.checkpoint(AOTransactionEngine.java:370) ~[lealone-aote-5.1.2.jar:na]
    at org.lealone.transaction.aote.AOTransactionEngine$CheckpointService.run(AOTransactionEngine.java:390) ~[lealone-aote-5.1.2.jar:na]
    at org.lealone.main.Lealone.run(Lealone.java:180) ~[lealone-main-5.1.2.jar:na]
    at org.lealone.main.Lealone.start(Lealone.java:113) ~[lealone-main-5.1.2.jar:na]
    at org.lealone.main.Lealone.lambda$0(Lealone.java:50) ~[lealone-main-5.1.2.jar:na]
    at java.base/java.lang.Thread.run(Thread.java:833) ~[na:na]

2023-06-26T23:07:10.766+08:00  INFO 18728 --- [main] org.lealone.main.Lealone                 : Starting Lealone using Java 17.0.5 with PID 18728 (D:\maven-repository\org\lealone\lealone-main\5.1.2\lealone-main-5.1.2.jar started by DMY in D:\java\zhdc-pa)
2023-06-26T23:07:10.767+08:00  INFO 18728 --- [main] org.lealone.main.Lealone                 : The following 1 profile is active: "dmy"

不好复现,后面我试了十多次强制重新启动(甚至在lealone 还没启动完毕又重启都没用出现过)

codefollower commented 1 year ago

这确实是个 bug