]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
10 years agomds: improved doxygen comments in StrayManager
John Spray [Tue, 17 Mar 2015 12:29:31 +0000 (12:29 +0000)]
mds: improved doxygen comments in StrayManager

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agomds: update StrayManager op limit on mds_max_purge_ops_per_pg
John Spray [Tue, 17 Mar 2015 12:34:59 +0000 (12:34 +0000)]
mds: update StrayManager op limit on mds_max_purge_ops_per_pg

Previously was only updating on mds_max_purge_ops

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agomds: fix parent check in MDCache::eval_remote
John Spray [Wed, 25 Feb 2015 10:55:42 +0000 (10:55 +0000)]
mds: fix parent check in MDCache::eval_remote

This code path wasn't touched until the change
in "mds/Server: fix stray reintegration".  Now we
see that it will crash in fsstress in some circumstances
when the client is doing a link operation, where
we are checking the projected linkage on the DN
before going into this function, but not the projected
parenthood of the inode.

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agomds: make purge op limit dynamic based on PGs/MDSs
John Spray [Tue, 10 Feb 2015 14:16:34 +0000 (14:16 +0000)]
mds: make purge op limit dynamic based on PGs/MDSs

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agomds: throttle purge stray operations
John Spray [Tue, 20 Jan 2015 12:17:56 +0000 (12:17 +0000)]
mds: throttle purge stray operations

Pull out the stray-handling code into a separate StrayManager
class.

There is an additional improvement to stray reintegration here,
by passing the DN that triggered the reintegration through,
we should make a better choice about *which* hardlink to
reintegrate the inode into, rather than just picking the first.

Fixes: #10390
Signed-off-by: John Spray <john.spray@redhat.com>
10 years agocommon/config_opts: add purge throttle options
John Spray [Tue, 20 Jan 2015 11:15:03 +0000 (11:15 +0000)]
common/config_opts: add purge throttle options

These are to be respected by the MDS in the number
of concurrent RADOS delete operations and
number of files to be purged at once.

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agoosdc: make op count in Filer::purge configurable
John Spray [Tue, 20 Jan 2015 11:12:45 +0000 (11:12 +0000)]
osdc: make op count in Filer::purge configurable

Previously this was simply hardcoded to do up to
10 RADOS delete ops at a time.  Make this a config
option so that Filer consumers (like the MDS) can
know how many concurrent operations will be done
on their behalf.

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agomds: eval stray on remove dentry replica
John Spray [Mon, 16 Feb 2015 17:03:42 +0000 (17:03 +0000)]
mds: eval stray on remove dentry replica

This happens because when handling an MCacheExpire,
we expire inodes first and then dentries, so when
the inodes are put() their dentries still are replicated
so eval_stray fails.  Do an explicit call to maybe_eval_stray
when handling the expire for the dentry in order to catch
this.

One hits this path when migrating a stray away from
a stopping MDS rank.

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agomds: expire other ranks' mydirs during 'stopping'
John Spray [Mon, 16 Feb 2015 17:01:43 +0000 (17:01 +0000)]
mds: expire other ranks' mydirs during 'stopping'

Avoids the surviving MDSs thinking their base dir is still
replicated after a rank has been stopped.

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agomds/Server: fix stray reintegration
John Spray [Thu, 29 Jan 2015 19:00:21 +0000 (19:00 +0000)]
mds/Server: fix stray reintegration

This was checking tracei's primary parent DN for remoteness
as a condition to calling eval_remote.  However, the *primary*
parent DN in this case is the stray, which is not remote.

The correct check is tracedn (the remote dentry that got us here)
rather than tracei->get_parent_dn() (the primary dentry for the
inode that we have looked up).

This leads to eval_remote being invoked, and reintegration
of stray hard-linked inodes working.

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agoMerge pull request #4114 from apeters1971/wip-isa-lrucache
Loic Dachary [Fri, 20 Mar 2015 10:35:32 +0000 (11:35 +0100)]
Merge pull request #4114 from apeters1971/wip-isa-lrucache

erasure-code: make ErasureCodeIsaTableCache drop entries according to LRU

Reviewed-by: Loic Dachary <ldachary@redhat.com>
10 years agoerasure-code: make ErasureCodeIsaTableCache drop entries according to LRU 4114/head
Andreas Peters [Fri, 20 Mar 2015 09:21:26 +0000 (10:21 +0100)]
erasure-code: make ErasureCodeIsaTableCache drop entries according to LRU

