]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
6 years agoqa: use curl in wait_for_radosgw() in util/rgw.py 28669/head
Ali Maredia [Wed, 12 Jun 2019 20:12:47 +0000 (16:12 -0400)]
qa: use curl in wait_for_radosgw() in util/rgw.py

Signed-off-by: Ali Maredia <amaredia@redhat.com>
(cherry picked from commit 9c6afa3fb570629a57612f250a6a4890a65cbc6e)

Conflicts:
qa/tasks/rgw.py
- rgw task was refactored for mimic

6 years agoMerge pull request #27085 from pdvian/wip-38719-luminous
Yuri Weinstein [Thu, 20 Jun 2019 00:11:44 +0000 (17:11 -0700)]
Merge pull request #27085 from pdvian/wip-38719-luminous

luminous: crush/CrushWrapper: ensure crush_choose_arg_map.size == max_buckets

Reviewed-by: Neha Ojha <nojha@redhat.com>
6 years agoMerge pull request #27636 from smithfarm/wip-39343-luminous
Yuri Weinstein [Thu, 20 Jun 2019 00:09:21 +0000 (17:09 -0700)]
Merge pull request #27636 from smithfarm/wip-39343-luminous

luminous: ceph-objectstore-tool: rename dump-import to dump-export

Reviewed-by: David Zafman <dzafman@redhat.com>
6 years agoMerge pull request #27674 from smithfarm/wip-38873-luminous
Yuri Weinstein [Thu, 20 Jun 2019 00:08:55 +0000 (17:08 -0700)]
Merge pull request #27674 from smithfarm/wip-38873-luminous

luminous: pybind: Rados.get_fsid() returning bytes in python3

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
6 years agoMerge pull request #27715 from pdvian/wip-39042-luminous
Yuri Weinstein [Thu, 20 Jun 2019 00:08:17 +0000 (17:08 -0700)]
Merge pull request #27715 from pdvian/wip-39042-luminous

luminous: osd/PGLog: preserve original_crt to check rollbackability

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
6 years agoMerge pull request #27751 from ashishkumsingh/wip-39431-luminous
Yuri Weinstein [Thu, 20 Jun 2019 00:07:29 +0000 (17:07 -0700)]
Merge pull request #27751 from ashishkumsingh/wip-39431-luminous

luminous: osd/PG: discover missing objects when an OSD peers and PG is degraded

Reviewed-by: Neha Ojha <nojha@redhat.com>
6 years agoMerge pull request #27810 from pdvian/wip-39204-luminous
Yuri Weinstein [Thu, 20 Jun 2019 00:06:59 +0000 (17:06 -0700)]
Merge pull request #27810 from pdvian/wip-39204-luminous

luminous: osd: shutdown recovery_request_timer earlier

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #27878 from pdvian/wip-39218-luminous
Yuri Weinstein [Thu, 20 Jun 2019 00:06:28 +0000 (17:06 -0700)]
Merge pull request #27878 from pdvian/wip-39218-luminous

luminous: osd: FAILED ceph_assert(attrs || !pg_log.get_missing().is_missing(soid) || (it_objects != pg_log.get_log().objects.end() && it_objects->second->op == pg_log_entry_t::LOST_REVERT)) in PrimaryLogPG::get_object_context()

Reviewed-by: Neha Ojha <nojha@redhat.com>
6 years agoMerge pull request #27908 from smithfarm/wip-39563-luminous
Yuri Weinstein [Thu, 20 Jun 2019 00:05:52 +0000 (17:05 -0700)]
Merge pull request #27908 from smithfarm/wip-39563-luminous

luminous: mon: Error message displayed when mon_osd_max_split_count would be exceeded is not as user-friendly as it could be

Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
6 years agoMerge pull request #28185 from dzafman/wip-39719
Yuri Weinstein [Thu, 20 Jun 2019 00:05:22 +0000 (17:05 -0700)]
Merge pull request #28185 from dzafman/wip-39719

luminous: osd: Include dups in copy_after() and copy_up_to()

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
6 years agoMerge pull request #27982 from cbodley/wip-23237
Yuri Weinstein [Fri, 14 Jun 2019 14:29:19 +0000 (07:29 -0700)]
Merge pull request #27982 from cbodley/wip-23237

luminous: rgw: update civetweb submodule to match version in mimic

Reviewed-by: Yuri Weinstein <yweinste@redhat.com>
6 years agoMerge pull request #27332 from pdvian/wip-38920-luminous
Yuri Weinstein [Thu, 13 Jun 2019 22:14:22 +0000 (15:14 -0700)]
Merge pull request #27332 from pdvian/wip-38920-luminous

luminous: rgw: don't crash on missing /etc/mime.types

Reviewed-by: Casey Bodley <cbodley@redhat.com>
6 years agoMerge pull request #27935 from cbodley/wip-39572
Yuri Weinstein [Thu, 13 Jun 2019 22:10:47 +0000 (15:10 -0700)]
Merge pull request #27935 from cbodley/wip-39572

luminous: rgw:send x-amz-version-id header when upload files

Reviewed-by: Casey Bodley <cbodley@redhat.com>
6 years agoMerge pull request #28332 from cbodley/wip-37497
Yuri Weinstein [Thu, 13 Jun 2019 22:08:36 +0000 (15:08 -0700)]
Merge pull request #28332 from cbodley/wip-37497

luminous: rgw: get or set realm zonegroup zone need check user's caps

Reviewed-by: Casey Bodley <cbodley@redhat.com>
6 years agoMerge pull request #28069 from smithfarm/wip-39615-luminous
Yuri Weinstein [Thu, 13 Jun 2019 22:04:31 +0000 (15:04 -0700)]
Merge pull request #28069 from smithfarm/wip-39615-luminous

luminous: civetweb frontend: response is buffered in memory if content length is not explicitly specified

Reviewed-by: Casey Bodley <cbodley@redhat.com>
6 years agoMerge pull request #28350 from smithfarm/wip-39409-luminous
Yuri Weinstein [Thu, 13 Jun 2019 22:03:40 +0000 (15:03 -0700)]
Merge pull request #28350 from smithfarm/wip-39409-luminous

luminous: rgw: inefficient unordered bucket listing

Reviewed-by: Casey Bodley <cbodley@redhat.com>
6 years agoMerge pull request #28519 from ceph/backport-luminous-28060
Andrew Schoen [Wed, 12 Jun 2019 19:44:04 +0000 (14:44 -0500)]
Merge pull request #28519 from ceph/backport-luminous-28060

luminous: ceph-volume: use the Device.rotational property instead of sys_api

