MySQL Incorrect information in file .frm
症状
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)
診断
Run the following command in the Fisheye/Crucible database:
mysqlcheck --database fisheye;
There will be an error when checking the table.
原因
.frm
file for the problematic table is corrupted in the MySQL server.
ソリューション
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
最終更新日 2018 年 7 月 31 日
Powered by Confluence and Scroll Viewport.