There was a bug in the arguments used by the splice function to move elements from the LRU list to the head of the list.
To simplify the implementation the direction of the LRU list has been changed e.g. newest entries are pushed in front.

Signed-off-by: Andreas-Joachim Peters <andreas.joachim.peters@cern.ch>
10 years agoMerge pull request #4084 from ceph/wip-switch-to-breathe
Loic Dachary [Fri, 20 Mar 2015 09:33:10 +0000 (10:33 +0100)]
Merge pull request #4084 from ceph/wip-switch-to-breathe

Wip switch to breathe

Reviewed-by: Loic Dachary <ldachary@redhat.com>
10 years agodoc: s/Asphyxiate/Breathe/ in documenting.rst 4084/head
Kefu Chai [Wed, 18 Mar 2015 03:52:18 +0000 (11:52 +0800)]
doc: s/Asphyxiate/Breathe/ in documenting.rst

Signed-off-by: Kefu Chai <kchai@redhat.com>
10 years agodoc: enable doxygen for enum
Kefu Chai [Wed, 18 Mar 2015 03:51:10 +0000 (11:51 +0800)]
doc: enable doxygen for enum

* since we switched to breathe, which supports rendering enum
  types

Signed-off-by: Kefu Chai <kchai@redhat.com>
10 years agodoc: Switch doxygen integration back to breathe
Kefu Chai [Tue, 17 Mar 2015 15:40:00 +0000 (23:40 +0800)]
doc: Switch doxygen integration back to breathe

* asphyxiate needs more toolings, see
  https://github.com/ceph/asphyxiate/issues/1
* this commit basically reverts c96064
* use `autodoxygen` directive to doxygen referenced source files
* do not call `doxygen` explicitly in `build-doc`, `autodoxygen`
  will take care of it.

Fixes: #6115
Fixes: #6115
Signed-off-by: Kefu Chai <kchai@redhat.com>
10 years agoMerge pull request #3983 from yuyuyu101/wip-async-fix-3
Haomai Wang [Fri, 20 Mar 2015 03:23:18 +0000 (11:23 +0800)]
Merge pull request #3983 from yuyuyu101/wip-async-fix-3

Wip async fix 3

Reviewed-by: Sage Weil <sage@redhat.com>
10 years agoThread.cc: Make set_affinity private and correct behavior 3983/head
Haomai Wang [Thu, 19 Mar 2015 06:56:23 +0000 (14:56 +0800)]
Thread.cc: Make set_affinity private and correct behavior

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
10 years agodoc/release-notes: more hammer release notes
Sage Weil [Fri, 20 Mar 2015 00:24:33 +0000 (17:24 -0700)]
doc/release-notes: more hammer release notes

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoMerge pull request #4085 from ceph/wip-11160
Sage Weil [Fri, 20 Mar 2015 00:19:59 +0000 (17:19 -0700)]
Merge pull request #4085 from ceph/wip-11160

rgw: don't use rgw_socket_path if frontend is configured

Reviewed-by: Sage Weil <sage@redhat.com>
10 years agodoc/release-notes: make hammer note about filestore format upgrade
Sage Weil [Fri, 20 Mar 2015 00:16:15 +0000 (17:16 -0700)]
doc/release-notes: make hammer note about filestore format upgrade

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoMerge pull request #3885 from Ved-vampir/master
John Spray [Thu, 19 Mar 2015 22:05:31 +0000 (22:05 +0000)]
Merge pull request #3885 from Ved-vampir/master

common: add perf counters description

Reviewed-by: John Spray <john.spray@redhat.com>
10 years agoMerge pull request #3840 from ceph/wip-libcephfs-fsetxattr
John Spray [Thu, 19 Mar 2015 22:03:04 +0000 (22:03 +0000)]
Merge pull request #3840 from ceph/wip-libcephfs-fsetxattr

libcephfs: add ceph_f{get,set,list,remove)_xattr

Reviewed-by: John Spray <john.spray@redhat.com>
10 years agoMerge pull request #3750 from ceph/wip-dump-cache
John Spray [Thu, 19 Mar 2015 22:00:48 +0000 (22:00 +0000)]
Merge pull request #3750 from ceph/wip-dump-cache

mds: Add 'dump cache' asok

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
10 years agomds: implement 'dump cache' asok command 3750/head
John Spray [Tue, 17 Mar 2015 18:38:41 +0000 (18:38 +0000)]
mds: implement 'dump cache' asok command

