]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
8 years agoMerge pull request #13732 from liewegas/wip-19119-jewel
Nathan Cutler [Wed, 12 Apr 2017 01:38:34 +0000 (03:38 +0200)]
Merge pull request #13732 from liewegas/wip-19119-jewel

jewel: doc: PendingReleaseNotes: note about 19119

Reviewed-by: Nathan Cutler <ncutler@suse.com>
8 years agoMerge pull request #13541 from shinobu-x/wip-18929-jewel
Nathan Cutler [Wed, 12 Apr 2017 01:36:21 +0000 (03:36 +0200)]
Merge pull request #13541 from shinobu-x/wip-18929-jewel

 jewel: osd: restrict want_acting to up+acting on recovery completion

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
8 years agoMerge pull request #13477 from asheplyakov/jewel-bp-18951
Nathan Cutler [Wed, 12 Apr 2017 01:34:54 +0000 (03:34 +0200)]
Merge pull request #13477 from asheplyakov/jewel-bp-18951

jewel: osd: --flush-journal: sporadic segfaults on exit

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
8 years agoMerge pull request #13261 from shinobu-x/wip-18587-jewel
Nathan Cutler [Wed, 12 Apr 2017 01:33:25 +0000 (03:33 +0200)]
Merge pull request #13261 from shinobu-x/wip-18587-jewel

jewel: mon: OSDMonitor: make 'osd crush move ...' work on osds

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
8 years ago10.2.7 v10.2.7
Jenkins Build Slave User [Mon, 10 Apr 2017 11:43:44 +0000 (11:43 +0000)]
10.2.7

8 years agoPendingReleaseNotes: warning about 'osd rm ...' and #19119 13732/head
Sage Weil [Wed, 1 Mar 2017 19:18:44 +0000 (13:18 -0600)]
PendingReleaseNotes: warning about 'osd rm ...' and #19119

See http://tracker.ceph.com/issues/19119

Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit be96003c464481d8e84825178d600234a0d64d22)

8 years agoMerge pull request #14230 from linuxbox2/wip-jewel-expand-argv
Ken Dreyer [Fri, 31 Mar 2017 16:27:07 +0000 (10:27 -0600)]
Merge pull request #14230 from linuxbox2/wip-jewel-expand-argv

jewel: rgw_file: expand argv

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #14233 from ktdreyer/wip-19421-jewel
Ken Dreyer [Fri, 31 Mar 2017 16:17:10 +0000 (10:17 -0600)]
Merge pull request #14233 from ktdreyer/wip-19421-jewel

jewel: librbd: possible race in ExclusiveLock handle_peer_notification

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agoMerge pull request #14231 from linuxbox2/wip-jewel-fhcache
Ken Dreyer [Fri, 31 Mar 2017 16:16:48 +0000 (10:16 -0600)]
Merge pull request #14231 from linuxbox2/wip-jewel-fhcache

jewel: rgw_fh: RGWFileHandle dtor must also cond-unlink from FHCache

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #14215 from mdw-at-linuxbox/wip-jewel-rgw-openssl-fix1
Ken Dreyer [Fri, 31 Mar 2017 16:09:14 +0000 (10:09 -0600)]
Merge pull request #14215 from mdw-at-linuxbox/wip-jewel-rgw-openssl-fix1

rgw: fix openssl

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #14206 from linuxbox2/wip-gui-jewel
Ken Dreyer [Fri, 31 Mar 2017 16:07:48 +0000 (10:07 -0600)]
Merge pull request #14206 from linuxbox2/wip-gui-jewel

jewel: rgw_file: various fixes

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #14205 from linuxbox2/wip-dir-orphan-jewel
Ken Dreyer [Fri, 31 Mar 2017 16:07:03 +0000 (10:07 -0600)]
Merge pull request #14205 from linuxbox2/wip-dir-orphan-jewel

jewel:  rgw_file: wip dir orphan

 Conflicts:
src/rgw/rgw_file.cc (whitespace, trivial resolution)

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #14169 from linuxbox2/wip-18650-jewel
Ken Dreyer [Fri, 31 Mar 2017 16:05:40 +0000 (10:05 -0600)]
Merge pull request #14169 from linuxbox2/wip-18650-jewel

jewel: rgw: rgw_file: FHCache residence check should be exhaustive

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #13869 from smithfarm/wip-19161-jewel
Ken Dreyer [Fri, 31 Mar 2017 16:02:58 +0000 (10:02 -0600)]
Merge pull request #13869 from smithfarm/wip-19161-jewel

jewel: rgw: rgw_file: fix marker computation

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agorgw_file: use fh_hook::is_linked() to check residence 14169/head
Matt Benjamin [Tue, 28 Feb 2017 20:49:06 +0000 (15:49 -0500)]
rgw_file:  use fh_hook::is_linked() to check residence

Previously we assumed that !deleted handles were resident--there
is an observed case where a !deleted handle is !linked.  Since
we currently use safe_link mode, an is_linked() check is
available, and exhaustive.

Fixes: http://tracker.ceph.com/issues/19111
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit c0aa515f8d8c57ec5ee09e3b60df3cac60453c40)

8 years agojewel: librbd: possible race in ExclusiveLock handle_peer_notification 14233/head
Mykola Golub [Tue, 28 Mar 2017 13:55:11 +0000 (15:55 +0200)]
jewel: librbd: possible race in ExclusiveLock handle_peer_notification