Reviewed-by: Andrew Schoen <aschoen@redhat.com>
6 years agoceph-volume: skip missing interpreters when running tox tests 28519/head
Andrew Schoen [Fri, 10 May 2019 16:04:35 +0000 (11:04 -0500)]
ceph-volume: skip missing interpreters when running tox tests

This will skip tests for versions of python that don't exist on the node
that's running the tests.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
(cherry picked from commit f1db0a864814d9b81192d89b6eebb6c624ddec3b)

6 years agoceph-volume: use the Device.rotational property instead of sys_api
Andrew Schoen [Fri, 10 May 2019 14:02:08 +0000 (09:02 -0500)]
ceph-volume: use the Device.rotational property instead of sys_api

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1666822

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
(cherry picked from commit 8ebff475dfa136c88101ef7364820fe3c5cee547)

6 years agoMerge pull request #27453 from pdvian/wip-38958-luminous
Yuri Weinstein [Wed, 12 Jun 2019 15:41:30 +0000 (08:41 -0700)]
Merge pull request #27453 from pdvian/wip-38958-luminous

luminous: rgw-admin: fix data sync report for master zone

Reviewed-by: Casey Bodley <cbodley@redhat.com>
6 years agoMerge pull request #27668 from smithfarm/wip-39360-luminous
Yuri Weinstein [Wed, 12 Jun 2019 15:40:27 +0000 (08:40 -0700)]
Merge pull request #27668 from smithfarm/wip-39360-luminous

luminous: rgw: failed to pass test_bucket_create_naming_bad_punctuation in s3test

Reviewed-by: Casey Bodley <cbodley@redhat.com>
6 years agoMerge pull request #27881 from pdvian/wip-39227-luminous
Yuri Weinstein [Wed, 12 Jun 2019 15:39:44 +0000 (08:39 -0700)]
Merge pull request #27881 from pdvian/wip-39227-luminous

luminous: rgw_file: save etag and acl info in setattr

Reviewed-by: Casey Bodley <cbodley@redhat.com>
6 years agoMerge pull request #28314 from smithfarm/wip-39180-luminous
Yuri Weinstein [Wed, 12 Jun 2019 15:39:03 +0000 (08:39 -0700)]
Merge pull request #28314 from smithfarm/wip-39180-luminous

luminous: rgw: orphans find perf improvments

Reviewed-by: Casey Bodley <cbodley@redhat.com>
6 years agoMerge pull request #28493 from tchaikov/luminous-39164
Yuri Weinstein [Tue, 11 Jun 2019 23:08:51 +0000 (16:08 -0700)]
Merge pull request #28493 from tchaikov/luminous-39164

luminous: qa: install python36-{cephfs,rados} instead of python34-*

Reviewed-by: Yuri Weinstein <yweinste@redhat.com>
6 years agoqa: install python3-{cephfs,rados} instead of python34-* 28493/head
Kefu Chai [Tue, 11 Jun 2019 15:17:46 +0000 (23:17 +0800)]
qa: install python3-{cephfs,rados} instead of python34-*

we install the latest python-rpm-macros on all builders since
https://github.com/ceph/ceph-build/pull/1283 . now that we started
building python36-* after that change, for testing the python3 packages on
CentOS/RHEL 7, we need to install python36-* instead of python34-*.

and after the change of 8ae1947, python36-* now "Provides" python3-*, we
can just install python3-* for fulfill the requirement for testing
python3 cephfs bindings.

Fixes: http://tracker.ceph.com/issues/39164
Signed-off-by: Kefu Chai <kchai@redhat.com>
Conflicts: this change is not cherry-picked from master, because,
  in master, we don't install python3 packages after 7e5c85b604.
(cherry picked from commit 6790821afc749b14b1ddac68a0889059419eebb3)

6 years agoinstall-deps.sh: install '*rpm-macros'
Kefu Chai [Thu, 11 Apr 2019 16:11:42 +0000 (00:11 +0800)]
install-deps.sh: install '*rpm-macros'

so `yum-builddep` can have access to the latest macros for preparing the
build dependencies

Fixes: http://tracker.ceph.com/issues/39164
Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 087ea813a061a1d6858aeae57950e90965f4ae15)

Conflicts:
install-deps.sh: trivial resolution

6 years agoqa/tasks/ceph_deploy: install python3.6 instead of python3.4 for py3 tests
Kefu Chai [Thu, 11 Apr 2019 02:02:32 +0000 (10:02 +0800)]
qa/tasks/ceph_deploy: install python3.6 instead of python3.4 for py3 tests

EPEL7 has switched over to python3.6 as the main python3. and we started
packaging python bindings for python3.6 since
https://github.com/ceph/ceph-build/pull/1283

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 42167b87909c20c9bb4d32bac02b1e01ec94af13)

6 years agoPendingReleaseNotes: note on python3.6 changes
Kefu Chai [Wed, 10 Apr 2019 10:08:04 +0000 (18:08 +0800)]
PendingReleaseNotes: note on python3.6 changes

Fixes: http://tracker.ceph.com/issues/39164
Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 77c5ee06311d610f9accd94edf14becdf5820542)

Conflicts:
PendingReleaseNotes: the next release of luminous is 12.2.13
so adapt the cherry-picked change accordingly.

6 years agorpm: add "Provides: python3-*" for python packages
Kefu Chai [Tue, 9 Apr 2019 15:22:57 +0000 (23:22 +0800)]
rpm: add "Provides: python3-*" for python packages

so user can install python3-rados, instead of python36-rados, without
specifying the minor version of python. also, we should not break our
teuthology tests with this naming scheme change. for instance, our
cephfs qa suite installs `python3-cephfs` for testing the `cephfs-shell`

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 8ae1947728837bf4a4bcc8e9325aea69ff14b706)

6 years agorpm: always use 3 as the default python3_{pkgversion,version}
Kefu Chai [Tue, 9 Apr 2019 15:15:16 +0000 (23:15 +0800)]
rpm: always use 3 as the default python3_{pkgversion,version}

as we have the rpm macros installed in
https://github.com/ceph/ceph-build/pull/1283 .

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 11f0b8d5a8951cb50437f5e87055f3b9405f4556)

6 years agorpm: use python 3.6 as the default python3
Kefu Chai [Sun, 7 Apr 2019 00:43:59 +0000 (08:43 +0800)]
rpm: use python 3.6 as the default python3

some of our centos7 jenkins builders are failing to build ceph master and
nautilus branches. because EPEL7 recently switched from python3.4 to
python3.6 as the native python3. see
https://lists.fedoraproject.org/archives/list/epel-announce@lists.fedoraproject.org/message/EGUMKAIMPK2UD5VSHXM53BH2MBDGDWMO/

