0

This morning I went to update gitlab-ce using yum on our CentOS6 server from 8.8.4 to 8.8.5.

Unfortunately about halfway through the first of the two gitlab-ce package install steps I accidentally mashed the pause-break key on my keyboard. The result being that yum stopped.

I tried several things - being a *nix amateur I started out with retrying the yum command, yum update gitlab-ce - which told me yum was locked. So I found the yum PID and tried the kill command which did not report anything, but then yum was still running when I queried ps.

I found fg to foreground the yum job again. But it stopped after completing the first of the two upgrade steps.

Thought I had resolved things then, using yum-complete-transaction --cleanup-only which said it cleaned up a transaction journal.

But now, trying yum update gitlab-ce says 8.8.4 will be updated and 8.8.5 will be an update but the subsequent transaction check finds 8.8.5 is already installed and then stops. I still haven't seen it do the second of the two update steps.

A package-cleanup --dupes lists 8.8.5 and 8.8.4. The gitlab control panel still shows 8.8.4 and that I need to update. But a gitlab-rake gitlab:env:info command shows that gitlab is at 8.8.5 >_<

I am now not sure how updated or not gitlab is. How can I find out the state of the install and complete it?

1

Try purging the 8.8.5 from your rpmdb. Use rpm -q gitlab-ce to get the exact package name and insert it into the command below.

rpm -e --justdb ${exact_package}

Should look something like this

rpm -e --justdb gitlab-ce-8.8.5

  • Thanks for the suggestion. Could you elaborate on what this will actually do? (I'm pretty much a noob at *nix!) – Toby Jun 20 '16 at 12:24
  • 1
    Yum uses the rpmdb as its source of information. You're basically removing the .5 entry and leaving the .4 entry. When you re-run the update yum will be oblivious that it tried the upgrade and will start over. – Zachary Brady Jun 20 '16 at 12:45
  • Thanks Zachary! Am I right in thinking that check-packages also uses rpmdb as its source? – Toby Jun 20 '16 at 12:50
  • This did the trick by the way! To check out the rpm command I first ran rpm -evv --test --justdb gitlab-ce-8.8.5 before then running the one in the answer. Running the yum update gitlab-ce command slowed on the completing transaction stage but then completed correctly and gitlab is displaying the correct versions all round :) – Toby Jun 20 '16 at 13:11
  • Glad it worked for you :) – Zachary Brady Jun 20 '16 at 13:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.