This is a cherry-pick from kraken -- the master diverged after
ManagedLock refactoring and is not affected.

Fix: http://tracker.ceph.com/issues/19368
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit df59d6d5f7deb586cf14a6ef6984e6847db08852)

8 years agorgw_file: RGWFileHandle dtor must also cond-unlink from FHCache 14231/head
Matt Benjamin [Wed, 1 Mar 2017 01:24:12 +0000 (20:24 -0500)]
rgw_file: RGWFileHandle dtor must also cond-unlink from FHCache

Formerly masked in part by the reclaim() action, direct-delete now
substitutes for reclaim() iff its LRU lane is over its high-water
mark, and in particular, like reclaim() the destructor is certain
to see handles still interned on the FHcache when nfs-ganesha is
recycling objects from its own LRU.

Fixes: http://tracker.ceph.com/issues/19112
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit d51a3b1224ba62bb53c6c2c7751fcf7853c35a4b)

8 years agorgw_file: split last argv on ws, if provided 14230/head
Matt Benjamin [Tue, 17 Jan 2017 16:23:45 +0000 (11:23 -0500)]
rgw_file:  split last argv on ws, if provided

This is intended to allow an "extra" unparsed argument string
containing various cmdline options to be passed as the last argument
in the argv array of librgw_create(), which nfs-ganesha is
expecting to happen.

While at it, hook env_args() too.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit fbc19e4effc736c98cc1cc283e5c7b131a0fa766)

8 years agorgw_file: fix hiwat behavior
Matt Benjamin [Mon, 13 Feb 2017 01:18:26 +0000 (20:18 -0500)]
rgw_file: fix hiwat behavior

Removed logic to skip reclaim processing conditionally on hiwat,
this probably meant to be related to a lowat value, which does
not exist.

Having exercised the hiwat reclaim behavior, noticed that the
path which moves unreachable objects to LRU, could and probably
should remove them altogether when q.size exceeds hiwat.  Now
the max unreachable float is lane hiwat, for all lanes.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit b8791b2217e9ca87b2d17b51f283fa14bd68b581)
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agorgw_file: refcnt bugfixes
Matt Benjamin [Sun, 12 Feb 2017 23:20:43 +0000 (18:20 -0500)]
rgw_file: refcnt bugfixes

This change includes 3 related changes:

1. add required lock flags for FHCache updates--this is a crash
   bug under concurrent update/lookup

2. omit to inc/dec refcnt on root filehandles in 2 places--the
   root handle current is not on the lru list, so it's not
   valid to do so

3. based on observation of LRU behavior during creates/deletes,
   update (cohort) LRU unref to move objects to LRU when their
   refcount falls to SENTINEL_REFCNT--this cheaply primes the
   current reclaim() mechanism, so very significanty improves
   space use (e.g., after deletes) in the absence of scans
   (which is common due to nfs-ganesha caching)

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit beaeff059375b44188160dbde8a81dd4f4f8c6eb)
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agorgw_file: add refcount dout traces at debuglevel 17
Matt Benjamin [Sat, 11 Feb 2017 21:38:05 +0000 (16:38 -0500)]
rgw_file:  add refcount dout traces at debuglevel 17

These are helpful for checking RGWFileHandle refcnt invariants.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit 462034e17f919fb783ee33e2c9fa8089f93fd97d)
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agorgw_file: add pretty-print for RGWFileHandle
Matt Benjamin [Fri, 10 Feb 2017 22:14:16 +0000 (17:14 -0500)]
rgw_file: add pretty-print for RGWFileHandle

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit ef330f385d3407af5f470b5093145f59cc4dcc79)
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agorgw_file: fix marker computation 13869/head
Matt Benjamin [Mon, 20 Feb 2017 20:05:18 +0000 (15:05 -0500)]
rgw_file: fix marker computation

Fixes: http://tracker.ceph.com/issues/19018
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit 4454765e7dd08535c50d24205858e18dba4b454c)

8 years agorgw_file: rgw_readdir can't list multi-segment dirs
Matt Benjamin [Mon, 20 Feb 2017 01:34:31 +0000 (20:34 -0500)]
rgw_file: rgw_readdir can't list multi-segment dirs

This issue has one root cause in librgw, namely that the marker
argument to these requests was incorrectly formatted (though the
marker cache was working as intended).

Secondarily, for nfs-ganesha users, there is a compounding issue
that the RGW fsal was required by "temporary" convention to
populate the entire dirent cache for a directory on a single
readdir() invocation--the cache_inode/mdcache implementations
invariantly pass (before future 2.5 changesets, currently in
progress) a null pointer for the start cookie offset, intended
to convey this.

Fixes: http://tracker.ceph.com/issues/18991
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit 2cd60ee9712291b906123aca1704288b18a9742b)

8 years agorgw_file: allow setattr on placeholder directories
Matt Benjamin [Sun, 19 Feb 2017 23:21:06 +0000 (18:21 -0500)]
rgw_file: allow setattr on placeholder directories

When a POSIX path <bucket>/foo/ is known only as an implicit path
segment from other objects (e.g., <bucket>/foo/bar.txt), a case
that would usually arise from S3 upload of such an object, an
RGWFileHandle object representing "<bucket>/foo/" will be constructed
as needed, with no backing in RGW.

