ghidra icon indicating copy to clipboard operation
ghidra copied to clipboard

Recover project DB after crash

Open kbembedded opened this issue 2 years ago • 6 comments

This is the second time this has happened. The trigger was different both times, the first was changing a variable type in the decompiler, this one was jumping to a label in the listing. I can't remember the first error, nor did I record this error, but it was something about a Plugin.

The result is the current project is force closed and I can no longer open the project and get the following when I try to:

Open failed: Unexpected DBParms buffer node type
java.io.IOException: Open failed: Unexpected DBParms buffer node type
	at ghidra.program.database.ProgramContentHandler.getDomainObject(ProgramContentHandler.java:225)
	at ghidra.framework.data.GhidraFileData.getDomainObject(GhidraFileData.java:339)
	at ghidra.framework.data.GhidraFile.getDomainObject(GhidraFile.java:179)
	at ghidra.app.util.task.OpenProgramTask.openFileMaybeUgrade(OpenProgramTask.java:241)
	at ghidra.app.util.task.OpenProgramTask.openUnversionedFile(OpenProgramTask.java:206)
	at ghidra.app.util.task.OpenProgramTask.openDomainFile(OpenProgramTask.java:149)
	at ghidra.app.util.task.OpenProgramTask.run(OpenProgramTask.java:133)
	at ghidra.util.task.Task.monitoredRun(Task.java:134)
	at ghidra.util.task.TaskRunner.lambda$startTaskThread$0(TaskRunner.java:106)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:833)

---------------------------------------------------
Build Date: 2022-Jul-26 1543 EDT
Ghidra Version: 10.1.5
Java Home: /usr/lib/jvm/java-17-openjdk-amd64
JVM Version: Debian 17.0.4
OS: Linux 5.10.0-16-amd64 amd64

I'm working on a Z80 based project with multiple banks (overlays) of code if that matters for anything. I did some of the same work on a 9.x Ghidra release and never had this issue. However this time around I've modified the .cspec to add a number of calling conventions that are used by this project.

Is there any way to recover this database? As this happened last night I was able to recover my days work thanks to ZFS snapshots. And after re-creating much of that and doing additional analysis, it crashed again losing the same work again.

From this point I suppose I can set up hourly snapshots, but, I'd rather know what might cause this issue and if there is a way to recover/check/rebuild whatever database has failed.

kbembedded avatar Aug 27 '22 03:08 kbembedded

Oh hey, I found application logs, does this provide any useful insight? Note that, unfortunately the snapshots don't actually exist.

2022-08-26 19:58:19 INFO  (RecoveryMgr) Fri Aug 26 19:58:19 PDT 2022 Recovery snapshot created: /path/to/<project>.rep/idata/00/~00000001.db/snapshotA.grf  
2022-08-26 20:03:05 DEBUG (ToolTaskManager) Fri Aug 26 20:03:05 PDT 2022 Background processing started...  
2022-08-26 20:03:05 DEBUG (ToolTaskManager) Fri Aug 26 20:03:05 PDT 2022 Exec Task Disassemble  
2022-08-26 20:03:05 DEBUG (ToolTaskManager) Fri Aug 26 20:03:05 PDT 2022 Disassemble task finish (0.005 secs)  
2022-08-26 20:03:05 DEBUG (ToolTaskManager) Fri Aug 26 20:03:05 PDT 2022  Queue - Auto Analysis  
2022-08-26 20:03:05 DEBUG (ToolTaskManager) Fri Aug 26 20:03:05 PDT 2022  (0.121 secs)  
2022-08-26 20:03:06 DEBUG (ToolTaskManager) Fri Aug 26 20:03:06 PDT 2022 Disassemble task complete (0.425 secs)  
2022-08-26 20:03:06 DEBUG (ToolTaskManager) Fri Aug 26 20:03:06 PDT 2022 Background processing complete (0.427 secs)  
2022-08-26 20:03:19 INFO  (RecoveryMgr) Fri Aug 26 20:03:19 PDT 2022 Recovery snapshot created: /path/to/<project>.rep/idata/00/~00000001.db/snapshotB.grf  
2022-08-26 20:05:03 ERROR (BufferMgr) BufferMgr buffer release failed ghidra.util.exception.AssertException: Unexpected Error
        at db.buffers.BufferMgr.releaseCleanBuffer(BufferMgr.java:1060)
        at db.buffers.BufferMgr.releaseBuffer(BufferMgr.java:1027)
        at db.NodeMgr.releaseNodes(NodeMgr.java:175)
        at db.Table$LongKeyIterator1.initialize(Table.java:2892)
        at db.Table$LongKeyIterator1.<init>(Table.java:2791)
        at db.Table$LongKeyIterator.<init>(Table.java:2682)
        at db.Table.longKeyIterator(Table.java:1950)
        at ghidra.program.database.map.AddressKeyIterator.<init>(AddressKeyIterator.java:149)
        at ghidra.program.database.map.AddressKeyIterator.<init>(AddressKeyIterator.java:109)
        at ghidra.program.database.references.FromAdapterV0.getFromIterator(FromAdapterV0.java:117)
        at ghidra.program.database.references.ReferenceDBManager.getReferenceSourceIterator(ReferenceDBManager.java:983)
        at ghidra.program.database.references.ReferenceDBManager$FromRefIterator.<init>(ReferenceDBManager.java:1742)
        at ghidra.program.database.references.ReferenceDBManager$FunctionVariableReferenceCacher.getSortedVariableReferences(ReferenceDBManager.java:2034)
        at ghidra.program.database.references.ReferenceDBManager$FunctionVariableReferenceCacher.getFunctionDataReferences(ReferenceDBManager.java:2005)
        at ghidra.program.database.references.ReferenceDBManager.getScopedVariableReferences(ReferenceDBManager.java:709)
        at ghidra.program.database.references.ReferenceDBManager.getReferencesTo(ReferenceDBManager.java:654)
        at ghidra.app.util.viewer.field.VariableXRefHeaderFieldFactory.getXRefHeaderString(VariableXRefHeaderFieldFactory.java:145)
        at ghidra.app.util.viewer.field.VariableXRefHeaderFieldFactory.getField(VariableXRefHeaderFieldFactory.java:75)
        at ghidra.app.util.viewer.format.Row.getLayout(FieldFormatModel.java:502)
        at ghidra.app.util.viewer.format.FieldFormatModel.addLayouts(FieldFormatModel.java:102)
        at ghidra.app.util.viewer.listingpanel.ProgramBigListingModel.doGetLayout(ProgramBigListingModel.java:177)
        at ghidra.app.util.viewer.listingpanel.ProgramBigListingModel.getLayout(ProgramBigListingModel.java:124)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.getLayout(ListingModelAdapter.java:129)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.getFieldLocation(ListingModelAdapter.java:234)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.getFieldLocation(ListingModelAdapter.java:207)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.getFieldLocation(ListingPanel.java:613)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.goTo(ListingPanel.java:576)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.setLocation(CodeViewerProvider.java:689)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.goTo(CodeViewerProvider.java:892)
        at ghidra.app.plugin.core.gotoquery.GoToHelper.goTo(GoToHelper.java:115)
        at ghidra.app.util.navigation.GoToServiceImpl.goTo(GoToServiceImpl.java:86)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkMemRefs(OperandFieldMouseHandler.java:323)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkOperandFieldLocation(OperandFieldMouseHandler.java:117)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.fieldElementClicked(OperandFieldMouseHandler.java:78)
        at ghidra.app.util.viewer.util.FieldNavigator.processHandlerList(FieldNavigator.java:70)
        at ghidra.app.util.viewer.util.FieldNavigator.fieldElementClicked(FieldNavigator.java:62)
        at ghidra.app.util.viewer.util.FieldNavigator.buttonPressed(FieldNavigator.java:123)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.buttonPressed(ListingPanel.java:764)
        at docking.widgets.fieldpanel.FieldPanel.lambda$notifyFieldMouseListeners$0(FieldPanel.java:1276)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
 
2022-08-26 20:05:03 ERROR (BufferMgr) BufferMgr buffer release failed ghidra.util.exception.AssertException: Unexpected Error
        at db.buffers.BufferMgr.releaseCleanBuffer(BufferMgr.java:1060)
        at db.buffers.BufferMgr.releaseBuffer(BufferMgr.java:1027)
        at db.NodeMgr.releaseNodes(NodeMgr.java:175)
        at db.Table.getRecord(Table.java:700)
        at ghidra.program.database.references.FromAdapterV0.getRefList(FromAdapterV0.java:61)
        at ghidra.program.database.references.ReferenceDBManager.getFromRefs(ReferenceDBManager.java:1588)
        at ghidra.program.database.references.ReferenceDBManager.getReferencesFrom(ReferenceDBManager.java:1908)
        at ghidra.program.database.code.CodeUnitDB.getMnemonicReferences(CodeUnitDB.java:308)
        at ghidra.program.database.code.InstructionDB.getMnemonicReferences(InstructionDB.java:38)
        at ghidra.app.util.viewer.field.MnemonicFieldFactory.getField(MnemonicFieldFactory.java:128)
        at ghidra.app.util.viewer.format.Row.getLayout(FieldFormatModel.java:502)
        at ghidra.app.util.viewer.format.FieldFormatModel.addLayouts(FieldFormatModel.java:102)
        at ghidra.app.util.viewer.listingpanel.ProgramBigListingModel.doGetLayout(ProgramBigListingModel.java:189)
        at ghidra.app.util.viewer.listingpanel.ProgramBigListingModel.getLayout(ProgramBigListingModel.java:124)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.getLayout(ListingModelAdapter.java:129)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.getFieldLocation(ListingModelAdapter.java:234)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.getFieldLocation(ListingModelAdapter.java:207)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.getFieldLocation(ListingPanel.java:613)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.goTo(ListingPanel.java:576)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.setLocation(CodeViewerProvider.java:689)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.goTo(CodeViewerProvider.java:892)
        at ghidra.app.plugin.core.gotoquery.GoToHelper.goTo(GoToHelper.java:115)
        at ghidra.app.util.navigation.GoToServiceImpl.goTo(GoToServiceImpl.java:86)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkMemRefs(OperandFieldMouseHandler.java:323)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkOperandFieldLocation(OperandFieldMouseHandler.java:117)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.fieldElementClicked(OperandFieldMouseHandler.java:78)
        at ghidra.app.util.viewer.util.FieldNavigator.processHandlerList(FieldNavigator.java:70)
        at ghidra.app.util.viewer.util.FieldNavigator.fieldElementClicked(FieldNavigator.java:62)
        at ghidra.app.util.viewer.util.FieldNavigator.buttonPressed(FieldNavigator.java:123)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.buttonPressed(ListingPanel.java:764)
        at docking.widgets.fieldpanel.FieldPanel.lambda$notifyFieldMouseListeners$0(FieldPanel.java:1276)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
 