Retains old text format output when user specifies
a filename, else returns JSON.  JSON output will
cope less well with large caches, but will be more
useful for automated tests.

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agomds: use MDSCacheObject::dump in CDir::dump
John Spray [Wed, 18 Mar 2015 11:20:31 +0000 (11:20 +0000)]
mds: use MDSCacheObject::dump in CDir::dump

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agomds: add CDentry::dump
John Spray [Tue, 17 Mar 2015 18:43:42 +0000 (18:43 +0000)]
mds: add CDentry::dump

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agomds: extended dump() for CInode
John Spray [Tue, 17 Mar 2015 18:42:09 +0000 (18:42 +0000)]
mds: extended dump() for CInode

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agomds: add dump() to MDSCacheObject
John Spray [Tue, 17 Mar 2015 18:41:30 +0000 (18:41 +0000)]
mds: add dump() to MDSCacheObject

Subclasses extend this with their own attributes.

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agomds: add SimpleLock::dump
John Spray [Wed, 18 Mar 2015 10:39:10 +0000 (10:39 +0000)]
mds: add SimpleLock::dump

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agomds: add a dump() method to MutationImpl
John Spray [Tue, 17 Mar 2015 18:36:13 +0000 (18:36 +0000)]
mds: add a dump() method to MutationImpl

This is just an externally callable wrapper
to _dump that doesn't require caller
to pass in a time.

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agoinclude/frag: add a dump() method to fragtree_t
John Spray [Tue, 17 Mar 2015 17:47:50 +0000 (17:47 +0000)]
include/frag: add a dump() method to fragtree_t

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agomds: move auth_pins attrs into MDSCacheObject
John Spray [Thu, 26 Feb 2015 14:47:02 +0000 (14:47 +0000)]
mds: move auth_pins attrs into MDSCacheObject

These were common between CInode, CDir, CDentry.

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agoMerge branch 'master' of github.com:ceph/ceph
Sage Weil [Thu, 19 Mar 2015 20:05:01 +0000 (13:05 -0700)]
Merge branch 'master' of github.com:ceph/ceph

10 years agoMerge remote-tracking branch 'gh/hammer'
Sage Weil [Thu, 19 Mar 2015 19:41:04 +0000 (12:41 -0700)]
Merge remote-tracking branch 'gh/hammer'

Conflicts:
PendingReleaseNotes
src/Makefile.am
src/gmock
src/test/Makefile.am

10 years agoMerge pull request #4035 from ceph/wip-11113
Josh Durgin [Thu, 19 Mar 2015 18:47:55 +0000 (11:47 -0700)]
Merge pull request #4035 from ceph/wip-11113

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
10 years agoMerge pull request #3988 from ceph/wip-refine-build-configuration-hammer
Sage Weil [Thu, 19 Mar 2015 18:31:31 +0000 (11:31 -0700)]
Merge pull request #3988 from ceph/wip-refine-build-configuration-hammer

Refine build configuration for hammer

Reviewed-by: Sage Weil <sage@redhat.com>
10 years agoMerge pull request #4104 from rzarzynski/wip-11148
Yehuda Sadeh [Thu, 19 Mar 2015 16:57:30 +0000 (09:57 -0700)]
Merge pull request #4104 from rzarzynski/wip-11148

rgw: rectify 202 Accepted in response for PUT on already existing bucket

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
10 years agoMerge pull request #4105 from athanatos/wip-11110
Samuel Just [Thu, 19 Mar 2015 16:41:58 +0000 (09:41 -0700)]
Merge pull request #4105 from athanatos/wip-11110

Wip 11110

Reviewed-by: Sage Weil <sage@redhat.com>
10 years agoinit-radosgw*: don't require rgw_socket_path to be defined
Yehuda Sadeh [Thu, 19 Mar 2015 03:55:24 +0000 (20:55 -0700)]
init-radosgw*: don't require rgw_socket_path to be defined

Fixes: #11159
Backport: hammer, firefly

Scripts required rgw_socket_path to exist in order to start radosgw.
This is not needed.

Reported-by: Dan Mick <dmick@redhat.com>
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
(cherry picked from commit 6823bcdcd0ce72cd223e809291f46d82da76115c)

10 years agoMerge pull request #4087 from ceph/wip-11159
Sage Weil [Thu, 19 Mar 2015 16:12:17 +0000 (09:12 -0700)]
Merge pull request #4087 from ceph/wip-11159

init-radosgw*: don't require rgw_socket_path to be defined