and one of our BuildRequires, cmake3,
was offered by EPEL7. it also followed the python3.6 switch-over to
rebuild against python3.6. as a result, the cmake3-data-3.13.4-2.el7
started to depend on /usr/bin/python3.6, which is in turn offered by
python36 package. after installing python36 as a dependency of the
updated cmake3. but in cmake, we originally checks for the latest
python3 interpreter if WITH_PYTHON3 is enabled, that's why these
builders which happen to install these updated packages started to fail
when detecting the existence of python3.6 related build dependencies.

as a fix, in d1e83082,
python%{python3_pkgversion}-{devel,setuptools,Cython} are listed as
BuildRequires to reflect this change in EPEL7. before d1e83082, we
hardwired them to python34-*.

but as following analysis puts, there are cases where `yum-builddep`
is inconsistent with `rpmbuild`. as `yum-builddep` changes the how
`python3_pkgversion` and `python3_version` macros are expanded:

- none of the packages installed by `yum-builddep` installs the python3
  related rpm macros, so the system stays with whatever python3 it was
  using. in this case, `rpmbuild` won't complain, as the
  `python3_pkgversion` and `python_version` are consistent before and
  after `yum-builddep`.
- system has python3.4 installed before `yum-builddep`. but
  `yum-builddep` installed python3.6 and also the updated
  `python-rpm-macros` packages, which points `python3_version` and
  `python3_pkgversion` to 3.6 and 36 respectively. in this case,
  `rpmbuild` will complain, because when we run `yum-builddep`,
  `python3_version` was still "3.4".
- system does not have python3 installed before `yum-builddep`. so
  it was using python34 for preparing the "BuildRequires". but some
  of the packages installed by `yum-builddep` installs python36, and
  also the updated `python-rpm-macros` packages, which points
  `python3_version` and `python3_pkgversion` to 3.6 and 36 respectively.
  in this case, `rpmbuild` will complain, because the python36 related
  dependencies are missing. what the system has is python34
  dependencies.
- system does not have python3 installed before `yum-builddep`. so
  it was using python34 for preparing the "BuildRequires". but some
  of the packages installed by `yum-builddep` installs python34, and
  also the updated `python-rpm-macros` packages, which points
  `python3_version` and `python3_pkgversion` to 3.4 and 34 respectively.
  in this case, `rpmbuild` won't complain, as the
  `python3_pkgversion` and `python_version` are also consistent before and
  after `yum-builddep`.

as we cannot tell if the system has python3 or what the python3 version
the system has before `yum-builddep`, so what we can do is to ensure
`rpmbuild` has what it needs to build Ceph. so let's just stick with
python3.6.

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 658ca2b0d79022edbc6cb1e488b243844e87bfbe)

6 years agocmake: should PYTHON3_VERSION_STRING of libpython3
Kefu Chai [Fri, 5 Apr 2019 17:54:15 +0000 (01:54 +0800)]
cmake: should PYTHON3_VERSION_STRING of libpython3

and make sure the version matches exactly the requested one

in future, we should use FindPython.cmake

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 7b15b682b1201929e0ba9efc332ebb8652be40a8)

Conflicts:
src/CMakeLists.txt: trivial resolution

6 years agorpm: pass %{python3_version} to cmake
Kefu Chai [Thu, 4 Apr 2019 04:07:25 +0000 (12:07 +0800)]
rpm: pass %{python3_version} to cmake

to force cmake to use the python3 and python3 modules for building
python3 bindings

on the debian side, it's okay to continue using "-DWITH_PYTHON3=ON", as

- cmake does normalize "ON" to 3
- debian's cmake extension lives on /usr/lib/python3/dist-packages/
  not in a specific /usr/lib/python3.x/dist-packages directory

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 7681a38ce51743a19ec5679d49b362f04e271ddb)

Conflicts:
ceph.spec.in: trivial resolution

6 years agocmake: check for libpython of the same version of interpreter
Kefu Chai [Thu, 4 Apr 2019 03:44:56 +0000 (11:44 +0800)]
cmake: check for libpython of the same version of interpreter

actually cython or python3-cython's dependencies should take care of it.
but we should at least get it right on our side if we check it.

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit c961e002d22ab7ceec20f1019f8c558ec9fcce6c)

6 years agocmake: use specified python3 version if any
Kefu Chai [Thu, 4 Apr 2019 03:37:00 +0000 (11:37 +0800)]
cmake: use specified python3 version if any

use might have multiple python3 installed, some of them has/have all
dependencies installed and is good enough for building Ceph. we should
not always use the latest python installed in the system and complain that
there is missing dependencies, even if user has installed all the
python3 dependencies for the older python3.

put in other words, if user only installs cython module for python3.4, but
she has both python3.6 and python3.4 in her system. we should not force
her to uninstall python3.6 for installing Ceph.

this change also aligns with MGR_PYTHON_VERSION. i am not applying the
same change to WITH_PYTHON2, because python2 is already stablized. and distros
are not likely to release new python2 releases.

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit d8c13e86048b7aac458f3eda101f9778e3d45dcf)

Conflicts:
src/CMakeLists.txt: in luminous, WITH_PYTHON3 was "CHECK" by
default. as it's complicatd to support this behavior. it is changed to
"ON" in this change to be consistent with mimic and up. since we always
specify -DWITH_PYTHON3=ON explicitly when building rpm and deb packages,
this change is not visible to our CI or package builders.

6 years agoMerge pull request #27728 from neha-ojha/wip-39420-luminous
Yuri Weinstein [Mon, 10 Jun 2019 22:06:58 +0000 (15:06 -0700)]
Merge pull request #27728 from neha-ojha/wip-39420-luminous

luminous: osd/OSDMap: Replace get_out_osds with get_out_existing_osds

Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
6 years agoMerge pull request #27858 from ashishkumsingh/wip-39463-luminous
Yuri Weinstein [Mon, 10 Jun 2019 22:06:06 +0000 (15:06 -0700)]
Merge pull request #27858 from ashishkumsingh/wip-39463-luminous

luminous: msg: output peer address when detecting bad CRCs

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
6 years agoqa: drop rfc2616 checking on civetweb 27982/head
Abhishek Lekshmanan [Thu, 5 Apr 2018 17:06:16 +0000 (19:06 +0200)]
qa: drop rfc2616 checking on civetweb