2022-08-26 20:05:03 ERROR (BufferMgr) BufferMgr buffer release failed ghidra.util.exception.AssertException: Unexpected Error
        at db.buffers.BufferMgr.releaseCleanBuffer(BufferMgr.java:1060)
        at db.buffers.BufferMgr.releaseBuffer(BufferMgr.java:1027)
        at db.NodeMgr.releaseNodes(NodeMgr.java:175)
        at db.Table$LongKeyIterator1.initialize(Table.java:2892)
        at db.Table$LongKeyIterator1.<init>(Table.java:2791)
        at db.Table$LongKeyIterator.<init>(Table.java:2682)
        at db.Table.longKeyIterator(Table.java:1950)
        at ghidra.program.database.map.AddressKeyIterator.<init>(AddressKeyIterator.java:149)
        at ghidra.program.database.map.AddressKeyIterator.<init>(AddressKeyIterator.java:109)
        at ghidra.program.database.references.FromAdapterV0.getFromIterator(FromAdapterV0.java:117)
        at ghidra.program.database.references.ReferenceDBManager.getReferenceSourceIterator(ReferenceDBManager.java:983)
        at ghidra.app.util.DisplayableEol.getReferencesFrom(DisplayableEol.java:109)
        at ghidra.app.util.DisplayableEol.initComments(DisplayableEol.java:91)
        at ghidra.app.util.DisplayableEol.<init>(DisplayableEol.java:72)
        at ghidra.app.util.viewer.field.EolCommentFieldFactory.getField(EolCommentFieldFactory.java:311)
        at ghidra.app.util.viewer.format.Row.getLayout(FieldFormatModel.java:502)
        at ghidra.app.util.viewer.format.FieldFormatModel.addLayouts(FieldFormatModel.java:102)
        at ghidra.app.util.viewer.listingpanel.ProgramBigListingModel.doGetLayout(ProgramBigListingModel.java:189)
        at ghidra.app.util.viewer.listingpanel.ProgramBigListingModel.getLayout(ProgramBigListingModel.java:124)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.getLayout(ListingModelAdapter.java:129)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.getFieldLocation(ListingModelAdapter.java:234)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.getFieldLocation(ListingModelAdapter.java:207)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.getFieldLocation(ListingPanel.java:613)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.goTo(ListingPanel.java:576)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.setLocation(CodeViewerProvider.java:689)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.goTo(CodeViewerProvider.java:892)
        at ghidra.app.plugin.core.gotoquery.GoToHelper.goTo(GoToHelper.java:115)
        at ghidra.app.util.navigation.GoToServiceImpl.goTo(GoToServiceImpl.java:86)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkMemRefs(OperandFieldMouseHandler.java:323)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkOperandFieldLocation(OperandFieldMouseHandler.java:117)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.fieldElementClicked(OperandFieldMouseHandler.java:78)
        at ghidra.app.util.viewer.util.FieldNavigator.processHandlerList(FieldNavigator.java:70)
        at ghidra.app.util.viewer.util.FieldNavigator.fieldElementClicked(FieldNavigator.java:62)
        at ghidra.app.util.viewer.util.FieldNavigator.buttonPressed(FieldNavigator.java:123)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.buttonPressed(ListingPanel.java:764)
        at docking.widgets.fieldpanel.FieldPanel.lambda$notifyFieldMouseListeners$0(FieldPanel.java:1276)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
 
2022-08-26 20:05:03 ERROR (BufferMgr) BufferMgr buffer release failed ghidra.util.exception.AssertException: Unexpected Error
        at db.buffers.BufferMgr.releaseCleanBuffer(BufferMgr.java:1060)
        at db.buffers.BufferMgr.releaseBuffer(BufferMgr.java:1027)
        at db.NodeMgr.releaseNodes(NodeMgr.java:175)
        at db.Table.getRecord(Table.java:700)
        at ghidra.program.database.references.FromAdapterV0.getRefList(FromAdapterV0.java:61)
        at ghidra.program.database.references.ReferenceDBManager.getFromRefs(ReferenceDBManager.java:1588)
        at ghidra.program.database.references.ReferenceDBManager.getReferencesFrom(ReferenceDBManager.java:798)
        at ghidra.program.database.code.CodeUnitDB.getReferencesFrom(CodeUnitDB.java:353)
        at ghidra.program.database.code.InstructionDB.getReferencesFrom(InstructionDB.java:38)
        at ghidra.program.model.listing.InstructionPcodeOverride.<init>(InstructionPcodeOverride.java:49)
        at ghidra.app.util.viewer.field.PostCommentFieldFactory.getAutoPostComment(PostCommentFieldFactory.java:196)
        at ghidra.app.util.viewer.field.PostCommentFieldFactory.getField(PostCommentFieldFactory.java:142)
        at ghidra.app.util.viewer.format.Row.getLayout(FieldFormatModel.java:502)
        at ghidra.app.util.viewer.format.FieldFormatModel.addLayouts(FieldFormatModel.java:102)
        at ghidra.app.util.viewer.listingpanel.ProgramBigListingModel.doGetLayout(ProgramBigListingModel.java:189)
        at ghidra.app.util.viewer.listingpanel.ProgramBigListingModel.getLayout(ProgramBigListingModel.java:124)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.getLayout(ListingModelAdapter.java:129)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.getFieldLocation(ListingModelAdapter.java:234)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.getFieldLocation(ListingModelAdapter.java:207)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.getFieldLocation(ListingPanel.java:613)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.goTo(ListingPanel.java:576)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.setLocation(CodeViewerProvider.java:689)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.goTo(CodeViewerProvider.java:892)
        at ghidra.app.plugin.core.gotoquery.GoToHelper.goTo(GoToHelper.java:115)
        at ghidra.app.util.navigation.GoToServiceImpl.goTo(GoToServiceImpl.java:86)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkMemRefs(OperandFieldMouseHandler.java:323)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkOperandFieldLocation(OperandFieldMouseHandler.java:117)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.fieldElementClicked(OperandFieldMouseHandler.java:78)
        at ghidra.app.util.viewer.util.FieldNavigator.processHandlerList(FieldNavigator.java:70)
        at ghidra.app.util.viewer.util.FieldNavigator.fieldElementClicked(FieldNavigator.java:62)
        at ghidra.app.util.viewer.util.FieldNavigator.buttonPressed(FieldNavigator.java:123)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.buttonPressed(ListingPanel.java:764)
        at docking.widgets.fieldpanel.FieldPanel.lambda$notifyFieldMouseListeners$0(FieldPanel.java:1276)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
 
