Commit Graph

33318 Commits

Author SHA1 Message Date
Samuel Just
d83b8f5851 ReplicatedPG: do not preserve op context during flush
Any information stashed in the OpContext may be obsolete by the time we
actually mark the object clean.  Instead, let the start_flush caller
clean up its OpContext and in try_flush_mark_clean we'll create a new
one.  The primary reason to keep the OpContext would have been locking,
but we can set the obc as blocking without holding an OpContext, and
that would allow trimming to happen in the mean time (which is good
since trim_object does not respect rw locks since it doesn't change user
visible state).  In try_flush_mark_clean, we requeue the fop->op along
with (but ahead of) the fop->dup_ops.

Fixes: #8068
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-28 12:45:38 -07:00
Sage Weil
a60e15af8a doc/release-notes: v0.67.8 notes
Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-28 12:40:04 -07:00
John Wilkins
c511894e9d Merge branch 'master' of https://github.com/ceph/ceph into wip-doc-radosgw 2014-04-28 10:33:47 -07:00
Yehuda Sadeh
bcf92c496a rgw: fix url escaping
Fixes: #8202
This fixes the radosgw side of issue #8202. Needed to cast value
to unsigned char, otherwise it'd get padded.

Backport: dumpling

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2014-04-28 10:14:07 -07:00
Yan, Zheng
3e41f92b84 client: cleanup unsafe requests if MDS session is reset
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
2014-04-27 21:40:06 +08:00
Yan, Zheng
70ab0793cc client: wake up cap waiters if MDS session is reset
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
2014-04-27 21:40:06 +08:00
Yan, Zheng
b8aa58af79 client: drop dirty/flushing caps if auth MDS' session is reset
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
2014-04-27 21:40:06 +08:00
Yan, Zheng
09a1bc5a46 client: add asok command to kick sessions that were remote reset
Fixes: #8021
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
2014-04-27 21:40:00 +08:00
Yan, Zheng
c1bf7dbbe1 Merge pull request #1729 from ceph/wip-7966
readlink result in resapwn

Reviewed-by: Yan, Zheng <zheng.z.yan@intel.com>
2014-04-26 20:49:16 +08:00
Sage Weil
5d497826f9 mds: terminate readlink result in resapwn
readlink(2) does not null terminate the buffer; we need to do that.

Fixes: #7966
Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-25 19:46:24 -07:00
wusui
58d7640d25 Merge pull request #1727 from ceph/wip-8193
ceph_test_rados_api_tier: increase HitSetTrim timeouts
2014-04-25 16:20:20 -07:00
Sage Weil
0062070ef4 Merge pull request #1725 from FlorentCoppint/master
Skipping '_netdev' Debian fstab option

Reviewed-by: Sage Weil <sage@inktank.com>
2014-04-25 15:58:47 -07:00
Sage Weil
d0f1806d57 ceph_test_rados_api_tier: increase HitSetTrim timeouts
...so that they pass when they get unlucky with thrashing.

This will vastly decrease the probability of failure, but failure will
always be possible when a timeout is in place.

Fixes: #8193
Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-25 15:49:06 -07:00
FlorentCoppint
9ac264a856 Skipping '_netdev' Debian fstab option
Signed-off-by: Florent Bautista <florent@coppint.com>
2014-04-25 09:20:02 +02:00
Samuel Just
499adb1db1 rados.h,ReplicatedPG: add CEPH_OSD_FLAG_ENFORCE_SNAPC and use on flush
We need to ensure that even with pool snaps, we use the snapc provided in order
to ensure that the clones are written back correctly.

Fixes: #7941
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-24 16:48:15 -07:00
Loic Dachary
9b37398d65 Merge pull request #1717 from dachary/wip-auid
mon: add ceph osd pool set <pool> auid

Reviewed-by: Greg Farnum <greg@inktank.com>
2014-04-24 22:42:09 +02:00
wusui
e8b13f71ca Merge pull request #1724 from ceph/wip-uselocalgithubforqemu-wusui
Use new git mirror for qemu-iotests
2014-04-24 13:27:40 -07:00
Warren Usui
ddf37d903f Use new git mirror for qemu-iotests
Fixes: 8191
Signed-off-by: Warren Usui <warren.usui@inktank.com>
2014-04-24 12:55:26 -07:00
Samuel Just
1885792c51 ECBackend::continue_recovery_op: handle a source shard going down
get_min_avail_to_read_shards might return an error if there are
no longer enough sources to reconstruct the missing shards.
This is possible if osds went down while we were writing the
previous chunk -- we already notice in check_recovery_sources
if a source goes down during a read.

Fixes: #8161
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-24 12:48:46 -07:00
Loic Dachary
c0c2361b6e brag : implement --verbose on client
Signed-off-by: Loic Dachary <loic@dachary.org>
2014-04-24 10:29:26 +02:00
Loic Dachary
70092110b1 brag : document the zero argument behavior
Signed-off-by: Loic Dachary <loic@dachary.org>
2014-04-24 10:18:26 +02:00
Loic Dachary
2b16a818d5 brag : meaningfull error messages
To help figure out problems, include the error message in the output
when a submission fails.

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-04-24 10:18:25 +02:00
Sage Weil
2708c3c559 Merge remote-tracking branch 'gh/firefly' 2014-04-23 18:00:59 -07:00
Sage Weil
d384d3a660 Merge pull request #1720 from jdurgin/wip-list-children-test
test_rbd.py: ignore children in cache pools

Reviewed-by: Sage Weil <sage@inktank.com>
2014-04-23 17:23:12 -07:00
Sage Weil
5b97976658 Merge pull request #1719 from ceph/wip-8168
Wip 8168

Reviewed-by: Sage Weil <sage@inktank.com>
2014-04-23 16:07:02 -07:00
Samuel Just
83f8934890 ReplicatedPG::do_osd_ops: consider head whiteout in list-snaps
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-23 14:11:17 -07:00
Samuel Just
39c1bfc457 ReplicatedPG::do_op: don't return ENOENT for whiteout on snapdir read
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-23 14:11:17 -07:00
Josh Durgin
76a2138908 Merge pull request #1718 from ceph/wip-7882-wusui
Support latest qemu iotest code

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2014-04-23 13:47:02 -07:00
Josh Durgin
a83aff547f test_rbd.py: ignore children in cache pools
This is necessary until http://tracker.ceph.com/issues/8187 is fixed.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2014-04-23 13:28:50 -07:00
Loic Dachary
aae16ab355 mon: add ceph osd pool set <pool> auid
When a pool is created with ceph osd pool create, the auid is not
inferred from the session auid and is set to zero. Add the

  ceph osd pool set <pool> auid <int>

command to set it after it is created, and the matching get:

  ceph osd pool get <pool> auid

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-04-23 22:20:42 +02:00
Warren Usui
606e725eb5 Support latest qemu iotest code
Modified qemu-iotests workunit script to check for versions
that use the latest qemu (currently only Trusty).  Limit the
tests to those that are applicable to rbd.

Fixes: 7882
Signed-off-by: Warren Usui <warren.usui@inktank.com>
2014-04-23 13:20:14 -07:00
Sage Weil
4ed25fdbf7 Merge pull request #1714 from ceph/wip-fs-client
two small fixes for client

Reviewed-by: Sage Weil <sage@inktank.com>
2014-04-23 08:51:26 -07:00
Ilya Dryomov
f631854584 rbd: deprecate --no-settle option
Waiting for udev has been the default for a while now, and, after
switching to libkrbd, is no longer an option.  (libkrbd waits for
specific devices to show up, the old behaviour was to wait for
everything udev.)

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2014-04-23 13:33:43 +04:00
Ilya Dryomov
0c2b0fb8da doc: 'rbd showmapped' doesn't need privileges
No need to run 'rbd showmapped' with sudo.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2014-04-23 13:33:43 +04:00
Ilya Dryomov
4238ffdc49 doc: do not mention modprobe in rbd docs
rbd binary will load rbd.ko itself, with appropriate options.  Loading
it by hand with default options is undesirable.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2014-04-23 13:33:43 +04:00
Ilya Dryomov
0ba3960c60 rbd: switch to libkrbd for 'rbd {map,showmapped,unmap}' operations
Thanks to libkrbd, 'rbd map' now outputs the device node it mapped to
to stdout:

    $ sudo rbd map foo
    /dev/rbd0

This will allow us to get rid of a lot of ad-hoc poll/sleep code in our
qa scripts.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2014-04-23 13:33:43 +04:00
Ilya Dryomov
2521e73aac mount.ceph: switch to module_load()
Implement modprobe() in terms of module_load() from common/module.h

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2014-04-23 13:33:43 +04:00
Ilya Dryomov
2651750498 rbd: add libkrbd convenience library
Add libkrbd libtool convenience library to provide an interface for
mapping and unmapping rbd images programmatically.  This will be used
by the rbd binary itself and the librbd_fsx testing tool.

libkrbd takes care of the kernel module stuff (common/module.h) and
makes use of libudev to be able to properly wait for block device
creation and deletion and tell which block device got assigned by the
kernel to the newly created mapping.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2014-04-23 13:33:43 +04:00
Yan, Zheng
bad34e90e5 client: check cap ID when handling cap export message
handle following sequence of events:
- mds0 exports an inode to mds1. client receives the cap import
  message from mds1. caps from mds0 are removed while handling
  the cap import message.
- mds1 exports an inode to mds0. client receives the cap export
  message from mds1. handle_cap_export() adds placeholder caps
  for mds0
- client receives the first cap export message (for exporting
  inode from mds0 to mds1)

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
2014-04-23 10:29:14 +08:00
Yan, Zheng
383d21dc08 client: avoid releasing caps that are being used
To avoid releasing caps that are being used, encode_inode_release()
should send implemented caps to MDS.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
2014-04-23 10:14:51 +08:00
John Wilkins
d726251f3d doc: Fix hyperlink to CRUSH maps.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2014-04-22 17:36:46 -07:00
Samuel Just
a06f8667d2 Merge pull request #1713 from ceph/wip-7439
Wip 7439

Reviewed-by: Sage Weil <sage@inktank.com>
2014-04-22 17:36:20 -07:00
John Wilkins
6902e22408 doc: Added cache tiering settings to ceph osd pool set.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2014-04-22 17:31:57 -07:00
John Wilkins
0d964bc65d doc: Added new cache tiering doc to index/TOC.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2014-04-22 17:30:52 -07:00
John Wilkins
44e4e3d59b doc: Added new cache tiering doc to main docs.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2014-04-22 17:30:26 -07:00
Samuel Just
2182815c67 ReplicatedPG: handle ec pools in mark_all_unfound_lost
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-22 15:43:51 -07:00
Jenkins
6769f4dc88 0.80-rc1 2014-04-22 21:21:45 +00:00
Samuel Just
245923e704 ReplicatedPG: enable mark_unfound_lost delete for ec pools
revert is tricky to implement at this time for ec pools, so
we'll instead just implement delete for ec pools.

Fixes: #7439
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-22 13:37:20 -07:00
Sage Weil
009e874686 qa/workunits/rbd/copy.sh: skip some tests when tiering is enabled
The rados ls bit doesn't work.

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2014-04-22 11:59:26 -07:00
Sage Weil
c0bff439f5 qa/workunits/rbd/copy.sh: fix test
I broke this in commit 9d64ac6608.

Signed-off-by: Sage Weil <sage@inktank.com>
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2014-04-22 11:59:23 -07:00