Fisheye/Crucible fail to start due to database schema version error
Symptoms
Starting Fisheye/Crucible fails with the following error:
2012-09-07 13:11:59,115 ERROR [main ] mortbay.log Slf4jLog-warn - Failed startup of context com.cenqua.fisheye.web.jetty.FishEyeWebApplicationContext@4bdccc{/,/FISHEYE_HOME/fecru-2.7.12/content}
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dbControlFactory' defined in ServletContext resource [/WEB-INF/applicationContext.xml]:
Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.cenqua.crucible.hibernate.DBControlFactoryImpl]:
Constructor threw exception; nested exception is java.lang.IllegalStateException:
Problem starting the database :
The current database schema version is 79, but it should be 76 or below. Downgrading of the database is not supported.
Please visit http://docs.atlassian.com/fisheye/docs-027/Backing+Up+and+Restoring+Fisheye+Data for information on restoring from a backup
Cause
The current database has been changed because a more recent version of Fisheye/Crucible has been installed on top of it (upgrading it) and it is now trying to run an older version with a recent version's database.
The list below shows a breakdown of Fisheye/Crucible versions to schema versions:
Fisheye/Crucible Version | Database Schema Version |
---|---|
4.8.0 - 4.8.15 | 108 |
4.6.0 - 4.7.3 | 107 |
4.5.1 - 4.5.4 | 106 |
4.3.1 - 4.5.0 | 105 |
4.3.0 | 104 |
4.2.0 - 4.2.2 | 103 |
4.1.2 - 4.1.3 | 101 |
4.1.1 | 100 |
4.1.0 | 99 |
4.0.3 - 4.0.4 | 95 |
4.0.2 | 94 |
4.0.0 - 4.0.1 | 93 |
3.10.0 - 3.10.4 | 91 |
3.8.0 - 3.9.2 | 90 |
3.6.0 - 3.7.1 | 89 |
3.2.0 - 3.5.5 | 87 |
3.1.0 - 3.1.7 | 86 |
3.0.1 - 3.0.4 | 85 |
3.0.0 | 84 |
2.10.4 - 2.10.8 | 81 |
2.10.0 - 2.10.3 | 80 |
2.8.1 - 2.9.2 | 79 |
2.8.0 | 78 |
2.7.5 - 2.7.15 | 76 |
2.7.0 - 2.7.4 | 75 |
Resolution
Upgrade the Fisheye/Crucible instance to the version corresponding to the higher database scheme version number, or restore a backup that was created while running the desired version following the backing up and restoring Fisheye/Crucible data guide .