This is by design, but subsequently, if a setattr is performed on
such a handle, we must be ready to create the object inline with
storing the attributes.

Fixes: http://tracker.ceph.com/issues/18989
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit 55eec1c0a0e136736961423b7b6244d0f3693c1a)

8 years agoMerge pull request #14140 from smithfarm/wip-19341-jewel
Ken Dreyer [Tue, 28 Mar 2017 22:36:35 +0000 (16:36 -0600)]
Merge pull request #14140 from smithfarm/wip-19341-jewel

jewel: 'period update' does not remove short_zone_ids of deleted zones

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #13886 from cbodley/wip-17786
Ken Dreyer [Tue, 28 Mar 2017 22:35:16 +0000 (16:35 -0600)]
Merge pull request #13886 from cbodley/wip-17786

jewel: rgw: clear data_sync_cr if RGWDataSyncControlCR fails

Reviewed-by: Nathan Cutler <ncutler@suse.com>
8 years agoMerge pull request #13867 from smithfarm/wip-19159-jewel
Ken Dreyer [Tue, 28 Mar 2017 22:34:57 +0000 (16:34 -0600)]
Merge pull request #13867 from smithfarm/wip-19159-jewel

jewel: rgw: multisite: RGWMetaSyncShardControlCR gives up on EIO

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #13858 from smithfarm/wip-19152-jewel
Ken Dreyer [Tue, 28 Mar 2017 22:34:24 +0000 (16:34 -0600)]
Merge pull request #13858 from smithfarm/wip-19152-jewel

jewel: rgw_file:  restore (corrected) fix for dir partial match (return of FLAG_EXACT_MATCH)

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #13848 from smithfarm/wip-19150-jewel
Ken Dreyer [Tue, 28 Mar 2017 22:33:18 +0000 (16:33 -0600)]
Merge pull request #13848 from smithfarm/wip-19150-jewel

jewel: rgw_file:  avoid interning .. in FHCache table and don't ref for them

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #13844 from smithfarm/wip-19148-jewel
Ken Dreyer [Tue, 28 Mar 2017 22:29:30 +0000 (16:29 -0600)]
Merge pull request #13844 from smithfarm/wip-19148-jewel

jewel: rgw: DUMPABLE flag is cleared by setuid preventing coredumps

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #13823 from asheplyakov/19176-bp-jewel
Ken Dreyer [Tue, 28 Mar 2017 22:26:48 +0000 (16:26 -0600)]
Merge pull request #13823 from asheplyakov/19176-bp-jewel

jewel: rgw: fix swift cannot disable object versioning with empty X-Versions-Location

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #13778 from smithfarm/wip-18811-jewel
Ken Dreyer [Tue, 28 Mar 2017 22:22:23 +0000 (16:22 -0600)]
Merge pull request #13778 from smithfarm/wip-18811-jewel

jewel: librgw: RGWLibFS::setattr fails on directories

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agoMerge pull request #13717 from asheplyakov/19115-bp-jewel
Ken Dreyer [Tue, 28 Mar 2017 22:21:44 +0000 (16:21 -0600)]
Merge pull request #13717 from asheplyakov/19115-bp-jewel

jewel: rgw_file: ensure valid_s3_object_name for directories, too

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agoMerge pull request #13596 from dillaman/wip-19038-jewel
Ken Dreyer [Tue, 28 Mar 2017 22:19:03 +0000 (16:19 -0600)]
Merge pull request #13596 from dillaman/wip-19038-jewel

jewel: rbd-mirror: deleting a snapshot during sync can result in read errors

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
8 years agoMerge pull request #13583 from asheplyakov/jewel-bp-18901
Ken Dreyer [Tue, 28 Mar 2017 22:10:43 +0000 (16:10 -0600)]
Merge pull request #13583 from asheplyakov/jewel-bp-18901

jewel: rgw_file:  interned RGWFileHandle objects need parent refs

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #13503 from linuxbox2/wip-jewel-10156
Ken Dreyer [Tue, 28 Mar 2017 22:02:43 +0000 (16:02 -0600)]
Merge pull request #13503 from linuxbox2/wip-jewel-10156

jewel: rgw: make sending Content-Length in 204 and 304 controllable

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Radoslaw Zarzynski <rzarzynski@mirantis.com>
8 years agoMerge pull request #13232 from ovh/wip-rework-recovery-priorities-jewel
Ken Dreyer [Tue, 28 Mar 2017 21:53:49 +0000 (15:53 -0600)]
Merge pull request #13232 from ovh/wip-rework-recovery-priorities-jewel

jewel: osd: Increase priority for inactive PGs backfill

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #13219 from linuxbox2/jewel-rgw-multipart-upload-copy-4
Ken Dreyer [Tue, 28 Mar 2017 21:51:46 +0000 (15:51 -0600)]
Merge pull request #13219 from linuxbox2/jewel-rgw-multipart-upload-copy-4

jewel: rgw: multipart uploads copy part support

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #13108 from vumrao/wip-vumrao-jewel-18657
Ken Dreyer [Tue, 28 Mar 2017 21:51:24 +0000 (15:51 -0600)]
Merge pull request #13108 from vumrao/wip-vumrao-jewel-18657

jewel: osd: fix OSD network address in OSD heartbeat_check log message

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
8 years agorgw_file: posix style atime,ctime,mtime 14205/head
Gui Hecheng [Thu, 2 Mar 2017 09:21:57 +0000 (17:21 +0800)]
rgw_file: posix style atime,ctime,mtime

