Commit Graph

39262 Commits

Author SHA1 Message Date
Josh Durgin
a0b60297fc Merge pull request #3657 from ceph/wip-10782
pybind: fixed runtime errors with librbdpy

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-02-06 20:04:31 -08:00
Loic Dachary
a8a4c8278e Merge pull request #3627 from tchaikov/check_output-on-centos6
ceph_objectstore_tool: fix check_output on python2.6

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-02-06 19:16:48 +01:00
Kefu Chai
15350a088d ceph_objectstore_tool: fix check_output on python2.6
* backported the subprocess.check_output from python2.7

Fixes: #10756

Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-02-07 01:23:02 +08:00
Sage Weil
34f5326c0b Merge pull request #3652 from dachary/wip-mailmap
mailmap: UMD is University of Maryland
2015-02-06 05:33:55 -08:00
Sage Weil
0d7df6c30a Merge pull request #3131 from mslovy/fix_init_filejournal_throttle
os: FileJournal:: fix, uninitialization of FileJournal throttle

Reviewed-by: Sage Weil <sage@redhat.com>
2015-02-06 05:30:28 -08:00
Loic Dachary
9dfd4ac1af mailmap: UMD is University of Maryland
And not University of Mississippi

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-02-06 13:05:12 +01:00
Sage Weil
a08d3be053 Merge remote-tracking branch 'gh/hammer' 2015-02-06 03:04:09 -08:00
Sage Weil
6d72a1f040 Merge pull request #3468 from ceph/wip-cephfs-snap1
Wip cephfs snap1

Reviewed-by: Sage Weil <sage@redhat.com>
2015-02-06 03:02:50 -08:00
Sage Weil
69288ce458 Merge pull request #3649 from ceph/wip-opath-setattr
client: handle O_PATH fds on setattr too

Reviewed-by: Sage Weil <sage@redhat.com>
2015-02-06 02:31:11 -08:00
Loic Dachary
1504dd624d Merge pull request #3633 from sponce/wip-10758
Fixed issue #10758 : write_full behavior in libradosstriper

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-02-06 10:03:31 +01:00
Sebastien Ponce
6a91f2bb82 libradosstriper: fixed write_full when ENOENT
Fixes: #10758
write_full was returning ENOENT when the file did not exists, while it should just have created it without complaining.

Signed-off-by: Sebastien Ponce <sebastien.ponce@cern.ch>
2015-02-06 09:08:35 +01:00
Gregory Farnum
7d05c9e5d1 Merge pull request #3624 from ktdreyer/wip-doc-submitting-patches-branches
SubmittingPatches: clarify the use of branches in PRs

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2015-02-05 22:14:22 -08:00
Greg Farnum
051453640c client: handle O_PATH fds on setattr too
Signed-off-by: Greg Farnum <gfarnum@redhat.com>
2015-02-05 21:05:57 -08:00
Josh Durgin
9446358f8c Merge pull request #3626 from majianpeng/misc
rbd.py: Add rbd_read2/rbd_write2 funcion which can handle fadvise flags.

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-02-06 05:10:43 +01:00
Jianpeng Ma
538395d606 rbd.py: Add rbd_read2/rbd_write2 funcion which can handle fadvise flags.
Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
2015-02-06 09:19:20 +08:00
Sage Weil
1c394e4b26 Merge pull request #3642 from vuhuong/wip-hammer
Wip xio hammer

Reviewed-by: Matt Benjamin <matt@cohortfs.com>
2015-02-05 11:30:57 -08:00
Sage Weil
49486deb3e Merge pull request #3639 from ceph/wip-10770
rgw: send appropriate op to cancel bucket index pending operation

Reviewed-by: Sage Weil <sage@redhat.com>
2015-02-05 11:22:30 -08:00
Sage Weil
54a22236a0 Merge pull request #3641 from athanatos/wip-10731
ReplicatedPG: block writes on degraded objects unless all peers support ...

Reviewed-by: Sage Weil <sage@redhat.com>
2015-02-05 11:13:42 -08:00
Yehuda Sadeh
dfee96e3ae rgw: send appropriate op to cancel bucket index pending operation
Fixes: #10770
Backport: firefly, giant

Reported-by: baijiaruo <baijiaruo@126.com>
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2015-02-05 09:48:36 -08:00
Samuel Just
c293a0304b Merge pull request #3618 from tchaikov/add-norebalance-flag
Add norebalance flag

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2015-02-05 06:55:58 -08:00
Yan, Zheng
b3fdf15888 mds: avoid propagrating unnecessary snap rstat to parent
if parent is not snapshotted, avoid propagrating snap rstat to it

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:39 +08:00
Yan, Zheng
32b089224e mds: update client_need_snapflush when splitting snap inode
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:39 +08:00
Yan, Zheng
6cb9b01fb6 mds: fix rdlock snap inode
make sure the "sync head inode" code  execute

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:39 +08:00
Yan, Zheng
d62c67ca20 mds: save the oldest snapid of inode
When moving a inode to different snapshot realm, we need to check if
the inode is snapshotted. If the inode is snapshotted, we create a
snapshot realm for it. The snapshot realm records inode's past snapshot
realm.