Reviewed-by: Sage Weil <sage@redhat.com>
10 years agoMerge pull request #4064 from dachary/wip-10488-jerasure-idempotent
Samuel Just [Thu, 19 Mar 2015 15:52:53 +0000 (08:52 -0700)]
Merge pull request #4064 from dachary/wip-10488-jerasure-idempotent

mon: informative message when erasure-code-profile set fails

Reviewed-by: Sage Weil <sage@redhat.com>
10 years agoMerge pull request #4066 from dachary/wip-11144-erasure-code-profile-rm
Samuel Just [Thu, 19 Mar 2015 15:52:45 +0000 (08:52 -0700)]
Merge pull request #4066 from dachary/wip-11144-erasure-code-profile-rm

osd: erasure-code-profile incremental rm before set

Reviewed-by: Sage Weil <sage@redhat.com>
10 years agoPG: ensure that info.last_epoch_started only increases 4105/head
Samuel Just [Wed, 18 Mar 2015 19:11:07 +0000 (12:11 -0700)]
PG: ensure that info.last_epoch_started only increases

See doc/dev/osd_internals/last_epoch_started.rst

Fixes: #11110
Signed-off-by: Samuel Just <sjust@redhat.com>
10 years agodoc: add last_epoch_started.rst
Samuel Just [Wed, 18 Mar 2015 19:02:04 +0000 (12:02 -0700)]
doc: add last_epoch_started.rst

Signed-off-by: Samuel Just <sjust@redhat.com>
10 years agoMerge pull request #4054 from diurchenko/wip-10662
Yehuda Sadeh [Thu, 19 Mar 2015 14:41:10 +0000 (07:41 -0700)]
Merge pull request #4054 from diurchenko/wip-10662

rgw: Swift API. Allows setting attributes with COPY object operation.

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
10 years agorgw: rectify 202 Accepted in response for PUT on existing bucket. 4104/head
Radoslaw Zarzynski [Thu, 19 Mar 2015 13:52:18 +0000 (14:52 +0100)]
rgw: rectify 202 Accepted in response for PUT on existing bucket.

Fixes: #11148
Backport: hammer
Signed-off-by: Radoslaw Zarzynski <rzarzynski@mirantis.com>
10 years agoMerge pull request #4025 from ceph/wip-fix-configure-noversion
Loic Dachary [Thu, 19 Mar 2015 10:16:43 +0000 (11:16 +0100)]
Merge pull request #4025 from ceph/wip-fix-configure-noversion

configure.ac: add --disable-gitversion

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Loic Dachary <ldachary@redhat.com>
10 years agoconfigure.ac: add --disable-gitversion 4025/head
Danny Al-Gaaf [Thu, 12 Mar 2015 21:17:09 +0000 (22:17 +0100)]
configure.ac: add --disable-gitversion

During development each git commit cause currently a complete
rebuild of the source tree. By passing --disable-gitversion to
configure we set a generic version string for ceph to prevent
getting after each commit a new version set.

remove src/check_version and replace with a extended version
of src/make_version which allows detecting changes in .git_version
and ceph_ver.h to avoid not needed updates.

This change also forces to call make_version each time to make
sure that changes from configure or the NO_VERSION env variable
are processed.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
10 years agoinit-radosgw*: don't require rgw_socket_path to be defined 4087/head
Yehuda Sadeh [Thu, 19 Mar 2015 03:55:24 +0000 (20:55 -0700)]
init-radosgw*: don't require rgw_socket_path to be defined

Fixes: #11159
Backport: hammer, firefly

Scripts required rgw_socket_path to exist in order to start radosgw.
This is not needed.

Reported-by: Dan Mick <dmick@redhat.com>
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
10 years agorgw: don't use rgw_socket_path if frontend is configured 4085/head
Yehuda Sadeh [Thu, 19 Mar 2015 03:49:13 +0000 (20:49 -0700)]
rgw: don't use rgw_socket_path if frontend is configured

Fixes: #11160
Backport: hammer, firefly

Previously if we wanted to use the tcp fcgi socket, we needed to clear
rgw_socket_path.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
10 years agoMerge pull request #3951 from ceph/wip-cephfs-snaps
Gregory Farnum [Wed, 18 Mar 2015 21:31:51 +0000 (14:31 -0700)]
Merge pull request #3951 from ceph/wip-cephfs-snaps

