Commit Graph

40483 Commits

Author SHA1 Message Date
John Spray
842a4c32d3 include/frag: add a dump() method to fragtree_t
Signed-off-by: John Spray <john.spray@redhat.com>
2015-03-19 21:27:34 +00:00
John Spray
62ee84eb36 mds: move auth_pins attrs into MDSCacheObject
These were common between CInode, CDir, CDentry.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-03-19 21:27:32 +00:00
Sage Weil
bc7f6ced69 Merge branch 'master' of github.com:ceph/ceph 2015-03-19 13:05:01 -07:00
Sage Weil
d26a9dce5e Merge remote-tracking branch 'gh/hammer'
Conflicts:
	PendingReleaseNotes
	src/Makefile.am
	src/gmock
	src/test/Makefile.am
2015-03-19 12:41:04 -07:00
Josh Durgin
634c5a9443 Merge pull request #4035 from ceph/wip-11113
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-03-19 11:47:55 -07:00
Sage Weil
cfecd125fe Merge pull request #3988 from ceph/wip-refine-build-configuration-hammer
Refine build configuration for hammer

Reviewed-by: Sage Weil <sage@redhat.com>
2015-03-19 11:31:31 -07:00
Yehuda Sadeh
43ee14342f 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>
2015-03-19 09:57:30 -07:00
Samuel Just
91a5816702 Merge pull request #4105 from athanatos/wip-11110
Wip 11110

Reviewed-by: Sage Weil <sage@redhat.com>
2015-03-19 09:41:58 -07:00
Yehuda Sadeh
f96d58bd88 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 6823bcdcd0)
2015-03-19 09:18:25 -07:00
Sage Weil
e361066f78 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>
2015-03-19 09:12:17 -07:00
Samuel Just
b8fa08c692 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>
2015-03-19 08:52:53 -07:00
Samuel Just
3d22b88e49 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>
2015-03-19 08:52:45 -07:00
Samuel Just
0712d8d90b 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>
2015-03-19 08:41:40 -07:00
Samuel Just
2956ae278d doc: add last_epoch_started.rst
Signed-off-by: Samuel Just <sjust@redhat.com>
2015-03-19 08:41:38 -07:00
Yehuda Sadeh
6c5fe91e2c 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>
2015-03-19 07:41:10 -07:00
Radoslaw Zarzynski
3998fe7e02 rgw: rectify 202 Accepted in response for PUT on existing bucket.
Fixes: #11148
Backport: hammer
Signed-off-by: Radoslaw Zarzynski <rzarzynski@mirantis.com>
2015-03-19 14:59:50 +01:00
John Spray
640c235124 mds: fix error_str formatting in scrub output
operator<< on an ostringstream actually gets
you an address.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-03-19 13:16:33 +00:00
Raju Kurunkad
d5c44209a6 XIO: Handle queued incoming XIO messages during retry
1. Move queued incoming XIO messages to be released into the requeue Q
for retry once resources free up
2. During connection close, freeup queued incoming XIO messages to be
released
3. Handle a case where xio_send_msg() returns -1. In cases where
xio_errno() is also -1, XIO would have queued the message(s) to the
connection queue.

Signed-off-by: Raju Kurunkad <raju.kurunkad@sandisk.com>
2015-03-19 16:13:09 +05:30
Loic Dachary
fe25118b73 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>
2015-03-19 11:16:43 +01:00
Danny Al-Gaaf
cca067efde 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>
2015-03-19 09:38:46 +01:00
Yehuda Sadeh
6823bcdcd0 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>
2015-03-18 20:55:24 -07:00
Yehuda Sadeh
36d6eea3ca 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>
2015-03-18 20:52:56 -07:00
Kefu Chai
830752a528 doc: fix doxygen warnings
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-03-19 11:50:26 +08:00
Jianpeng Ma
b6cdc566e6 osd/ReplicatedPG: Fix a memory leak in do_pg_op.
If op have pgls_filter & pgnls_filter at the same time, it don't free
the first filter.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
2015-03-19 08:35:52 +08:00
Ian Kelling
64851f5e18 doc: consistent alternate cluster name arguments
In doc/install/manual-deployment.rst at least.

Signed-off-by: Ian Kelling <iank@iankelling.org>
2015-03-18 16:47:55 -07:00
Yann Dupont
c5835ae783 mailmap: Xiong Yiliang affiliation
Signed-off-by: Yann Dupont <yann@objoo.org>
Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-03-18 22:25:28 +00:00
Yann Dupont
41859dd01c mailmap: Raju Kurunkad affiliation
Signed-off-by: Yann Dupont <yann@objoo.org>
Reviewed-by: Raju Kurunkad <Raju.Kurunkad@sandisk.com>
Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-03-18 22:25:28 +00:00
Yann Dupont
867d88340c mailmap: Gregory Meno affiliation
Signed-off-by: Yann Dupont <yann@objoo.org>
Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-03-18 22:25:28 +00:00
Yann Dupont
634c0e669d mailmap: Gaurav Kumar Garg affiliation
Signed-off-by: Yann Dupont <yann@objoo.org>
2015-03-18 22:25:28 +00:00
Yann Dupont
700973e165 mailmap: Yuri Weinstein affiliation
Signed-off-by: Yann Dupont <yann@objoo.org>
Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-03-18 22:25:28 +00:00
Yann Dupont
2afe1e3c44 mailmap: Simon Guinot affiliation
Signed-off-by: Yann Dupont <yann@objoo.org>
2015-03-18 22:25:21 +00:00
Josh Durgin
811898912f common, global: use lttng ust functions for handling fork-like calls
This allows lttng to work across fork(2) and related calls, including
daemon(3). Without these calls, LD_PRELOAD would need to include
liblttng-ust-fork.so, which wraps fork and daemon.

If these calls or the liblttng-ust-fork wrappers are not used, the
atexit(3) handlers registered by lttng may cause a crash when the
process exits. This does not happen with upstart, since it runs
ceph-osd and other daemons in the foreground.

Backport: hammer
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2015-03-18 14:56:39 -07:00
Gregory Farnum
68d3637fea Merge pull request #3951 from ceph/wip-cephfs-snaps
Wip cephfs snaps

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2015-03-18 14:31:51 -07:00
Josh Durgin
700a2ea400 Merge pull request #4072 from javierguerragiraldez/master
rados.py: fix Object.write() method

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-03-18 13:53:07 -07:00
Javier Guerra
d5d0aa332a 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>
2015-03-18 15:22:28 -05:00
Sage Weil
78790b304b 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>
2015-03-18 13:18:18 -07:00
Sage Weil
e096593a02 Merge pull request #4071 from athanatos/wip-10718
Wip 10718

Reviewed-by: Sage Weil <sage@redhat.com>
2015-03-18 13:16:53 -07:00
Samuel Just
cce74c7858 Merge pull request #4016 from ceph/wip-11123
osd: fix whiteout handling for delete+create compound ops

Reviewed-by: Samuel Just <sjust@redhat.com>
2015-03-18 12:18:16 -07:00
Samuel Just
2da958464d 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>
2015-03-18 11:19:49 -07:00
Haomai Wang
9ad1b283dc Merge pull request #4067 from ceph/wip-rbd-warning
tests: remove unused variable

Reviewed-by: Haomai Wang <haomaiwang@gmail.com>
2015-03-19 00:44:48 +08:00
Josh Durgin
e54d57df15 tests: remove unused variable
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2015-03-18 09:18:24 -07:00
Loic Dachary
0d52aca0d0 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>
2015-03-18 14:17:00 +01:00
Loic Dachary
b92f9cf73e 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>
2015-03-18 11:53:20 +01:00
Yan, Zheng
2395ee1b24 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>
2015-03-18 14:25:44 +08:00
Yan, Zheng
0dfab5d639 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>
2015-03-18 14:25:44 +08:00
Yan, Zheng
1956e68231 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>
2015-03-18 14:25:44 +08:00
Yan, Zheng
1bb4a9df60 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>
2015-03-18 14:25:44 +08:00
Yan, Zheng
7f2ddf598e 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>
2015-03-18 14:25:44 +08:00
Yan, Zheng
7ae66c495e 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>
2015-03-18 14:12:50 +08:00
Yan, Zheng
635d792515 mds: purge stale snap data in CInode with snaprealm
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-03-18 14:12:34 +08:00