Currently there is no reliable way to check if a inode is snapshotted.
So add a new field to CInode the store the oldest snapid, it's used to
check if inode is snapshotted.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:39 +08:00
Yan, Zheng
8624172d1a qa/workunits/snaps: remove snapshots when test finishes
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:39 +08:00
Yan, Zheng
b66e74961b mds: split old_inode when needed
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:39 +08:00
Yan, Zheng
a464558ff7 qa/workunits/snaps: don't assume snapshot is disabled
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:39 +08:00
Yan, Zheng
244267ba6b ceph: don't count snap dentries when calculating new fragstat/neststat
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:39 +08:00
Yan, Zheng
c31ed41449 mds: add snaprealm to open_past_parents after it's opened
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:39 +08:00
Yan, Zheng
01ff547b11 mds: avoid infinite loop of SnapRealm::_open_parents
handle the case that some past parents are missing

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:39 +08:00
Yan, Zheng
dda08a0cc9 mds: properly commit snaprealm to dirfrag
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:39 +08:00
Yan, Zheng
966e108055 mds: don't manully create snaprealm during rename
project_past_snaprealm_parent() will do the same job. Besides
MDCache::_snaprealm_create_finish() is buggy, it updates snaprealm's
current_parent_since incorrectly

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:39 +08:00
Yan, Zheng
f3b61e6892 mds: don't mark dirfrag dirty after dropping stale dentries
now MDS use omap to store dirfrag, and always does partial commit.
marking dirfrag dirty after dropping stale dentries is useless.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:39 +08:00
Yan, Zheng
ad6f0cfb6d client: remove snapshot dentry during rmsnap
reply of RMSNAP request has no trace, we need to invalidate the
snapshot dentry manually

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:38 +08:00
Yan, Zheng
087ccd6fc3 client: remove snaprealm from parent when closing it
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:38 +08:00
Yan, Zheng
505a5f55df client: check xattr version independent of inode version
Fixes: #10343
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:38 +08:00
Yan, Zheng
13d8475f51 mds: remove superfluous assertion
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:38 +08:00
Yan, Zheng
b0e0e1c896 mds: temporarily disable recovery for snapshotted files
recovery of snapshots is very inefficient, which requires
NR_SNAPS * NR_OBJECTS operations.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:38 +08:00
Yan, Zheng
572e42e85d mds: verify backtrace by auth MDS only
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:38 +08:00
Yan, Zheng
d8e3ce8a1f mds: avoid sending snaptrace for snapshot inodes
snapshot information in snaptrace is only used by head inodes

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:38 +08:00
Yan, Zheng
1a648cd130 mds: optimize SnapRealm::split_at()
avoid executing the 'split children' code because all snaprealms in
mdsdir has no child snaprealm.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:38 +08:00
Yan, Zheng
ed422bed39 mds: fix reference after free
CDir::try_trim_snap_dentry() may free the dentry

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:38 +08:00
Yan, Zheng
4391cdd648 mds: journal snaprealm for all types of inodes
regular file also can has snaprealm.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:38 +08:00
Yan, Zheng
a0f51a2ec5 mds: always create multiversion inode when cow inode
When moving a snapshotted regular file to stray directory, we need
to create an snaprealm for it. The snaprealm is required for building
correct snapshot context when purging file objects.

Current code normally create seperate inodes when a snapshotted file
inode is COWed. Each time the file inode is COWed, the head inode's
'first' is updated. So when deleting the file, we can't use head inode's
'first' to check if it was snapshotted.

This commit make MDCache::journal_cow_dentry always create multiversion
inode. multiversion inode's 'first' keeps constant.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:38 +08:00
Yan, Zheng
5f58c4ccfc mds: check multiversion inode when purging stray
we can't purge a multiversion directory inode when it is still referenced
by some snapshots. For regular files that are still referenced by some
snapshots, we need to keep the backtrace object.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:38 +08:00
Yan, Zheng
6cd044acdf mds: properly project past snaprealm parent while renaming files
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:38 +08:00
Yan, Zheng
335f02bf7d mds: properly update trace vector when quiting path traverse
rdlock_path_pin_ref() uses the trace vector to setup request reply's
tracedn

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:38 +08:00
Yan, Zheng
f192e2dcea mds: properly update capability's client_follow
handle discontinuous snapid(s)

Fixes: #10323
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:38 +08:00
Yan, Zheng
dbf09af9df mds: fix CInode::remove_need_snapflush
make sure client and snapid exist, then drop CInode::PIN_NEEDSNAPFLUSH

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:37 +08:00
Yan, Zheng
1e53bcbef4 mds: provide correct snaps to purge_stale_snap_data()
if a directory inode has snaprealm, its parent directory's snapshot
set can be not equal to its snapshot set

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-02-05 22:40:37 +08:00