Post

1 follower Follow
0
Avatar

AssertionError: getDocumentByURN() from the Swing Thread

One of our Geneious users repeatedly reports Genious crashes. Geneious does not disappear, but he gets an error dialog allowing him to report the crash to Biomatters. Afterwards he may or may not be able to continue working. He says he can't do "Save As" any longer.

The crash happens in a wide variety of situations/actions, but when I study the crash log, they are invariably caused by an AssertionError:

java.lang.AssertionError: Should not call getDocumentByURN() from the Swing Thread - it may do network I/O for a shared database

Unfortunately I can't tell from te logs if the error was happening in a native Geneious plugin, or one of the plugins we built ourselves (the stack traces don't go that far back). If the latter, it must be in an indirect way because our code never calls getDocumentByURN directly.

We still use Geneious 8.1.8. Other users don't seem to have this problem.

Below is the start of one of the crash logs:

 

Sequence View 8.1.8 Exception occurred 2018-05-29 10:45:47

incidentSequenceNumber: 1
incidentAge: Current
applicationName: Geneious
applicationVersion: 8.1.8
applicationPlatform: Windows 7 (amd64)
applicationBuildDate: 2015-11-24 11:06
javaVersion: 1.8.0_31 (64 bit)
userName: stokvis
stackAnalysis: Sequence View 8.1.8
memoryUsage: 364 / 3038 / 8073 MB [After previous GC:  heap total:237/3038   Par Eden Space:0/266   Par Survivor Space:1/33   CMS Old Gen:235/2739]
dataOnNetworkDrive: false
dataDirectory: C:\Temp\Geneious_data_Stokvis4
thread: Thread[AWT-EventQueue-0,6,main]
exceptionMessage: Should not call getDocumentByURN() from the Swing Thread - it may do network I/O for a shared database for assigner.isLocalURN=false urn=urn:local:stokvis:mk-922yhlj

stacktrace:
java.lang.AssertionError
    at com.biomatters.geneious.publicapi.documents.DocumentUtilitiesImplementation.a(DocumentUtilitiesImplementation.java:110)
    at com.biomatters.geneious.publicapi.documents.DocumentUtilitiesImplementation.getDocumentByURN(DocumentUtilitiesImplementation.java:52)
    at com.biomatters.geneious.publicapi.documents.DocumentUtilities.getDocumentByURN(DocumentUtilities.java:252)

Informatiemanagement

Please sign in to leave a comment.

1 comment

0
Avatar

Hi Iris,

Assertions are normally not enabled in Geneious.  We often use them to alert us internally during development if we're doing something that might cause a problem.  In this case the UI would freeze up for the user until the document is loaded.

Take a look at their vmoptions file and see if they have "-ea" there.  If they do, then you can remove it and the problem will go away.

Cheers,
Matthew

Matthew Cheung 0 votes
Comment actions Permalink