2022-08-26 20:05:03 ERROR (EventManager) Plugin Event Error: Error in plugin event listener java.io.IOException: Corrupted BufferMgr state
        at db.buffers.BufferMgr.getBuffer(BufferMgr.java:955)
        at db.NodeMgr.getFixedKeyNode(NodeMgr.java:292)
        at db.Table.getFieldKeyNode(Table.java:164)
        at db.Table$FieldKeyIterator2.initialize(Table.java:3823)
        at db.Table$FieldKeyIterator2.<init>(Table.java:3797)
        at db.Table$FieldKeyIterator.<init>(Table.java:3356)
        at db.Table.fieldKeyIterator(Table.java:2000)
        at db.FieldIndexTable$PrimaryKeyIterator.<init>(FieldIndexTable.java:493)
        at db.FieldIndexTable.keyIterator(FieldIndexTable.java:410)
        at db.Table.indexIterator(Table.java:1564)
        at ghidra.program.database.util.AddressRangeMapDB.getAddressSet(AddressRangeMapDB.java:445)
        at ghidra.program.database.symbol.NamespaceManager.getAddressSet(NamespaceManager.java:292)
        at ghidra.program.database.symbol.NamespaceManager.getAddressSet(NamespaceManager.java:270)
        at ghidra.program.database.function.FunctionDB.getBody(FunctionDB.java:337)
        at ghidra.program.database.function.FunctionManagerDB.getFunctionContaining(FunctionManagerDB.java:652)
        at ghidra.program.database.ListingDB.getFunctionContaining(ListingDB.java:670)
        at ghidra.app.plugin.core.processors.ShowInstructionInfoPlugin.locationChanged(ShowInstructionInfoPlugin.java:346)
        at ghidra.app.plugin.ProgramPlugin.processEvent(ProgramPlugin.java:173)
        at ghidra.framework.plugintool.Plugin.eventSent(Plugin.java:329)
        at ghidra.framework.plugintool.mgr.EventManager.sendEvents(EventManager.java:286)
        at ghidra.framework.plugintool.mgr.EventManager.lambda$new$3(EventManager.java:49)
        at ghidra.util.Swing.doRun(Swing.java:292)
        at ghidra.util.Swing.runNow(Swing.java:208)
        at ghidra.util.Swing.runNow(Swing.java:163)
        at ghidra.framework.plugintool.mgr.EventManager.fireEvent(EventManager.java:216)
        at ghidra.framework.plugintool.PluginTool.firePluginEvent(PluginTool.java:475)
        at ghidra.app.plugin.core.codebrowser.CodeBrowserPlugin.locationChanged(CodeBrowserPlugin.java:276)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.programLocationChanged(CodeViewerProvider.java:521)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.fieldLocationChanged(ListingPanel.java:797)
        at docking.widgets.fieldpanel.FieldPanel$CursorHandler.notifyCursorChanged(FieldPanel.java:2144)
        at docking.widgets.fieldpanel.FieldPanel$CursorHandler.doSetCursorPosition(FieldPanel.java:1978)
        at docking.widgets.fieldpanel.FieldPanel.goTo(FieldPanel.java:806)
        at docking.widgets.fieldpanel.FieldPanel.goTo(FieldPanel.java:799)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.goTo(ListingPanel.java:582)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.setLocation(CodeViewerProvider.java:689)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.goTo(CodeViewerProvider.java:892)
        at ghidra.app.plugin.core.gotoquery.GoToHelper.goTo(GoToHelper.java:115)
        at ghidra.app.util.navigation.GoToServiceImpl.goTo(GoToServiceImpl.java:86)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkMemRefs(OperandFieldMouseHandler.java:323)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkOperandFieldLocation(OperandFieldMouseHandler.java:117)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.fieldElementClicked(OperandFieldMouseHandler.java:78)
        at ghidra.app.util.viewer.util.FieldNavigator.processHandlerList(FieldNavigator.java:70)
        at ghidra.app.util.viewer.util.FieldNavigator.fieldElementClicked(FieldNavigator.java:62)
        at ghidra.app.util.viewer.util.FieldNavigator.buttonPressed(FieldNavigator.java:123)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.buttonPressed(ListingPanel.java:764)
        at docking.widgets.fieldpanel.FieldPanel.lambda$notifyFieldMouseListeners$0(FieldPanel.java:1276)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
 
2022-08-26 20:05:03 ERROR (SwingUpdateManager) Unexpected Exception: Unexpected exception in Swing Update Manager java.io.IOException: Corrupted BufferMgr state
        at db.buffers.BufferMgr.getBuffer(BufferMgr.java:955)
        at db.NodeMgr.getLongKeyNode(NodeMgr.java:257)
        at db.Table$LongKeyRecordIterator.<init>(Table.java:2078)
        at db.Table.iterator(Table.java:1863)
        at ghidra.program.database.map.AddressKeyRecordIterator.<init>(AddressKeyRecordIterator.java:146)
        at ghidra.program.database.map.AddressKeyRecordIterator.<init>(AddressKeyRecordIterator.java:62)
        at ghidra.program.database.code.DataDBAdapterV0.getRecordBefore(DataDBAdapterV0.java:108)
        at ghidra.program.database.code.CodeManager.getDefinedBefore(CodeManager.java:937)
        at ghidra.program.database.code.CodeManager.getCodeUnitBefore(CodeManager.java:980)
        at ghidra.program.database.ListingDB.getCodeUnitBefore(ListingDB.java:87)
        at ghidra.app.util.viewer.listingpanel.ProgramBigListingModel.getAddressBefore(ProgramBigListingModel.java:327)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.getIndexBefore(ListingModelAdapter.java:109)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.checkIndex(ListingModelAdapter.java:490)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.findUnviewableAddressRanges(ListingModelAdapter.java:479)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.removeUnviewableAddressRanges(ListingModelAdapter.java:459)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.resetIndexMap(ListingModelAdapter.java:450)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.lambda$new$0(ListingModelAdapter.java:58)
        at ghidra.util.task.SwingUpdateManager.swingDoWork(SwingUpdateManager.java:108)
        at ghidra.util.task.AbstractSwingUpdateManager.swingExecutePendingWork(AbstractSwingUpdateManager.java:338)
        at ghidra.util.task.AbstractSwingUpdateManager.checkForWork(AbstractSwingUpdateManager.java:278)
        at ghidra.util.Swing.doRun(Swing.java:292)
        at ghidra.util.Swing.runNow(Swing.java:208)
        at ghidra.util.Swing.runNow(Swing.java:163)
        at ghidra.util.task.AbstractSwingUpdateManager.updateNow(AbstractSwingUpdateManager.java:183)
        at ghidra.util.task.SwingUpdateManager.updateNow(SwingUpdateManager.java:135)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.dataChanged(ListingModelAdapter.java:182)
        at ghidra.app.util.viewer.listingpanel.ProgramBigListingModel.notifyDataChanged(ProgramBigListingModel.java:504)
        at ghidra.app.util.viewer.listingpanel.ProgramBigListingModel.domainObjectChanged(ProgramBigListingModel.java:558)
        at ghidra.framework.data.DomainObjectChangeSupport.lambda$fatalErrorOccurred$5(DomainObjectChangeSupport.java:170)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117)
        at java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:191)
        at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:236)
        at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:234)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
        at java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:234)
        at java.desktop/java.awt.Dialog.show(Dialog.java:1080)
        at java.desktop/java.awt.Component.show(Component.java:1728)
        at java.desktop/java.awt.Component.setVisible(Component.java:1675)
        at java.desktop/java.awt.Window.setVisible(Window.java:1036)
        at java.desktop/java.awt.Dialog.setVisible(Dialog.java:1016)
        at docking.DockingDialog.setVisible(DockingDialog.java:353)
        at docking.DockingWindowManager.lambda$doShowDialog$6(DockingWindowManager.java:1751)
        at ghidra.util.Swing.doRun(Swing.java:292)
        at ghidra.util.Swing.runNow(Swing.java:208)
        at ghidra.util.Swing.runNow(Swing.java:163)
        at docking.DockingWindowManager.doShowDialog(DockingWindowManager.java:1755)
        at docking.DockingWindowManager.showDialog(DockingWindowManager.java:1704)
        at docking.DockingErrorDisplay.showDialogOnSwing(DockingErrorDisplay.java:178)
        at docking.DockingErrorDisplay.showDialog(DockingErrorDisplay.java:157)
        at docking.DockingErrorDisplay.doDisplayMessage(DockingErrorDisplay.java:143)
        at docking.DockingErrorDisplay.lambda$displayMessage$0(DockingErrorDisplay.java:102)
        at ghidra.util.Swing.runIfSwingOrRunLater(Swing.java:124)
        at docking.DockingErrorDisplay.displayMessage(DockingErrorDisplay.java:102)
        at docking.DockingErrorDisplay.displayErrorMessage(DockingErrorDisplay.java:55)
        at ghidra.util.Msg.showError(Msg.java:306)
        at ghidra.framework.plugintool.mgr.EventManager.sendEvents(EventManager.java:289)
        at ghidra.framework.plugintool.mgr.EventManager.lambda$new$3(EventManager.java:49)
        at ghidra.util.Swing.doRun(Swing.java:292)
        at ghidra.util.Swing.runNow(Swing.java:208)
        at ghidra.util.Swing.runNow(Swing.java:163)
        at ghidra.framework.plugintool.mgr.EventManager.fireEvent(EventManager.java:216)
        at ghidra.framework.plugintool.PluginTool.firePluginEvent(PluginTool.java:475)
        at ghidra.app.plugin.core.codebrowser.CodeBrowserPlugin.locationChanged(CodeBrowserPlugin.java:276)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.programLocationChanged(CodeViewerProvider.java:521)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.fieldLocationChanged(ListingPanel.java:797)
        at docking.widgets.fieldpanel.FieldPanel$CursorHandler.notifyCursorChanged(FieldPanel.java:2144)
        at docking.widgets.fieldpanel.FieldPanel$CursorHandler.doSetCursorPosition(FieldPanel.java:1978)
        at docking.widgets.fieldpanel.FieldPanel.goTo(FieldPanel.java:806)
        at docking.widgets.fieldpanel.FieldPanel.goTo(FieldPanel.java:799)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.goTo(ListingPanel.java:582)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.setLocation(CodeViewerProvider.java:689)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.goTo(CodeViewerProvider.java:892)
        at ghidra.app.plugin.core.gotoquery.GoToHelper.goTo(GoToHelper.java:115)
        at ghidra.app.util.navigation.GoToServiceImpl.goTo(GoToServiceImpl.java:86)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkMemRefs(OperandFieldMouseHandler.java:323)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkOperandFieldLocation(OperandFieldMouseHandler.java:117)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.fieldElementClicked(OperandFieldMouseHandler.java:78)
        at ghidra.app.util.viewer.util.FieldNavigator.processHandlerList(FieldNavigator.java:70)
        at ghidra.app.util.viewer.util.FieldNavigator.fieldElementClicked(FieldNavigator.java:62)
        at ghidra.app.util.viewer.util.FieldNavigator.buttonPressed(FieldNavigator.java:123)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.buttonPressed(ListingPanel.java:764)
        at docking.widgets.fieldpanel.FieldPanel.lambda$notifyFieldMouseListeners$0(FieldPanel.java:1276)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
 