As an ganesha FSAL backend, rgw_file should properly maintain
the atime,ctime,mtime properly against operations such as:
(read,write) for file
(create,unlink,mkdir,rmdir,rename) for dir
(setattr) for file and dir

Signed-off-by: Gui Hecheng <guihecheng@cmss.chinamobile.com>
(cherry picked from commit ac25da2479b9be876cbdb820560ac46a6e2b17d7)

8 years agorgw_file: fix marker computation
Matt Benjamin [Mon, 20 Feb 2017 20:05:18 +0000 (15:05 -0500)]
rgw_file: fix marker computation

Fixes: http://tracker.ceph.com/issues/19018
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit 4454765e7dd08535c50d24205858e18dba4b454c)
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agorgw_file: rgw_readdir can't list multi-segment dirs
Matt Benjamin [Mon, 20 Feb 2017 01:34:31 +0000 (20:34 -0500)]
rgw_file: rgw_readdir can't list multi-segment dirs

This issue has one root cause in librgw, namely that the marker
argument to these requests was incorrectly formatted (though the
marker cache was working as intended).

Secondarily, for nfs-ganesha users, there is a compounding issue
that the RGW fsal was required by "temporary" convention to
populate the entire dirent cache for a directory on a single
readdir() invocation--the cache_inode/mdcache implementations
invariantly pass (before future 2.5 changesets, currently in
progress) a null pointer for the start cookie offset, intended
to convey this.

Fixes: http://tracker.ceph.com/issues/18991
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit 2cd60ee9712291b906123aca1704288b18a9742b)
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agorgw_file: allow setattr on placeholder directories
Matt Benjamin [Sun, 19 Feb 2017 23:21:06 +0000 (18:21 -0500)]
rgw_file: allow setattr on placeholder directories

When a POSIX path <bucket>/foo/ is known only as an implicit path
segment from other objects (e.g., <bucket>/foo/bar.txt), a case
that would usually arise from S3 upload of such an object, an
RGWFileHandle object representing "<bucket>/foo/" will be constructed
as needed, with no backing in RGW.

This is by design, but subsequently, if a setattr is performed on
such a handle, we must be ready to create the object inline with
storing the attributes.

Fixes: http://tracker.ceph.com/issues/18989
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit 55eec1c0a0e136736961423b7b6244d0f3693c1a)
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agorgw_file: fix reversed return value of getattr 14206/head
Gui Hecheng [Wed, 8 Mar 2017 08:23:11 +0000 (16:23 +0800)]
rgw_file: fix reversed return value of getattr

When ::getattr returns -ESTALE, rgw_getattr returns ESTALE,
which is a not expected postive.

Signed-off-by: Gui Hecheng <guihecheng@cmss.chinamobile.com>
(cherry picked from commit 39203cf872b8f4af86eb0e4a0f96dffd9cc92b41)

8 years agorgw_file: fix non-negative return code for open operation
Gui Hecheng [Mon, 20 Mar 2017 02:53:46 +0000 (10:53 +0800)]
rgw_file: fix non-negative return code for open operation

The nfs-ganesha expects a negative retcode for errors.

Signed-off-by: Gui Hecheng <guihecheng@cmss.chinamobile.com>
(cherry picked from commit b5f70ef7b066f9ff44770cc8a50ccadaa02f4691)

8 years agorgw_file: fix double unref on rgw_fh for rename
Gui Hecheng [Wed, 15 Mar 2017 07:01:05 +0000 (15:01 +0800)]
rgw_file: fix double unref on rgw_fh for rename

Skip unref after unlink to fix the problem.

Signed-off-by: Gui Hecheng <guihecheng@cmss.chinamobile.com>
(cherry picked from commit bff228734c73b536d2482e2e2fa4ad38b206ebff)

8 years agorgw: multipart part copy, fix regression 13219/head
Yehuda Sadeh [Fri, 30 Sep 2016 05:20:10 +0000 (22:20 -0700)]
rgw: multipart part copy, fix regression

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
(cherry picked from commit 66fbe9384703c004c01783eb664f55895d310439)

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agorgw: minor optimization
Yehuda Sadeh [Fri, 30 Sep 2016 00:44:08 +0000 (17:44 -0700)]
rgw: minor optimization

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
(cherry picked from commit 4919dc9987c6376d3d4e143702c26417449524c5)

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agorgw: rgw_obj_key use adjustment in multipart copy part
Yehuda Sadeh [Fri, 30 Sep 2016 00:43:00 +0000 (17:43 -0700)]
rgw: rgw_obj_key use adjustment in multipart copy part

This fixes a case where objects start with double underscore.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
(cherry picked from commit 29fece3545cc1df404a25eec46706b16f893a5df)

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agorgw: multipart copy-part handle versionId
Yehuda Sadeh [Fri, 30 Sep 2016 00:43:35 +0000 (17:43 -0700)]
rgw: multipart copy-part handle versionId

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
(cherry picked from commit 53521efffb1cb92e5f5ce992d4127bf9498d7c33)

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agorgw: multipart copy part minor parsing cleanup
Yehuda Sadeh [Thu, 29 Sep 2016 21:24:13 +0000 (14:24 -0700)]
rgw: multipart copy part minor parsing cleanup

