-
Looks like some file in the cache is corrupted. Please stop OneDev, delete directory
/opt/onedev/site/projects/14/info/commit, and start OneDev. That directory will be recreated. -
Hmm. I tried that on all projects that produced the exception but it did not help. After starting OneDev the same projects produce the exception again. I have only removed the
commitfolder as you said.INFO - Launching application from '/app'... INFO - Starting server... INFO - Successfully checked /opt/onedev 09:45:43 INFO i.onedev.commons.bootstrap.Bootstrap - Launching application from '/opt/onedev'... 09:45:43 INFO i.onedev.commons.bootstrap.Bootstrap - Cleaning temp directory... 09:45:45 INFO io.onedev.commons.loader.AppLoader - Starting server... 09:46:03 INFO i.o.s.e.impl.DefaultProjectManager - Checking projects... 09:46:09 ERROR jetbrains.exodus.env.EnvironmentImpl - Failed to flush transaction jetbrains.exodus.ExodusException: Can't read full bytes from log [/opt/onedev/site/projects/14/info/commit] with address 65536 (file 00000000000.xd), offset: 65536, read: 6698 at jetbrains.exodus.log.LogCache.readFullPage(LogCache.java:103) at jetbrains.exodus.log.SharedLogCache.getPage(SharedLogCache.java:85) at jetbrains.exodus.log.DataIterator.checkPage(DataIterator.java:96) at jetbrains.exodus.log.DataIterator.checkPageSafe(DataIterator.java:105) at jetbrains.exodus.log.DataIterator.<init>(DataIterator.java:43) at jetbrains.exodus.env.EnvironmentImpl$3.getDataIterator(EnvironmentImpl.java:605) at jetbrains.exodus.tree.btree.BTreeBase.getLoggable(BTreeBase.java:119) at jetbrains.exodus.tree.btree.BTree.<init>(BTree.java:40) at jetbrains.exodus.env.EnvironmentImpl$3.<init>(EnvironmentImpl.java:601) at jetbrains.exodus.env.EnvironmentImpl.loadMetaTree(EnvironmentImpl.java:601) at jetbrains.exodus.env.MetaTreeImpl.create(MetaTreeImpl.java:115) at jetbrains.exodus.env.EnvironmentImpl.flushTransaction(EnvironmentImpl.java:667) at jetbrains.exodus.env.ReadWriteTransaction.flush(ReadWriteTransaction.java:109) at jetbrains.exodus.env.EnvironmentImpl.executeInTransaction(EnvironmentImpl.java:1008) at jetbrains.exodus.env.EnvironmentImpl.executeInTransaction(EnvironmentImpl.java:257) at io.onedev.server.infomanager.DefaultCommitInfoManager$2.process(DefaultCommitInfoManager.java:229) at io.onedev.server.infomanager.DefaultCommitInfoManager.processCommitRange(DefaultCommitInfoManager.java:713) at io.onedev.server.infomanager.DefaultCommitInfoManager.doCollect(DefaultCommitInfoManager.java:225) at io.onedev.server.infomanager.DefaultCommitInfoManager.access$2200(DefaultCommitInfoManager.java:88) at io.onedev.server.infomanager.DefaultCommitInfoManager$13$1.run(DefaultCommitInfoManager.java:978) at io.onedev.server.persistence.DefaultSessionManager$2.call(DefaultSessionManager.java:100) at io.onedev.server.persistence.DefaultSessionManager$2.call(DefaultSessionManager.java:96) at io.onedev.server.persistence.DefaultSessionManager.call(DefaultSessionManager.java:79) at io.onedev.server.persistence.DefaultSessionManager.run(DefaultSessionManager.java:96) at io.onedev.server.infomanager.DefaultCommitInfoManager$13.doWorks(DefaultCommitInfoManager.java:967) at io.onedev.server.util.concurrent.DefaultBatchWorkManager$2.doWorks(DefaultBatchWorkManager.java:110) at io.onedev.server.util.concurrent.DefaultBatchWorkManager$1.run(DefaultBatchWorkManager.java:78) at io.onedev.server.util.concurrent.DefaultWorkExecutor$5.call(DefaultWorkExecutor.java:252) at io.onedev.server.util.concurrent.DefaultWorkExecutor$5.call(DefaultWorkExecutor.java:248) at io.onedev.server.security.SecurityUtils$3.call(SecurityUtils.java:378) at io.onedev.server.util.concurrent.DefaultWorkExecutor$4.call(DefaultWorkExecutor.java:121) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at io.onedev.server.security.SecurityUtils$1.run(SecurityUtils.java:352) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) 09:46:09 ERROR jetbrains.exodus.env.EnvironmentImpl - Failed to rollback high address jetbrains.exodus.ExodusException: write not in progress at jetbrains.exodus.log.Log.ensureWriter(Log.java:786) at jetbrains.exodus.log.Log.revertWrite(Log.java:338) at jetbrains.exodus.env.EnvironmentImpl.flushTransaction(EnvironmentImpl.java:675) at jetbrains.exodus.env.ReadWriteTransaction.flush(ReadWriteTransaction.java:109) at jetbrains.exodus.env.EnvironmentImpl.executeInTransaction(EnvironmentImpl.java:1008) at jetbrains.exodus.env.EnvironmentImpl.executeInTransaction(EnvironmentImpl.java:257) at io.onedev.server.infomanager.DefaultCommitInfoManager$2.process(DefaultCommitInfoManager.java:229) at io.onedev.server.infomanager.DefaultCommitInfoManager.processCommitRange(DefaultCommitInfoManager.java:713) at io.onedev.server.infomanager.DefaultCommitInfoManager.doCollect(DefaultCommitInfoManager.java:225) at io.onedev.server.infomanager.DefaultCommitInfoManager.access$2200(DefaultCommitInfoManager.java:88) at io.onedev.server.infomanager.DefaultCommitInfoManager$13$1.run(DefaultCommitInfoManager.java:978) at io.onedev.server.persistence.DefaultSessionManager$2.call(DefaultSessionManager.java:100) at io.onedev.server.persistence.DefaultSessionManager$2.call(DefaultSessionManager.java:96) at io.onedev.server.persistence.DefaultSessionManager.call(DefaultSessionManager.java:79) at io.onedev.server.persistence.DefaultSessionManager.run(DefaultSessionManager.java:96) at io.onedev.server.infomanager.DefaultCommitInfoManager$13.doWorks(DefaultCommitInfoManager.java:967) at io.onedev.server.util.concurrent.DefaultBatchWorkManager$2.doWorks(DefaultBatchWorkManager.java:110) at io.onedev.server.util.concurrent.DefaultBatchWorkManager$1.run(DefaultBatchWorkManager.java:78) at io.onedev.server.util.concurrent.DefaultWorkExecutor$5.call(DefaultWorkExecutor.java:252) at io.onedev.server.util.concurrent.DefaultWorkExecutor$5.call(DefaultWorkExecutor.java:248) at io.onedev.server.security.SecurityUtils$3.call(SecurityUtils.java:378) at io.onedev.server.util.concurrent.DefaultWorkExecutor$4.call(DefaultWorkExecutor.java:121) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at io.onedev.server.security.SecurityUtils$1.run(SecurityUtils.java:352) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) 09:46:09 ERROR i.o.s.u.c.DefaultBatchWorkManager - Error doing works jetbrains.exodus.ExodusException: write not in progress at jetbrains.exodus.log.Log.ensureWriter(Log.java:786) at jetbrains.exodus.log.Log.revertWrite(Log.java:338) at jetbrains.exodus.env.EnvironmentImpl.flushTransaction(EnvironmentImpl.java:675) at jetbrains.exodus.env.ReadWriteTransaction.flush(ReadWriteTransaction.java:109) at jetbrains.exodus.env.EnvironmentImpl.executeInTransaction(EnvironmentImpl.java:1008) at jetbrains.exodus.env.EnvironmentImpl.executeInTransaction(EnvironmentImpl.java:257) at io.onedev.server.infomanager.DefaultCommitInfoManager$2.process(DefaultCommitInfoManager.java:229) at io.onedev.server.infomanager.DefaultCommitInfoManager.processCommitRange(DefaultCommitInfoManager.java:713) at io.onedev.server.infomanager.DefaultCommitInfoManager.doCollect(DefaultCommitInfoManager.java:225) at io.onedev.server.infomanager.DefaultCommitInfoManager.access$2200(DefaultCommitInfoManager.java:88) at io.onedev.server.infomanager.DefaultCommitInfoManager$13$1.run(DefaultCommitInfoManager.java:978) at io.onedev.server.persistence.DefaultSessionManager$2.call(DefaultSessionManager.java:100) at io.onedev.server.persistence.DefaultSessionManager$2.call(DefaultSessionManager.java:96) at io.onedev.server.persistence.DefaultSessionManager.call(DefaultSessionManager.java:79) at io.onedev.server.persistence.DefaultSessionManager.run(DefaultSessionManager.java:96) at io.onedev.server.infomanager.DefaultCommitInfoManager$13.doWorks(DefaultCommitInfoManager.java:967) at io.onedev.server.util.concurrent.DefaultBatchWorkManager$2.doWorks(DefaultBatchWorkManager.java:110) at io.onedev.server.util.concurrent.DefaultBatchWorkManager$1.run(DefaultBatchWorkManager.java:78) at io.onedev.server.util.concurrent.DefaultWorkExecutor$5.call(DefaultWorkExecutor.java:252) at io.onedev.server.util.concurrent.DefaultWorkExecutor$5.call(DefaultWorkExecutor.java:248) at io.onedev.server.security.SecurityUtils$3.call(SecurityUtils.java:378) at io.onedev.server.util.concurrent.DefaultWorkExecutor$4.call(DefaultWorkExecutor.java:121) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at io.onedev.server.security.SecurityUtils$1.run(SecurityUtils.java:352) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) 09:46:10 INFO i.o.s.e.i.DefaultBuildParamManager - Caching build param info... 09:46:11 INFO i.o.s.e.i.DefaultBuildMetricManager - Caching build metric info... 09:46:11 INFO i.o.s.e.impl.DefaultBuildManager - Caching build info... 09:46:13 INFO i.o.s.e.i.DefaultAgentAttributeManager - Caching agent attribute info... 09:46:13 INFO i.o.s.e.impl.DefaultIssueManager - Caching issue info... 09:46:14 ERROR i.o.s.u.c.DefaultBatchWorkManager - Error doing works jetbrains.exodus.ExodusException: Can't read full bytes from log [/opt/onedev/site/projects/72/info/commit] with address 786432 (file 00000000000.xd), offset: 786432, read: -1 at jetbrains.exodus.log.LogCache.readFullPage(LogCache.java:103) at jetbrains.exodus.log.SharedLogCache.getPage(SharedLogCache.java:85) at jetbrains.exodus.log.DataIterator.checkPage(DataIterator.java:96) at jetbrains.exodus.tree.btree.BTreeBase.getDataIterator(BTreeBase.java:96) at jetbrains.exodus.tree.btree.BTreeBase.getLoggable(BTreeBase.java:119) at jetbrains.exodus.tree.btree.BTree.<init>(BTree.java:40) at jetbrains.exodus.env.StoreImpl.openImmutableTree(StoreImpl.java:201) at jetbrains.exodus.env.TransactionBase.getTree(TransactionBase.java:125) at jetbrains.exodus.env.ReadWriteTransaction.getTree(ReadWriteTransaction.java:186) at jetbrains.exodus.env.StoreImpl.get(StoreImpl.java:69) at io.onedev.server.infomanager.AbstractEnvironmentManager.readBytes(AbstractEnvironmentManager.java:84) at io.onedev.server.infomanager.DefaultCommitInfoManager$1.compute(DefaultCommitInfoManager.java:204) at io.onedev.server.infomanager.DefaultCommitInfoManager$1.compute(DefaultCommitInfoManager.java:199) at jetbrains.exodus.env.EnvironmentImpl.computeInTransaction(EnvironmentImpl.java:1022) at jetbrains.exodus.env.EnvironmentImpl.computeInTransaction(EnvironmentImpl.java:277) at io.onedev.server.infomanager.DefaultCommitInfoManager.doCollect(DefaultCommitInfoManager.java:199) at io.onedev.server.infomanager.DefaultCommitInfoManager.access$2200(DefaultCommitInfoManager.java:88) at io.onedev.server.infomanager.DefaultCommitInfoManager$13$1.run(DefaultCommitInfoManager.java:978) at io.onedev.server.persistence.DefaultSessionManager$2.call(DefaultSessionManager.java:100) at io.onedev.server.persistence.DefaultSessionManager$2.call(DefaultSessionManager.java:96) at io.onedev.server.persistence.DefaultSessionManager.call(DefaultSessionManager.java:79) at io.onedev.server.persistence.DefaultSessionManager.run(DefaultSessionManager.java:96) at io.onedev.server.infomanager.DefaultCommitInfoManager$13.doWorks(DefaultCommitInfoManager.java:967) at io.onedev.server.util.concurrent.DefaultBatchWorkManager$2.doWorks(DefaultBatchWorkManager.java:110) at io.onedev.server.util.concurrent.DefaultBatchWorkManager$1.run(DefaultBatchWorkManager.java:78) at io.onedev.server.util.concurrent.DefaultWorkExecutor$5.call(DefaultWorkExecutor.java:252) at io.onedev.server.util.concurrent.DefaultWorkExecutor$5.call(DefaultWorkExecutor.java:248) at io.onedev.server.security.SecurityUtils$3.call(SecurityUtils.java:378) at io.onedev.server.util.concurrent.DefaultWorkExecutor$4.call(DefaultWorkExecutor.java:121) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at io.onedev.server.security.SecurityUtils$1.run(SecurityUtils.java:352) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) 09:46:14 ERROR i.o.s.u.c.DefaultBatchWorkManager - Error doing works jetbrains.exodus.ExodusException: Can't read full bytes from log [/opt/onedev/site/projects/73/info/commit] with address 65536 (file 00000000000.xd), offset: 65536, read: 15304 at jetbrains.exodus.log.LogCache.readFullPage(LogCache.java:103) at jetbrains.exodus.log.SharedLogCache.getPage(SharedLogCache.java:85) at jetbrains.exodus.log.DataIterator.checkPage(DataIterator.java:96) at jetbrains.exodus.log.DataIterator.checkPageSafe(DataIterator.java:105) at jetbrains.exodus.log.DataIterator.<init>(DataIterator.java:43) at jetbrains.exodus.env.EnvironmentImpl$3.getDataIterator(EnvironmentImpl.java:605) at jetbrains.exodus.tree.btree.BTreeBase.getLoggable(BTreeBase.java:119) at jetbrains.exodus.tree.btree.BTreeBase.compareLeafToKey(BTreeBase.java:175) at jetbrains.exodus.tree.btree.BasePageImmutable.binarySearch(BasePageImmutable.java:189) at jetbrains.exodus.tree.btree.BasePageImmutable.binarySearch(BasePageImmutable.java:141) at jetbrains.exodus.tree.btree.BottomPage.get(BottomPage.java:139) at jetbrains.exodus.tree.btree.BottomPage.get(BottomPage.java:57) at jetbrains.exodus.tree.btree.BTreeBase.get(BTreeBase.java:185) at jetbrains.exodus.env.MetaTreeImpl.getRootAddress(MetaTreeImpl.java:150) at jetbrains.exodus.env.StoreImpl.openImmutableTree(StoreImpl.java:194) at jetbrains.exodus.env.TransactionBase.getTree(TransactionBase.java:125) at jetbrains.exodus.env.ReadWriteTransaction.getTree(ReadWriteTransaction.java:186) at jetbrains.exodus.env.StoreImpl.get(StoreImpl.java:69) at io.onedev.server.infomanager.AbstractEnvironmentManager.readBytes(AbstractEnvironmentManager.java:84) at io.onedev.server.infomanager.DefaultCommitInfoManager$1.compute(DefaultCommitInfoManager.java:204) at io.onedev.server.infomanager.DefaultCommitInfoManager$1.compute(DefaultCommitInfoManager.java:199) at jetbrains.exodus.env.EnvironmentImpl.computeInTransaction(EnvironmentImpl.java:1022) at jetbrains.exodus.env.EnvironmentImpl.computeInTransaction(EnvironmentImpl.java:277) at io.onedev.server.infomanager.DefaultCommitInfoManager.doCollect(DefaultCommitInfoManager.java:199) at io.onedev.server.infomanager.DefaultCommitInfoManager.access$2200(DefaultCommitInfoManager.java:88) at io.onedev.server.infomanager.DefaultCommitInfoManager$13$1.run(DefaultCommitInfoManage... -
The upgrade was from
7.1.7to7.2.2. Given that only a handful of projects are affected (6 out of ~70) a downgrade doesn't makes sense I guess (not even sure if OneDev supports downgrades). -
Downgrade is not supported. Please upgrade to 7.2.3 to see if it solves the issue. If not, it will be great help if you can upload one of the problematic project on this site so that I can investigate what might be wrong.
-
Should I delete the
commitdirectory again before upgrading? Or maybe the fullinfofolder? Not sure what is stored in there and if I will loose data then. -
You may delete whole info folder. All data stored there are cache data derived from database and git repository, and can be safely deleted. OneDev will re-create them upon next start.
-
I have removed the
infofolder of affected projects and upgraded to7.2.3. Now it starts without exception and I can log-in again. Thanks for the help! -
Previous Value Current Value Open
Closed
-
No problem. Closing now.
| Type |
Bug
|
| Priority |
Normal
|
| Assignee | |
| Affected Versions |
Not Found
|
After upgrading to 7.2.2 I get the following exception right after logging in: