MySQL Incorrect information in file .frm
Symptoms
Certain actions not working in Fisheye/Crucible such as not able to add new project with the following appears in the atlassian-fisheye-<date>.log
:
2013-05-22 11:05:06,737 WARN [btpool0-87 ] org.hibernate.util.JDBCExceptionReporter JDBCExceptionReporter-logExceptions - SQL Error: 1033, SQLState: HY000
2013-05-22 11:05:06,738 ERROR [btpool0-87 ] org.hibernate.util.JDBCExceptionReporter JDBCExceptionReporter-logExceptions - Incorrect information in file: './fisheye/cru_proj_default_reviewer.frm'
2013-05-22 11:05:06,743 ERROR [btpool0-87 ] fisheye TotalityFilter-logExceptionDetails - Exception "could not initialize a collection: [com.cenqua.crucible.model.Project.defaultReviewerUsers#2] (through reference chain: com.atlassian.fecrurestplugin.common.data.RecentlyVisitedItems["projects"]->com.atlassian.fecrurestplugin.common.data.Projects["project"]->com.google.common.collect.TransformingRandomAccessList[0])" (org.codehaus.jackson.map.JsonMappingException) while processing "/rest/api/1.0/rest-service-fecru/recently-visited-v1/detailed.json" (Referer:"http://localhost:8060/projects")
org.codehaus.jackson.map.JsonMappingException: could not initialize a collection: [com.cenqua.crucible.model.Project.defaultReviewerUsers#2] (through reference chain: com.atlassian.fecrurestplugin.common.data.RecentlyVisitedItems["projects"]->com.atlassian.fecrurestplugin.common.data.Projects["project"]->com.google.common.collect.TransformingRandomAccessList[0])
at org.codehaus.jackson.map.JsonMappingException.wrapWithPath(JsonMappingException.java:218)
at org.codehaus.jackson.map.JsonMappingException.wrapWithPath(JsonMappingException.java:197)
at org.codehaus.jackson.map.ser.std.SerializerBase.wrapAndThrow(SerializerBase.java:166)
at org.codehaus.jackson.map.ser.std.StdContainerSerializers$IndexedListSerializer.serializeContents(StdContainerSerializers.java:127)
at org.codehaus.jackson.map.ser.std.StdContainerSerializers$IndexedListSerializer.serializeContents(StdContainerSerializers.java:71)
at org.codehaus.jackson.map.ser.std.AsArraySerializerBase.serialize(AsArraySerializerBase.java:86)
Diagnosis
Run the following command in the Fisheye/Crucible database:
mysqlcheck --database fisheye;
There will be an error when checking the table.
Cause
.frm
file for the problematic table is corrupted in the MySQL server.
Resolution
Delete the current database and restore the database from a backup.
If there isn't any backup for the database, use the following steps to create another .frm
file:
- Create a staging Fisheye/Crucible server
- Connect it to another MySQL database server
- From the new database, copy over the same
.frm
file to replace the problematic.frm
file in the production server - Restart Fisheye/Crucible production server
Last modified on Jul 31, 2018
Powered by Confluence and Scroll Viewport.