no need for range.size()

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
(cherry picked from commit 6e9b824d5d4017239d58b4752ebc43bfad8f698d)

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agorgw: multipart copy, check for empty bucket, improve logging
Yehuda Sadeh [Thu, 29 Sep 2016 21:11:43 +0000 (14:11 -0700)]
rgw: multipart copy, check for empty bucket, improve logging

also reduce log level for non critical user errors.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
(cherry picked from commit 2bcb3d286b230ef917d5ba96c8276a942f544689)

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agorgw: multipart copy part, chunked read
Yehuda Sadeh [Thu, 29 Sep 2016 21:07:14 +0000 (14:07 -0700)]
rgw: multipart copy part, chunked read

Don't read the entire range from source object, read it in parts.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
(cherry picked from commit 4049e47a0cfc1eef6efd502590b68ba7234589d3)

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agorgw: doc: add multipart uploads copy part feature as supported
Javier M. Mellid [Tue, 26 Jul 2016 12:56:50 +0000 (14:56 +0200)]
rgw: doc: add multipart uploads copy part feature as supported

Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
(cherry picked from commit 8a7ebeee2ff3f10ceb23b7fa43e43c3c450efe22)

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agorgw: multipart uploads copy part support
Javier M. Mellid [Tue, 26 Jul 2016 12:53:44 +0000 (14:53 +0200)]
rgw: multipart uploads copy part support

Add multipart uploads copy part feature.

Fixes: http://tracker.ceph.com/issues/12790
Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
(cherry picked from commit 949480c2e9760855ed6a0501d364d5e766c8207d)

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agorgw: make sending Content-Length in 204 and 304 controllable 13503/head
Radoslaw Zarzynski [Thu, 16 Feb 2017 23:56:34 +0000 (00:56 +0100)]
rgw: make sending Content-Length in 204 and 304 controllable

This commit introduces a new configurable "rgw print prohibited
content length" to let operator decide whether RadosGW complies
to RFC 7230 (a part of the HTTP specification) or violates it
but follows the Swift's behavior.

Fixes: http://tracker.ceph.com/issues/16602
Signed-off-by: Radoslaw Zarzynski <rzarzynski@mirantis.com>
(cherry picked from commit d8e3e64ec97a3c222a56bb6f510e5e23d7858615)

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agorgw: clear old zone short ids on period update 14140/head
Casey Bodley [Thu, 9 Mar 2017 20:24:08 +0000 (15:24 -0500)]
rgw: clear old zone short ids on period update

the short ids of old, removed zones were being kept in the period to
guard against hash collisions with new zones

but for a hash collision to cause a wrong object to sync, that object
would have to be uploaded simultaneously to two different zones that had
the same short id

to avoid this, we just have to prevent the period from containing two
colliding zones at the same time - we don't have to remember old zone
short ids forever

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

8 years agoMerge pull request #13146 from dzafman/wip-18502-jewel-zafman
David Zafman [Fri, 24 Mar 2017 15:13:02 +0000 (08:13 -0700)]
Merge pull request #13146 from dzafman/wip-18502-jewel-zafman

jewel: osd: Scrub improvements and other fixes

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #14100 from smithfarm/wip-18781
Nathan Cutler [Thu, 23 Mar 2017 15:49:13 +0000 (16:49 +0100)]
Merge pull request #14100 from smithfarm/wip-18781

Manually merge PR#13143 which was mistakenly merged to jewel-next

Reviewed-by: Loic Dachary <ldachary@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
8 years agoMerge branch 'jewel-next' into jewel 14100/head
Nathan Cutler [Thu, 23 Mar 2017 08:46:53 +0000 (09:46 +0100)]
Merge branch 'jewel-next' into jewel

Branch "jewel-next" was merged to jewel on Dec 22 (5b402f8a7b), and then PR
https://github.com/ceph/ceph/pull/13143 merged to jewel-next much later (Feb
1st), and then jewel-next was never merged to jewel again before we tagged
v10.2.6.

This merge brings in a single commit, i.e. the one from
https://github.com/ceph/ceph/pull/13143

Reported-by: Ken Dreyer <kdreyer@redhat.com>
Signed-off-by: Nathan Cutler <ncutler@suse.com>
8 years agoMerge pull request #13952 from smithfarm/wip-fix-merge-error
Zack Cerza [Tue, 14 Mar 2017 15:19:28 +0000 (09:19 -0600)]
Merge pull request #13952 from smithfarm/wip-fix-merge-error

tests: fix merge error in rgw/singleton/all/radosgw-admin.yaml

8 years agorgw: hold a reference on data_sync_cr over run() 13886/head
Casey Bodley [Tue, 11 Oct 2016 19:21:42 +0000 (15:21 -0400)]
rgw: hold a reference on data_sync_cr over run()

run() will drop its reference to data_sync_cr, so we need to hold a
reference until we can reacquire the lock

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

8 years agorgw: clear data_sync_cr if RGWDataSyncControlCR fails
Casey Bodley [Tue, 11 Oct 2016 19:19:37 +0000 (15:19 -0400)]
rgw: clear data_sync_cr if RGWDataSyncControlCR fails

async notifications will still try to call wakeup() on RGWDataSyncControlCR
if it fails, leading to segfault

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

 Conflicts:
src/rgw/rgw_data_sync.cc: declaration of 'int r'

