Project

General

Profile

Actions

Bug #17075

closed

Error "sudo yum install python-rados -y" in upgrade:firefly-x-master-distro-basic-mira

Added by Yuri Weinstein over 7 years ago. Updated over 7 years ago.

Status:
Resolved
Priority:
Urgent
Assignee:
Category:
-
Target version:
-
% Done:

0%

Source:
Q/A
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
upgrade/firefly-x
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

This is point release tests hammer 0.94.8 (08277b7bc7c0e533c3fd56a0040dc0ddc74637d6)

Run: http://pulpito.front.sepia.ceph.com/yuriw-2016-08-16_21:59:58-upgrade:firefly-x-master-distro-basic-mira/
Jobs: seems to be all centos specific
Logs: http://qa-proxy.ceph.com/teuthology/yuriw-2016-08-16_21:59:58-upgrade:firefly-x-master-distro-basic-mira/369235/teuthology.log

2016-08-16T23:32:55.639 INFO:teuthology.orchestra.run.mira037.stdout:24 packages excluded due to repository priority protections
2016-08-16T23:32:55.640 INFO:teuthology.orchestra.run.mira037.stdout:Package 1:librados2-0.80.11-8.g95c4287.el7.x86_64 already installed and latest version
2016-08-16T23:32:55.640 INFO:teuthology.orchestra.run.mira037.stdout:Nothing to do
2016-08-16T23:32:55.640 INFO:teuthology.orchestra.run.mira037:Running: 'sudo yum install librbd1 -y'
2016-08-16T23:32:58.495 INFO:teuthology.orchestra.run.mira037.stdout:Loaded plugins: fastestmirror, langpacks, priorities
2016-08-16T23:32:58.495 INFO:teuthology.orchestra.run.mira037.stdout:Loading mirror speeds from cached hostfile
2016-08-16T23:32:58.495 INFO:teuthology.orchestra.run.mira037.stdout: * base: mirror.cogentco.com
2016-08-16T23:32:58.495 INFO:teuthology.orchestra.run.mira037.stdout: * epel: ftp.linux.ncsu.edu
2016-08-16T23:32:58.495 INFO:teuthology.orchestra.run.mira037.stdout: * extras: mirror.umd.edu
2016-08-16T23:32:58.495 INFO:teuthology.orchestra.run.mira037.stdout: * updates: mirror.trouble-free.net
2016-08-16T23:32:58.495 INFO:teuthology.orchestra.run.mira037.stdout:24 packages excluded due to repository priority protections
2016-08-16T23:32:58.496 INFO:teuthology.orchestra.run.mira037.stdout:Package 1:librbd1-0.80.11-8.g95c4287.el7.x86_64 already installed and latest version
2016-08-16T23:32:58.496 INFO:teuthology.orchestra.run.mira037.stdout:Nothing to do
2016-08-16T23:32:58.496 INFO:teuthology.orchestra.run.mira037:Running: 'sudo yum install python-rados -y'
2016-08-16T23:33:01.586 INFO:teuthology.orchestra.run.mira037.stdout:Loaded plugins: fastestmirror, langpacks, priorities
2016-08-16T23:33:01.586 INFO:teuthology.orchestra.run.mira037.stdout:Loading mirror speeds from cached hostfile
2016-08-16T23:33:01.586 INFO:teuthology.orchestra.run.mira037.stdout: * base: mirror.cogentco.com
2016-08-16T23:33:01.586 INFO:teuthology.orchestra.run.mira037.stdout: * epel: ftp.linux.ncsu.edu
2016-08-16T23:33:01.586 INFO:teuthology.orchestra.run.mira037.stdout: * extras: mirror.umd.edu
2016-08-16T23:33:01.586 INFO:teuthology.orchestra.run.mira037.stdout: * updates: mirror.trouble-free.net
2016-08-16T23:33:01.586 INFO:teuthology.orchestra.run.mira037.stdout:24 packages excluded due to repository priority protections
2016-08-16T23:33:01.586 INFO:teuthology.orchestra.run.mira037.stdout:No package python-rados available.
2016-08-16T23:33:01.587 INFO:teuthology.orchestra.run.mira037.stderr:Error: Nothing to do
2016-08-16T23:33:01.587 ERROR:teuthology.parallel:Exception in parallel execution
Traceback (most recent call last):
  File "/home/teuthworker/src/teuthology_master/teuthology/parallel.py", line 83, in __exit__
    for result in self:
  File "/home/teuthworker/src/teuthology_master/teuthology/parallel.py", line 101, in next
    resurrect_traceback(result)
  File "/home/teuthworker/src/teuthology_master/teuthology/parallel.py", line 19, in capture_traceback
    return func(*args, **kwargs)
  File "/home/teuthworker/src/teuthology_master/teuthology/task/install.py", line 261, in _update_rpm_package_list_and_install
    remote.run(args=['sudo', 'yum', 'install', cpack, '-y'])
  File "/home/teuthworker/src/teuthology_master/teuthology/orchestra/remote.py", line 196, in run
    r = self._runner(client=self.ssh, name=self.shortname, **kwargs)
  File "/home/teuthworker/src/teuthology_master/teuthology/orchestra/run.py", line 402, in run
    r.wait()
  File "/home/teuthworker/src/teuthology_master/teuthology/orchestra/run.py", line 166, in wait
    label=self.label)