2022-08-26 20:05:03 ERROR (SwingUpdateManager) Unexpected Exception: Unexpected exception in Swing Update Manager java.io.IOException: Corrupted BufferMgr state
        at db.buffers.BufferMgr.getBuffer(BufferMgr.java:955)
        at db.NodeMgr.getLongKeyNode(NodeMgr.java:257)
        at db.Table$LongKeyRecordIterator.<init>(Table.java:2078)
        at db.Table.iterator(Table.java:1863)
        at ghidra.program.database.map.AddressKeyRecordIterator.<init>(AddressKeyRecordIterator.java:146)
        at ghidra.program.database.map.AddressKeyRecordIterator.<init>(AddressKeyRecordIterator.java:62)
        at ghidra.program.database.code.DataDBAdapterV0.getRecordBefore(DataDBAdapterV0.java:108)
        at ghidra.program.database.code.CodeManager.getDefinedBefore(CodeManager.java:937)
        at ghidra.program.database.code.CodeManager.getCodeUnitBefore(CodeManager.java:980)
        at ghidra.program.database.ListingDB.getCodeUnitBefore(ListingDB.java:87)
        at ghidra.app.util.viewer.listingpanel.ProgramBigListingModel.getAddressBefore(ProgramBigListingModel.java:327)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.getIndexBefore(ListingModelAdapter.java:109)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.checkIndex(ListingModelAdapter.java:490)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.findUnviewableAddressRanges(ListingModelAdapter.java:479)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.removeUnviewableAddressRanges(ListingModelAdapter.java:459)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.resetIndexMap(ListingModelAdapter.java:450)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.lambda$new$0(ListingModelAdapter.java:58)
        at ghidra.util.task.SwingUpdateManager.swingDoWork(SwingUpdateManager.java:108)
        at ghidra.util.task.AbstractSwingUpdateManager.swingExecutePendingWork(AbstractSwingUpdateManager.java:338)
        at ghidra.util.task.AbstractSwingUpdateManager.checkForWork(AbstractSwingUpdateManager.java:278)
        at ghidra.util.Swing.doRun(Swing.java:292)
        at ghidra.util.Swing.runNow(Swing.java:208)
        at ghidra.util.Swing.runNow(Swing.java:163)
        at ghidra.util.task.AbstractSwingUpdateManager.updateNow(AbstractSwingUpdateManager.java:183)
        at ghidra.util.task.SwingUpdateManager.updateNow(SwingUpdateManager.java:135)
        at ghidra.app.util.viewer.listingpanel.ListingModelAdapter.dataChanged(ListingModelAdapter.java:182)
        at ghidra.app.util.viewer.listingpanel.ProgramBigListingModel.notifyDataChanged(ProgramBigListingModel.java:504)
        at ghidra.app.util.viewer.listingpanel.ProgramBigListingModel.domainObjectChanged(ProgramBigListingModel.java:558)
        at ghidra.framework.data.DomainObjectChangeSupport.lambda$fatalErrorOccurred$5(DomainObjectChangeSupport.java:170)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117)
        at java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:191)
        at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:236)
        at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:234)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
        at java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:234)
        at java.desktop/java.awt.Dialog.show(Dialog.java:1080)
        at java.desktop/java.awt.Component.show(Component.java:1728)
        at java.desktop/java.awt.Component.setVisible(Component.java:1675)
        at java.desktop/java.awt.Window.setVisible(Window.java:1036)
        at java.desktop/java.awt.Dialog.setVisible(Dialog.java:1016)
        at docking.DockingDialog.setVisible(DockingDialog.java:353)
        at docking.DockingWindowManager.lambda$doShowDialog$6(DockingWindowManager.java:1751)
        at ghidra.util.Swing.doRun(Swing.java:292)
        at ghidra.util.Swing.runNow(Swing.java:208)
        at ghidra.util.Swing.runNow(Swing.java:163)
        at docking.DockingWindowManager.doShowDialog(DockingWindowManager.java:1755)
        at docking.DockingWindowManager.showDialog(DockingWindowManager.java:1704)
        at docking.DockingErrorDisplay.showDialogOnSwing(DockingErrorDisplay.java:178)
        at docking.DockingErrorDisplay.showDialog(DockingErrorDisplay.java:157)
        at docking.DockingErrorDisplay.doDisplayMessage(DockingErrorDisplay.java:143)
        at docking.DockingErrorDisplay.lambda$displayMessage$0(DockingErrorDisplay.java:102)
        at ghidra.util.Swing.runIfSwingOrRunLater(Swing.java:124)
        at docking.DockingErrorDisplay.displayMessage(DockingErrorDisplay.java:102)
        at docking.DockingErrorDisplay.displayErrorMessage(DockingErrorDisplay.java:55)
        at ghidra.util.Msg.showError(Msg.java:306)
        at ghidra.framework.plugintool.mgr.EventManager.sendEvents(EventManager.java:289)
        at ghidra.framework.plugintool.mgr.EventManager.lambda$new$3(EventManager.java:49)
        at ghidra.util.Swing.doRun(Swing.java:292)
        at ghidra.util.Swing.runNow(Swing.java:208)
        at ghidra.util.Swing.runNow(Swing.java:163)
        at ghidra.framework.plugintool.mgr.EventManager.fireEvent(EventManager.java:216)
        at ghidra.framework.plugintool.PluginTool.firePluginEvent(PluginTool.java:475)
        at ghidra.app.plugin.core.codebrowser.CodeBrowserPlugin.locationChanged(CodeBrowserPlugin.java:276)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.programLocationChanged(CodeViewerProvider.java:521)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.fieldLocationChanged(ListingPanel.java:797)
        at docking.widgets.fieldpanel.FieldPanel$CursorHandler.notifyCursorChanged(FieldPanel.java:2144)
        at docking.widgets.fieldpanel.FieldPanel$CursorHandler.doSetCursorPosition(FieldPanel.java:1978)
        at docking.widgets.fieldpanel.FieldPanel.goTo(FieldPanel.java:806)
        at docking.widgets.fieldpanel.FieldPanel.goTo(FieldPanel.java:799)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.goTo(ListingPanel.java:582)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.setLocation(CodeViewerProvider.java:689)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.goTo(CodeViewerProvider.java:892)
        at ghidra.app.plugin.core.gotoquery.GoToHelper.goTo(GoToHelper.java:115)
        at ghidra.app.util.navigation.GoToServiceImpl.goTo(GoToServiceImpl.java:86)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkMemRefs(OperandFieldMouseHandler.java:323)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkOperandFieldLocation(OperandFieldMouseHandler.java:117)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.fieldElementClicked(OperandFieldMouseHandler.java:78)
        at ghidra.app.util.viewer.util.FieldNavigator.processHandlerList(FieldNavigator.java:70)
        at ghidra.app.util.viewer.util.FieldNavigator.fieldElementClicked(FieldNavigator.java:62)
        at ghidra.app.util.viewer.util.FieldNavigator.buttonPressed(FieldNavigator.java:123)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.buttonPressed(ListingPanel.java:764)
        at docking.widgets.fieldpanel.FieldPanel.lambda$notifyFieldMouseListeners$0(FieldPanel.java:1276)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
 
2022-08-26 20:05:03 ERROR (MultiProgramManager) Severe Error Condition: 3.03a was closed due to an unrecoverable error!