8 years agotests: fix merge error in rgw/singleton/all/radosgw-admin.yaml 13952/head
Nathan Cutler [Tue, 14 Mar 2017 00:26:23 +0000 (01:26 +0100)]
tests: fix merge error in rgw/singleton/all/radosgw-admin.yaml

Introduced by 94d5888c

Reported-by: Robin H. Johnson <robin.johnson@dreamhost.com>
Signed-off-by: Nathan Cutler <ncutler@suse.com>
8 years agorgw: RGWMetaSyncShardControlCR retries with backoff on all error codes 13867/head
Casey Bodley [Mon, 20 Feb 2017 21:00:01 +0000 (16:00 -0500)]
rgw: RGWMetaSyncShardControlCR retries with backoff on all error codes

RGWBackoffControlCR only treats EBUSY and EAGAIN as 'temporary' error
codes, with all other errors being fatal when exit_on_error is set

to RGWMetaSyncShardControlCR, a 'fatal' error means that no further sync
is possible on that shard until the gateway restarts

this changes RGWMetaSyncShardControlCR to set exit_on_error to false, so
that it will continue to retry with backoff no matter what error code it
gets

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

8 years agorgw_file: return of RGWFileHandle::FLAG_EXACT_MATCH 13858/head
Matt Benjamin [Thu, 23 Feb 2017 15:21:38 +0000 (10:21 -0500)]
rgw_file:  return of RGWFileHandle::FLAG_EXACT_MATCH

Allow callers of rgw_lookup() on objects attested in an
rgw_readdir() callback the ability to bypass exact match in
RGWLibFS::stat_leaf() case 2, but restore exact match enforcement
for general lookups.

This preserves required common_prefix namespace behavior, but
prevents clients from eerily permitting things like "cd sara0" via
partial name match on "sara01."

Fixes: http://tracker.ceph.com/issues/19059
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit 70ef7d45e0abf2661bd4e23161d4e70cf5178079)

8 years agorgw_file: invalid use of RGWFileHandle::FLAG_EXACT_MATCH
Matt Benjamin [Sun, 19 Feb 2017 22:43:17 +0000 (17:43 -0500)]
rgw_file: invalid use of RGWFileHandle::FLAG_EXACT_MATCH

The change which introduced this flag also caused it to be
given as the flags argument to RGWLibFS::stat_leaf() when called
from rgw_lookup().

This was incorrect:  in particular, when a directory is known only
as a common prefix of other objects, the AWS namespace mapping
convention requires lookup("foo") to match a non-materialized
instance of "foo/" (case 2 in RGWLibFS::stat_leaf's stat loop).

Fixes: http://tracker.ceph.com/issues/18992
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit e31e9eb980f958640150e8d7f17de1b9e5478b1e)

8 years agorgw_file: rgw_lookup: don't ref for "/" or ".."
Matt Benjamin [Wed, 22 Feb 2017 19:57:59 +0000 (14:57 -0500)]
rgw_file: rgw_lookup: don't ref for "/" or ".."

These refs won't be returned by nfs-ganesha, and are sufficiently
magical that other consumers should be persuaded to understand
their specialness.

Fixes: http://tracker.ceph.com/issues/19060
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit dea8d1ee373399a21851690a9753388b659b8ede)

8 years agorgw_file: avoid stranding invalid-name bucket handles in fhcache 13848/head
Matt Benjamin [Wed, 22 Feb 2017 15:24:29 +0000 (10:24 -0500)]
rgw_file: avoid stranding invalid-name bucket handles in fhcache

To avoid a string copy in the common mkdir path, handles for
proposed buckets currently are staged in the handle table, before
being rejected.  They need to be destaged, not just marked deleted
(because deleted objects are now assumed not to be linked, as of
beaeff059375b44188160dbde8a81dd4f4f8c6eb).

This triggered an unhandled Boost assert when deleting staged
handles, as current safe_link mode requires first removing from
the FHCache.

Fixes: http://tracker.ceph.com/issues/19036
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit 6cde812c92e5bba9f85fbf8486ebe69b55952370)

8 years agorgw: set dumpable flag after setuid post ff0e521 13844/head
Brad Hubbard [Mon, 27 Feb 2017 03:06:59 +0000 (13:06 +1000)]
rgw: set dumpable flag after setuid post ff0e521

ff0e521 resolved the issue for the other daemons but not for rgw since
it calls setuid (via civetweb) after the new code sets PR_SET_DUMPABLE.
Add another prctl call before wait_shutdown.

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

8 years ago10.2.6 v10.2.6
Jenkins Build Slave User [Tue, 7 Mar 2017 13:29:40 +0000 (13:29 +0000)]
10.2.6

8 years agorgw: fix swift cannot disable object versioning with empty X-Versions-Location 13823/head
Jing Wenjun [Wed, 8 Feb 2017 07:07:43 +0000 (15:07 +0800)]
rgw: fix swift cannot disable object versioning with empty X-Versions-Location

we should be able to disable object verioning by removing its X-Versions-Location
metadata header by sending an empty key value. this description can be found at
No.8 in http://docs.openstack.org/user-guide/cli-swift-set-object-versions.html.

Fixes: http://tracker.ceph.com/issues/18852
Signed-off-by: Jing Wenjun <jingwenjun@cmss.chinamobile.com>
(cherry picked from commit 17c5a0edd2227703cec867f0f588d4eae36dfe1c)