Since newer versions of civetweb are also strict on rfc2616 checks let's enforce
strict rfc2616 checks in s3tests

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
(cherry picked from commit f8ed817cccff626c0b63f776c0c5203989c348a1)

Conflicts:
qa/tasks/s3tests.py: also lifecycle -> lifecycle_expiration

6 years agoMerge pull request #28390 from yuriw/wip-yuriw-whitelist-luminous_2
Yuri Weinstein [Tue, 4 Jun 2019 20:11:09 +0000 (13:11 -0700)]
Merge pull request #28390 from yuriw/wip-yuriw-whitelist-luminous_2

qa/tests: whitelisted 'application not enabled' and removed bad dir

6 years agoqa/tests: whitelisted 'application not enabled' and removed bad dir 28390/head
Yuri Weinstein [Tue, 4 Jun 2019 19:50:45 +0000 (12:50 -0700)]
qa/tests: whitelisted 'application not enabled' and removed bad dir

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
6 years agoMerge pull request #28355 from yuriw/wip-yuriw-whitelist-luminous
Yuri Weinstein [Sun, 2 Jun 2019 20:32:41 +0000 (13:32 -0700)]
Merge pull request #28355 from yuriw/wip-yuriw-whitelist-luminous

qa/tests: whitelisted POOL_APP_NOT_ENABLED

6 years agoqa/tests: whitelisted POOL_APP_NOT_ENABLED 28355/head
Yuri Weinstein [Fri, 31 May 2019 21:01:49 +0000 (14:01 -0700)]
qa/tests: whitelisted POOL_APP_NOT_ENABLED

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
6 years agorgw: cls_bucket_list_unordered lists a single shard 28350/head
Casey Bodley [Fri, 19 Apr 2019 22:38:47 +0000 (18:38 -0400)]
rgw: cls_bucket_list_unordered lists a single shard

CLSRGWIssueBucketList sends the request to every shard, but this loop
intended to list only the current_shard

Fixes: http://tracker.ceph.com/issues/39393
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit d37d0339ff61a293f2f9fd6dff3fbd630efce2a0)

Conflicts:
src/rgw/rgw_rados.cc: remove unnessary "struct"s

6 years agocls/rgw: expose cls_rgw_bucket_list_op for single shard
Casey Bodley [Fri, 19 Apr 2019 22:37:35 +0000 (18:37 -0400)]
cls/rgw: expose cls_rgw_bucket_list_op for single shard

Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit cd1fc96c5ca5254eb8343509b11a59514d62e532)

Conflicts:
src/cls/rgw/cls_rgw_client.cc: remove unnessary "struct"s

6 years agoqa/rgw: add credentials to zone 'remove' in test_zonegroup_remove() 28332/head
Casey Bodley [Wed, 28 Nov 2018 18:18:05 +0000 (13:18 -0500)]
qa/rgw: add credentials to zone 'remove' in test_zonegroup_remove()

zone credentials are required to 'period update --commit' from
--rgw-zone remove

Signed-off-by: Casey Bodley <cbodley@redhat.com>
Conflicts:
src/test/rgw/rgw_multi/tests.py
(cherry picked from commit 56021eab9584f10fa43053621cce93b623c36265)

6 years agorgw: get or set realm zonegroup zone need check user's caps
yuliyang [Tue, 20 Nov 2018 09:19:38 +0000 (17:19 +0800)]
rgw: get or set realm zonegroup zone need check user's caps

fix: https://tracker.ceph.com/issues/37352

Signed-off-by: yuliyang <yuliyang@cmss.chinamobile.com>
(cherry picked from commit 6ecaec926fb81810f6be43744cd5c48d6ccfaf5a)

Conflicts: RGWOp::name() returns std::string
src/rgw/rgw_rest_config.h
src/rgw/rgw_rest_realm.cc

6 years agoMerge pull request #28130 from dillaman/wip-39727-luminous
Yuri Weinstein [Thu, 30 May 2019 20:38:49 +0000 (13:38 -0700)]
Merge pull request #28130 from dillaman/wip-39727-luminous

luminous: qa/workunits/rbd: use https protocol for devstack git operations

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
6 years agorgw-admin: add a detailed mode 28314/head
Abhishek Lekshmanan [Thu, 14 Feb 2019 16:40:44 +0000 (17:40 +0100)]
rgw-admin: add a detailed mode

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
(cherry picked from commit 143ff0d835c99b06e57a373bed2c61e84293ccc7)

 Conflicts:
src/rgw/rgw_admin.cc
Trivial merge conflct due to OTP changeset in Mimic

6 years agorgw: orphans find: don't process stale bucket instances
Abhishek Lekshmanan [Wed, 13 Feb 2019 14:32:17 +0000 (15:32 +0100)]
rgw: orphans find: don't process stale bucket instances

As a large bucket might have resharded multiple times, check the cur bucket info
and ensure that no reshard is in progress before we attempt to log bucket index
entries. On a large sized bucket, since a bucket would have undergone reshard
multiple times, this avoids wasteful processing of stale bucket instance entries

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
(cherry picked from commit 5436ff7fa99061a489f089677c03f63c76bb954b)

 Conflicts:
src/rgw/rgw_orphan.cc
sys_objctx dropped as obj_ctx changes are a part of Nautilus. Also similarly
with the includes, only `rgw_bucket.h` is included

6 years agorgw: orphan: introduce a detailed mode (off by default)
Abhishek Lekshmanan [Wed, 13 Feb 2019 12:45:47 +0000 (13:45 +0100)]
rgw: orphan: introduce a detailed mode (off by default)

We currently stat objects that fit in a head as well and also log them, since we
skip head objects anyway in the rados list output this commit avoids logging
these objects if the object size itself is less than the manifest head size.

Additionally we avoid the stat call itself from the list object output when the
object fits within the chunk size. This behaviour can be unset by setting the
detailed mode which can help in older clusters where the head used to have a
different size.

The old behaviour in both the cases can be turned on by setting the detailed
flag which can be passed on from rgw-admin. Avoiding stat calls and not logging
the head objects significantly reduces the IO activity on clusters which have a
huge percentage of objects that fit in a head.

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
(cherry picked from commit ca12ecbfed0f65f206e8ad05125fac93c5a5ed0f)

6 years agorgw: orphan: flush bucket index entries only after map is full
Abhishek Lekshmanan [Wed, 13 Feb 2019 12:32:43 +0000 (13:32 +0100)]
rgw: orphan: flush bucket index entries only after map is full

We otherwise may flush more regularly while we don't have enough entries in the
map

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
(cherry picked from commit e9a406c9b036e4c3190077d57fc51d6ea3762475)