Such failures are generally due to an IO Error caused
by the local filesystem or server.  
2022-08-26 20:05:04 ERROR (SwingUpdateManager) Unexpected Exception: Unexpected exception in Swing Update Manager java.io.IOException: Corrupted BufferMgr state
        at db.buffers.BufferMgr.getBuffer(BufferMgr.java:955)
        at db.NodeMgr.getFixedKeyNode(NodeMgr.java:292)
        at db.Table.getFieldKeyNode(Table.java:164)
        at db.Table$FieldKeyIterator2.initialize(Table.java:3823)
        at db.Table$FieldKeyIterator2.<init>(Table.java:3797)
        at db.Table$FieldKeyIterator.<init>(Table.java:3356)
        at db.Table.fieldKeyIterator(Table.java:2000)
        at db.FieldIndexTable$PrimaryKeyIterator.<init>(FieldIndexTable.java:493)
        at db.FieldIndexTable.keyIterator(FieldIndexTable.java:410)
        at db.Table.indexIterator(Table.java:1564)
        at ghidra.program.database.util.AddressRangeMapDB.getAddressSet(AddressRangeMapDB.java:445)
        at ghidra.program.database.symbol.NamespaceManager.getAddressSet(NamespaceManager.java:292)
        at ghidra.program.database.symbol.NamespaceManager.getAddressSet(NamespaceManager.java:270)
        at ghidra.program.database.function.FunctionDB.getBody(FunctionDB.java:337)
        at ghidra.app.decompiler.component.DecompileData.contains(DecompileData.java:121)
        at ghidra.app.decompiler.component.DecompilerPanel.containsLocation(DecompilerPanel.java:308)
        at ghidra.app.decompiler.component.DecompilerController.display(DecompilerController.java:100)
        at ghidra.app.plugin.core.decompile.DecompilerProvider.setLocation(DecompilerProvider.java:422)
        at ghidra.app.plugin.core.decompile.DecompilePlugin.lambda$new$0(DecompilePlugin.java:75)
        at ghidra.util.task.SwingUpdateManager.swingDoWork(SwingUpdateManager.java:108)
        at ghidra.util.task.AbstractSwingUpdateManager.swingExecutePendingWork(AbstractSwingUpdateManager.java:338)
        at ghidra.util.task.AbstractSwingUpdateManager.timerCallback(AbstractSwingUpdateManager.java:287)
        at ghidra.util.task.AbstractSwingUpdateManager.lambda$new$0(AbstractSwingUpdateManager.java:131)
        at java.desktop/javax.swing.Timer.fireActionPerformed(Timer.java:311)
        at java.desktop/javax.swing.Timer$DoPostEvent.run(Timer.java:243)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117)
        at java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:191)
        at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:236)
        at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:234)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
        at java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:234)
        at java.desktop/java.awt.Dialog.show(Dialog.java:1080)
        at java.desktop/java.awt.Component.show(Component.java:1728)
        at java.desktop/java.awt.Component.setVisible(Component.java:1675)
        at java.desktop/java.awt.Window.setVisible(Window.java:1036)
        at java.desktop/java.awt.Dialog.setVisible(Dialog.java:1016)
        at docking.DockingDialog.setVisible(DockingDialog.java:353)
        at docking.DockingWindowManager.lambda$doShowDialog$6(DockingWindowManager.java:1751)
        at ghidra.util.Swing.doRun(Swing.java:292)
        at ghidra.util.Swing.runNow(Swing.java:208)
        at ghidra.util.Swing.runNow(Swing.java:163)
        at docking.DockingWindowManager.doShowDialog(DockingWindowManager.java:1755)
        at docking.DockingWindowManager.showDialog(DockingWindowManager.java:1704)
        at docking.DockingErrorDisplay.showDialogOnSwing(DockingErrorDisplay.java:178)
        at docking.DockingErrorDisplay.showDialog(DockingErrorDisplay.java:157)
        at docking.DockingErrorDisplay.doDisplayMessage(DockingErrorDisplay.java:143)
        at docking.DockingErrorDisplay.lambda$displayMessage$0(DockingErrorDisplay.java:102)
        at ghidra.util.Swing.runIfSwingOrRunLater(Swing.java:124)
        at docking.DockingErrorDisplay.displayMessage(DockingErrorDisplay.java:102)
        at docking.DockingErrorDisplay.displayErrorMessage(DockingErrorDisplay.java:55)
        at ghidra.util.Msg.showError(Msg.java:306)
        at ghidra.framework.plugintool.mgr.EventManager.sendEvents(EventManager.java:289)
        at ghidra.framework.plugintool.mgr.EventManager.lambda$new$3(EventManager.java:49)
        at ghidra.util.Swing.doRun(Swing.java:292)
        at ghidra.util.Swing.runNow(Swing.java:208)
        at ghidra.util.Swing.runNow(Swing.java:163)
        at ghidra.framework.plugintool.mgr.EventManager.fireEvent(EventManager.java:216)
        at ghidra.framework.plugintool.PluginTool.firePluginEvent(PluginTool.java:475)
        at ghidra.app.plugin.core.codebrowser.CodeBrowserPlugin.locationChanged(CodeBrowserPlugin.java:276)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.programLocationChanged(CodeViewerProvider.java:521)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.fieldLocationChanged(ListingPanel.java:797)
        at docking.widgets.fieldpanel.FieldPanel$CursorHandler.notifyCursorChanged(FieldPanel.java:2144)
        at docking.widgets.fieldpanel.FieldPanel$CursorHandler.doSetCursorPosition(FieldPanel.java:1978)
        at docking.widgets.fieldpanel.FieldPanel.goTo(FieldPanel.java:806)
        at docking.widgets.fieldpanel.FieldPanel.goTo(FieldPanel.java:799)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.goTo(ListingPanel.java:582)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.setLocation(CodeViewerProvider.java:689)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.goTo(CodeViewerProvider.java:892)
        at ghidra.app.plugin.core.gotoquery.GoToHelper.goTo(GoToHelper.java:115)
        at ghidra.app.util.navigation.GoToServiceImpl.goTo(GoToServiceImpl.java:86)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkMemRefs(OperandFieldMouseHandler.java:323)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkOperandFieldLocation(OperandFieldMouseHandler.java:117)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.fieldElementClicked(OperandFieldMouseHandler.java:78)
        at ghidra.app.util.viewer.util.FieldNavigator.processHandlerList(FieldNavigator.java:70)
        at ghidra.app.util.viewer.util.FieldNavigator.fieldElementClicked(FieldNavigator.java:62)
        at ghidra.app.util.viewer.util.FieldNavigator.buttonPressed(FieldNavigator.java:123)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.buttonPressed(ListingPanel.java:764)
        at docking.widgets.fieldpanel.FieldPanel.lambda$notifyFieldMouseListeners$0(FieldPanel.java:1276)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
 
2022-08-26 20:05:04 ERROR (SwingUpdateManager) Unexpected Exception: Unexpected exception in Swing Update Manager java.io.IOException: Corrupted BufferMgr state
        at db.buffers.BufferMgr.getBuffer(BufferMgr.java:955)
        at db.NodeMgr.getFixedKeyNode(NodeMgr.java:292)
        at db.Table.getFieldKeyNode(Table.java:164)
        at db.Table$FieldKeyIterator2.initialize(Table.java:3823)
        at db.Table$FieldKeyIterator2.<init>(Table.java:3797)
        at db.Table$FieldKeyIterator.<init>(Table.java:3356)
        at db.Table.fieldKeyIterator(Table.java:2000)
        at db.FieldIndexTable$PrimaryKeyIterator.<init>(FieldIndexTable.java:493)
        at db.FieldIndexTable.keyIterator(FieldIndexTable.java:410)
        at db.Table.indexIterator(Table.java:1564)
        at ghidra.program.database.util.AddressRangeMapDB.getAddressSet(AddressRangeMapDB.java:445)
        at ghidra.program.database.symbol.NamespaceManager.getAddressSet(NamespaceManager.java:292)
        at ghidra.program.database.symbol.NamespaceManager.getAddressSet(NamespaceManager.java:270)
        at ghidra.program.database.function.FunctionDB.getBody(FunctionDB.java:337)
        at ghidra.program.database.function.FunctionManagerDB.getFunctionContaining(FunctionManagerDB.java:652)
        at ghidra.program.database.ListingDB.getFunctionContaining(ListingDB.java:670)
        at ghidra.app.plugin.core.function.AnalyzeStackRefsAction.isEnabledForContext(AnalyzeStackRefsAction.java:127)
        at ghidra.app.context.ListingContextAction.isEnabledForContext(ListingContextAction.java:37)
        at docking.DockingActionProxy.isEnabledForContext(DockingActionProxy.java:188)
        at docking.WindowActionManager.contextChanged(WindowActionManager.java:108)
        at docking.GlobalMenuAndToolBarManager.updateActions(GlobalMenuAndToolBarManager.java:193)
        at docking.GlobalMenuAndToolBarManager.lambda$new$0(GlobalMenuAndToolBarManager.java:41)
        at ghidra.util.task.SwingUpdateManager.swingDoWork(SwingUpdateManager.java:108)
        at ghidra.util.task.AbstractSwingUpdateManager.swingExecutePendingWork(AbstractSwingUpdateManager.java:338)
        at ghidra.util.task.AbstractSwingUpdateManager.timerCallback(AbstractSwingUpdateManager.java:287)
        at ghidra.util.task.AbstractSwingUpdateManager.lambda$new$0(AbstractSwingUpdateManager.java:131)
        at java.desktop/javax.swing.Timer.fireActionPerformed(Timer.java:311)
        at java.desktop/javax.swing.Timer$DoPostEvent.run(Timer.java:243)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117)
        at java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:191)
        at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:236)
        at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:234)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
        at java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:234)
        at java.desktop/java.awt.Dialog.show(Dialog.java:1080)
        at java.desktop/java.awt.Component.show(Component.java:1728)
        at java.desktop/java.awt.Component.setVisible(Component.java:1675)
        at java.desktop/java.awt.Window.setVisible(Window.java:1036)
        at java.desktop/java.awt.Dialog.setVisible(Dialog.java:1016)
        at docking.DockingDialog.setVisible(DockingDialog.java:353)
        at docking.DockingWindowManager.lambda$doShowDialog$6(DockingWindowManager.java:1751)
        at ghidra.util.Swing.doRun(Swing.java:292)
        at ghidra.util.Swing.runNow(Swing.java:208)
        at ghidra.util.Swing.runNow(Swing.java:163)
        at docking.DockingWindowManager.doShowDialog(DockingWindowManager.java:1755)
        at docking.DockingWindowManager.showDialog(DockingWindowManager.java:1704)
        at docking.DockingErrorDisplay.showDialogOnSwing(DockingErrorDisplay.java:178)
        at docking.DockingErrorDisplay.showDialog(DockingErrorDisplay.java:157)
        at docking.DockingErrorDisplay.doDisplayMessage(DockingErrorDisplay.java:143)
        at docking.DockingErrorDisplay.lambda$displayMessage$0(DockingErrorDisplay.java:102)
        at ghidra.util.Swing.runIfSwingOrRunLater(Swing.java:124)
        at docking.DockingErrorDisplay.displayMessage(DockingErrorDisplay.java:102)
        at docking.DockingErrorDisplay.displayErrorMessage(DockingErrorDisplay.java:55)
        at ghidra.util.Msg.showError(Msg.java:306)
        at ghidra.framework.plugintool.mgr.EventManager.sendEvents(EventManager.java:289)
        at ghidra.framework.plugintool.mgr.EventManager.lambda$new$3(EventManager.java:49)
        at ghidra.util.Swing.doRun(Swing.java:292)
        at ghidra.util.Swing.runNow(Swing.java:208)
        at ghidra.util.Swing.runNow(Swing.java:163)
        at ghidra.framework.plugintool.mgr.EventManager.fireEvent(EventManager.java:216)
        at ghidra.framework.plugintool.PluginTool.firePluginEvent(PluginTool.java:475)
        at ghidra.app.plugin.core.codebrowser.CodeBrowserPlugin.locationChanged(CodeBrowserPlugin.java:276)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.programLocationChanged(CodeViewerProvider.java:521)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.fieldLocationChanged(ListingPanel.java:797)
        at docking.widgets.fieldpanel.FieldPanel$CursorHandler.notifyCursorChanged(FieldPanel.java:2144)
        at docking.widgets.fieldpanel.FieldPanel$CursorHandler.doSetCursorPosition(FieldPanel.java:1978)
        at docking.widgets.fieldpanel.FieldPanel.goTo(FieldPanel.java:806)
        at docking.widgets.fieldpanel.FieldPanel.goTo(FieldPanel.java:799)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.goTo(ListingPanel.java:582)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.setLocation(CodeViewerProvider.java:689)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.goTo(CodeViewerProvider.java:892)
        at ghidra.app.plugin.core.gotoquery.GoToHelper.goTo(GoToHelper.java:115)
        at ghidra.app.util.navigation.GoToServiceImpl.goTo(GoToServiceImpl.java:86)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkMemRefs(OperandFieldMouseHandler.java:323)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkOperandFieldLocation(OperandFieldMouseHandler.java:117)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.fieldElementClicked(OperandFieldMouseHandler.java:78)
        at ghidra.app.util.viewer.util.FieldNavigator.processHandlerList(FieldNavigator.java:70)
        at ghidra.app.util.viewer.util.FieldNavigator.fieldElementClicked(FieldNavigator.java:62)
        at ghidra.app.util.viewer.util.FieldNavigator.buttonPressed(FieldNavigator.java:123)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.buttonPressed(ListingPanel.java:764)
        at docking.widgets.fieldpanel.FieldPanel.lambda$notifyFieldMouseListeners$0(FieldPanel.java:1276)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
 