Wip cephfs snaps

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
10 years agoMerge pull request #4072 from javierguerragiraldez/master
Josh Durgin [Wed, 18 Mar 2015 20:53:07 +0000 (13:53 -0700)]
Merge pull request #4072 from javierguerragiraldez/master

rados.py: fix Object.write() method

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
10 years agorados.py: fix Object.write() method 4072/head
Javier Guerra [Wed, 18 Mar 2015 19:46:13 +0000 (14:46 -0500)]
rados.py: fix Object.write() method

the file position should advance by the number of bytes written,
but the ioctx.write() function returns 0 on success

Signed-off-by: Javier Guerra <javier@guerrag.com>
10 years agoMerge pull request #3898 from jdurgin/wip-rbd-merge-diff
Sage Weil [Wed, 18 Mar 2015 20:18:18 +0000 (13:18 -0700)]
Merge pull request #3898 from jdurgin/wip-rbd-merge-diff

qa: make rbd-fuse exit cleanly with lttng

Reviewed-by: Sage Weil <sage@redhat.com>
10 years agoMerge pull request #4071 from athanatos/wip-10718
Sage Weil [Wed, 18 Mar 2015 20:16:53 +0000 (13:16 -0700)]
Merge pull request #4071 from athanatos/wip-10718

Wip 10718

Reviewed-by: Sage Weil <sage@redhat.com>
10 years agoMerge pull request #4016 from ceph/wip-11123
Samuel Just [Wed, 18 Mar 2015 19:18:16 +0000 (12:18 -0700)]
Merge pull request #4016 from ceph/wip-11123

osd: fix whiteout handling for delete+create compound ops

Reviewed-by: Samuel Just <sjust@redhat.com>
10 years agoPG: make sure to update history.last_epoch_started with first write
Samuel Just [Wed, 18 Mar 2015 18:19:09 +0000 (11:19 -0700)]
PG: make sure to update history.last_epoch_started with first write

Otherwise, we might remember the write, but not that the activation
interval was history.last_epoch_started.

Signed-off-by: Samuel Just <sjust@redhat.com>
10 years agoMerge pull request #4067 from ceph/wip-rbd-warning
Haomai Wang [Wed, 18 Mar 2015 16:44:48 +0000 (00:44 +0800)]
Merge pull request #4067 from ceph/wip-rbd-warning

tests: remove unused variable

Reviewed-by: Haomai Wang <haomaiwang@gmail.com>
10 years agotests: remove unused variable 4067/head
Josh Durgin [Wed, 18 Mar 2015 16:06:38 +0000 (09:06 -0700)]
tests: remove unused variable

Signed-off-by: Josh Durgin <jdurgin@redhat.com>
10 years agoosd: erasure-code-profile incremental rm before set 4066/head
Loic Dachary [Wed, 18 Mar 2015 13:17:00 +0000 (14:17 +0100)]
osd: erasure-code-profile incremental rm before set

It is possible for an incremental change to have both a rm and a set for
a given erasure code profile. It only happens when a rm is followed by a
set. When a set is followed by a rm, the rm will remove the pending set
in the incremental change.

The logic is the same for pool create and pool delete.

We must apply the incremental erasure-code-profile removal before the
creation otherwise rm and set in the same proposal will ignore the set.

This fix is minimal. A better change would be that erasure-code-profile
set checks if there is a pending removal and wait_for_finished_proposal
before creating.

http://tracker.ceph.com/issues/11144 Fixes: #11144

Signed-off-by: Loic Dachary <ldachary@redhat.com>
10 years agomon: informative message when erasure-code-profile set fails 4064/head
Loic Dachary [Wed, 18 Mar 2015 10:40:36 +0000 (11:40 +0100)]
mon: informative message when erasure-code-profile set fails

When erasure-code-profile set refuses to override an existing profile,
it may be non trivial to figure out why. For instance:

   ceph osd set default ruleset-failure-domain=host

fails with:

   Error EPERM: will not override erasure code profile default

although ruleset-failure-domain=host is documented to be the
default. The error message now includes the two profiles that have been
compared to not be equal so that the user can verify the difference.

   Error EPERM: will not override erasure code profile default
   because the existing profile
   {directory=.libs,k=2,m=1,plugin=jerasure,technique=reed_sol_van}
   is different from the proposed profile
   {directory=.libs,k=2,m=1,plugin=jerasure,ruleset-failure-domain=host,technique=reed_sol_van}

http://tracker.ceph.com/issues/10488 Fixes: #10488