6 years agorgw: orphans tool: align with rgw list bucket min readahead
Abhishek Lekshmanan [Wed, 13 Feb 2019 12:15:02 +0000 (13:15 +0100)]
rgw: orphans tool: align with rgw list bucket min readahead

At rgw::rados layer we read upto `min readahead` entries anyway and then pass on
only the requested amount to the caller. Since this translates down to a cls
call requesting a 1000 omap keys by default, it makes sense not to waste the
entries, and process them

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
(cherry picked from commit 4c033bf0fd0429378ac350eecd78530cc1c11b84)

6 years agoMerge pull request #28183 from yuriw/wip-yuriw-fix-distro-luminous
Yuri Weinstein [Tue, 28 May 2019 22:49:51 +0000 (15:49 -0700)]
Merge pull request #28183 from yuriw/wip-yuriw-fix-distro-luminous

qa/tests: cleaned up supported distro

6 years agoqa/tests: cleaned up supported distro 28183/head
Yuri Weinstein [Mon, 20 May 2019 20:11:37 +0000 (13:11 -0700)]
qa/tests: cleaned up supported distro

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
6 years agoMerge pull request #28117 from yuriw/wip-yuriw-clean-luminous
Yuri Weinstein [Tue, 28 May 2019 21:38:07 +0000 (14:38 -0700)]
Merge pull request #28117 from yuriw/wip-yuriw-clean-luminous

luminous: qa/test: clean up

6 years agoMerge pull request #28216 from smithfarm/wip-40004-luminous
Nathan Cutler [Tue, 28 May 2019 09:41:54 +0000 (11:41 +0200)]
Merge pull request #28216 from smithfarm/wip-40004-luminous

luminous: do_cmake.sh: source not found

Reviewed-by: Sebastian Wagner <swagner@suse.com>
6 years agodo_cmake.sh: use bash 28216/head
Nathan Cutler [Mon, 20 May 2019 15:01:40 +0000 (17:01 +0200)]
do_cmake.sh: use bash

Fixes: http://tracker.ceph.com/issues/39981
Signed-off-by: Nathan Cutler <ncutler@suse.com>
(cherry picked from commit ac8d7c5fd4045d79ab6caacc0b72d64866fcc5c8)

6 years agoqa/workunits/rbd: use https protocol for devstack git operations 28130/head
Jason Dillaman [Thu, 9 May 2019 19:48:30 +0000 (15:48 -0400)]
qa/workunits/rbd: use https protocol for devstack git operations

Fixes: http://tracker.ceph.com/issues/39656
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit fb4f9a8a08edd18b1a23e1be4c1285d0ec4d1de6)

6 years agoqa/test: clean up 28117/head
Yuri Weinstein [Wed, 15 May 2019 16:34:59 +0000 (09:34 -0700)]
qa/test: clean up

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
6 years agoMerge pull request #28115 from yuriw/wip-yuriw-clients-upgrades-luminous-2-nautilus 28143/head
Yuri Weinstein [Wed, 15 May 2019 16:27:15 +0000 (09:27 -0700)]
Merge pull request #28115 from yuriw/wip-yuriw-clients-upgrades-luminous-2-nautilus

qa/tests: renamed suite

6 years agoqa/tests: renamed suite 28115/head
Yuri Weinstein [Wed, 15 May 2019 16:20:47 +0000 (09:20 -0700)]
qa/tests: renamed suite

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
6 years agoqa/tests: renamed suite to clients-upgrades-luminous-nautilus to be consistent
Yuri Weinstein [Fri, 10 May 2019 16:19:52 +0000 (09:19 -0700)]
qa/tests: renamed suite to clients-upgrades-luminous-nautilus to be consistent

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
6 years agorgw: use chunked encoding to get partial results out faster 28069/head
Robin H. Johnson [Thu, 23 Aug 2018 17:57:24 +0000 (10:57 -0700)]
rgw: use chunked encoding to get partial results out faster

Some operations can take a long time to have their complete result.

If a RGW operation does not set a content-length header, the RGW
frontends (CivetWeb, Beast) buffer the entire request so that a
Content-Length header can be sent.

If the RGW operation takes long enough, the buffering time may exceed
keepalive values, and because no bytes have been sent in the connection,
the connection will be reset.

If a HTTP response header contains neither Content-Length or chunked
Transfer-Encoding, HTTP keep-alive is not possible.

To fix the issue within these requirements, use chunked
Transfer-Encoding for the following operations:

* RGWCopyObj_ObjStore_S3 **
* RGWDeleteMultiObj_ObjStore_S3 **
* RGWGetUsage_ObjStore_S3
* RGWListBucketMultiparts_ObjStore_S3
* RGWListBucket_ObjStore_S3
* RGWListBuckets_ObjStore_S3
* RGWListMultipart_ObjStore_S3

RGWCopyObj & RGWDeleteMultiObj specifically use send_partial_response
for long-running operations, and are the most impacted by this issue,
esp. for large inputs. RGWCopyObj attempts to send a Progress header
during the copy, but it's not actually passed on to the client until the
end of the copy, because it's buffered by the RGW frontends!

The HTTP/1.1 specification REQUIRES chunked encoding to be supported,
and the specification does NOT require "chunked" to be included in the
"TE" request header.

This patch has one side-effect: this causes many more small IP packets.
When combined with high-latency links this can increase the apparent
deletion time due to round trips and TCP slow start. Future improvements
to the RGW frontends are possible in two seperate but related ways:
- The FE could continue to push more chunks without waiting for the ACK
  on the previous chunk, esp. while under the TCP window size.
- The FE could be patched for different buffer flushing behaviors, as
  that behavior is presently unclear (packets of 200-500 bytes seen).

Performance results:
- Bucket with 5M objects, index sharded 32 ways.
- Index on SSD 3x replicas, Data on spinning disk, 5:2
- Multi-delete of 1000 keys, with a common prefix.
- Cache of index primed by listing the common prefix immediately before
  deletion.
- Timing data captured at the RGW.
- Timing t0 is the TCP ACK sent by the RGW at the end of the response
  body.
- Client is ~75ms away from RGW.
BEFORE:
Time to first byte of response header: 11.3 seconds.
Entire operation: 11.5 seconds.
Response packets: 17
AFTER:
Time to first byte of response header: 3.5ms
Entire operation: 16.36 seconds
Response packets: 206

Backport: mimic, luminous
Issue: http://tracker.ceph.com/issues/12713
Signed-off-by: Robin H. Johnson <rjohnson@digitalocean.com>
(cherry picked from commit d22c1f96707ba9ae84578932bd4d741f6c101a54)

6 years agoMerge pull request #28066 from yuriw/wip-yuriw-clients-upgrades-luminous-2-nautilus
Yuri Weinstein [Fri, 10 May 2019 16:38:53 +0000 (09:38 -0700)]
Merge pull request #28066 from yuriw/wip-yuriw-clients-upgrades-luminous-2-nautilus

qa/tests: renamed suite to clients-upgrades-luminous-nautilus to be c…

6 years agoqa/tests: renamed suite to clients-upgrades-luminous-nautilus to be consistent 28066/head
Yuri Weinstein [Fri, 10 May 2019 16:19:52 +0000 (09:19 -0700)]
qa/tests: renamed suite to clients-upgrades-luminous-nautilus to be consistent

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
6 years agoMerge pull request #27934 from yuriw/wip-yuriw-clients-upgrades-luminous-2-nautilus
Josh Durgin [Thu, 9 May 2019 22:48:17 +0000 (15:48 -0700)]
Merge pull request #27934 from yuriw/wip-yuriw-clients-upgrades-luminous-2-nautilus

qa/tests: new suite to test `luminous` clients on `nautilus` cluster

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
6 years agorgw: bump mimic civetweb with ssl & abs url fixes
Abhishek Lekshmanan [Fri, 22 Feb 2019 14:27:05 +0000 (15:27 +0100)]
rgw: bump mimic civetweb with ssl & abs url fixes

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
(cherry picked from commit 6180747fc18cfe789f2b5b0b6b5ff5368f6b2448)

6 years agomimic: rgw: civetweb: use poll instead of select while waiting on sockets
Abhishek Lekshmanan [Wed, 12 Sep 2018 13:27:19 +0000 (15:27 +0200)]
mimic: rgw: civetweb: use poll instead of select while waiting on sockets

Non cherry-picked backport of 4d0035830e5783a828a275245b8bc3ae88edc417 as the
commit hashes of the submodules are different in different upstream release
branches of ceph/civetweb, so creating this new commit which directly references
the tip of ceph-mimic branch instead picking from ceph-master, as ceph-master
and ceph-mimic may diverge at a later stage.

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
(cherry picked from commit aafffbfd92b45712232937045a5be7464376a060)

6 years agocivetweb: update for url validation fixes
Abhishek Lekshmanan [Thu, 17 May 2018 10:00:54 +0000 (12:00 +0200)]
civetweb: update for url validation fixes

The new civetweb 1.10 version in mimic and later is strict on control characters
being url encoded, making url validation more relaxed and passing these through
to rgw where the requisite url validation is done.

Fixes: http://tracker.ceph.com/issues/24158
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
(cherry picked from commit 810c1fa8d3a253745d07c4c740296589fa43811a)
(cherry picked from commit 8f140aa04d27448781454ad186633366008f7f23)

6 years agorgw: update civetweb submodule sha1 to track ceph-master
Abhishek Lekshmanan [Fri, 13 Apr 2018 17:03:11 +0000 (19:03 +0200)]
rgw: update civetweb submodule sha1 to track ceph-master

Updating the sha1 to track ceph-master which currently updates civetweb to 1.1

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
(cherry picked from commit 823ce0406b6ef543601db74ecc26a67083c95a1e)

6 years agorgw: update civetweb to 1.1
Abhishek Lekshmanan [Tue, 27 Mar 2018 14:19:47 +0000 (16:19 +0200)]
rgw: update civetweb to 1.1

Introduces the following additions in rgw:
- allow_unicode_in_urls introduced with a corresponding downstream commit in
civetweb, as the newer version of civetweb validates that urls are url encoded
which swifttests do not follow, so introduce this as a configurable which we set
as true
- mg header struct changes in civetweb update, use auto here
- drop info->uri and use local_uri instead as the former is deprecated

wip: rgw: civetweb fixes for v1.1 upgrade

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
(cherry picked from commit 64275d516bcc570d1a9b9fea644bcab34483db35)

6 years agorgw:send x-amz-version-id header when upload files 27935/head
Xinying Song [Wed, 15 Nov 2017 06:10:58 +0000 (14:10 +0800)]
rgw:send x-amz-version-id header when upload files

To be compatible with aws s3, an x-amz-version-id header should be returned.

For atomic upload, RGWPutObj::version_id will stores the version-id either
generated by rgw randomly or read from user. For multipart upload,
RGWCompleteMultipart::version_id will stores the version-id either
generated by rgw randomly or read from user.

Function send_respones() will send 'x-amz-version-id' header when version_id is not empty.

Signed-off-by: Xinying Song <songxinying@cloudin.cn>
(cherry picked from commit b4a937562a7ae909c2748980b5327189ccb8cdc0)

6 years agoqa/tests: new suite to test `luminous` clients on `nautilus` cluster 27934/head
Yuri Weinstein [Thu, 2 May 2019 20:17:13 +0000 (13:17 -0700)]
qa/tests: new suite to test `luminous` clients on `nautilus` cluster

This suite will run on `nautilus` relases only and we will keep running older suite `client-upgrade-luminous`
on previous releases

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
6 years agoMerge pull request #27910 from yuriw/wip-yuriw-fix-clients-upgrates-luminous 27768/head
Yuri Weinstein [Wed, 1 May 2019 23:38:58 +0000 (16:38 -0700)]
Merge pull request #27910 from yuriw/wip-yuriw-fix-clients-upgrates-luminous

qa/tests:  Excluded  "'python34-cephfs','python34-rados'" for runs on nautilus

6 years agoqa/tests: Excluded "'python34-cephfs','python34-rados'" for runs on nautilus 27910/head
Yuri Weinstein [Wed, 1 May 2019 20:08:38 +0000 (13:08 -0700)]
qa/tests:  Excluded  "'python34-cephfs','python34-rados'" for runs on nautilus

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
6 years agomon/OSDMonitor: further improve prepare_command_pool_set E2BIG error message 27908/head
Nathan Cutler [Wed, 17 Apr 2019 12:46:06 +0000 (14:46 +0200)]
mon/OSDMonitor: further improve prepare_command_pool_set E2BIG error message

d2c0fe9b5319a4404965c40ec92e291802ef30f6 improved this error message,
but it can be improved further by suggesting that the pg_num be increased in
smaller increments.

This commit is not cherry-picked from master because 4d3407ba93b2c15dd86aa7f97bd9f29c3508c60e
(merged for Nautilus) removed the error message in question.

Fixes: http://tracker.ceph.com/issues/39353
Signed-off-by: Nathan Cutler <ncutler@suse.com>
(cherry picked from commit 7b78bad91605da4d7c9f009803323f7fbc930497)