2022-08-26 20:05:04 ERROR (SwingUpdateManager) Unexpected Exception: Unexpected exception in Swing Update Manager java.io.IOException: Corrupted BufferMgr state
        at db.buffers.BufferMgr.getBuffer(BufferMgr.java:955)
        at db.NodeMgr.getVarKeyNode(NodeMgr.java:327)
        at db.Table.getFieldKeyNode(Table.java:166)
        at db.Table$FieldKeyRecordIterator.<init>(Table.java:2381)
        at db.Table.iterator(Table.java:1827)
        at ghidra.framework.data.OptionsDB.contains(OptionsDB.java:210)
        at ghidra.framework.options.SubOptions.contains(SubOptions.java:254)
        at ghidra.program.database.ProgramCompilerSpec.getDecompilerOutputLanguage(ProgramCompilerSpec.java:102)
        at ghidra.app.decompiler.DecompileOptions.grabFromProgram(DecompileOptions.java:522)
        at ghidra.app.decompiler.DecompileOptions.grabFromToolAndProgram(DecompileOptions.java:426)
        at ghidra.app.plugin.core.decompile.DecompilerProvider.doRefresh(DecompilerProvider.java:304)
        at ghidra.app.plugin.core.decompile.DecompilerProvider.lambda$new$0(DecompilerProvider.java:142)
        at ghidra.util.task.SwingUpdateManager.swingDoWork(SwingUpdateManager.java:108)
        at ghidra.util.task.AbstractSwingUpdateManager.swingExecutePendingWork(AbstractSwingUpdateManager.java:338)
        at ghidra.util.task.AbstractSwingUpdateManager.checkForWork(AbstractSwingUpdateManager.java:278)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117)
        at java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:191)
        at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:236)
        at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:234)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
        at java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:234)
        at java.desktop/java.awt.Dialog.show(Dialog.java:1080)
        at java.desktop/java.awt.Component.show(Component.java:1728)
        at java.desktop/java.awt.Component.setVisible(Component.java:1675)
        at java.desktop/java.awt.Window.setVisible(Window.java:1036)
        at java.desktop/java.awt.Dialog.setVisible(Dialog.java:1016)
        at docking.DockingDialog.setVisible(DockingDialog.java:353)
        at docking.DockingWindowManager.lambda$doShowDialog$6(DockingWindowManager.java:1751)
        at ghidra.util.Swing.doRun(Swing.java:292)
        at ghidra.util.Swing.runNow(Swing.java:208)
        at ghidra.util.Swing.runNow(Swing.java:163)
        at docking.DockingWindowManager.doShowDialog(DockingWindowManager.java:1755)
        at docking.DockingWindowManager.showDialog(DockingWindowManager.java:1704)
        at docking.DockingErrorDisplay.showDialogOnSwing(DockingErrorDisplay.java:178)
        at docking.DockingErrorDisplay.showDialog(DockingErrorDisplay.java:157)
        at docking.DockingErrorDisplay.doDisplayMessage(DockingErrorDisplay.java:143)
        at docking.DockingErrorDisplay.lambda$displayMessage$0(DockingErrorDisplay.java:102)
        at ghidra.util.Swing.runIfSwingOrRunLater(Swing.java:124)
        at docking.DockingErrorDisplay.displayMessage(DockingErrorDisplay.java:102)
        at docking.DockingErrorDisplay.displayErrorMessage(DockingErrorDisplay.java:55)
        at ghidra.util.Msg.showError(Msg.java:306)
        at ghidra.framework.plugintool.mgr.EventManager.sendEvents(EventManager.java:289)
        at ghidra.framework.plugintool.mgr.EventManager.lambda$new$3(EventManager.java:49)
        at ghidra.util.Swing.doRun(Swing.java:292)
        at ghidra.util.Swing.runNow(Swing.java:208)
        at ghidra.util.Swing.runNow(Swing.java:163)
        at ghidra.framework.plugintool.mgr.EventManager.fireEvent(EventManager.java:216)
        at ghidra.framework.plugintool.PluginTool.firePluginEvent(PluginTool.java:475)
        at ghidra.app.plugin.core.codebrowser.CodeBrowserPlugin.locationChanged(CodeBrowserPlugin.java:276)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.programLocationChanged(CodeViewerProvider.java:521)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.fieldLocationChanged(ListingPanel.java:797)
        at docking.widgets.fieldpanel.FieldPanel$CursorHandler.notifyCursorChanged(FieldPanel.java:2144)
        at docking.widgets.fieldpanel.FieldPanel$CursorHandler.doSetCursorPosition(FieldPanel.java:1978)
        at docking.widgets.fieldpanel.FieldPanel.goTo(FieldPanel.java:806)
        at docking.widgets.fieldpanel.FieldPanel.goTo(FieldPanel.java:799)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.goTo(ListingPanel.java:582)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.setLocation(CodeViewerProvider.java:689)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.goTo(CodeViewerProvider.java:892)
        at ghidra.app.plugin.core.gotoquery.GoToHelper.goTo(GoToHelper.java:115)
        at ghidra.app.util.navigation.GoToServiceImpl.goTo(GoToServiceImpl.java:86)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkMemRefs(OperandFieldMouseHandler.java:323)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkOperandFieldLocation(OperandFieldMouseHandler.java:117)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.fieldElementClicked(OperandFieldMouseHandler.java:78)
        at ghidra.app.util.viewer.util.FieldNavigator.processHandlerList(FieldNavigator.java:70)
        at ghidra.app.util.viewer.util.FieldNavigator.fieldElementClicked(FieldNavigator.java:62)
        at ghidra.app.util.viewer.util.FieldNavigator.buttonPressed(FieldNavigator.java:123)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.buttonPressed(ListingPanel.java:764)
        at docking.widgets.fieldpanel.FieldPanel.lambda$notifyFieldMouseListeners$0(FieldPanel.java:1276)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
 
2022-08-26 20:05:14 ERROR (EventManager) Plugin Event Error: Error in plugin event listener java.io.IOException: Corrupted BufferMgr state
        at db.buffers.BufferMgr.getBuffer(BufferMgr.java:955)
        at db.NodeMgr.getLongKeyNode(NodeMgr.java:257)
        at db.Table$LongKeyIterator1.initialize(Table.java:2818)
        at db.Table$LongKeyIterator1.<init>(Table.java:2791)
        at db.Table$LongKeyIterator.<init>(Table.java:2682)
        at db.Table.longKeyIterator(Table.java:1950)
        at ghidra.program.database.map.AddressKeyIterator.<init>(AddressKeyIterator.java:149)
        at ghidra.program.database.map.AddressKeyIterator.<init>(AddressKeyIterator.java:109)
        at ghidra.program.database.code.InstDBAdapterV1.getKeys(InstDBAdapterV1.java:186)
        at ghidra.program.database.code.CodeManager.getCodeUnitIterator(CodeManager.java:1196)
        at ghidra.program.database.ListingDB.getCodeUnitIterator(ListingDB.java:112)
        at ghidra.app.plugin.core.flowarrow.FlowArrowPlugin.getFlowArrowsForScreenInstructions(FlowArrowPlugin.java:433)
        at ghidra.app.plugin.core.flowarrow.FlowArrowPlugin.update(FlowArrowPlugin.java:596)
        at ghidra.app.plugin.core.flowarrow.FlowArrowPlugin.updateAndRepaint(FlowArrowPlugin.java:552)
        at ghidra.app.plugin.core.flowarrow.FlowArrowPlugin.processEvent(FlowArrowPlugin.java:177)
        at ghidra.framework.plugintool.Plugin.eventSent(Plugin.java:329)
        at ghidra.framework.plugintool.mgr.EventManager.sendEvents(EventManager.java:286)
        at ghidra.framework.plugintool.mgr.EventManager.lambda$new$3(EventManager.java:49)
        at ghidra.util.Swing.doRun(Swing.java:292)
        at ghidra.util.Swing.runNow(Swing.java:208)
        at ghidra.util.Swing.runNow(Swing.java:163)
        at ghidra.framework.plugintool.mgr.EventManager.fireEvent(EventManager.java:216)
        at ghidra.framework.plugintool.PluginTool.firePluginEvent(PluginTool.java:475)
        at ghidra.app.plugin.core.codebrowser.CodeBrowserPlugin.locationChanged(CodeBrowserPlugin.java:276)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.programLocationChanged(CodeViewerProvider.java:521)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.fieldLocationChanged(ListingPanel.java:797)
        at docking.widgets.fieldpanel.FieldPanel$CursorHandler.notifyCursorChanged(FieldPanel.java:2144)
        at docking.widgets.fieldpanel.FieldPanel$CursorHandler.doSetCursorPosition(FieldPanel.java:1978)
        at docking.widgets.fieldpanel.FieldPanel.goTo(FieldPanel.java:806)
        at docking.widgets.fieldpanel.FieldPanel.goTo(FieldPanel.java:799)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.goTo(ListingPanel.java:582)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.setLocation(CodeViewerProvider.java:689)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.goTo(CodeViewerProvider.java:892)
        at ghidra.app.plugin.core.gotoquery.GoToHelper.goTo(GoToHelper.java:115)
        at ghidra.app.util.navigation.GoToServiceImpl.goTo(GoToServiceImpl.java:86)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkMemRefs(OperandFieldMouseHandler.java:323)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkOperandFieldLocation(OperandFieldMouseHandler.java:117)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.fieldElementClicked(OperandFieldMouseHandler.java:78)
        at ghidra.app.util.viewer.util.FieldNavigator.processHandlerList(FieldNavigator.java:70)
        at ghidra.app.util.viewer.util.FieldNavigator.fieldElementClicked(FieldNavigator.java:62)
        at ghidra.app.util.viewer.util.FieldNavigator.buttonPressed(FieldNavigator.java:123)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.buttonPressed(ListingPanel.java:764)
        at docking.widgets.fieldpanel.FieldPanel.lambda$notifyFieldMouseListeners$0(FieldPanel.java:1276)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
 
