MySQL Incorrect information in file .frm

Platform Notice: Data Center Only - This article only applies to Atlassian products on the Data Center platform.

Note that this KB was created for the Data Center version of the product. Data Center KBs for non-Data-Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Except Fisheye and Crucible

Summary

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:

1 2 3 4 5 6 7 8 9 10 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:

1 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.

Solution

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:

  1. Create a staging Fisheye/Crucible server

  2. Connect it to another MySQL database server

  3. From the new database, copy over the same .frm file to replace the problematic .frm file in the production server

  4. Restart Fisheye/Crucible production server

Updated on April 2, 2025

Still need help?

The Atlassian Community is here for you.