6 years agomon/OSDMonitor: Better prepare_command_pool_set E2BIG error message
Brad Hubbard [Sat, 13 Jan 2018 23:00:44 +0000 (09:00 +1000)]
mon/OSDMonitor: Better prepare_command_pool_set E2BIG error message

Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
(cherry picked from commit d2c0fe9b5319a4404965c40ec92e291802ef30f6)

6 years agorgw_file: save etag and acl info in setattr 27881/head
taoCH [Fri, 15 Feb 2019 03:57:29 +0000 (19:57 -0800)]
rgw_file: save etag and acl info in setattr

Fixes: https://tracker.ceph.com/issues/38327
Signed-off-by: Tao Chen <chentao@umcloud.com>
(cherry picked from commit f9f4e996ebf4cce79a45196d8aa796b07e03b7f7)

6 years agoosd/PG: move down peers out from peer_purged 27878/head
xie xingguo [Tue, 26 Mar 2019 07:02:02 +0000 (15:02 +0800)]
osd/PG: move down peers out from peer_purged

In purge_strays(), we'll aggressively clear stray_set and
add all related peers into peer_purged.

However, if the corrsponding peer is down and becomes
up again, (unconditionally) adding it to peer_purged
will prevent primary from re-purging it.
(See Active::react(const MNotifyRec& notevt))

On consuming a new osdmap, let's move any down peers out from
peer_purged simutaneously. This way we can lower the risk
of leaving any leftover PGs behind.

Related-to: http://tracker.ceph.com/issues/38931
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
(cherry picked from commit f7c5b01e181630bb15e8b923b0334eb6adfdf50a)

6 years agoosd/PG: introduce all_missing_unfound helper
xie xingguo [Tue, 26 Mar 2019 12:04:15 +0000 (20:04 +0800)]
osd/PG: introduce all_missing_unfound helper

We use pg_log.missing to track each peer's missing objects separately,
whereas missing_loc records the location of all (probably existing) good copies
for both primary and replicas' missing objects. Hence an item from
pg_log.missing or missing_loc is of different meaning and is not comparable.

During recovery, we can skip recovering primary only if
- primary is good, e.g., has no missing at all
- or all of the primary's missing objects do exist in missing_loc and are
  currently unfound

Obviously, the current "all missing objects are unfound" checker is broken.
Fix by introducing an independent all_missing_unfound helper to make the
count of missing objects that are currently unfound correct.

Fixes: http://tracker.ceph.com/issues/38784
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
(cherry picked from commit d9497139a6f516ce015bb43a2e7f8958638cf8f8)

6 years agomsg: output peer address when detecting bad CRCs 27858/head
Greg Farnum [Wed, 17 Apr 2019 22:27:22 +0000 (15:27 -0700)]
msg: output peer address when detecting bad CRCs

Fixes: http://tracker.ceph.com/issues/39367
Signed-off-by: Greg Farnum <gfarnum@redhat.com>
(cherry picked from commit 19679231fc32daa405cc060847a02ac1cfd51300)

6 years agoosd/PGLog: preserve original_crt in merge_log() 27715/head
Neha Ojha [Mon, 25 Mar 2019 21:48:04 +0000 (14:48 -0700)]
osd/PGLog: preserve original_crt in merge_log()

Fixes: https://tracker.ceph.com/issues/21174
Signed-off-by: Neha Ojha <nojha@redhat.com>
(cherry picked from commit 47215a5c0e1544c9080fda1eee8f04c9890eea42)

6 years agoosd/PGLog: preserve original_crt in proc_replica_log()
Neha Ojha [Tue, 12 Feb 2019 01:21:53 +0000 (17:21 -0800)]
osd/PGLog: preserve original_crt in proc_replica_log()

This is to prevent rolling back further than deleted object version.

Signed-off-by: Neha Ojha <nojha@redhat.com>
(cherry picked from commit cd25c1d79d189b4e0389927e7c20d75afd2661d9)

6 years agoosd/PGLog: should not rollback further than deleted object version
Neha Ojha [Wed, 6 Feb 2019 03:23:21 +0000 (19:23 -0800)]
osd/PGLog: should not rollback further than deleted object version

When a deleted object becomes a divergent entry in the pg log,
we should not be able to rollback to a version of the deleted
object that doesn't exist.

To avoid this, we need to preserve the original crt of the pg log,
before we update it in rewind_from_head() and use that to decide whether
we can rollback or not in _merge_object_divergent_entries().

Fixes: http://tracker.ceph.com/issues/36739
Signed-off-by: Neha Ojha <nojha@redhat.com>
(cherry picked from commit de18c592259816ad013ac82983cdec71bbfa51a0)

Conflicts:
src/osd/PGLog.h : Resolved for ceph_assert

6 years agoosd/PGLog.h: print olog_can_rollback_to before deciding to rollback
Neha Ojha [Thu, 21 Mar 2019 22:12:20 +0000 (15:12 -0700)]
osd/PGLog.h: print olog_can_rollback_to before deciding to rollback

This is particularly important as the crt might have changed before
being passed to merge_object_divergent_entries().

Fixes: http://tracker.ceph.com/issues/38894
Signed-off-by: Neha Ojha <nojha@redhat.com>
(cherry picked from commit aa49c57f3942c676d333e1841886881af125ea01)

6 years agoosd: shutdown recovery_request_timer earlier 27810/head
Zengran Zhang [Wed, 27 Mar 2019 01:39:31 +0000 (09:39 +0800)]
osd: shutdown recovery_request_timer earlier

recovery_request_timer may hold some QueuePeeringEvts which PGRef,
if we dont shutdown it earlier, it potentially cause the PGRef leak
when kicking pg.

Fixes: https://tracker.ceph.com/issues/38945
Signed-off-by: Zengran Zhang <zhangzengran@sangfor.com.cn>
(cherry picked from commit bb41bdfdb14768b5d46b7b1334bba1a3909e2618)

Conflicts:
src/osd/OSD.cc : Resolved in start_shutdown

6 years agoosd/PG: discover missing objects when an OSD peers and PG is degraded 27751/head
Jonas Jelten [Mon, 1 Apr 2019 10:28:09 +0000 (12:28 +0200)]
osd/PG: discover missing objects when an OSD peers and PG is degraded

When a PG is remapped from OSD `a` to OSD `b`, the objects are
backfilled. When OSD `a` is restarted, objects become degraded
as `a` is no longer queried or considered as a backfill source.

