Indexing fails for some repositories on Fisheye 2.5 and 2.5.1 with error "Changeset comment messages may not be null or empty"
Symptoms
Logs report:
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
Cause
This is a consequence of more stringent database constraints imposed by the addition of Oracle as a supported db type since Fisheye 2.5.x, which does not allow empty strings into fields that do not support a null. The upgrade scripts are designed to make the data conform, though in this particular case, the upgrade task failed to consider for empty cru_message
field in the cru-changeset_comment
table.
All supported databases will be affected by this.
Resolution
To help resolve this problem, do the following:
- Shutdown Fisheye
- Backup your database
- Run the sql below on your Fisheye database:
update cru_changeset_comment set cru_message = ' ' where cru_message = ''
- Then restart and enable debug logging as follows:
- Go to
Administration > Server Settings > Debug Logging
and Turn Debug Logging "ON". - Reindex the repository.
- Generate a Support Zip via the
Administration
Menu.
If there are any other errors reported, attach the above zipped folder to a Support ticket for further investigation.
The corresponding bug is being tracked here:
http://jira.atlassian.com/browse/FE-2953
Watch it to be notified of its progress and feel free to comment there.