Uploaded image for project: 'Skara'
  1. Skara
  2. SKARA-1012

Lots of "unhealthy" jdk repos found in scratch dirs

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P3 P3
    • 0.9
    • 0.9
    • bots
    • None

      Since last week, we have started receiving a lot of error messages that look like this:

      Invalid local repository detected (unhealthy) - preserved in: /home/bots/scratch/scratch-38/pr/check/openjdk/jdk.git-unhealthy-2e7c0396-a2a5-402d-8907-ff557592b1ae

      After having investigated some of these "unhealthy" repos, my take is that this is caused by the pr branches we create, and then remove, in the jdk repo. Through some chain of events, "git fsck" end up reporting these branches like this in these repos:

      error: refs/remotes/origin/pr/3449: invalid sha1 pointer 51dcbbf88f941bdb08740d3d301c2702a85defd8
      error: refs/remotes/origin/pr/3492: invalid sha1 pointer 78e6e137d72ba5eaf052b70d8b84502b5f4102fa
      error: refs/remotes/origin/pr/3493: invalid sha1 pointer c65cc685791a08dbfcbecd8a7377c28151351ece
      error: refs/remotes/origin/pr/3491: invalid sha1 pointer fbe7df337fdda83ef91fdbb76c207169f9d16468

      The hash refers to the last commit in the branch/PR in question. Most of the unhealthy repos share a subset of the same set of pr branches that are causing errors. The 4 listed above seem to be the most common. Those PRs were all closed 11+ days ago, so this doesn't seem like an immediate reaction.

      Can we do a better job of keeping these local clones clean and functioning? If not, we need to start treating bad local scratch repos as more of an expected things and not throw errors when we encounter them. In that case we also need to delete them rather than trying to keep them around, to reduce unnecessary admin work.

            erikj Erik Joelsson
            erikj Erik Joelsson
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: