Uploaded image for project: 'Crucible'
  1. Crucible
  2. CRUC-6699

DefaultReviewManager.getReviewByPermaId (and also reviewExists) trigger full table scan of ReviewPermaId table on MySQL (and possibly other databases)

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Medium
    • 3.9.0
    • None
    • None
    • None

    Description

      DefaultReviewManager.getReviewByPermaId() and other methods ask the database to do a case insensitive lookup of the review project key in the ReviewPermaId table.

      Unfortunately this causes mysql to not use its perfectly good indexes and do a full table scan which can be slow.

      Possible approaches to fix this:
      1. (Preferred) do a case sensitive comparison and make sure that every caller of these methods will supply perma IDs with the correct case (and their callers, etc etc etc).
      2. Do case sensitive lookup first. If not found, do case insensitive lookup
      3. Lookup only by number component of perma ID, and filter results in java code

      Attachments

        Issue Links

          Activity

            People

              mswinarski Maciej Swinarski (Inactive)
              rstephens Richard Stephens (Inactive)
              Votes:
              3 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: