]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Jason Dillaman [Wed, 28 Sep 2016 12:35:36 +0000 (08:35 -0400)]
journal: avoid holding lock while sending journal append
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
dc77a629ed353d586b63f0bd8e20f54a7595afba )
Jason Dillaman [Wed, 21 Sep 2016 19:41:55 +0000 (15:41 -0400)]
rbd-mirror: wait for in-flight event commit notifications
Fixes: http://tracker.ceph.com/issues/17355
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
f810c106ad4e9ae94494801fea6c580d81b9156b )
Jason Dillaman [Tue, 11 Oct 2016 17:55:21 +0000 (13:55 -0400)]
journal: fix AsyncOpTracker compiler error
The master branch has an async JournalTrimmer which shouldn't be
backported to the Jewel branch yet. This change addresses the
missing sync AsyncOpTracker::wait_for_ops method from the backported
class.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Wed, 21 Sep 2016 17:02:34 +0000 (13:02 -0400)]
common: move AsyncOpTracker to common library
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
72d8992f054a7e36f92fdd2e01278ce3b9ede2eb )
Conflicts:
src/journal/CMakeLists.txt: doesn't exist in Jewel
Jason Dillaman [Thu, 28 Jul 2016 20:35:48 +0000 (16:35 -0400)]
librbd: support deleting image by id instead of name
The rbd-mirror daemon will use this API to delete images instead
of attempting to use the local image name.
Fixes: http://tracker.ceph.com/issues/16227
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
87b32d15914207f61595c1c943817d983faceacd )
Jason Dillaman [Wed, 13 Jul 2016 18:49:06 +0000 (14:49 -0400)]
rbd-mirror: use pool id + global image id as deletion primary key
Fixes: http://tracker.ceph.com/issues/16538
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
25203a8a9d59ff025d223ec1afaeb14946d54993 )
Jason Dillaman [Thu, 15 Sep 2016 22:14:15 +0000 (18:14 -0400)]
rbd-mirror: concurrent access of event might result in heap corruption
Fixes: http://tracker.ceph.com/issues/17283
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
ac9ad37ab80db8913f9f1149707bd0009f8235c4 )
Ricardo Dias [Wed, 21 Sep 2016 22:08:18 +0000 (23:08 +0100)]
rbd-mirror: test: Fixed timeout problem in rbd_mirror_stress.sh
Signed-off-by: Ricardo Dias <rdias@suse.com>
(cherry picked from commit
5c737038dd6d44bd76605587486ddf9457bc2d96 )
Ricardo Dias [Tue, 6 Sep 2016 16:28:22 +0000 (17:28 +0100)]
rbd: Fix race between journal flush and append events
Signed-off-by: Ricardo Dias <rdias@suse.com>
(cherry picked from commit
aa959e71fe5a8cec43de75007fc9cef8de5ee3a5 )
Ricardo Dias [Wed, 7 Sep 2016 14:26:34 +0000 (15:26 +0100)]
journal: make librados call async in ObjectRecorder
Signed-off-by: Ricardo Dias <rdias@suse.com>
(cherry picked from commit
7b740f5b4ac1c66ac3c80782d2d34e846d00fddd )
Ricardo Dias [Mon, 25 Jul 2016 16:00:50 +0000 (17:00 +0100)]
journal: increase concurrency of journal recorder
Signed-off-by: Ricardo Dias <rdias@suse.com>
(cherry picked from commit
5c88edd68a1ee7c77f11e4113251fbe5768b8d99 )
Jason Dillaman [Mon, 19 Sep 2016 15:24:17 +0000 (11:24 -0400)]
journal: send update notification when tag allocated
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
f1cd613e3d8ccb6d05b9adfe1956927991a4f4fe )
Jason Dillaman [Wed, 14 Sep 2016 01:54:46 +0000 (21:54 -0400)]
librbd: new journal listener event for force promotion
Fixes: http://tracker.ceph.com/issues/16974
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
fd005490e95d7fca85be4cad34344a58986f64d6 )
Jason Dillaman [Tue, 13 Sep 2016 20:38:51 +0000 (16:38 -0400)]
librbd: helper class for quiescing in-flight async ops
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
39d9e5cc9b38de2ee9ad2faf8e04253314160811 )
Jason Dillaman [Tue, 13 Sep 2016 16:37:53 +0000 (12:37 -0400)]
librbd: unify journal event callbacks into single interface
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
dbbcecf4a289ca36b734b7bda9530cc0a59f84ac )
Jason Dillaman [Tue, 13 Sep 2016 20:28:50 +0000 (16:28 -0400)]
journal: expose ability to retrieve partial tag list
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
277b6dd9f13a8390cbf7c9ac7a313813ecad4d27 )
Jason Dillaman [Wed, 14 Sep 2016 12:49:39 +0000 (08:49 -0400)]
qa/workunits/rbd: fix remove mirrored image race conditions
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
a0f65b968b350629dfad978c191fc878ca26d093 )
Jason Dillaman [Tue, 13 Sep 2016 16:32:45 +0000 (12:32 -0400)]
qa/workunits/rbd: new mirroring forced promotion test
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
a43268a4a30c06233152d531cbf2550224fb8a15 )
Jason Dillaman [Tue, 20 Sep 2016 17:31:36 +0000 (13:31 -0400)]
test/rbd: fix possible mock journal race conditions
Fixes: http://tracker.ceph.com/issues/17317
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
471898392372ba4c404376410fb56f3af5287c80 )
Mykola Golub [Wed, 6 Jul 2016 09:59:25 +0000 (12:59 +0300)]
qa/workunits/rbd: before removing image make sure it is not bootstrapped
If an image is being bootstrapped, it implies that the rbd-mirror
daemon currently has the image open. The removal API will prevent the
removal of any image that is opened by another client.
Works-around: http://tracker.ceph.com/issues/16555
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
9737a8d6cbaf1b79bbc6008249d39acbae883941 )
Jason Dillaman [Tue, 27 Sep 2016 18:47:02 +0000 (14:47 -0400)]
librbd: fix journal create compilation error
The synchronous journal create method no longer exists on the master
branch and the associated change to introduce an asynchronous journal
creation state machine should be delayed to provide more testing time
on the master branch before being backported to jewel.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Fri, 12 Aug 2016 01:11:07 +0000 (21:11 -0400)]
test: fixed unused function warnings in unittest_rbd_mirror
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
3545d9ed19be8d3956f0db901ea9d3bb8b10d13d )
Jason Dillaman [Fri, 12 Aug 2016 00:48:27 +0000 (20:48 -0400)]
rbd-mirror: prevent syncing to non-primary image after failover
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
beaef377d69f555277b706afff944a15086da28e )
Jason Dillaman [Tue, 9 Aug 2016 03:45:46 +0000 (23:45 -0400)]
rbd-mirror: demote/promote in same cluster results in split-brain
Fixes: http://tracker.ceph.com/issues/16855
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
a6901ca1a065419426b3ad704e27e43ba8d591b8 )
Jason Dillaman [Thu, 11 Aug 2016 23:39:21 +0000 (19:39 -0400)]
librbd: normalize journal promotion/demotion events
A non-primary image's commit possition won't accurately reflect
the current demotion/promotion chain. Therefore, directly specify
the predecessor for promotion events.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
ac590e85a472533005cad73c82b2d61db161ab7a )
Jason Dillaman [Thu, 11 Aug 2016 23:09:09 +0000 (19:09 -0400)]
librbd: block RPC requests when demoting the image
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
8b195e1fc8fe70a0e5417934302d5831b1f8dfb3 )
Jason Dillaman [Tue, 9 Aug 2016 16:24:19 +0000 (12:24 -0400)]
librbd: separate journal::TagData predecessor data into new struct
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
718befdae711141ef4a1e2e9f5e9aca97f1b5513 )
Jason Dillaman [Tue, 9 Aug 2016 00:57:45 +0000 (20:57 -0400)]
rbd-mirror: include tag tid in bootstrap debug log messages
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
47d1e625006d554164f020e496a847735240ec95 )
Jason Dillaman [Mon, 8 Aug 2016 14:39:01 +0000 (10:39 -0400)]
qa/workunits/rbd: demote/promote image on same cluster
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
e6aa18ea0df6dc4d1add597bc2d972c79699bf4c )
Mykola Golub [Wed, 10 Aug 2016 10:46:46 +0000 (13:46 +0300)]
rbd-mirror: option to automatically resync after journal client disconnect
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
77fd6a1c2016262d734b0bb5387e6b6a41232e8b )
Conflicts:
src/common/config_opts.h: trivial resolution
Mykola Golub [Wed, 27 Jul 2016 10:45:32 +0000 (13:45 +0300)]
rbd-mirror: stop replay when client is disconnected
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
330dba00ba3153ba2862eef52714e0dceae05192 )
Mykola Golub [Wed, 10 Aug 2016 08:22:16 +0000 (11:22 +0300)]
rbd-mirror: resync was possible only when image replayer start had succeeded
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
4bf6912f3c75560b89324fc29286028750f122c1 )
Mykola Golub [Tue, 26 Jul 2016 13:10:30 +0000 (16:10 +0300)]
rbd-mirror: decode_client_meta should return false on error
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
cd5eb36e98f46a1d84bddeafa4e7dcad415aa4a2 )
Mykola Golub [Wed, 3 Aug 2016 11:19:51 +0000 (14:19 +0300)]
rbd: new command to disconnect journal client
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
fc3ba54b3c101498a08a3f34ac8f7eab0152ad7c )
Mykola Golub [Wed, 27 Jul 2016 11:06:42 +0000 (14:06 +0300)]
librbd: optionally flag "laggy" journal clients disconnected
Fixes: http://tracker.ceph.com/issues/14738
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
b8eafefba9f2221a0ce927568795cb1c3ac0fa9c )
Mykola Golub [Wed, 13 Jul 2016 12:49:40 +0000 (15:49 +0300)]
journal: allow to trim journal for "laggy" clients
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
0b8b1aaedc10f7f46e91bf6ad809414feb770c8d )
Mykola Golub [Wed, 27 Jul 2016 10:42:19 +0000 (13:42 +0300)]
cls/journal: add async client_update_state method
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit
58b8c66d5bfa60e6dd3ad2ec79360c2eca165c58 )
Loic Dachary [Tue, 11 Oct 2016 10:30:44 +0000 (12:30 +0200)]
Merge pull request #11389 from jcsp/wip-17466-jewel
jewel: mon: don't crash on invalid standby_for_fscid
Reviewed-by: John Spray <john.spray@redhat.com>
Loic Dachary [Tue, 11 Oct 2016 10:30:25 +0000 (12:30 +0200)]
Merge pull request #10997 from batrick/i17105-backport
jewel: multimds: allow_multimds not required when max_mds is set in ceph.conf at startup
Reviewed-by: John Spray <john.spray@redhat.com>
Loic Dachary [Tue, 11 Oct 2016 10:30:03 +0000 (12:30 +0200)]
Merge pull request #10958 from ukernel/jewel-16764
jewel: client: fix shutdown with open inodes
Reviewed-by: John Spray <john.spray@redhat.com>
Loic Dachary [Tue, 11 Oct 2016 10:29:36 +0000 (12:29 +0200)]
Merge pull request #10921 from jcsp/wip-client-lock-backport
jewel: client: add missing client_lock for get_root
Reviewed-by: John Spray <john.spray@redhat.com>
Loic Dachary [Tue, 11 Oct 2016 10:29:05 +0000 (12:29 +0200)]
Merge pull request #11400 from ceph/wip-rbd-cli-jewel
jewel: krbd-related CLI patches
Reviewed-by: Loic Dachary <ldachary@redhat.com>
Loic Dachary [Tue, 11 Oct 2016 09:03:40 +0000 (11:03 +0200)]
Merge pull request #11171 from ceph/wip-rasize-doc-jewel
jewel: doc: fix description for rsize and rasize
Reviewed-by: Loic Dachary <ldachary@redhat.com>
Ilya Dryomov [Fri, 7 Oct 2016 10:32:43 +0000 (12:32 +0200)]
rbd: expose rbd unmap options
Reuse rbd map -o infrastructure to expose rbd unmap options in
a similar fashion. Currently it's just one bool option, but we may
need more in the future.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit
620f5e1455fdcb05cd3873c1e260141849829e35 )
Conflicts:
doc/man/8/rbd.rst [ PR #9151 ("rbd: add methods to set and get
snapshot limits") not in jewel ]
Ilya Dryomov [Fri, 7 Oct 2016 09:14:16 +0000 (11:14 +0200)]
rbd: fix up terminology in help texts
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit
ba8f9ee791d55c4cf25ad751213ea6ba770b7434 )
Ilya Dryomov [Mon, 3 Oct 2016 12:09:11 +0000 (14:09 +0200)]
rbd: recognize lock_on_read option
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit
e857b7896527b676155d6e01c78567337dc33b1c )
Ilya Dryomov [Tue, 4 Oct 2016 08:21:36 +0000 (10:21 +0200)]
doc: clarify rbd size units
It wasn't clear from the man page that --size defaults to M.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit
d38dc29ed588b8933da3b66e46e1f0dd4cbb2cf4 )
Conflicts:
doc/man/8/rbd.rst [ PR #9066 ("rbd: introduce a simple bench
for read") not in jewel ]
Loic Dachary [Mon, 10 Oct 2016 18:30:54 +0000 (20:30 +0200)]
Merge pull request #10812 from SUSE/wip-17094-jewel
jewel: build/ops: ceph-osd-prestart.sh fails confusingly when data directory does not exist
Reviewed-by: Loic Dachary <ldachary@redhat.com>
Matt Benjamin [Mon, 10 Oct 2016 14:46:33 +0000 (10:46 -0400)]
Merge pull request #11335 from linuxbox2/jewel-nfs
jewel: rgw: nfs backports
Matt Benjamin [Mon, 10 Oct 2016 14:45:07 +0000 (10:45 -0400)]
Merge pull request #11332 from linuxbox2/jewel-ldap
jewel: rgw: combined LDAP backports
Patrick Donnelly [Mon, 29 Aug 2016 20:25:10 +0000 (16:25 -0400)]
mds: remove max_mds config option
It is now required that all changes to max_mds use the run-time `ceph fs
set max_mds` command. The rationale for this change is that it is
confusing to have a configuration for max_mds which is only observed at
file system creation.
Fixes: http://tracker.ceph.com/issues/17105
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
52f4e545e0ce4782d5f2239d31080d392c12eba2 )
Sage Weil [Mon, 10 Oct 2016 13:54:02 +0000 (08:54 -0500)]
Merge pull request #10761 from dachary/wip-16377-jewel
jewel: msgr/async: Messenger thread long time lock hold risk
Reviewed-by: Sage Weil <sage@redhat.com>
Sage Weil [Mon, 10 Oct 2016 13:52:59 +0000 (08:52 -0500)]
Merge pull request #10278 from SUSE/wip-16667-jewel
jewel: incorrect value of CINIT_FLAG_DEFER_DROP_PRIVILEGES
Reviewed-by: Sage Weil <sage@redhat.com>
John Spray [Fri, 30 Sep 2016 20:57:35 +0000 (21:57 +0100)]
mds: make mds_role_t member order match constructor
Previously this was mildy confusing.
Signed-off-by: John Spray <john.spray@redhat.com>
(cherry picked from commit
63d711d4e9decd2940c55aa697e6a588593da23a )
John Spray [Mon, 3 Oct 2016 06:33:27 +0000 (07:33 +0100)]
mon: don't crash on invalid standby_for_fscid
Fixes: http://tracker.ceph.com/issues/17466
Signed-off-by: John Spray <john.spray@redhat.com>
(cherry picked from commit
92fdcf36bd7d57b97f5d887d0370a181860e388c )
John Spray [Mon, 3 Oct 2016 06:40:12 +0000 (07:40 +0100)]
messages: fix MMDSBeacon constructor
This was leaving garbage in some fields during decode
when decoding messages with an older version.
Fixes: http://tracker.ceph.com/issues/17466
Signed-off-by: John Spray <john.spray@redhat.com>
(cherry picked from commit
f1fb667dfd21cd241f4f45ce9ef3f8393d114c60 )
Loic Dachary [Mon, 10 Oct 2016 10:26:02 +0000 (12:26 +0200)]
Merge pull request #10794 from SUSE/wip-17082-jewel
jewel: disable LTTng-UST in openSUSE builds
Reviewed-by: Loic Dachary <ldachary@redhat.com>
Loic Dachary [Mon, 10 Oct 2016 10:21:59 +0000 (12:21 +0200)]
Merge pull request #9739 from vumrao/wip-vumrao-16337
jewel: osd: add peer_addr in heartbeat_check log message
Reviewed-by: Samuel Just <sjust@redhat.com>
Loic Dachary [Mon, 10 Oct 2016 10:20:30 +0000 (12:20 +0200)]
Merge pull request #9388 from vumrao/wip-vumrao-16069
jewel: mon: Display full flag in ceph status if full flag is set
Reviewed-by: Loic Dachary <ldachary@redhat.com>
Loic Dachary [Mon, 10 Oct 2016 10:03:51 +0000 (12:03 +0200)]
Merge pull request #10496 from Abhishekvrshny/wip-16583-jewel
jewel: mon crash: crush/CrushWrapper.h: 940: FAILED assert(successful_detach)
Reviewed-by: Kefu Chai <kchai@redhat.com>
Loic Dachary [Mon, 10 Oct 2016 07:31:29 +0000 (09:31 +0200)]
Merge pull request #11018 from ceph/wip-17223-jewel
jewel: krbd qa scripts and concurrent.sh test fix
Reviewed-by: Loic Dachary <ldachary@redhat.com>
Matt Benjamin [Wed, 21 Sep 2016 21:18:20 +0000 (17:18 -0400)]
rgw_file: pre-assign times
Set unix timestamps based on RGW values for creation, modification
time for buckets, objects in stat requests. Regard any saved
value of these in unix attributes as an overlay.
Fixes: http://tracker.ceph.com/issues/17367
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
969750e96380859a350e25015bc8cbf9bdf88512 )
Fixes: http://tracker.ceph.com/issues/17394
Matt Benjamin [Tue, 20 Sep 2016 21:32:03 +0000 (17:32 -0400)]
rgw_file: fix set_attrs operation
The effective part of this change is to always set a value
for RGW_ATTR_UNIX_KEY1 (because it is expected later).
Secondarily, do not pass the address of the to-set attributes
buffer::list as remove attrs--this is confusing.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
08afb40b2812270a6af3cd1965e8c03c10392ace )
Fixes: http://tracker.ceph.com/issues/17393
Matt Benjamin [Thu, 14 Apr 2016 23:18:37 +0000 (19:18 -0400)]
rgw_file: implement rgw_setattr
Introduce a new RGWSetattrs RGWOp descendant, to create or replace
sets of attrs on buckets or objects.
This version of the change uses the standard RGWRADOS::set_attrs op
(we want attribute changes to (e.g.) sync with other changes).
Previous versions of this changed incorrectly masked the values
of st->st_ino in RGWFileHandle::stat(), now fixed.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
4de1c3c260265f821ebee842d49cb35bf49d8e4e )
Fixes: http://tracker.ceph.com/issues/17311
Fixes: http://tracker.ceph.com/issues/17332
zhangweibing [Fri, 26 Aug 2016 02:49:48 +0000 (10:49 +0800)]
rgw: remove duplicated calls to getattr
Signed-off-by: Weibing Zhang <zhangweibing@unitedstack.com>
(cherry picked from commit
87b550ed2fba472d4ef2e1f771bb5f9fd248804f )
Fixes: http://tracker.ceph.com/issues/17327
Min Chen [Fri, 19 Aug 2016 05:02:50 +0000 (01:02 -0400)]
rgw: rgw file fix bug of rgw_lookup can not exact match file name
bug reproduce steps:
in nfs-client (connect to nfs-ganesha server):
1. mv file file.rename
2. stat file // get file attrs, not return with -ENOENT
the reason is that:
RGWStatLeafRequest does not exact match the file name,
just take file name as a prefix filter
Signed-off-by: Min Chen <chenmin@xsky.com>
(cherry picked from commit
9d813bafc8e197507457c58ab4f365ccdb7f3589 )
Fixes: http://tracker.ceph.com/issues/17326
Yan Jun [Tue, 23 Aug 2016 04:51:10 +0000 (12:51 +0800)]
rgw: fix the wrong return value
Here `parent->readdir` will return negative numbers When there is an error.
so we should just return it.
Signed-off-by: Yan Jun <yan.jun8@zte.com.cn>
(cherry picked from commit
c979be7810793534715c24c6a9f7c8b0ed31de8d )
Fixes: http://tracker.ceph.com/issues/17325
Matt Benjamin [Wed, 17 Aug 2016 14:28:48 +0000 (10:28 -0400)]
rgw_file: restore local definition of RGWLibFS gc interval
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
31936caa09b46e86700faad969adfa9d43176206 )
Fixes: http://tracker.ceph.com/issues/17323
Matt Benjamin [Tue, 23 Aug 2016 20:50:42 +0000 (16:50 -0400)]
rgw_file: explain semantics of RGWFileHandle::commit
Add a comment explaining why the method currently returns 0
unconditionally.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
b1da1354320cc5f69277b225a293a03cc2a5054f )
Matt Benjamin [Tue, 23 Aug 2016 19:57:06 +0000 (15:57 -0400)]
ceph_timer: prefer using directive to typedef
This change replaces the existing member-hook typedef as well as
the new set-type typedefs, so committed separately.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
f7d4d418658d2091652033045abdb4bfbeb637aa )
Matt Benjamin [Tue, 23 Aug 2016 18:18:43 +0000 (14:18 -0400)]
librgw: add API version defines for librgw and rgw_file
This change borrows the major, minor+extra format used by libcephfs.
The version numbering is starting at 1,1,0 on the theory that the
implicit version at Jewel is 1,0,0.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
355ccc5ded7f0b459bca24bc8b504b41807c583d )
Matt Benjamin [Wed, 17 Aug 2016 15:24:01 +0000 (11:24 -0400)]
rgw file: allow RGWLibFS::write_completion_interval_s to be set in conf
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
70dad0fba561edaf0bb4e746e29b92a4e9b014b2 )
Matt Benjamin [Wed, 17 Aug 2016 15:00:22 +0000 (11:00 -0400)]
rgw_file: log on write completion events at level 10
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
d1e512d8c0e20df5a96ccb5f775a7a2ca123efbe )
Matt Benjamin [Wed, 17 Aug 2016 14:52:58 +0000 (10:52 -0400)]
rgw_file: add RGW_OPEN_FLAG_STATELESS as a synonym for V3
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
da596eb3af69c2cdf191893eb44a8947662634cf )
Matt Benjamin [Tue, 16 Aug 2016 22:17:53 +0000 (18:17 -0400)]
rgw_file: implement stateless write completion timer
Implements a temporal mechanism to enforce write completion for setups
which lack open state tracking (e.g., NFS3).
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
2c83ed4bd43fcb5d5497151a157b1dc08022fed9 )
Matt Benjamin [Fri, 12 Aug 2016 20:52:51 +0000 (16:52 -0400)]
rgw_file: fix/update rgw_create flag arguments
Allow passing POSIX open flags as well as api call flags. Needed
for NFS3 support.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
2d0ea2b4649e76cbbb87f44c57754d7ea9c46dce )
Matt Benjamin [Fri, 12 Aug 2016 14:39:21 +0000 (10:39 -0400)]
rgw_file: fix/update rgw_open flag arguments
Allow passing POSIX open flags as well as api call flags. Needed
for NFS3 support.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
ada29f7f8323be2301588941bcd5c60190b32a4b )
Matt Benjamin [Tue, 9 Aug 2016 20:49:41 +0000 (16:49 -0400)]
rgw file: remove busy-wait in RGWLibFS::gc()
This is a background thread. However, CPU is wasted.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
ca33241286f52d849dbde8092507131b8b1108cc )
Fixes: http://tracker.ceph.com/issues/17321
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
Matt Benjamin [Tue, 9 Aug 2016 18:23:00 +0000 (14:23 -0400)]
rgw_file: unlock() must precede out label
In lookup_handle(...).
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
9f64f34e481278a683e962b17c7aa811005783a8 )
Matt Benjamin [Sun, 7 Aug 2016 22:39:33 +0000 (18:39 -0400)]
rgw nfs: fix write continuations
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
b4d079f2b5a4d49b2ba7576b272a2a3f3b0d66c8 )
Matt Benjamin [Fri, 5 Aug 2016 14:03:33 +0000 (10:03 -0400)]
rgw nfs: don't leak fh->mtx in lookup_handle()
This change fixes a serious latent locking problem, noticed after
updating the ganesha/rgw driver invalidation after renames.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
d74d46170d7104a6553674f111bbdbe3a116cf54 )
Matt Benjamin [Mon, 8 Aug 2016 14:18:35 +0000 (10:18 -0400)]
rgw file: refuse to rename directories
The representation of paths as an aggregate involving any
number of objects argues against ever permitting such
operations.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
297220fd2a96c0cf34701127b8cf724e24e6865f )
Matt Benjamin [Wed, 3 Aug 2016 17:53:15 +0000 (13:53 -0400)]
rgw_file: refuse ops on deleted targets
Detect these illegal cases, as they are indicate various incorrect
behaviors/bugs.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
34224ecd8360e03603a1a5dd1c1c9f0a31f1c1d5 )
Matt Benjamin [Thu, 14 Apr 2016 23:18:37 +0000 (19:18 -0400)]
rgw_file: implement rgw_setattr
Introduce a new RGWSetattrs RGWOp descendant, to create or replace
sets of attrs on buckets or objects.
This version of the change uses the standard RGWRADOS::set_attrs op
(we want attribute changes to (e.g.) sync with other changes).
Previous versions of this changed incorrectly masked the values
of st->st_ino in RGWFileHandle::stat(), now fixed.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
4de1c3c260265f821ebee842d49cb35bf49d8e4e )
Matt Benjamin [Wed, 13 Jul 2016 14:16:59 +0000 (10:16 -0400)]
rgw_file: refuse partial, out-of-order writes
A single file object may be opened only once per gateway
instance, and writes to that object must be complete, and in-order.
Enforce this.
If an invalid write is seen, deletes the current write transaction.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
12aded803e24539266ce9698c678088e2158a82a )
Matt Benjamin [Tue, 12 Jul 2016 21:43:43 +0000 (17:43 -0400)]
rgw_file: fix rename cases and unify unlink
Rather ordinary rename cases failed in the unlink step. Fix this,
unifying the unlink path while at it.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
05af1fbb870a905ea8903594dfc607d346c9dd31 )
Harald Klein [Wed, 31 Aug 2016 15:41:26 +0000 (17:41 +0200)]
add ldap auth custom search filter feature patch - http://tracker.ceph.com/issues/17185
Signed-off-by: Harald Klein <hari@vt100.at>
(cherry picked from commit
c935885ae9d5fd413495448a0b0e5fce899c9b73 )
Fixes: http://tracker.ceph.com/issues/17185
Matt Benjamin [Thu, 18 Aug 2016 14:54:16 +0000 (10:54 -0400)]
rgw ldap: protect rgw::from_base64 from non-base64 input
Also adds unit tests for:
1. empty output from from_base64 (turns out to be harmless)
2. random and specific non-base64 and sort strings
(modified from upstream to avoid alteration of src/test/test_rgw_token.cc)
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
0a4c91ec7652d02673a9b156cd16144d778a3844 )
Fixes: http://tracker.ceph.com/issues/17324
Matt Benjamin [Fri, 5 Aug 2016 14:02:03 +0000 (10:02 -0400)]
rgw ldap: enforce simple_bind w/LDAPv3
Found by Harald Klein <hklein@redhat.com>.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
08d54291435e4d1cb5e02cda3951bc6e8510b0e2 )
Matt Benjamin [Mon, 1 Aug 2016 21:36:17 +0000 (17:36 -0400)]
rgw: add reinit/rebind logic (ldap)
Gracefully handle stale LDAP connections by rebinding--verified
with MS AD. Rebind is attempted once per request until rebound--
not worse than misconfiguring the environment.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
9b8fccf68789ba5c5986766c544b23aeada0e87e )
Matt Benjamin [Fri, 30 Sep 2016 18:02:43 +0000 (14:02 -0400)]
Merge pull request #10656 from dachary/wip-16564-jewel
jewel: cors auto memleak
Josh Durgin [Thu, 29 Sep 2016 22:54:05 +0000 (15:54 -0700)]
Merge pull request #11252 from ceph/wip-offline-split-jewel
ceph-objectstore-tool: add a way to split filestore directories offline
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Yehuda Sadeh [Thu, 29 Sep 2016 18:34:44 +0000 (11:34 -0700)]
Merge pull request #10866 from dachary/wip-17122-jewel
jewel: COPY broke multipart files uploaded under dumpling
Yehuda Sadeh [Thu, 29 Sep 2016 18:32:09 +0000 (11:32 -0700)]
Merge pull request #10890 from dachary/wip-17140-jewel
jewel: rgw: period commit loses zonegroup changes: region_map converted repeatedly
Yehuda Sadeh [Thu, 29 Sep 2016 17:51:09 +0000 (10:51 -0700)]
Merge pull request #11021 from cbodley/wip-16794
jewel: rgw: back off bucket sync on failures, don't store marker
Yehuda Sadeh [Thu, 29 Sep 2016 17:49:28 +0000 (10:49 -0700)]
Merge pull request #10657 from dachary/wip-16792-jewel
jewel: metadata sync can skip markers for failed/incomplete entries
Josh Durgin [Fri, 5 Aug 2016 18:45:00 +0000 (11:45 -0700)]
ceph-objectstore-tool: add a way to split filestore directories offline
Use the usual split code, and split each dir that meets the
usual split criteria.
This can be run with lower than usual split settings, to avoid costly
online splits. To make sure the directories are not merged again, use
a load merge threshold (e.g. filestore merge threshold = 1), and
adjust the split multiplier accordingly.
Fixes: http://tracker.ceph.com/issues/17220
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
(cherry picked from commit
e7b0428e0e8d8f5459311dc698d94a3ac4f04684 )
Conflicts:
src/os/filestore/FileStore.cc
src/tools/ceph_objectstore_tool.cc
(trivial resolution)
Sage Weil [Tue, 27 Sep 2016 20:37:17 +0000 (15:37 -0500)]
Merge pull request #10888 from dachary/wip-17062-jewel
jewel: tests: fix TestClsRbd.mirror_image failure in upgrade:jewel-x-master-distro-basic-vps
Andreas Gerstmayr [Thu, 15 Sep 2016 20:02:23 +0000 (22:02 +0200)]
doc: fix description for rsize and rasize
Signed-off-by: Andreas Gerstmayr <andreas.gerstmayr@gmail.com>
(cherry picked from commit
a004254a02cafdee848a382f893f89c3c5a9845a )
Jenkins Build Slave User [Tue, 20 Sep 2016 22:04:23 +0000 (22:04 +0000)]
10.2.3