8 years agoosd: Increase priority for inactive PGs backfill 13232/head
Bartłomiej Święcki [Fri, 2 Dec 2016 15:54:46 +0000 (16:54 +0100)]
osd: Increase priority for inactive PGs backfill

This change does prioritize backfill of PGs which don't
have min_size active copies. Such PGs would cause IO stalls
for clients and would increase throttlers usage.

This change also fixes few subtlle out-of-bounds bugs.

Signed-off-by: Bartłomiej Święcki <bartlomiej.swiecki@corp.ovh.com>
(cherry picked from commit 6a76adcdb1f92c136841d960aa7cd4e5b94addec)

Conflicts:
PendingReleaseNotes (removed version number, merged conflicts)

8 years agorgw_file: fix RGWLibFS::setattr for directory objects 13778/head
Matt Benjamin [Fri, 3 Feb 2017 18:44:45 +0000 (13:44 -0500)]
rgw_file:  fix RGWLibFS::setattr for directory objects

Fixes: http://tracker.ceph.com/issues/18808
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit 4ad5a9226852d6d564baf2e63278ed6c4c185ecb)

8 years agoMerge pull request #13749 from zmc/wip-openstack-volumes-jewel
Zack Cerza [Thu, 2 Mar 2017 21:00:13 +0000 (14:00 -0700)]
Merge pull request #13749 from zmc/wip-openstack-volumes-jewel

qa/suites/upgrade/hammer-x: Add some volumes

8 years agoqa/suites/upgrade/hammer-x: Add some volumes 13749/head
Zack Cerza [Thu, 2 Mar 2017 17:57:54 +0000 (10:57 -0700)]
qa/suites/upgrade/hammer-x: Add some volumes

Signed-off-by: Zack Cerza <zack@redhat.com>
8 years agoMerge pull request #13708 from zmc/wip-openstack-volumes-jewel
Zack Cerza [Wed, 1 Mar 2017 23:35:37 +0000 (16:35 -0700)]
Merge pull request #13708 from zmc/wip-openstack-volumes-jewel

qa/suites/ceph-deploy: Drop OpenStack volume count

8 years agoqa/suites/ceph-deploy: Drop OpenStack volume count 13708/head
Zack Cerza [Tue, 28 Feb 2017 20:07:15 +0000 (13:07 -0700)]
qa/suites/ceph-deploy: Drop OpenStack volume count

Looks like we only need two per node, since there is only one OSD per
node, and ceph-deploy wants two disks per OSD to account for the
journal.

Signed-off-by: Zack Cerza <zack@redhat.com>
(cherry picked from commit 87072e277c9ef259c9ee2ae1f761e252aa216713)

8 years agoMerge pull request #13710 from tmuthamizhan/wip-mv-centos-version
Yuri Weinstein [Wed, 1 Mar 2017 15:26:30 +0000 (07:26 -0800)]
Merge pull request #13710 from tmuthamizhan/wip-mv-centos-version

qa: replace centos 7.2 with centos 7.3

Reviewed-by: Yuri Weinstein <yweins@redhat.com>
8 years agorgw_file: ensure valid_s3_object_name for directories, too 13717/head
Matt Benjamin [Thu, 23 Feb 2017 21:02:07 +0000 (16:02 -0500)]
rgw_file: ensure valid_s3_object_name for directories, too

The logic in RGWLibFS::mkdir() validated bucket names, but not
object names (though RGWLibFS::create() did so).

The negative side effect of this was not creating illegal objects
(we won't), but in a) failing with -EIO and b) more importantly,
not removing up the proposed object from FHCache, which produced a
boost assert when recycled.

Fixes: http://tracker.ceph.com/issues/19066
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit eb1cd3b30c0504385f05bf2d2dd5e2251b7efed7)

8 years agoMerge pull request #13705 from ceph/wip_remove_dumpling_jewel
Yuri Weinstein [Wed, 1 Mar 2017 00:05:32 +0000 (16:05 -0800)]
Merge pull request #13705 from ceph/wip_remove_dumpling_jewel

qa: Removed dumplin test 13234.yaml as not needed anymore

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
8 years agoqa: replace centos 7.2 with centos 7.3 13710/head
Tamil Muthamizhan [Wed, 1 Mar 2017 00:02:57 +0000 (16:02 -0800)]
qa: replace centos 7.2 with centos 7.3

s/centos_7.2/centos_7.3

Signed-off-by: Tamil Muthamizhan <tmuthami@redhat.com>
8 years agoRemoved dumplin test 13234.yaml as not needed anymore 13705/head
Yuri Weinstein [Tue, 28 Feb 2017 23:17:54 +0000 (15:17 -0800)]
Removed dumplin test 13234.yaml as not needed anymore

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
8 years agoMerge pull request #13674 from zmc/wip-openstack-volumes-jewel
Zack Cerza [Mon, 27 Feb 2017 19:23:18 +0000 (12:23 -0700)]
Merge pull request #13674 from zmc/wip-openstack-volumes-jewel

qa/suites/{ceph-ansible,rest}: OpenStack volumes

8 years agoqa/suites/rest: Openstack volumes 13674/head
Zack Cerza [Mon, 27 Feb 2017 16:14:41 +0000 (09:14 -0700)]
qa/suites/rest: Openstack volumes