2022-08-26 20:05:14 ERROR (SwingUpdateManager) Unexpected Exception: Unexpected exception in Swing Update Manager java.io.IOException: Corrupted BufferMgr state
        at db.buffers.BufferMgr.getBuffer(BufferMgr.java:955)
        at db.NodeMgr.getFixedKeyNode(NodeMgr.java:292)
        at db.Table.getFieldKeyNode(Table.java:164)
        at db.Table$FieldKeyIterator2.initialize(Table.java:3823)
        at db.Table$FieldKeyIterator2.<init>(Table.java:3797)
        at db.Table$FieldKeyIterator.<init>(Table.java:3356)
        at db.Table.fieldKeyIterator(Table.java:2000)
        at db.FieldIndexTable$PrimaryKeyIterator.<init>(FieldIndexTable.java:493)
        at db.FieldIndexTable.keyIterator(FieldIndexTable.java:410)
        at db.Table.indexIterator(Table.java:1564)
        at ghidra.program.database.util.AddressRangeMapDB.getAddressSet(AddressRangeMapDB.java:445)
        at ghidra.program.database.symbol.NamespaceManager.getAddressSet(NamespaceManager.java:292)
        at ghidra.program.database.symbol.NamespaceManager.getAddressSet(NamespaceManager.java:270)
        at ghidra.program.database.function.FunctionDB.getBody(FunctionDB.java:337)
        at ghidra.program.database.function.FunctionManagerDB.getFunctionContaining(FunctionManagerDB.java:652)
        at functioncalls.plugin.FcgProvider.locationChanged(FcgProvider.java:151)
        at functioncalls.plugin.FunctionCallGraphPlugin.doLocationChanged(FunctionCallGraphPlugin.java:116)
        at functioncalls.plugin.FunctionCallGraphPlugin.lambda$new$0(FunctionCallGraphPlugin.java:63)
        at ghidra.util.task.SwingUpdateManager.swingDoWork(SwingUpdateManager.java:108)
        at ghidra.util.task.AbstractSwingUpdateManager.swingExecutePendingWork(AbstractSwingUpdateManager.java:338)
        at ghidra.util.task.AbstractSwingUpdateManager.checkForWork(AbstractSwingUpdateManager.java:278)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117)
        at java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:191)
        at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:236)
        at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:234)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
        at java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:234)
        at java.desktop/java.awt.Dialog.show(Dialog.java:1080)
        at java.desktop/java.awt.Component.show(Component.java:1728)
        at java.desktop/java.awt.Component.setVisible(Component.java:1675)
        at java.desktop/java.awt.Window.setVisible(Window.java:1036)
        at java.desktop/java.awt.Dialog.setVisible(Dialog.java:1016)
        at docking.DockingDialog.setVisible(DockingDialog.java:353)
        at docking.DockingWindowManager.lambda$doShowDialog$6(DockingWindowManager.java:1751)
        at ghidra.util.Swing.doRun(Swing.java:292)
        at ghidra.util.Swing.runNow(Swing.java:208)
        at ghidra.util.Swing.runNow(Swing.java:163)
        at docking.DockingWindowManager.doShowDialog(DockingWindowManager.java:1755)
        at docking.DockingWindowManager.showDialog(DockingWindowManager.java:1704)
        at docking.DockingErrorDisplay.showDialogOnSwing(DockingErrorDisplay.java:178)
        at docking.DockingErrorDisplay.showDialog(DockingErrorDisplay.java:157)
        at docking.DockingErrorDisplay.doDisplayMessage(DockingErrorDisplay.java:143)
        at docking.DockingErrorDisplay.lambda$displayMessage$0(DockingErrorDisplay.java:102)
        at ghidra.util.Swing.runIfSwingOrRunLater(Swing.java:124)
        at docking.DockingErrorDisplay.displayMessage(DockingErrorDisplay.java:102)
        at docking.DockingErrorDisplay.displayErrorMessage(DockingErrorDisplay.java:55)
        at ghidra.util.Msg.showError(Msg.java:306)
        at ghidra.framework.plugintool.mgr.EventManager.sendEvents(EventManager.java:289)
        at ghidra.framework.plugintool.mgr.EventManager.lambda$new$3(EventManager.java:49)
        at ghidra.util.Swing.doRun(Swing.java:292)
        at ghidra.util.Swing.runNow(Swing.java:208)
        at ghidra.util.Swing.runNow(Swing.java:163)
        at ghidra.framework.plugintool.mgr.EventManager.fireEvent(EventManager.java:216)
        at ghidra.framework.plugintool.PluginTool.firePluginEvent(PluginTool.java:475)
        at ghidra.app.plugin.core.codebrowser.CodeBrowserPlugin.locationChanged(CodeBrowserPlugin.java:276)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.programLocationChanged(CodeViewerProvider.java:521)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.fieldLocationChanged(ListingPanel.java:797)
        at docking.widgets.fieldpanel.FieldPanel$CursorHandler.notifyCursorChanged(FieldPanel.java:2144)
        at docking.widgets.fieldpanel.FieldPanel$CursorHandler.doSetCursorPosition(FieldPanel.java:1978)
        at docking.widgets.fieldpanel.FieldPanel.goTo(FieldPanel.java:806)
        at docking.widgets.fieldpanel.FieldPanel.goTo(FieldPanel.java:799)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.goTo(ListingPanel.java:582)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.setLocation(CodeViewerProvider.java:689)
        at ghidra.app.plugin.core.codebrowser.CodeViewerProvider.goTo(CodeViewerProvider.java:892)
        at ghidra.app.plugin.core.gotoquery.GoToHelper.goTo(GoToHelper.java:115)
        at ghidra.app.util.navigation.GoToServiceImpl.goTo(GoToServiceImpl.java:86)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkMemRefs(OperandFieldMouseHandler.java:323)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.checkOperandFieldLocation(OperandFieldMouseHandler.java:117)
        at ghidra.app.util.viewer.field.OperandFieldMouseHandler.fieldElementClicked(OperandFieldMouseHandler.java:78)
        at ghidra.app.util.viewer.util.FieldNavigator.processHandlerList(FieldNavigator.java:70)
        at ghidra.app.util.viewer.util.FieldNavigator.fieldElementClicked(FieldNavigator.java:62)
        at ghidra.app.util.viewer.util.FieldNavigator.buttonPressed(FieldNavigator.java:123)
        at ghidra.app.util.viewer.listingpanel.ListingPanel.buttonPressed(ListingPanel.java:764)
        at docking.widgets.fieldpanel.FieldPanel.lambda$notifyFieldMouseListeners$0(FieldPanel.java:1276)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
 
2022-08-26 20:05:32 ERROR (ProgramContentHandler) getDomainObject failed ghidra.util.exception.AssertException: Unexpected DBParms buffer node type
        at db.DBParms.refresh(DBParms.java:187)
        at db.DBParms.<init>(DBParms.java:87)
        at db.DBHandle.<init>(DBHandle.java:130)
        at ghidra.program.database.ProgramContentHandler.getDomainObject(ProgramContentHandler.java:193)
        at ghidra.framework.data.GhidraFileData.getDomainObject(GhidraFileData.java:339)
        at ghidra.framework.data.GhidraFile.getDomainObject(GhidraFile.java:179)
        at ghidra.app.util.task.OpenProgramTask.openFileMaybeUgrade(OpenProgramTask.java:241)
        at ghidra.app.util.task.OpenProgramTask.openUnversionedFile(OpenProgramTask.java:206)
        at ghidra.app.util.task.OpenProgramTask.openDomainFile(OpenProgramTask.java:149)
        at ghidra.app.util.task.OpenProgramTask.run(OpenProgramTask.java:133)
        at ghidra.util.task.Task.monitoredRun(Task.java:134)
        at ghidra.util.task.TaskRunner.lambda$startTaskThread$0(TaskRunner.java:106)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
        at java.base/java.lang.Thread.run(Thread.java:833)
 
