Details
-
Bug
-
Resolution: Fixed
-
High
-
2.5.0, 2.5.1
-
None
-
None
Description
Having an empty string in fields that do not support null will cause indexing to fail, with the following exception:
Error reported:
2011-02-15 14:58:05,359 ERROR [InitialPinger2 <Repository>] fisheye.app BaseRepositoryScanner-handleSlurpException - Problem processing revisions from repo <Repository> due to class org.hibernate.PropertyAccessException - Exception occurred inside setter of com.atlassian.fisheye.model.ChangesetComment.message
org.hibernate.PropertyAccessException: Exception occurred inside setter of com.atlassian.fisheye.model.ChangesetComment.message
.
.
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
.
.
Caused by: java.lang.IllegalArgumentException: Changeset comment messages may not be null or empty
at com.cenqua.crucible.model.ModelUtils.ensureNotNullOrEmpty(ModelUtils.java:8)
at com.atlassian.fisheye.model.ChangesetComment.setMessage(ChangesetComment.java:71)
... 36 more
The upgrade task is designed to take care of this, though in this case the check appears to have been missed.
Workaround:
- Shutdown Fisheye
- Backup your database
- Run the sql below on your Fisheye database:
update cru_changeset_comment set cru_message = ' ' where cru_message = ''