As the PG is degraded, `PG::discover_all_missing` is not called
when a candidate OSD peers with the primary: The PG is already
active, thus `PG::activate` (and in turn missing object discovery)
is not called. Discovery is also not initiated from
`PG::RecoveryState::Active::react(const MNotifyRec& notevt)`
as there are no unfound objects.

This patch adds a call to `discover_all_missing` when
when an OSD sends its `MNotifyRec` message and the PG is degraded.

Fixes: https://tracker.ceph.com/issues/37439
Signed-off-by: Jonas Jelten <jj@stusta.net>
(cherry picked from commit e152d092f7b7839bb27ac7a5cf1c95f4d3752b32)

6 years agoosd/OSDMap: Replace get_out_osds with get_out_existing_osds 27728/head
Brad Hubbard [Wed, 17 Apr 2019 06:13:27 +0000 (16:13 +1000)]
osd/OSDMap: Replace get_out_osds with get_out_existing_osds

Fixes: http://tracker.ceph.com/issues/39154
Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
(cherry picked from commit adfb6a595363e2c085c6eac3001fcaa2dce007aa)

 Conflicts:
src/osd/OSDMap.h - Trivial resolution - no std::

6 years agopybind/rados: fixed Python3 string conversion issue on get_fsid 27674/head
Jason Dillaman [Tue, 19 Feb 2019 16:02:41 +0000 (11:02 -0500)]
pybind/rados: fixed Python3 string conversion issue on get_fsid

Fixes: http://tracker.ceph.com/issues/38381
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit 005f19eff0b4a92647e5847e306718be76704432)

Conflicts:
src/test/pybind/test_rados.py
- no "import os" in luminous

6 years agorgw: s3: awsv4 drop special handling for x-amz-credential 27668/head
Abhishek Lekshmanan [Mon, 20 Aug 2018 15:45:04 +0000 (17:45 +0200)]
rgw: s3: awsv4 drop special handling for x-amz-credential

While s3 docs mention that every byte must be urlencoded, they are relaxed in
its implementation, when testing this behaviour on aws s3 itself, they seem to
be relaxed in handling aws credentials of the form

X-Amz-Credential=access1/20180817T123456Z/us-east-1...

wherein

X-Amz-Credential=access1%2F2018...

is expected. This allows for clients requesting the urls in both forms to
succeed as aws s3 does at the moment

Fixes: http://tracker.ceph.com/issues/26965
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
(cherry picked from commit 25e1d2a32074254e9ebd780f3a41b2ff6469370f)

6 years agorgw: should recode canonical_uri when caculate s3v4 auth
yuliyang [Sat, 7 Apr 2018 10:58:55 +0000 (06:58 -0400)]
rgw: should recode canonical_uri when caculate s3v4 auth

fix: http://tracker.ceph.com/issues/23587

Signed-off-by: yuliyang <yuliyang@cmss.chinamobile.com>
(cherry picked from commit 919a8976cf40866e7212c5bb2ff38a9c5f8a1f75)

6 years agoceph-objectstore-tool: Rename dump-import to dump-export 27636/head
David Zafman [Fri, 12 Apr 2019 20:09:43 +0000 (13:09 -0700)]
ceph-objectstore-tool: Rename dump-import to dump-export

If user specifies dump-import it will still work, but isn't
in the usage that way.

Fixes: http://tracker.ceph.com/issues/39284
Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit 96861a8116242bdef487087348c24c97723dfafc)

Conflicts:
qa/standalone/special/ceph_objectstore_tool.py
src/tools/ceph_objectstore_tool.cc
- trivial resolution

6 years ago12.2.12 v12.2.12
Jenkins Build Slave User [Thu, 11 Apr 2019 12:33:50 +0000 (12:33 +0000)]
12.2.12

6 years agorgw-admin: fix data sync report for master zone 27453/head
cfanz [Wed, 5 Sep 2018 02:57:35 +0000 (10:57 +0800)]
rgw-admin: fix data sync report for master zone

Signed-off-by: cfanz <songxinying@sensetime.com>
(cherry picked from commit 6e3be2461b13e24fa78df39bb0084cbf4742bac0)

6 years agoMerge pull request #26989 from ceph/backport-luminous-26957
Yuri Weinstein [Mon, 8 Apr 2019 19:44:57 +0000 (12:44 -0700)]
Merge pull request #26989 from ceph/backport-luminous-26957

luminous: ceph-volume: look for rotational data in lsblk

Reviewed-by: Alfredo Deza <adeza@redhat.com>
6 years agoMerge pull request #27312 from ifed01/wip-ifed-fix-bmap-alloc-luminous 27364/head
Yuri Weinstein [Wed, 3 Apr 2019 20:22:15 +0000 (13:22 -0700)]
Merge pull request #27312 from ifed01/wip-ifed-fix-bmap-alloc-luminous

luminous: os/bluestore: bitmap allocator might fail to return contiguous chunk despite having enough space

Reviewed-by: Neha Ojha <nojha@redhat.com>
6 years agoMerge pull request #26475 from pdvian/wip-38338-luminous
Yuri Weinstein [Wed, 3 Apr 2019 20:18:40 +0000 (13:18 -0700)]
Merge pull request #26475 from pdvian/wip-38338-luminous

luminous: tests: run-standalone.sh set local library location so mgr can find li…

Reviewed-by: David Zafman <dzafman@redhat.com>
6 years agoMerge pull request #27322 from liewegas/wip-valgrind-luminous
Sage Weil [Wed, 3 Apr 2019 14:57:12 +0000 (09:57 -0500)]
Merge pull request #27322 from liewegas/wip-valgrind-luminous

luminous: qa/valgrind.supp: backport valgrind suppressions

6 years agorgw: don't crash on missing /etc/mime.types 27332/head
Casey Bodley [Fri, 15 Mar 2019 20:47:19 +0000 (16:47 -0400)]
rgw: don't crash on missing /etc/mime.types

lack of mime types is not a fatal error. when a Content-Type header
is not provided in swift's PutObj, it uses this mime type mapping
to guess a content type based on the object's suffix

Fixes: http://tracker.ceph.com/issues/38328
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 89dc5a6df4503d70555bcd80af0e2f6ee896e28a)

6 years agoMerge pull request #26191 from cbodley/wip-38081-luminous
Yuri Weinstein [Tue, 2 Apr 2019 20:04:41 +0000 (13:04 -0700)]
Merge pull request #26191 from cbodley/wip-38081-luminous

luminous: rgw: fetch_remote_obj filters out olh attrs

Reviewed-by: Casey Bodley <cbodley@redhat.com>