Signed-off-by: Loic Dachary <ldachary@redhat.com>
10 years agomds: skip inode that is being puring when opening snap past parent 3951/head
Yan, Zheng [Tue, 17 Mar 2015 12:31:14 +0000 (20:31 +0800)]
mds: skip inode that is being puring when opening snap past parent

we can not increase reference count of purging inodes. purging
inodes have no snapshots, so it's OK to skip them.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
10 years agomds: don't crash MDS when snapshot data not found
Yan, Zheng [Mon, 16 Mar 2015 10:44:49 +0000 (18:44 +0800)]
mds: don't crash MDS when snapshot data not found

When remote dentry and inode are in different snapshot realms.
The inode may not contain snapshot data for snapshot of the remote
dentry.

This issue are difficult to fix. This patch MDS print an error
instead of triggering assersion.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
10 years agomds: pick head inode when caps follows is zero
Yan, Zheng [Sat, 14 Mar 2015 01:21:01 +0000 (09:21 +0800)]
mds: pick head inode when caps follows is zero

"caps follows is zero" means client does not flush anything, so
we shoud pick the head object

Signed-off-by: Yan, Zheng <zyan@redhat.com>
10 years agomds: fix purging snapshotted stray inode
Yan, Zheng [Tue, 10 Mar 2015 11:13:30 +0000 (19:13 +0800)]
mds: fix purging snapshotted stray inode

If stray inode has no snapshot data, it's OK to purge it even if
it's still referenced by some snapsthots. This is because seperate
snap inodes were created for snapshots.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
10 years agomds: check snapset in journal_cow_dentry()
Yan, Zheng [Tue, 10 Mar 2015 04:01:32 +0000 (12:01 +0800)]
mds: check snapset in journal_cow_dentry()

Removing snapshot also increases snaprealm's sequence number.
So only using snaprealm's sequence number to decide if we should
COW dentry is too loose. This patch makes journal_cow_dentry()
also check snaprealm's snapset.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
10 years agomds: fix fnode.snap_purged_thru check
Yan, Zheng [Wed, 18 Mar 2015 06:12:50 +0000 (14:12 +0800)]
mds: fix fnode.snap_purged_thru check

We do not alway succeed in purging all stale snap dentries
(stale snap dentris can be in-use or have been trimmed from
cache). Updating fnode.snap_purged_thru prematurely will make
us not purge the remainning stale snap dentries. If CDir
has no cached snap dentry when fetching dirfrag, we can
guaranee that all stale snap dentries will be purged.
So we only update fnode.snap_purged_thru in this case.

Now the code that purges stale snap dentries is executed more
frequently. So this patch also make readdir not purge stale
snap dentries

Signed-off-by: Yan, Zheng <zyan@redhat.com>
10 years agomds: purge stale snap data in CInode with snaprealm
Yan, Zheng [Tue, 10 Mar 2015 03:58:31 +0000 (11:58 +0800)]
mds: purge stale snap data in CInode with snaprealm

Signed-off-by: Yan, Zheng <zyan@redhat.com>
10 years agomds: fix purging stale snapshot dentries
Yan, Zheng [Tue, 10 Mar 2015 03:39:25 +0000 (11:39 +0800)]
mds: fix purging stale snapshot dentries

When fetching dirfrag, record stale snap dentries in CDir. So that
CDir::_omap_commit can remove these stale dentires from OMAP.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
10 years agoMerge pull request #3904 from yuyuyu101/wip-librbd-metadata
Josh Durgin [Wed, 18 Mar 2015 03:42:18 +0000 (20:42 -0700)]
Merge pull request #3904 from yuyuyu101/wip-librbd-metadata

Wip librbd metadata

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
10 years agoMerge pull request #4013 from ceph/wip-5488
Josh Durgin [Wed, 18 Mar 2015 02:53:54 +0000 (19:53 -0700)]
Merge pull request #4013 from ceph/wip-5488

librbd: fix deadlock on image refresh

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
10 years agoLibrbd: Add "start" and "max" arguments to metadata_list 3904/head
Haomai Wang [Tue, 17 Mar 2015 15:41:05 +0000 (23:41 +0800)]
Librbd: Add "start" and "max" arguments to metadata_list

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
10 years agoMerge pull request #3953 from wuxingyi/patch-2
Ken Dreyer [Wed, 18 Mar 2015 02:51:22 +0000 (20:51 -0600)]
Merge pull request #3953 from wuxingyi/patch-2

