]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Yan, Zheng [Mon, 25 Apr 2016 07:31:27 +0000 (15:31 +0800)]
client: using hash value to compose dentry offset
If MDS sorts dentries in dirfrag in hash order, we use hash value to
compose dentry offset. dentry offset is:
(0xff << 52) | ((24 bits hash) << 28) |
(the nth entry hash hash collision)
This offset is stable across directory fragmentation.
Signed-off-by: Yan, Zheng <zyan@redhat.com>
(cherry picked from commit
680766ec131b95271e320f54dfe6d69ea8d4fbb3 )
Signed-off-by: Greg Farnum <gfarnum@redhat.com
Yan, Zheng [Mon, 25 Apr 2016 02:50:17 +0000 (10:50 +0800)]
client: record 'offset' for each entry of dir_result_t::buffer
This is preparation for using hash value as dentry 'offset'
Signed-off-by: Yan, Zheng <zyan@redhat.com>
(cherry picked from commit
bd6546e5e8bfb4ef8927807492d63d5285534618 )
Signed-off-by: Greg Farnum <gfarnum@redhat.com
Yan, Zheng [Mon, 9 May 2016 03:51:36 +0000 (11:51 +0800)]
client: fix cached readdir after seekdir
Client::seekdir doesn't reset dirp->at_cache_name for a forward seek
within same frag. So the dentry with name == at_cache_name may not be
the one prior to the readdir postion.
Signed-off-by: Yan, Zheng <zyan@redhat.com>
(cherry picked from commit
0e32115bae2f1ac2c59b57852976b0de5587abac )
Signed-off-by: Greg Farnum <gfarnum@redhat.com
Yan, Zheng [Thu, 21 Apr 2016 09:31:10 +0000 (17:31 +0800)]
mds: define end/complete in readdir reply as single u16 flags
so that we can introduce new flags for readdir reply.
Signed-off-by: Yan, Zheng <zyan@redhat.com>
(cherry picked from commit
92cfbdf526d1030891da366299b635e589dd5f8e )
Signed-off-by: Greg Farnum <gfarnum@redhat.com
Yan, Zheng [Sat, 23 Apr 2016 08:03:48 +0000 (16:03 +0800)]
mds: sort dentries in CDir in hash order
This gives us stable ordering of dentries. (Previously ordering of
dentries changes after directory gets fragmented)
Signed-off-by: Yan, Zheng <zyan@redhat.com>
(cherry picked from commit
f483224a0bc70b9eb5f62cd6cbb8b97df5b65953 )
Signed-off-by: Greg Farnum <gfarnum@redhat.com
Yan, Zheng [Fri, 22 Apr 2016 01:43:54 +0000 (09:43 +0800)]
client: save readdir result into dir_result_t directly
Current code saves the readdir result into MedaRequest, then updates
dir_result_t according to MetaRequest. I can't see any reason why
we need to do this.
Signed-off-by: Yan, Zheng <zyan@redhat.com>
(cherry picked from commit
db5d60d1b8d01afd43da09a063f00aa6ab312903 )
Signed-off-by: Greg Farnum <gfarnum@redhat.com
Yan, Zheng [Fri, 22 Apr 2016 01:31:00 +0000 (09:31 +0800)]
client: don't allocate dir_result_t::buffer dynamically
Signed-off-by: Yan, Zheng <zyan@redhat.com>
(cherry picked from commit
c41ceb9f1425432295a52965de8d4a23b15fe5e5 )
Signed-off-by: Greg Farnum <gfarnum@redhat.com
Yan, Zheng [Thu, 21 Apr 2016 12:53:55 +0000 (20:53 +0800)]
client: simplify 'offset in frag'
don't distinguish leftmost frag from other frags. always use 2 as
first entry's offset.
Signed-off-by: Yan, Zheng <zyan@redhat.com>
(cherry picked from commit
6572c2a24ea2abec4c7eecef92a292c2cc72c762 )
Signed-off-by: Greg Farnum <gfarnum@redhat.com
Jason Dillaman [Sun, 12 Jun 2016 12:16:35 +0000 (08:16 -0400)]
Merge pull request #9553 from Abhishekvrshny/wip-16038-jewel
jewel: pybind: rbd API should default features parameter to None
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Sun, 12 Jun 2016 12:13:16 +0000 (08:13 -0400)]
Merge pull request #9552 from Abhishekvrshny/wip-15981-jewel
jewel: qa: dynamic_features.sh races with image deletion
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Sun, 12 Jun 2016 12:08:39 +0000 (08:08 -0400)]
Merge pull request #9629 from dillaman/wip-16231
jewel: rbd-mirror: fix deletion propagation edge cases
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Sun, 12 Jun 2016 12:08:23 +0000 (08:08 -0400)]
Merge pull request #9630 from dillaman/wip-16233
jewel: rbd-mirror: do not propagate deletions when pool unavailable
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Sun, 12 Jun 2016 12:07:42 +0000 (08:07 -0400)]
Merge pull request #9628 from dillaman/wip-16224
jewel: rbd-mirror: fix journal shut down ordering
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Sun, 12 Jun 2016 12:07:10 +0000 (08:07 -0400)]
Merge pull request #9627 from dillaman/wip-16217
jewel: rbd-mirror: refresh image after creating sync point
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Sage Weil [Sat, 11 Jun 2016 01:48:26 +0000 (21:48 -0400)]
Merge pull request #9579 from Abhishekvrshny/wip-16006-jewel
jewel: BackoffThrottle spins unnecessarily with very small backoff while the throttle is full
Reviewed-by: Sage Weil <sage@redhat.com>
Sage Weil [Fri, 10 Jun 2016 21:34:19 +0000 (17:34 -0400)]
Merge pull request #9638 from ceph/wip-16211-jewel
Jewel: remove reliance on FLAG_OMAP for reads
Reviewed-by: Sage Weil <sage@redhat.com>
Jason Dillaman [Fri, 10 Jun 2016 12:15:19 +0000 (08:15 -0400)]
rbd-mirror: do not propagate deletions when pool unavailable
Fixes: http://tracker.ceph.com/issues/16229
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
d321634414fa4b90c66474557ec990dfc935ae29 )
Jason Dillaman [Fri, 10 Jun 2016 04:12:06 +0000 (00:12 -0400)]
rbd-mirror: image deleter properly handles multiple snapshots
Fixes: http://tracker.ceph.com/issues/16226
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
d72a8cb67fbdc7361f8f9e265c659ddb96dc0f74 )
Jason Dillaman [Fri, 10 Jun 2016 02:32:33 +0000 (22:32 -0400)]
rbd-mirror: propagate deletions even if image replayer is stopped
If an image deletion which causes the replayer to stop (due to an error)
before the deletion is detected, the deletion should still occur.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
a0c526a23783fe543737f6445a2d9438cc73b137 )
Jason Dillaman [Fri, 10 Jun 2016 01:14:27 +0000 (21:14 -0400)]
qa/workunits/rbd: improve deletion propagation test case
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
de15b198cd7b5e94016605c8016a5cf38c07c6f6 )
Jason Dillaman [Wed, 8 Jun 2016 14:12:04 +0000 (10:12 -0400)]
librbd: quickly check for duplicate snap name upon create
During journal replay, quickly check for a duplicate snap name
before allocating a snapshot sequence from the OSDs and
reverting due to the duplicate name.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
8374d45c7644666103f88c410a2b1b781f3a0cb8 )
Jason Dillaman [Tue, 7 Jun 2016 18:45:16 +0000 (14:45 -0400)]
rbd-mirror: stop external replayer before closing remote journaler
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
88bd3002082184c045bb82547929b30da1526cfb )
Jason Dillaman [Tue, 7 Jun 2016 16:42:52 +0000 (12:42 -0400)]
librbd: stop journal recorder before starting external replay
Fixes: http://tracker.ceph.com/issues/16165
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
5aa6eb2782bdb5cde6a050a5f7a4e683800414c0 )
Jason Dillaman [Wed, 8 Jun 2016 16:49:04 +0000 (12:49 -0400)]
rbd-mirror: refresh image after creating sync point snapshot
Fixes: http://tracker.ceph.com/issues/16196
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
c9a3e3be7ddc31992167d55de12bbe6849447b43 )
Jason Dillaman [Wed, 8 Jun 2016 16:03:33 +0000 (12:03 -0400)]
rbd-mirror: consistently use dout/derr for debug logging
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
03f5e4a917b3c18f8ccdaa5ce676ed9731dd2a8f )
Jason Dillaman [Fri, 10 Jun 2016 16:32:21 +0000 (12:32 -0400)]
Merge pull request #9612 from dillaman/wip-16208
jewel: rbd-mirror: support bootstrap canceling
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Fri, 10 Jun 2016 16:32:02 +0000 (12:32 -0400)]
Merge pull request #9610 from dillaman/wip-16209
jewel: librbd: prevent error messages when journal externally disabled
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Fri, 10 Jun 2016 16:19:47 +0000 (12:19 -0400)]
Merge pull request #9611 from dillaman/wip-16210
jewel: librbd: journal IO error results in failed assertion in AioCompletion
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Fri, 10 Jun 2016 16:16:49 +0000 (12:16 -0400)]
Merge pull request #9580 from Abhishekvrshny/wip-15996-jewel
jewel: librbd: reuse ImageCtx::finisher and SafeTimer for lots of images case
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Fri, 10 Jun 2016 16:15:51 +0000 (12:15 -0400)]
Merge pull request #9609 from dillaman/wip-16216
jewel: librbd: refresh image if needed in mirror functions
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Fri, 10 Jun 2016 16:15:32 +0000 (12:15 -0400)]
Merge pull request #9608 from dillaman/wip-16189
jewel: cls_rbd: mirror image status summary should read full directory
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Fri, 10 Jun 2016 16:15:08 +0000 (12:15 -0400)]
Merge pull request #9556 from Abhishekvrshny/wip-16162-jewel
jewel: ceph_test_librbd_fsx crashes during journal replay shut down
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Fri, 10 Jun 2016 16:14:49 +0000 (12:14 -0400)]
Merge pull request #9554 from Abhishekvrshny/wip-16084-jewel
jewel: librbd: validate image metadata configuration overrides
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Fri, 10 Jun 2016 16:13:06 +0000 (12:13 -0400)]
Merge pull request #9555 from Abhishekvrshny/wip-16147-jewel
jewel: Object Map is showing as invalid, even when Object Map is disabled for that Image.
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Fri, 10 Jun 2016 16:12:47 +0000 (12:12 -0400)]
Merge pull request #9550 from Abhishekvrshny/wip-15969-jewel
jewel: Initial python APIs to support mirroring
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Fri, 10 Jun 2016 16:12:37 +0000 (12:12 -0400)]
Merge pull request #9548 from Abhishekvrshny/wip-15963-jewel
jewel: Disabling journaling feature results in "Transport endpoint is not connected" error
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Loic Dachary [Thu, 9 Jun 2016 22:55:47 +0000 (00:55 +0200)]
Merge pull request #9424 from SUSE/wip-16107-jewel
jewel: ceph gid mismatch on upgrade from hammer with pre-existing ceph user (SUSE)
Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Loic Dachary <ldachary@redhat.com>
Loic Dachary [Thu, 9 Jun 2016 22:54:52 +0000 (00:54 +0200)]
Merge pull request #8802 from SUSE/wip-15606-jewel
jewel: ceph-{mds,mon,osd,radosgw} systemd unit files need wants=time-sync.target
Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Loic Dachary <ldachary@redhat.com>
Samuel Just [Thu, 9 Jun 2016 22:44:13 +0000 (15:44 -0700)]
Merge pull request #9320 from SUSE/wip-16017-jewel
jewel: ceph: cli: exception when pool name has non-ascii characters
Reviewed-by: Samuel Just <sjust@redhat.com>
Samuel Just [Thu, 9 Jun 2016 22:43:48 +0000 (15:43 -0700)]
Merge pull request #9270 from Abhishekvrshny/wip-15852-jewel
jewel: mon/Monitor: memory leak on Monitor::handle_ping()
Reviewed-by: Samuel Just <sjust@redhat.com>
Samuel Just [Thu, 9 Jun 2016 22:43:04 +0000 (15:43 -0700)]
Merge pull request #9237 from SUSE/wip-15961-jewel
jewel: ceph-osd valgrind invalid reads/writes
Reviewed-by: Samuel Just <sjust@redhat.com>
Samuel Just [Thu, 9 Jun 2016 22:42:32 +0000 (15:42 -0700)]
Merge pull request #9103 from Abhishekvrshny/wip-15797-jewel
jewel: deadlock in OSD::_committed_osd_maps
Reviewed-by: Samuel Just <sjust@redhat.com>
Samuel Just [Thu, 9 Jun 2016 22:41:52 +0000 (15:41 -0700)]
Merge pull request #9101 from Abhishekvrshny/wip-15799-jewel
jewel: osd boot race with noup being set
Reviewed-by: Samuel Just <sjust@redhat.com>
Samuel Just [Thu, 9 Jun 2016 22:40:43 +0000 (15:40 -0700)]
Merge pull request #9104 from Abhishekvrshny/wip-15795-jewel
jewel: LibRadosWatchNotifyPPTests/LibRadosWatchNotifyPP.WatchNotify2Timeout/1 segv
Reviewed-by: Samuel Just <sjust@redhat.com>
Samuel Just [Thu, 9 Jun 2016 22:37:43 +0000 (15:37 -0700)]
Merge pull request #9427 from SUSE/wip-16104-jewel
jewel: ceph-disk: workaround gperftool hang
Reviewed-by: Loic Dachary <ldachary@redhat.com>
Sage Weil [Thu, 9 Jun 2016 18:55:31 +0000 (14:55 -0400)]
Merge pull request #9614 from ceph/wip-16113-jewel
osd: hobject_t::get_max() vs is_max() discrepancy
Reviewed-by: Sage Weil <sage@redhat.com>
Mykola Golub [Wed, 4 May 2016 12:30:05 +0000 (15:30 +0300)]
rbd-mirror: don't return split-brain error if we still in MIRROR_PEER_STATE_SYNCING
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
3ac620c5d66d8516e68264fcdb5e97b0e803d0ec )
Mykola Golub [Tue, 3 May 2016 09:48:06 +0000 (12:48 +0300)]
rbd-mirror: refactor split-brain detection code
to make it more readable and extendable.
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
039cd2d2e3bb6a9c5042c125d2c67ec9adc02c47 )
Mykola Golub [Tue, 31 May 2016 12:00:30 +0000 (15:00 +0300)]
rbd-mirror: support bootstrap canceling
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
21f895f48498e518c3675a9e851559f4d071f6dd )
Mykola Golub [Mon, 30 May 2016 13:24:24 +0000 (16:24 +0300)]
rbd-mirror: return ECANCELED when ImageReplayer start is canceled
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
f581dbcb2eca108ce9440629b8f00f3229c07b95 )
Jason Dillaman [Tue, 7 Jun 2016 05:01:09 +0000 (01:01 -0400)]
librbd: flush journal commit positions before starting op
Ensure all IO has been properly flushed and committed to the
journal before starting an op that could affect the IO path.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
636129653c7cac9665d0c423f6aafad5fd0c480a )
Jason Dillaman [Tue, 7 Jun 2016 04:11:34 +0000 (00:11 -0400)]
librbd: leaked AioCompletion if IO issued after image shut down
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
d3d4e068396e01c58832e0ea1224ca34bafb808e )
Jason Dillaman [Mon, 6 Jun 2016 23:00:47 +0000 (19:00 -0400)]
librbd: resize and snap create can hang on journal replay failure
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
1032f19b3c9d9c7916669d04af909131574b3cab )
Jason Dillaman [Mon, 6 Jun 2016 18:54:23 +0000 (14:54 -0400)]
librbd: missing journal state for flushing/restarting replay
Fixes: http://tracker.ceph.com/issues/16077
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
a7f5bc181c9cd677d39f95ad78134e0f85c22acb )
Jason Dillaman [Fri, 13 May 2016 01:22:56 +0000 (21:22 -0400)]
librbd: track IO in the order issued
Fixes: http://tracker.ceph.com/issues/15034
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
eb8dda5296eb5c19aa27e96d6e92eaa0c352cb62 )
Jason Dillaman [Thu, 12 May 2016 19:15:04 +0000 (15:15 -0400)]
librbd: AioCompletion should retrieve CephContext from ImageCtx
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
133b1ffb21c982003c7aa9dafd585062f9b2eb51 )
Hector Martin [Wed, 25 May 2016 11:41:40 +0000 (20:41 +0900)]
librbd: only mark async completion as done after callback
This change in behavior was introduced in
fde9f78 .
Signed-off-by: Hector Martin <marcan@marcan.st>
(cherry picked from commit
77f7c1cf829e5417eb356ebf3bf1fbc8ff7a25a5 )
Jason Dillaman [Mon, 9 May 2016 22:17:49 +0000 (18:17 -0400)]
librbd: Journal no longer requires AioCompletion for IO events
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
82587a31f1d8ba1765f164391796753cf97a1878 )
Jason Dillaman [Mon, 9 May 2016 21:59:09 +0000 (17:59 -0400)]
librbd: bubble journal error up via existing AioObjectRequests
The journal cannot directly fail the AioCompletion because it
might have one-or-more outstanding requests associated with
it.
Fixes: http://tracker.ceph.com/issues/15791
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
79c934742fb15c803780519b36070408599a74c5 )
Jason Dillaman [Tue, 7 Jun 2016 02:34:30 +0000 (22:34 -0400)]
librbd: potential duplicate snap removal can result in crash
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
276fed6b7078158c2cd04fba14a11531c27898e0 )
Jason Dillaman [Thu, 2 Jun 2016 04:43:53 +0000 (00:43 -0400)]
ObjectCacher: do not merge uncommitted journal bhs
Avoid the possibility of an overwrite callback for regions
that were never associated with a journal write.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
c6060ade16205337de3941a10d05e234b738fa07 )
Zhiqiang Wang [Wed, 24 Feb 2016 13:54:34 +0000 (21:54 +0800)]
ObjectCacher: don't loop the extents of OSDRead in map_read
Looping the extents of OSDRead is done in _readx. The looping in
map_read is not needed.
Signed-off-by: Zhiqiang Wang <zhiqiang@xsky.com>
(cherry picked from commit
fae912c3856cab6d03183411eecab90c6e6732d2 )
Zhiqiang Wang [Wed, 24 Feb 2016 13:49:56 +0000 (21:49 +0800)]
ObjectCacher: fix the bytes_written in writex
The BufferHead returned after map_write may include other dirty data to
the left and/or right. The actual length of data been written is in the
ObjectExtent.
Signed-off-by: Zhiqiang Wang <zhiqiang@xsky.com>
(cherry picked from commit
ca6f1681e4baf61682e258c5761536d67bf6bdb8 )
Zhiqiang Wang [Wed, 24 Feb 2016 13:45:45 +0000 (21:45 +0800)]
osdc: don't loop the extents of OSDWrite in map_write
We are looping all the extents of the OSDWrite in writex. The looping in
map_write is not needed. And if there are same object in these
extents,they will be mapped multiple times.
Signed-off-by: Zhiqiang Wang <zhiqiang@xsky.com>
(cherry picked from commit
322f1059670898762a890a01af6d3b0dd3ccf826 )
Jason Dillaman [Thu, 2 Jun 2016 04:42:30 +0000 (00:42 -0400)]
librbd: notify image feature update before releasing lock
If a client is waiting for the lock, ensure it sees the latest
version of the image features.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
f601ea835bb78554ac767ccb11789df960765bf9 )
Jason Dillaman [Thu, 2 Jun 2016 03:19:20 +0000 (23:19 -0400)]
librbd: refresh image after acquiring exclusive lock
It's possible that the object map or journaling features have
been disabled while the lock was not owned.
Fixes: http://tracker.ceph.com/issues/16114
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
03c54f52d15d6283c630bac6f75427e6829f7d0a )
Jon Bernard [Thu, 2 Jun 2016 01:01:30 +0000 (21:01 -0400)]
librbd: refresh image if needed in mirror functions
Fixes: http://tracker.ceph.com/issues/16096
Signed-off-by: Jon Bernard <jbernard@tuxion.com>
(cherry picked from commit
a355c8f6d9e792517a8d0e096a99a64474369cfc )
Jason Dillaman [Tue, 7 Jun 2016 13:36:02 +0000 (09:36 -0400)]
cls_rbd: mirror image status summary should read full directory
Previously only retrieved the status for the first 64 images in
the rbd_mirroring directory.
Fixes: http://tracker.ceph.com/issues/16178
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
61f86e7ec14233ea0dee5b3370595ce050ee28c3 )
Samuel Just [Thu, 9 Jun 2016 17:36:44 +0000 (10:36 -0700)]
Revert "osd/ReplicatedPG: for copy_get get omap, firstly check ob whether has omap."
This reverts commit
771c869651132013054599f3decfc1017092a25f .
Samuel Just [Thu, 9 Jun 2016 17:36:39 +0000 (10:36 -0700)]
Revert "osd/ReplicatedPG: For omap read ops, it should check object wether has omap"
This reverts commit
98caba1d0b4dd334748e3bcaf1bfb3f79f75eb65 .
Samuel Just [Thu, 9 Jun 2016 17:36:31 +0000 (10:36 -0700)]
Revert "osd/ReplicatedPG: When do omapclear, it should check object whether is omap."
This reverts commit
aeb8141c29cdd337961430bbf3e93a79e3e1bcd3 .
Conflicts:
src/osd/ReplicatedPG.cc
Nathan Cutler [Wed, 8 Jun 2016 10:00:31 +0000 (12:00 +0200)]
Merge pull request #8938 from SUSE/wip-15739-jewel
jewel: ceph.spec.in: drop support for RHEL<7 and SUSE<1210 in jewel and above
Reviewed-by: Boris Ranto <branto@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Sage Weil [Fri, 6 May 2016 13:09:43 +0000 (09:09 -0400)]
osdc/Objecter: upper bound watch_check result
This way we always return a safe upper bound on the amount of time
since we did a check. Among other things, this prevents us from
returning a value of 0, which is confusing.
Fixes: http://tracker.ceph.com/issues/15760
Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit
2e2ce365866a7569b55aff338a82c132aa927089 )
Xinze Chi [Wed, 4 May 2016 01:49:40 +0000 (09:49 +0800)]
OSD: fix deadlock in OSD::_committed_osd_maps
Fixes: http://tracker.ceph.com/issues/15701
Signed-off-by: Xinze Chi <xinze@xsky.com>
(cherry picked from commit
4fbf3891aab16347d02782f7c1c0400f9e0896af )
Sage Weil [Tue, 3 May 2016 03:28:18 +0000 (23:28 -0400)]
osd: handle boot racing with NOUP set
This is a follow-on to
7139a232d26beef441ffbc13bc087baab3505ea8 ,
which handled the NOUP set + clear case when the OSD found out
about the flag being cleared. However, it's possible that the
flag will get cleared but the OSD won't get a map update (because
it hasn't subscribed and is not doing any work).
This means that it is *more* likely than before that we will
restart the boot process even though the OSD did successfully
mark us up. However, as before, it is unavoidable because there
is no notification of whether our boot request succeeds or not.
And it is still mostly harmless (an extra mark down + up cycle).
Fixes: http://tracker.ceph.com/issues/15678
Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit
11e4242fbdb2f2f6f654d4cb3a7c95d5b38a88c2 )
Haomai Wang [Sun, 28 Feb 2016 15:35:17 +0000 (23:35 +0800)]
TaskFinisher: use singleton SafeTimer and Finisher
Fix #13938
Signed-off-by: Haomai Wang <haomai@xsky.com>
(cherry picked from commit
dc6d6ce8b29de51b69242e569517f69acfe226f4 )
Samuel Just [Wed, 18 May 2016 19:09:10 +0000 (12:09 -0700)]
BackoffThrottle: wait() if past max
Otherwise, we risk spinning on wait_for() with a small
delay.
Fixes: http://tracker.ceph.com/issues/15953
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit
6f835726a7df5b29a96849fc1362186fd2116d9b )
Samuel Just [Wed, 18 May 2016 18:49:19 +0000 (11:49 -0700)]
BackoffThrottle: use wait_for instead of wait_until
On some platforms, wait_until won't surrender the lock
with a negative argument.
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit
846808ff3f3837b1772f293ae71dba5eda609cc4 )
Jason Dillaman [Thu, 2 Jun 2016 14:41:18 +0000 (10:41 -0400)]
test/rbd: fsx needs to shut down the journal
Fixes: http://tracker.ceph.com/issues/16123
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
d10ffaafbd2a5831154757b848ed8504dad99069 )
xinxin shu [Thu, 2 Jun 2016 06:13:09 +0000 (14:13 +0800)]
remove invalid objectmap flag when objectmap is disabled
Fixes: http://tracker.ceph.com/issues/16076
Signed-off-by: xinxin shu <shuxinxin@chinac.com>
(cherry picked from commit
b2d475686ee7617bb2023d753941e3d6952f0878 )
zhuangzeqiang [Sat, 7 Oct 2017 08:52:07 +0000 (16:52 +0800)]
rbd: check value of config override when setting image-meta
Fixes: http://tracker.ceph.com/issues/15522
Signed-off-by: zhuangzeqiang <zhuang.zeqiang@h3c.com>
(cherry picked from commit
4538f8152d0e73bdefc09874113c87467bdda622 )
Mykola Golub [Mon, 23 May 2016 06:18:34 +0000 (09:18 +0300)]
pybind/rbd: create/clone/copy: default to None for features param
If None is specified don't set the features so that the defaults is
used.
Fixes: http://tracker.ceph.com/issues/15982
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
b8b3a9757f7d517210a91f2893b0961b6b35afab )
Mykola Golub [Mon, 23 May 2016 06:16:38 +0000 (09:16 +0300)]
librbd: clone: default to parent features
Fixes: http://tracker.ceph.com/issues/15982
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
d305eaad8d57a6f64e6d80eebcd0839a65c9a668 )
Mykola Golub [Thu, 12 May 2016 06:15:53 +0000 (09:15 +0300)]
qa: dynamic_features.sh: return error only if it failed on alive QEMU
Fixes: #15500
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
8a71a79d24f2e1f999a5fc0a4154a10401d5a261 )
Mykola Golub [Wed, 11 May 2016 11:33:00 +0000 (14:33 +0300)]
test: initial python APIs to support mirroring
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
bfad0ca33b9d65dcec65bc1a18596d35fb3098f3 )
Mykola Golub [Wed, 11 May 2016 11:29:17 +0000 (14:29 +0300)]
rbd: initial python APIs to support mirroring
Fixes: http://tracker.ceph.com/issues/15656
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
ef0ea8ee3c926a31b54e410c18e887415f6ea3cf )
Yuan Zhou [Mon, 16 May 2016 08:18:59 +0000 (16:18 +0800)]
rbd: close journal before removing
Otherwise there is some unwanted error message.
Fixes: http://tracker.ceph.com/issues/15863
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
(cherry picked from commit
ecdad4acca635d4b9f0b407889dde9985ab3a506 )
Samuel Just [Fri, 3 Jun 2016 00:13:09 +0000 (17:13 -0700)]
src/: remove all direct comparisons to get_max()
get_max() now returns a special singleton type from which hobject_t's
can be assigned and constructed, but which cannot be directly compared.
This patch also cleans up all such uses to use is_max() instead.
This should prevent some issues like 16113 by preventing us from
checking for max-ness by comparing against a sentinel value. The more
complete fix will be to make all fields of hobject_t private and enforce
a canonical max() representation that way. That patch will be hard to
backport, however, so we'll settle for this for now.
Fixes: http://tracker.ceph.com/issues/16113
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit
7c5f2acaa57bd6caaf4b13b48154df3ad6fbe84d )
Samuel Just [Fri, 3 Jun 2016 00:39:09 +0000 (17:39 -0700)]
PG::replica_scrub: don't adjust pool on max object
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit
8b7b7c7a2379ce77173bbdfd90c98c561d786155 )
Samuel Just [Fri, 3 Jun 2016 00:36:21 +0000 (17:36 -0700)]
hobject: compensate for non-canonical hobject_t::get_max() encodings
This closes a loop-hole that could allow a non-canonical in memory
hobject_t::get_max() object which would return true for is_max(), but
false for *this == hobject_t::get_max().
Fixes: http://tracker.ceph.com/issues/16113
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit
42fad4b76def50a0984bf3de06f78ed434d56954 )
John Spray [Fri, 3 Jun 2016 11:37:00 +0000 (12:37 +0100)]
Merge pull request #9430 from ceph/wip-manila-backports
jewel: backports needed for Manila
Reviewed-by: John Spray <john.spray@redhat.com>
Jason Dillaman [Thu, 2 Jun 2016 16:03:12 +0000 (12:03 -0400)]
Merge pull request #9423 from dillaman/wip-16101
jewel: rbd-mirror: replicate cloned images
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Xiaoxi Chen [Tue, 26 Apr 2016 22:51:48 +0000 (17:51 -0500)]
pybind: configurable cephfs_vol_client prefix and ns_prefix.
Which is useful if we would like to have multiple backends
in manila and potentially set different layout based on prefix.
And also make ns_prefix configurable also in order to support
multiple backend.
Fixes #15417
Signed-off-by: Xiaoxi Chen <xiaoxchen@ebay.com>
(cherry picked from commit
d1a21b07ede77ab3f2be7a753426d76de0343086 )
Ramana Raja [Wed, 13 Apr 2016 08:33:51 +0000 (14:03 +0530)]
ceph_volume_client: evict client also based on mount path
Evict clients based on not just their auth ID, but also based on the
volume path mounted. This is needed for the Manila use-case, where
the clients using an auth ID are denied further access to a share.
Fixes: http://tracker.ceph.com/issues/15855
Signed-off-by: Ramana Raja <rraja@redhat.com>
(cherry picked from commit
68714b9dda8ed6010cad6730e0ddf54b3219150d )
(cherry picked from commit
aaa0e9aea9fcf2f63e73e544bd40c10a0d694408 )
John Spray [Wed, 11 May 2016 12:18:23 +0000 (13:18 +0100)]
client: report root's quota in statfs
When user is mounted a quota-restricted inode
as the root, report that inode's quota status
as the filesystem statistics in statfs.
This allows us to have a fairly convincing illusion
that someone has a filesystem to themselves, when
they're really mounting a restricted part of
the larger global filesystem.
Fixes: http://tracker.ceph.com/issues/15599
Signed-off-by: John Spray <john.spray@redhat.com>
(cherry picked from commit
b6d2b6d1a51969c210ae75fef93c71ac21f511a6 )
John Spray [Fri, 1 Apr 2016 13:27:31 +0000 (14:27 +0100)]
pybind: fix unicode handling in CephFSVolumeClient::purge
os.path.join is sensitive to string encoding, but
just doing a straight substitution should not be.
Signed-off-by: John Spray <john.spray@redhat.com>
(cherry picked from commit
e590f4d05fdb46747e83e35e66a26d9f4aa0314d )
Loic Dachary [Thu, 26 May 2016 10:55:51 +0000 (12:55 +0200)]
ceph-disk: workaround gperftool hang
Temporary workaround: if ceph-osd --mkfs does not
complete within 5 minutes, assume it is blocked
because of https://github.com/gperftools/gperftools/issues/786
References http://tracker.ceph.com/issues/13522
Signed-off-by: Loic Dachary <loic@dachary.org>
(cherry picked from commit
c092321c24b9ca493d90a9ccc8f0b4b9a38677f1 )
Nathan Cutler [Thu, 12 May 2016 17:23:31 +0000 (19:23 +0200)]
rpm: unconditionally set ceph user's primary group to ceph (SUSE)
This commit brings the user/group creation into greater semantic alignment
with the Debian packaging.
Fixes: http://tracker.ceph.com/issues/15869
Signed-off-by: Nathan Cutler <ncutler@suse.com>
(cherry picked from commit
b3dfa8d90962e60b6841555db830c8ea635f4cce )
Jason Dillaman [Thu, 26 May 2016 16:49:45 +0000 (12:49 -0400)]
qa/workunits/rbd: basic cloned image test
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
943ff829874f96f720d6c6299e1212e4da24c6c5 )
Jason Dillaman [Thu, 26 May 2016 12:22:16 +0000 (08:22 -0400)]
rbd-mirror: copy snapshot parent image settings
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
f5fd09373714ebe8886bcf51bb97732038fffe55 )