CommandFailedError: Command failed on mira041 with status 1: 'sudo yum install python-rados -y
Actions #1

Updated by Yuri Weinstein over 7 years ago

  • Description updated (diff)
Actions #4

Updated by Nathan Cutler over 7 years ago

Note, this is caused by https://github.com/ceph/teuthology/commit/4543fb64 which was merged in preparation for https://github.com/ceph/ceph/pull/9757 which drops the python-ceph-compat package.

One way to fix this would be to add code to teuthology to make it use different package lists depending on which major version of ceph is being installed.

I seem to remember the tests themselves can override the default package list - that might be another approach.

Actions #5

Updated by Nathan Cutler over 7 years ago

https://github.com/ceph/teuthology/pull/814 adds the package list override feature.

I was thinking we could just add a package list override to the test, to have it install "python-ceph" instead of "python-rados", "python-rbd", and "python-cephfs". That would overcome this particular error - teuthology will install "python-ceph" and yum will find that package in the firefly repo. Later, the upgrades should work too thanks to the "Obsoletes" and "Provides" in the spec file.

A potential problem arises at the end of the job, though, when master will have been installed. That means "python-rados", "python-rbd", and "python-cephfs" will be present, and "python-ceph" will not. Will need testing to see if teuthology chokes on this, since it will want to remove the same packages that it installed at the beginning. Even if that works, the "python-rados", "python-rbd", and "python-cephfs" packages will be left behind on the test machines, potentially polluting the next job's environment.

Actions #6

Updated by Loïc Dachary over 7 years ago

@Nathan Weinberg: I think this should be a thread on ceph-devel

Actions #7

Updated by Nathan Cutler over 7 years ago

  • Assignee set to Nathan Cutler
Actions #9

Updated by Vasu Kulkarni over 7 years ago

Install task will be fixed with above pr, any upgrade issues should be resolved at packaging side.

Actions #10

Updated by Nathan Cutler over 7 years ago

@Vasu Kulkarni That will fix only runs with --suite-branch firefly, though, right?

Actions #11

Updated by Nathan Cutler over 7 years ago

  • Status changed from New to Fix Under Review
Actions #13

Updated by Nathan Cutler over 7 years ago

  • Status changed from Fix Under Review to Resolved

Yuri, all the PRs have been merged so the problem should be fixed. If not, reopen.

Actions #15

Updated by Nathan Cutler over 7 years ago

The failed tests get past firefly installation, so the failures are unrelated to this issue #17075.

Here is a preliminary analysis of the failures, but I guess it deserves a new issue.

The failures happen when workunit.py tries to "git clone git://git.ceph.com/ceph.git /home/ubuntu/cephtest/clone" four times in a row (once for each client):

2016-08-24T00:47:00.022 INFO:teuthology.orchestra.run.vpm071:Running: 'git clone git://git.ceph.com/ceph.git /home/ubuntu/cephtest/clone ; cd -- /home/ubuntu/cephtest/clone && git checkout firefly && mv qa/workunits /home/ubuntu/cephtest/workunit.client.2'
2016-08-24T00:47:00.056 INFO:teuthology.orchestra.run.vpm071:Running: 'git clone git://git.ceph.com/ceph.git /home/ubuntu/cephtest/clone ; cd -- /home/ubuntu/cephtest/clone && git checkout firefly && mv qa/workunits /home/ubuntu/cephtest/workunit.client.3'
2016-08-24T00:47:00.057 INFO:teuthology.orchestra.run.vpm071:Running: 'git clone git://git.ceph.com/ceph.git /home/ubuntu/cephtest/clone ; cd -- /home/ubuntu/cephtest/clone && git checkout firefly && mv qa/workunits /home/ubuntu/cephtest/workunit.client.1'
2016-08-24T00:47:00.077 INFO:teuthology.orchestra.run.vpm071:Running: 'git clone git://git.ceph.com/ceph.git /home/ubuntu/cephtest/clone ; cd -- /home/ubuntu/cephtest/clone && git checkout firefly && mv qa/workunits /home/ubuntu/cephtest/workunit.client.4'

As far as I can tell, this happens here: https://github.com/ceph/ceph-qa-suite/blob/hammer/tasks/workunit.py#L312-L326

The variable "testdir" is the same each time (/home/ubuntu/cephtest in this case). The first command succeeds, the remaining three fail with "fatal: destination path '/home/ubuntu/cephtest/clone' already exists and is not an empty directory."

Actions

Also available in: Atom PDF