Unable to save Collection Object records in Specify 6

Hello,

We are using Specify 6.8.03 - as of Wednesday of last week we cannot seem to save any new Collection Object records. After checking the logs I noticed the issue is being caused by a stack overflow error, however nothing has changes as far as I can tell in our forms or instance of Specify 6. Any ideas why it’s suddenly getting a stack overflow/What might fix it?
I thought it might be being caused by the auto numbering of our catalogNumber but the error still occurs after turning it off and manually adding it.

The error:

Exception in thread “AWT-EventQueue-0” Exception in thread “AWT-EventQueue-0” java.lang.StackOverflowError
java.lang.StackOverflowErrorjava.lang.StackOverflowError
at edu.ku.brc.specify.datamodel.CollectionObject.toString(CollectionObject.java:1737)
at edu.ku.brc.specify.datamodel.CollectionObject.toString(CollectionObject.java:1737) at edu.ku.brc.specify.datamodel.CollectionObject.toString(CollectionObject.java:1737)
at java.base/java.lang.String.valueOf(String.java:2951)
at java.base/java.lang.String.valueOf(String.java:2951) at java.base/java.lang.String.valueOf(String.java:2951)
at java.base/java.lang.StringBuilder.append(StringBuilder.java:172)
at java.base/java.lang.StringBuilder.append(StringBuilder.java:172) at java.base/java.lang.StringBuilder.append(StringBuilder.java:172)
at edu.ku.brc.af.ui.forms.formatters.DataObjFieldFormatMgr.format(DataObjFieldFormatMgr.java:1119)
at edu.ku.brc.af.ui.forms.formatters.DataObjFieldFormatMgr.format(DataObjFieldFormatMgr.java:1119) at edu.ku.brc.af.ui.forms.formatters.DataObjFieldFormatMgr.format(DataObjFieldFormatMgr.java:1119)
at edu.ku.brc.specify.datamodel.DataModelObjBase.getIdentityTitle(DataModelObjBase.java:134)
at edu.ku.brc.specify.datamodel.DataModelObjBase.getIdentityTitle(DataModelObjBase.java:134) at edu.ku.brc.specify.datamodel.DataModelObjBase.getIdentityTitle(DataModelObjBase.java:134)
at edu.ku.brc.specify.datamodel.CollectionObject.getIdentityTitle(CollectionObject.java:1728)
at edu.ku.brc.specify.datamodel.CollectionObject.getIdentityTitle(CollectionObject.java:1728) at edu.ku.brc.specify.datamodel.CollectionObject.getIdentityTitle(CollectionObject.java:1728)

Any help would be appreciated.
Best regards,
Leo

Hi @leobrimblecombe,

Thank you for sharing the logs! Can you log into the database using Specify 6 from another machine? If possible, can you send us a backup of the database so we can take a closer look on our end?

Hi Grant,

I’ve sent through a backup of the database.
This problem has been happening for all users on all machines - there are no issues for anyone logging in, but nobody is able to save CollectionObject records. As far as we can tell, this has been an issue since sometime after 8am on Wednesday morning of last week - 12th of March.

Cheers,
Leo

Hi @leobrimblecombe,

Thanks so much for sharing a backup! I was able to recreate the behavior you described. It looks like the issue has to do with Specify being unable to construct the Collection Object field format.

In the database currently, there is no table format defined, and this seems to be causing Specify 6 to block creating new objects. The interesting thing about this is that your DataObjFormatters app resource (which captures this format) has not been updated since April 8, 2019, so it’s strange the behavior is just being exhibited now.

In any case, once I modified the Schema Configuration and defined a proper Table Format for the Collection Object table, I was able to save records without any issue.

Can you try to add a field to the table format (e.g. “Leafless”) and see if you are able to save? Thank you!