Signed-off-by: Zack Cerza <zack@redhat.com>
(cherry picked from commit 99d942145f4206c00aca30c0bb74f0edc4bac798)

8 years agoqa/suites/ceph-ansible: Openstack volumes
Zack Cerza [Mon, 27 Feb 2017 16:06:26 +0000 (09:06 -0700)]
qa/suites/ceph-ansible: Openstack volumes

Signed-off-by: Zack Cerza <zack@redhat.com>
(cherry picked from commit 964b983bdbd412311bce56184d12d1b6d43c7f28)

8 years agoMerge pull request #13642 from zmc/wip-fs-openstack-jewel
Zack Cerza [Sat, 25 Feb 2017 00:22:17 +0000 (17:22 -0700)]
Merge pull request #13642 from zmc/wip-fs-openstack-jewel

qa/suites/fs: Add openstack volume configuration

8 years agoqa/suites/fs: Add openstack volume configuration 13642/head
Zack Cerza [Fri, 24 Feb 2017 22:25:19 +0000 (15:25 -0700)]
qa/suites/fs: Add openstack volume configuration

Signed-off-by: Zack Cerza <zack@redhat.com>
(cherry picked from commit b076d89a3f1fbad7d477913812b2e17529abeacf)

8 years agoMerge pull request #13639 from zmc/wip-openstack-volumes-jewel
Zack Cerza [Fri, 24 Feb 2017 21:44:10 +0000 (14:44 -0700)]
Merge pull request #13639 from zmc/wip-openstack-volumes-jewel

qa/suites/{knfs,hadoop,samba}: OpenStack volume configuration

8 years agoMerge pull request #13636 from zmc/wip-kcephfs-openstack-jewel
Zack Cerza [Fri, 24 Feb 2017 21:43:40 +0000 (14:43 -0700)]
Merge pull request #13636 from zmc/wip-kcephfs-openstack-jewel

qa/suites/kcephfs: Openstack volume configuration

8 years agoqa/suites/samba: Openstack volume configuration 13639/head
Zack Cerza [Fri, 24 Feb 2017 20:46:54 +0000 (13:46 -0700)]
qa/suites/samba: Openstack volume configuration

Signed-off-by: Zack Cerza <zack@redhat.com>
(cherry picked from commit e0296d706422ea4dc01d84f8786f6f7104c3d996)

8 years agoqa/suites/hadoop: Openstack volume configuration
Zack Cerza [Fri, 24 Feb 2017 20:45:18 +0000 (13:45 -0700)]
qa/suites/hadoop: Openstack volume configuration

Signed-off-by: Zack Cerza <zack@redhat.com>
(cherry picked from commit 3fef0a49da2ccfdceba7b98e9096be8305da1111)

8 years agoqa/suites/knfs: Add openstack volume configuration
Zack Cerza [Fri, 24 Feb 2017 20:44:33 +0000 (13:44 -0700)]
qa/suites/knfs: Add openstack volume configuration

Signed-off-by: Zack Cerza <zack@redhat.com>
(cherry picked from commit 62c6fd3371adf0f420c12d9c7e2b3a2a0c69256b)

8 years agoqa/suites/kcephfs: Openstack volume configuration 13636/head
Zack Cerza [Fri, 24 Feb 2017 20:37:23 +0000 (13:37 -0700)]
qa/suites/kcephfs: Openstack volume configuration

(cherry picked from commit ec6fb28eaf8e2db327e4afc115879a40c7664e07)
Signed-off-by: Zack Cerza <zack@redhat.com>
8 years agoMerge pull request #13632 from zmc/wip-krbd-openstack-jewel
Zack Cerza [Fri, 24 Feb 2017 19:15:41 +0000 (12:15 -0700)]
Merge pull request #13632 from zmc/wip-krbd-openstack-jewel

qa/suites/krbd: Add openstack volume configuration

8 years agoMerge pull request #13612 from ceph/wip-rgw-openstack-jewel
Zack Cerza [Fri, 24 Feb 2017 19:15:22 +0000 (12:15 -0700)]
Merge pull request #13612 from ceph/wip-rgw-openstack-jewel

qa/suites/rgw: Add openstack volume configuration

8 years agoqa/suites/krbd: Add openstack volume configuration 13632/head
Zack Cerza [Fri, 24 Feb 2017 18:17:45 +0000 (11:17 -0700)]
qa/suites/krbd: Add openstack volume configuration

Signed-off-by: Zack Cerza <zack@redhat.com>
(cherry picked from commit 201b4d0d1e92bf95ac6a8f2951b664763030f12d)

8 years agoqa/suites/rgw: Add openstack volume configuration 13612/head
Zack Cerza [Thu, 23 Feb 2017 17:14:05 +0000 (10:14 -0700)]
qa/suites/rgw: Add openstack volume configuration

Without this, OSDs will fail to create on instances whose root fs isn't
xfs.

(cherry picked from commit 8af4c35f9577ef5a88307ea5cbbe2561a473926c)
Signed-off-by: Zack Cerza <zack@redhat.com>
8 years agoMerge pull request #13184 from smithfarm/wip-18720-jewel
Nathan Cutler [Thu, 23 Feb 2017 15:32:20 +0000 (16:32 +0100)]
Merge pull request #13184 from smithfarm/wip-18720-jewel

jewel: build/ops: systemd restarts Ceph Mon to quickly after failing to start