java.io.IOException: Recursive records found gets thrown every time

I put together IntelliJ plugin tests that extend from LightCodeInsightFixtureTestCase. Tests run fine but i've been getting a new error that adds a lot of noise to the test run when I use gradle and when i run them from IntelliJ. Wondering if there is a workaround for this.

--------------------

ERROR: Local history is broken(version:6,current timestamp:May 1, 2018 2:40:51 PM,storage timestamp:Apr 30, 2018 7:39:16 PM,vfs timestamp:Apr 30, 2018 7:39:16 PM)
null
java.io.IOException: Recursive records found
at com.intellij.history.core.ChangeListStorageImpl.doReadPrevSafely(ChangeListStorageImpl.java:280)
at com.intellij.history.core.ChangeListStorageImpl.findFirstObsoleteBlock(ChangeListStorageImpl.java:271)
at com.intellij.history.core.ChangeListStorageImpl.purge(ChangeListStorageImpl.java:237)
at com.intellij.history.core.ChangeList.purgeObsolete(ChangeList.java:175)
at com.intellij.history.integration.LocalHistoryImpl.doDispose(LocalHistoryImpl.java:127)
at com.intellij.history.integration.LocalHistoryImpl.lambda$initComponent$0(LocalHistoryImpl.java:73)
at com.intellij.openapi.util.ShutDownTracker.run(ShutDownTracker.java:60)
at java.lang.Thread.run(Thread.java:748)
ERROR: Local history is broken(version:6,current timestamp:May 1, 2018 2:40:51 PM,storage timestamp:Apr 30, 2018 7:39:16 PM,vfs timestamp:Apr 30, 2018 7:39:16 PM)
null
java.lang.AssertionError: Local history is broken(version:6,current timestamp:May 1, 2018 2:40:51 PM,storage timestamp:Apr 30, 2018 7:39:16 PM,vfs timestamp:Apr 30, 2018 7:39:16 PM)
null
at com.intellij.testFramework.LoggedErrorProcessor.processError(LoggedErrorProcessor.java:61)
at com.intellij.testFramework.TestLogger.error(TestLogger.java:40)
at com.intellij.openapi.diagnostic.Logger.error(Logger.java:154)
at com.intellij.history.core.ChangeListStorageImpl.handleError(ChangeListStorageImpl.java:110)
at com.intellij.history.core.ChangeListStorageImpl.purge(ChangeListStorageImpl.java:250)
at com.intellij.history.core.ChangeList.purgeObsolete(ChangeList.java:175)
at com.intellij.history.integration.LocalHistoryImpl.doDispose(LocalHistoryImpl.java:127)
at com.intellij.history.integration.LocalHistoryImpl.lambda$initComponent$0(LocalHistoryImpl.java:73)
at com.intellij.openapi.util.ShutDownTracker.run(ShutDownTracker.java:60)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.io.IOException: Recursive records found
at com.intellij.history.core.ChangeListStorageImpl.doReadPrevSafely(ChangeListStorageImpl.java:280)
at com.intellij.history.core.ChangeListStorageImpl.findFirstObsoleteBlock(ChangeListStorageImpl.java:271)
at com.intellij.history.core.ChangeListStorageImpl.purge(ChangeListStorageImpl.java:237)
... 5 more
Exception in thread "Shutdown tracker" java.lang.AssertionError: Local history is broken(version:6,current timestamp:May 1, 2018 2:40:51 PM,storage timestamp:Apr 30, 2018 7:39:16 PM,vfs timestamp:Apr 30, 2018 7:39:16 PM)
null
at com.intellij.testFramework.LoggedErrorProcessor.processError(LoggedErrorProcessor.java:61)
at com.intellij.testFramework.TestLogger.error(TestLogger.java:40)
at com.intellij.openapi.diagnostic.Logger.error(Logger.java:158)
at com.intellij.openapi.util.ShutDownTracker.run(ShutDownTracker.java:63)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.AssertionError: Local history is broken(version:6,current timestamp:May 1, 2018 2:40:51 PM,storage timestamp:Apr 30, 2018 7:39:16 PM,vfs timestamp:Apr 30, 2018 7:39:16 PM)
null
at com.intellij.testFramework.LoggedErrorProcessor.processError(LoggedErrorProcessor.java:61)
at com.intellij.testFramework.TestLogger.error(TestLogger.java:40)
at com.intellij.openapi.diagnostic.Logger.error(Logger.java:154)
at com.intellij.history.core.ChangeListStorageImpl.handleError(ChangeListStorageImpl.java:110)
at com.intellij.history.core.ChangeListStorageImpl.purge(ChangeListStorageImpl.java:250)
at com.intellij.history.core.ChangeList.purgeObsolete(ChangeList.java:175)
at com.intellij.history.integration.LocalHistoryImpl.doDispose(LocalHistoryImpl.java:127)
at com.intellij.history.integration.LocalHistoryImpl.lambda$initComponent$0(LocalHistoryImpl.java:73)
at com.intellij.openapi.util.ShutDownTracker.run(ShutDownTracker.java:60)
... 1 more
Caused by: java.io.IOException: Recursive records found
at com.intellij.history.core.ChangeListStorageImpl.doReadPrevSafely(ChangeListStorageImpl.java:280)
at com.intellij.history.core.ChangeListStorageImpl.findFirstObsoleteBlock(ChangeListStorageImpl.java:271)
at com.intellij.history.core.ChangeListStorageImpl.purge(ChangeListStorageImpl.java:237)
... 5 more

Process finished with exit code 0

----------------------------

From what i recall, this issue started after i move classes around. Any help will be much appreciated

2

Looks like the issue is reported in https://youtrack.jetbrains.com/issue/IDEA-180361

Clearing local histroy should help. THis can be done by deleting the system/LocalHistory

See https://intellij-support.jetbrains.com/hc/en-us/articles/206544519-Directories-used-by-the-IDE-to-store-settings-caches-plugins-and-logs for directory location.

1
Avatar
Permanently deleted user

I tried deleting LocalHistory for Mac per the doc ,

~/Library/Caches/IdeaIC2017.3/LocalHistory/

it didn't fix the issue. Is there anything else I need to clean? 

1
Avatar
Permanently deleted user

It is weird but cleaning gradle cache fixed the issue. tysm!

0

Same for me. Cleaning gradle cache got me past this. Cleaning Intellij localHistory did not help.

Thanks

0

请先登录再写评论。