rgw/logrotate.conf: Rename service name

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
10 years agorgw/logrotate.conf: Rename service name 3953/head
wuxingyi [Wed, 11 Mar 2015 09:34:40 +0000 (17:34 +0800)]
rgw/logrotate.conf: Rename service name

The service name for ceph rados gateway was changed to "ceph-radosgw",
the previous version of service name "radosgw" would cause a failed reload,
and finally make it impossible to write any log data to the log file.

Signed-off-by: wuxingyi <wuxingyi2015@outlook.com>
10 years agoMerge pull request #4057 from ceph/wip-rgw-bootstrap
Sage Weil [Tue, 17 Mar 2015 23:34:25 +0000 (16:34 -0700)]
Merge pull request #4057 from ceph/wip-rgw-bootstrap

mon: add bootstrap-rgw profile

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
10 years agoMerge pull request #4055 from vuhuong/wip-xio
Sage Weil [Tue, 17 Mar 2015 23:24:33 +0000 (16:24 -0700)]
Merge pull request #4055 from vuhuong/wip-xio

XIO fixes

Reviewed-by: Sage Weil <sage@redhat.com>
10 years agoceph-create-keys: create bootstrap-rgw key 4057/head
Sage Weil [Tue, 17 Mar 2015 19:24:52 +0000 (12:24 -0700)]
ceph-create-keys: create bootstrap-rgw key

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agomon: add 'bootstrap-rgw' profile
Sage Weil [Fri, 6 Mar 2015 00:47:59 +0000 (16:47 -0800)]
mon: add 'bootstrap-rgw' profile

This profile is allowed to create client.rgw.* librados users.  They have
access to any pool, which is pretty coarse.

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agodoc/release-notes: v0.67.11 draft notes
Sage Weil [Tue, 17 Mar 2015 23:14:15 +0000 (16:14 -0700)]
doc/release-notes: v0.67.11 draft notes

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoCompile test_build_librgw only if WITH_BUILD_TESTS 3988/head
Boris Ranto [Mon, 16 Mar 2015 13:45:16 +0000 (14:45 +0100)]
Compile test_build_librgw only if WITH_BUILD_TESTS

10 years agoMerge pull request #4045 from NTmatter/docs-raid4-removal
Loic Dachary [Tue, 17 Mar 2015 17:56:55 +0000 (18:56 +0100)]
Merge pull request #4045 from NTmatter/docs-raid4-removal

doc-rados-operations-crush-map: Swap Raid4 for Erasure

Reviewed-by: Loic Dachary <ldachary@redhat.com>
10 years agoMerge remote-tracking branch 'gh/hammer'
Sage Weil [Tue, 17 Mar 2015 17:57:13 +0000 (10:57 -0700)]
Merge remote-tracking branch 'gh/hammer'

Conflicts:
src/gmock
src/msg/xio/XioPortal.h

10 years agoMerge pull request #3910 from athanatos/wip-11027
Samuel Just [Tue, 17 Mar 2015 17:28:56 +0000 (10:28 -0700)]
Merge pull request #3910 from athanatos/wip-11027

Wip 11027

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
Reviewed-by: Sage Weil <sage@redhat.com>
10 years agoMerge pull request #3918 from tchaikov/hammer-fix-leaks-in-C_TwoContexts
Samuel Just [Tue, 17 Mar 2015 17:28:19 +0000 (10:28 -0700)]
Merge pull request #3918 from tchaikov/hammer-fix-leaks-in-C_TwoContexts

osdc: fix a memory leak in C_TwoContexts

Reviewed-by: Samuel Just <sjust@redhat.com>
10 years agoMerge pull request #3972 from tchaikov/hammer-fix-msg-leak
Samuel Just [Tue, 17 Mar 2015 17:27:06 +0000 (10:27 -0700)]
Merge pull request #3972 from tchaikov/hammer-fix-msg-leak

osd: fix a msg leak

Reviewed-by: Sage Weil <sage@redhat.com>
10 years agoosd: use (robust) helper for setting exists or clearing whiteout 4016/head
Sage Weil [Tue, 17 Mar 2015 17:26:13 +0000 (10:26 -0700)]
osd: use (robust) helper for setting exists or clearing whiteout

The current blanket check in prepare_transaction() will trigger only when
there is a net obs.exists change from the commited obs to new_obs.
However, this misses the case where the first osd_op is a delete and then a
subsequent osd_op recreates the object.  Changing the whiteout check to
look only at new_obs does not work because it fails to understand when
_delete_oid sets the whiteout and will simply clear it again.