2022-08-26 20:05:32 ERROR (ClientUtil) Error During Open File: Open failed: Unexpected DBParms buffer node type java.io.IOException: Open failed: Unexpected DBParms buffer node type
        at ghidra.program.database.ProgramContentHandler.getDomainObject(ProgramContentHandler.java:225)
        at ghidra.framework.data.GhidraFileData.getDomainObject(GhidraFileData.java:339)
        at ghidra.framework.data.GhidraFile.getDomainObject(GhidraFile.java:179)
        at ghidra.app.util.task.OpenProgramTask.openFileMaybeUgrade(OpenProgramTask.java:241)
        at ghidra.app.util.task.OpenProgramTask.openUnversionedFile(OpenProgramTask.java:206)
        at ghidra.app.util.task.OpenProgramTask.openDomainFile(OpenProgramTask.java:149)
        at ghidra.app.util.task.OpenProgramTask.run(OpenProgramTask.java:133)
        at ghidra.util.task.Task.monitoredRun(Task.java:134)
        at ghidra.util.task.TaskRunner.lambda$startTaskThread$0(TaskRunner.java:106)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
        at java.base/java.lang.Thread.run(Thread.java:833)

2022-08-26 20:06:00 ERROR (ProgramContentHandler) getDomainObject failed ghidra.util.exception.AssertException: Unexpected DBParms buffer node type
        at db.DBParms.refresh(DBParms.java:187)
        at db.DBParms.<init>(DBParms.java:87)
        at db.DBHandle.<init>(DBHandle.java:130)
        at ghidra.program.database.ProgramContentHandler.getDomainObject(ProgramContentHandler.java:193)
        at ghidra.framework.data.GhidraFileData.getDomainObject(GhidraFileData.java:339)
        at ghidra.framework.data.GhidraFile.getDomainObject(GhidraFile.java:179)
        at ghidra.app.util.task.OpenProgramTask.openFileMaybeUgrade(OpenProgramTask.java:241)
        at ghidra.app.util.task.OpenProgramTask.openUnversionedFile(OpenProgramTask.java:206)
        at ghidra.app.util.task.OpenProgramTask.openDomainFile(OpenProgramTask.java:149)
        at ghidra.app.util.task.OpenProgramTask.run(OpenProgramTask.java:133)
        at ghidra.util.task.Task.monitoredRun(Task.java:134)
        at ghidra.util.task.TaskRunner.lambda$startTaskThread$0(TaskRunner.java:106)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
        at java.base/java.lang.Thread.run(Thread.java:833)

2022-08-26 20:06:00 ERROR (ClientUtil) Error During Open File: Open failed: Unexpected DBParms buffer node type java.io.IOException: Open failed: Unexpected DBParms buffer node type
        at ghidra.program.database.ProgramContentHandler.getDomainObject(ProgramContentHandler.java:225)
        at ghidra.framework.data.GhidraFileData.getDomainObject(GhidraFileData.java:339)
        at ghidra.framework.data.GhidraFile.getDomainObject(GhidraFile.java:179)
        at ghidra.app.util.task.OpenProgramTask.openFileMaybeUgrade(OpenProgramTask.java:241)
        at ghidra.app.util.task.OpenProgramTask.openUnversionedFile(OpenProgramTask.java:206)
        at ghidra.app.util.task.OpenProgramTask.openDomainFile(OpenProgramTask.java:149)
        at ghidra.app.util.task.OpenProgramTask.run(OpenProgramTask.java:133)
        at ghidra.util.task.Task.monitoredRun(Task.java:134)
        at ghidra.util.task.TaskRunner.lambda$startTaskThread$0(TaskRunner.java:106)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
        at java.base/java.lang.Thread.run(Thread.java:833)

kbembedded avatar Aug 27 '22 04:08 kbembedded

The Unexpected DBParms buffer node type may indicate that the db file did not write completely to disc. The DB params are located in the second 16-KByte block of the file . Why do you believe the action changing a variable type in the decompiler... is related to the error condition? Did something occur at the instant you did this? Out of memory conditions, if they occur, can also lead to corruption during a modify/save operation.

Did you ever forced a program save while a transaction was active and get the forced save option dialog? If so, and you proceeded with a save without a rollback, I believe this could also cause a DB corruption. We are looking into removing this capability.

If you can send us the affected db file(s), I can examine them. This may help us to identify a possible cause. This is the first time a DB params error has been reported.

Finding the db directory is a little involved and requires examination of the ~index.dat text file within your project.rep/idata directory. Locate your program by pathname within this file and identify the 8-digit hex number (e.g., 12345678). For this example you would then look into the subfolder 67/~12345678.db to find the files of interest.

ghidra1 avatar Sep 01 '22 17:09 ghidra1

Why do you believe the action changing a variable type in the decompiler... is related to the error condition?

In the dump I provided, I received the error 2022-08-26 20:05:03 ERROR (EventManager) Plugin Event Error: Error in plugin event listener java.io.IOException: Corrupted BufferMgr state as a popup in Ghidra as soon as I double clicked a label to follow up.

The first time it happened (recalling from memory) it was a similar Plugin Event Error message popup.

Both times, after the error popup came up, the project closed, and upon reopening presented the Unexpected DBParms buffer node type error and the project failed to load ever again.

I can provide a copy of the db, I'll try and do it this week. I have a bunch of copies of everything now that were poorly labeled so I need to find the right project folder and find the db in there. I believe there was only ever a single db file when I originally dug around for it.

The other potential point of interest is originally I had the whole project folder hosted over local SMB (to take advantage of ZFS behind it in case I needed to revert anything). I never have had any SMB errors on this network. However, after this issue cropped up the second time, I exported an archive from the SMB housed project, and imported it to a new project on my local disk and no issues have cropped up since. I'm unsure if the above is related to file IO issues over SMB, but that seems somewhat likely at this point. Note that it was still a solo project, only ever touched by me, so there is no chance of issues from someone else trying to access the project at the same time.

kbembedded avatar Sep 04 '22 18:09 kbembedded

I can provide a copy of the db, I'll try and do it this week. I have a bunch of copies of everything now that were poorly labeled so I need to find the right project folder and find the db in there.

Any success with finding an affected db file?

ghidra1 avatar Sep 14 '22 17:09 ghidra1

@ghidra1 my apologies, this fell off my radar as other things came up. I will have a db file for you this weekend or let you know if I'm unable to get a hold of it.

What is a good way to get it to you?

kbembedded avatar Sep 17 '22 06:09 kbembedded

Okay, found it, I left it in a highly conspicuous place. Let me know a good way to get it to you and I can do that.

I missed your previous question:

Did you ever forced a program save while a transaction was active and get the forced save option dialog? If so, and you proceeded with a save without a rollback, I believe this could also cause a DB corruption. We are looking into removing this capability.

No, I never did such an action nor have I ever seen the forced save dialog. The whole chain of events happened as I described above: I did an innocent action, the first time was changing a datatype (of which I no longer have this db), the second time was after trying to follow a label (that is the db I have now, or at least thats what got this db in to the state its in), I got a popup error complaining about Plugin Event Error, the project closed completely on its own, and I was greeted with the DBParms error the next time and all future times I attempt to open that specific project.

I've not had any issues since moving the project to a local disk. There may indeed be something screwy with hosting the project over a network share (again, it was never shared only ever access by me from one system).

kbembedded avatar Sep 17 '22 07:09 kbembedded

There may indeed be something screwy with hosting the project over a network share

Many years ago I had run into issues with this although I don't recall the specific configuration. At the time I believe I faulted the specific server for it.

ghidra1 avatar Sep 21 '22 16:09 ghidra1

@kbembedded Are you able to supply the db file(s) for diagnosis? If not I will have to close this ticket. Thanks

ghidra1 avatar Sep 26 '22 12:09 ghidra1

@ghidra1 I sent the file Saturday morning, apologies that I did not update the ticket here to reflect that.

kbembedded avatar Sep 26 '22 18:09 kbembedded

Looking at your DB file the parameter block is completely missing (DBParams) as are the file parameters. The buffer node type for DBParams is established once when the project file is initially created. The implication is that something trashed this buffer.

While this could be easily done by broken/malicious code modifying DBHandle.getBuffer(0), it would be almost impossible to understand how without reproducing the issue.

In the past, some DB corruption issues triaged pointed back to an out-of-memory exception that was the root cause. Are you able to reproduce the condition from a clean state (i.e., new import)? If so we can probably explore further with more details from you (e.g., original binary, steps to reproduce), otherwise we may be at a dead end.

ghidra1 avatar Oct 03 '22 17:10 ghidra1

At this point, I'm willing to blame storing the project over SMB and call it a day.

I could probably get it to reproduce again, but it would happen after some unknown amount of time working on the project, the times I reproduced it weren't consistent, and there is no guarantee I could narrow down the steps so that it could be reproduced by anyone other than me.

I would say that if you wanted to explore more, set up a project on an SMB share and just work with it and see what happens. Since Ghidra has its own mechanism to remotely store and access projects for shared workspaces however, SMB probably isn't a normal use case and might just be best to make a note somewhere in the docs that network filesystems might cause issues.

Either way, thanks for the help, if you want to keep digging at it, I'd be happy to provide more testing, evidence, details, whatever, but, this isn't a show stopping issue for me.

kbembedded avatar Oct 03 '22 19:10 kbembedded

If the condition occurs again it may be worth spending the extra effort to isolate. This could be done by introducing additional logging when the DBParams block is modified - assuming a second occurance manifests in the same way. Have you checked your memory usage and availability from the Ghidra Help menu?

I will close this ticket for now but feel free to add a future comment if we need to re-open.

ghidra1 avatar Oct 04 '22 14:10 ghidra1