_LexoRank List of Integrity Checks

Still need help?

The Atlassian Community is here for you.

Ask the community

CheckHow to Fix Failures
Marker rows present in table for rank field.

If this fails, the minimum or maximum marker rows are missing.

This can be caused by GHS-10975 - Getting issue details... STATUS and there is a fix included in the workaround for that bug.

Marker rows correctness check.

If this fails, the minimum or maximum marker rows exist, however have the incorrect rank.

This can be fixed by updating the rank on the row returned in the check to be the expected value.

Marker rows in valid bucket check.

When a balance is in progress, the marker rows are moved to another bucket to indicate where the new rank values should be. The only time they should be is in different buckets is if a balance is in progress.

Valid states for the marker rows are the below.

  • Minimum is the same as maximum.
  • Minimum is 0, and max is 1.
  • Minimum is 1, and max is 2.
  • Minimum is 0, and max is 2.

This test fails if the marker rows are not in those buckets, and is likely caused by exceptions thrown during the rank creation or balance operation. Please check the logs for those and verify them against known problems.

Rank out of bounds check.Please refer to our LexoRank Integrity Check fails with rank out of bounds error in Jira server KB article for the fix.
Duplicate ranks check.This can be fixed as detailed in How To Fix Duplicate Rank Values For a Rank Field.
Issue ranks different from marker ranks check.

The below SQL will identify records that have ranking values the same as the min/marker rows. Deleting these records will correct this problem (and also result in a loss of ranking data for those issues only).

SELECT * FROM "AO_60DB71_LEXORANK" WHERE ("RANK" LIKE '%|zzzzzz:' OR "RANK" LIKE '%|000000:') AND "TYPE" not in (0,2);

(info) This may require changing depending upon the DBMS used.

Issue rows in valid bucket check.If a balance cannot fix this, it would need detailed analysis from Atlassian Support.
Balance status check.Attempt a balance, and check the logs to see if there are any exceptions. It's likely the balance is failing due to a exception in the logs, or one of the other checks above may be failing.
Last modified on Jun 29, 2015

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.