In order to support sequences of delete + create in general, we need to do
the whiteout flag clearing when the actual create happens (to match the
fact that we set it when we process the delete osd_op).  Use a helper to
do this and consolidate most other obs.exists = true code to use it.

Backport: giant, firefly
Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoMerge pull request #3994 from athanatos/wip-11069
Samuel Just [Tue, 17 Mar 2015 17:15:46 +0000 (10:15 -0700)]
Merge pull request #3994 from athanatos/wip-11069

PGLog: split divergent priors as well

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
10 years agoPGLog::merge_log: in tail extend case, log.log might be empty 4071/head
Samuel Just [Tue, 17 Mar 2015 17:07:03 +0000 (10:07 -0700)]
PGLog::merge_log: in tail extend case, log.log might be empty

Even if the tail != last_update, the log might be empty due to split
moving all entries into other logs.

Fixes: 10718
Signed-off-by: Samuel Just <sjust@redhat.com>
10 years agodoc-rados-operations-crush-map: Swap Raid4 for Erasure 4045/head
Thomas Johnson [Tue, 17 Mar 2015 16:32:24 +0000 (17:32 +0100)]
doc-rados-operations-crush-map: Swap Raid4 for Erasure

Signed-off-by: Thomas Johnson <NTmatter@gmail.com>
10 years agoMerge pull request #4001 from rzarzynski/wip-10650
Yehuda Sadeh [Tue, 17 Mar 2015 15:25:45 +0000 (08:25 -0700)]
Merge pull request #4001 from rzarzynski/wip-10650

rgw: send Last-Modified header in response for PUT on Swift's object.

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
10 years agoMerge pull request #3925 from rzarzynski/wip-11088
Yehuda Sadeh [Tue, 17 Mar 2015 15:11:40 +0000 (08:11 -0700)]
Merge pull request #3925 from rzarzynski/wip-11088

rgw: fix handling empty metadata items on Swift container.

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
10 years agoxio: Add xio_transport_type 4055/head
Vu Pham [Tue, 17 Mar 2015 12:17:01 +0000 (05:17 -0700)]
xio: Add xio_transport_type

Add xio_transport_type to control and run xio messenger over
rdma or tcp

Signed-off-by: Vu Pham <vu@mellanox.com>
10 years agoxio: Update README.xio with dependencies
Vu Pham [Tue, 17 Mar 2015 12:13:57 +0000 (05:13 -0700)]
xio: Update README.xio with dependencies

Signed-off-by: Vu Pham <vu@mellanox.com>
10 years agoMerge pull request #4024 from ceph/wip-unused-var
Loic Dachary [Tue, 17 Mar 2015 08:59:49 +0000 (09:59 +0100)]
Merge pull request #4024 from ceph/wip-unused-var

mds: remove double-define on iterator

Reviewed-by: Loic Dachary <ldachary@redhat.com>
10 years agomds: remove double-define on iterator 4024/head
John Spray [Tue, 17 Mar 2015 08:20:54 +0000 (08:20 +0000)]
mds: remove double-define on iterator

Signed-off-by: John Spray <john.spray@redhat.com>
10 years agoMerge pull request #3976 from wonzhq/hit-set-check
Kefu Chai [Tue, 17 Mar 2015 07:05:47 +0000 (15:05 +0800)]
Merge pull request #3976 from wonzhq/hit-set-check

osd/ReplicatePG: correctly checking if an object is in hit set

Reviewed-by: Kefu Chai <kchai@redhat.com>
10 years agoMerge pull request #4017 from ceph/wip-11125
Josh Durgin [Tue, 17 Mar 2015 01:27:12 +0000 (18:27 -0700)]
Merge pull request #4017 from ceph/wip-11125

rgw: update keystone cache with token info

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
10 years agoMerge pull request #4019 from NTmatter/doc-typo-monap
Loic Dachary [Mon, 16 Mar 2015 23:01:10 +0000 (00:01 +0100)]
Merge pull request #4019 from NTmatter/doc-typo-monap

doc/rados/operations/add-or-rm-mons: correcting minor typo

Reviewed-by: Loic Dachary <ldachary@redhat.com>
10 years agodoc/rados/operations/add-or-rm-mons: correcting minor typo 4019/head
Thomas Johnson [Mon, 16 Mar 2015 22:20:01 +0000 (23:20 +0100)]
doc/rados/operations/add-or-rm-mons: correcting minor typo

Signed-off-by: Thomas Johnson <NTmatter@gmail.com>