]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
9 years agodoc/radosgw: rename config.rst to config-fcgi.rst 10381/head
Nathan Cutler [Thu, 21 Jul 2016 12:17:08 +0000 (14:17 +0200)]
doc/radosgw: rename config.rst to config-fcgi.rst

This file documents how to configure RGW to use Apache/FastCGI, so rename
the file and modify the title and intro to make that clear.

Also, add a note that CGI can pose a security risk - e.g. http://httpoxy.org

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoMerge pull request #9667 from SUSE/wip-15984
Boris Ranto [Wed, 20 Jul 2016 09:01:43 +0000 (11:01 +0200)]
Merge pull request #9667 from SUSE/wip-15984

ceph-osd-prestart.sh: drop Upstart-specific code

Reviewed-by: Boris Ranto <branto@redhat.com>
9 years agoMerge pull request #10339 from tchaikov/wip-16675
Kefu Chai [Wed, 20 Jul 2016 09:00:38 +0000 (17:00 +0800)]
Merge pull request #10339 from tchaikov/wip-16675

selinux: allow read /proc/<pid>/cmdline

Reviewed-by: Boris Ranto <branto@redhat.com>
9 years agoMerge pull request #10353 from rjfd/wip-fix-ceph-mount
Nathan Cutler [Wed, 20 Jul 2016 02:22:21 +0000 (04:22 +0200)]
Merge pull request #10353 from rjfd/wip-fix-ceph-mount

rpm: Fix creation of mount.ceph symbolic link for SUSE distros

Reviewed-by: Nathan Cutler <ncutler@suse.com>
9 years agoMerge pull request #10351 from ceph/wip-cmake
Kefu Chai [Wed, 20 Jul 2016 02:06:29 +0000 (10:06 +0800)]
Merge pull request #10351 from ceph/wip-cmake

cmake changes

Reviewed-by: Ali Maredia <amaredia@redhat.com>
9 years agoMerge pull request #10295 from xiexingguo/xxg-wip-bluestore-2016-07-14
Mark Nelson [Tue, 19 Jul 2016 21:16:29 +0000 (16:16 -0500)]
Merge pull request #10295 from xiexingguo/xxg-wip-bluestore-2016-07-14

kv/MemDB: misc fixes and cleanups

Mark's Comments:
This passed "ceph_test_objectstore --gtest_filter=*/2".
This PR did not appear to have a significant impact on performance tests.

Reviewed-by: Mark Nelson <mnelson@redhat.com>
9 years agoMerge pull request #10294 from xiexingguo/xxg-wip-bluestore-2016-07-13
Mark Nelson [Tue, 19 Jul 2016 21:15:25 +0000 (16:15 -0500)]
Merge pull request #10294 from xiexingguo/xxg-wip-bluestore-2016-07-13

os/bluestore: use BE for gifting and reclaiming from bluefs

Mark's Comments:
This passed "ceph_test_objectstore --gtest_filter=*/2".
This PR did not appear to have a significant impact on performance tests.

Reviewed-by: Mark Nelson <mnelson@redhat.com>
9 years agoMerge pull request #10277 from xiexingguo/xxg-wip-fix-posix-fallocate
Mark Nelson [Tue, 19 Jul 2016 21:12:13 +0000 (16:12 -0500)]
Merge pull request #10277 from xiexingguo/xxg-wip-fix-posix-fallocate

os/bluestore: fix error handling of posix_fallocate()

Mark's Comments:
This passed "ceph_test_objectstore --gtest_filter=*/2".
This PR did not appear to have a significant impact on performance tests.

Reviewed-by: Mark Nelson <mnelson@redhat.com>
9 years agoMerge pull request #10249 from dillaman/wip-16622
Mykola Golub [Tue, 19 Jul 2016 17:16:04 +0000 (20:16 +0300)]
Merge pull request #10249 from dillaman/wip-16622

rbd-mirror: snap rename does not properly replicate to peers

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
9 years agoMerge pull request #10313 from ceph/objclass-perm-feedback
Kefu Chai [Tue, 19 Jul 2016 14:43:29 +0000 (22:43 +0800)]
Merge pull request #10313 from ceph/objclass-perm-feedback

Objclass perm feedback

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agorpm: Fix creation of mount.ceph symbolic link for SUSE distros 10353/head
Ricardo Dias [Tue, 19 Jul 2016 14:40:36 +0000 (15:40 +0100)]
rpm: Fix creation of mount.ceph symbolic link for SUSE distros

Signed-off-by: Ricardo Dias <rdias@suse.com>
9 years agocmake: disable VTA for osdcap.cc 10351/head
Kefu Chai [Tue, 19 Jul 2016 09:30:03 +0000 (17:30 +0800)]
cmake: disable VTA for osdcap.cc

this silences the warning of:
```
In file included from
/home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/include/gtest/gtest.h:58:0,
                 from
/home/jenkins-build/build/workspace/ceph-pull-requests/src/test/osd/osdcap.cc:20:
/home/jenkins-build/build/workspace/ceph-pull-requests/src/test/osd/osdcap.cc:
In member function ‘virtual void
OSDCap_AllowClassMulti_Test::TestBody()’:
/home/jenkins-build/build/workspace/ceph-pull-requests/src/test/osd/osdcap.cc:766:6:
note: variable tracking size limit exceeded with
-fvar-tracking-assignments, retrying without
 TEST(OSDCap, AllowClassMulti) {
      ^
/home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/include/gtest/internal/gtest-internal.h:1211:3:
note: in definition of macro ‘GTEST_TEST_CLASS_NAME_’
   test_case_name##_##test_name##_Test
   ^
/home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/include/gtest/gtest.h:2181:3:
note: in expansion of macro ‘GTEST_TEST_’
   GTEST_TEST_(test_case_name, test_name, \
   ^
/home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/include/gtest/gtest.h:2187:42:
note: in expansion of macro ‘GTEST_TEST’
 # define TEST(test_case_name, test_name) GTEST_TEST(test_case_name,
 # test_name)
                                          ^
/home/jenkins-build/build/workspace/ceph-pull-requests/src/test/osd/osdcap.cc:766:1:
note: in expansion of macro ‘TEST’
 TEST(OSDCap, AllowClassMulti) {
 ^
```

see also b668051

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agocmake: remove util.cc from lib{rados,cephfs},ceph-objectstore-tool
Kefu Chai [Tue, 19 Jul 2016 06:24:45 +0000 (14:24 +0800)]
cmake: remove util.cc from lib{rados,cephfs},ceph-objectstore-tool

util.cc is included by both librados and libcephfs, the `lvm` static
variable in `lsb_release_parse()` will be free twice by them. this
could lead to double free issue. and util.cc is not used by client at all, so
remove it from them.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agocmake: restructure src/CMakeLists.txt in a more hierarchical way
Kefu Chai [Tue, 19 Jul 2016 06:23:18 +0000 (14:23 +0800)]
cmake: restructure src/CMakeLists.txt in a more hierarchical way

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agorbd-mirror: preprocess journal events prior to applying 10249/head
Jason Dillaman [Mon, 11 Jul 2016 19:32:45 +0000 (15:32 -0400)]
rbd-mirror: preprocess journal events prior to applying

Fixes: http://tracker.ceph.com/issues/16622
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agorbd-mirror: event preprocessor to handle snap rename operations
Jason Dillaman [Fri, 8 Jul 2016 20:19:52 +0000 (16:19 -0400)]
rbd-mirror: event preprocessor to handle snap rename operations

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: improve journaling debug log messages
Jason Dillaman [Fri, 8 Jul 2016 19:16:04 +0000 (15:16 -0400)]
librbd: improve journaling debug log messages

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: separate journal event decoding and processing
Jason Dillaman [Fri, 8 Jul 2016 18:37:14 +0000 (14:37 -0400)]
librbd: separate journal event decoding and processing

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: record original snap name in snap rename journal event
Jason Dillaman [Fri, 8 Jul 2016 13:14:58 +0000 (09:14 -0400)]
librbd: record original snap name in snap rename journal event

Remote peers need a key to map snapshot ids between clusters.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: simple duplicate op checks for all maintenance operations
Jason Dillaman [Fri, 8 Jul 2016 13:13:07 +0000 (09:13 -0400)]
librbd: simple duplicate op checks for all maintenance operations

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoqa/workunits/rbd: exercise snapshot renames within rbd-mirror test
Jason Dillaman [Fri, 8 Jul 2016 02:16:51 +0000 (22:16 -0400)]
qa/workunits/rbd: exercise snapshot renames within rbd-mirror test

Snapshot rename operations utilize the (cluster) unique snapshot
sequence to prevent attempts at replays. When mirroring to a
different cluster, these sequences will not align.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoMerge pull request #10250 from gregsfortytwo/wip-sessionmap-committing
John Spray [Tue, 19 Jul 2016 09:51:26 +0000 (10:51 +0100)]
Merge pull request #10250 from gregsfortytwo/wip-sessionmap-committing

mds: Return "committing" rather than "committed" member in get_committing

Reviewed-by: John Spray <john.spray@redhat.com>
9 years agoMerge pull request #10346 from tchaikov/wip-make-check
Kefu Chai [Tue, 19 Jul 2016 09:50:21 +0000 (17:50 +0800)]
Merge pull request #10346 from tchaikov/wip-make-check

test: ceph-disk.sh do not kill all daemons

Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
9 years agoRevert "run-make-check.sh: run tests in two steps" 10346/head
Kefu Chai [Tue, 19 Jul 2016 08:20:43 +0000 (16:20 +0800)]
Revert "run-make-check.sh: run tests in two steps"

This reverts commit cd0dfc305d3861b9baf332a1cc13f1c716d8017b.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agoRevert "cmake: label some tests with "Racing""
Kefu Chai [Tue, 19 Jul 2016 08:08:37 +0000 (16:08 +0800)]
Revert "cmake: label some tests with "Racing""

This reverts commit 3a21d0040a7a96aefcf0f4876ee4006c4225019c.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agotest: ceph-disk.sh: do not kill all daemons
Kefu Chai [Tue, 19 Jul 2016 08:04:18 +0000 (16:04 +0800)]
test: ceph-disk.sh: do not kill all daemons

this causes mysterious "racing" issues when running ceph-helper tests in
parallel.

Fixes: http://tracker.ceph.com/issues/16729
Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agoselinux: allow read /proc/<pid>/cmdline 10339/head
Kefu Chai [Tue, 19 Jul 2016 03:34:49 +0000 (11:34 +0800)]
selinux: allow read /proc/<pid>/cmdline

we read /proc/<pid>/cmdline to figure out who is terminating us.

Fixes: http://tracker.ceph.com/issues/16675
Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #10317 from wjwithagen/wip-wjw-fix-dl-lib
Kefu Chai [Tue, 19 Jul 2016 02:36:42 +0000 (10:36 +0800)]
Merge pull request #10317 from wjwithagen/wip-wjw-fix-dl-lib

Cmake: fix using CMAKE_DL_LIBS instead of dl

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #10147 from SUSE/wip-16598
Nathan Cutler [Tue, 19 Jul 2016 00:28:15 +0000 (02:28 +0200)]
Merge pull request #10147 from SUSE/wip-16598

rpm: move mount.ceph from ceph-base to ceph-common and add symlink in /sbin for SUSE

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Reviewed-by: Boris Ranto <branto@redhat.com
9 years agoMerge pull request #9411 from ceph/wip-rocksdb-perf
Yuri Weinstein [Mon, 18 Jul 2016 23:28:21 +0000 (16:28 -0700)]
Merge pull request #9411 from ceph/wip-rocksdb-perf

os/RocksDBStore: use effective Get API instead of iterator api

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Mark Nelson <mnelson@redhat.com>
9 years agoMerge pull request #10130 from yonghengdexin735/wip-zzz-add-
Yuri Weinstein [Mon, 18 Jul 2016 23:23:59 +0000 (16:23 -0700)]
Merge pull request #10130 from yonghengdexin735/wip-zzz-add-

src/common/buffer.cc fix judgment for lseek

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agoMerge pull request #10197 from songbaisen/b0
Yuri Weinstein [Mon, 18 Jul 2016 23:22:40 +0000 (16:22 -0700)]
Merge pull request #10197 from songbaisen/b0

mon: write fsid use the right return value

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #9291 from trociny/wip-15715
Jason Dillaman [Mon, 18 Jul 2016 20:44:58 +0000 (16:44 -0400)]
Merge pull request #9291 from trociny/wip-15715

rbd-nbd does not properly handle resize notifications

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
9 years agoMerge pull request #9878 from neurodrone/rbd_api_shrink_check_on_resize
Jason Dillaman [Mon, 18 Jul 2016 20:44:15 +0000 (16:44 -0400)]
Merge pull request #9878 from neurodrone/rbd_api_shrink_check_on_resize

librbd: add explicit shrink check while resizing images

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
9 years agoMerge pull request #9955 from ukernel/wip-mds-snap-failover
John Spray [Mon, 18 Jul 2016 20:01:35 +0000 (21:01 +0100)]
Merge pull request #9955 from ukernel/wip-mds-snap-failover

mds: snap failover fixes

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
9 years agoMerge pull request #10283 from ceph/wip-cmake
Ali Maredia [Mon, 18 Jul 2016 17:59:14 +0000 (13:59 -0400)]
Merge pull request #10283 from ceph/wip-cmake

cmake changes

Reviewed-by: Ali Maredia <amaredia@redhat.com>
9 years agobuild/ops: build mount.ceph and mount.fuse.ceph as client binaries 10147/head
Nathan Cutler [Mon, 18 Jul 2016 17:09:54 +0000 (19:09 +0200)]
build/ops: build mount.ceph and mount.fuse.ceph as client binaries

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoos/bluestore: use p2 macros to simplify bit-allocator block alignment
xie xingguo [Tue, 12 Jul 2016 02:33:57 +0000 (10:33 +0800)]
os/bluestore: use p2 macros to simplify bit-allocator block alignment

Mark's comments:

This passed "ceph_test_objectstore --gtest_filter=*/2".
This PR did not appear to have a significant impact on performance tests.

Closes #10253

os/bluestore: require block_size to be power of 2 aligned

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
os/bluestore: use ISP2 macro for zone/span size checking

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agoos/bluestore: fix potential uninitialized nid of onode
xie xingguo [Mon, 11 Jul 2016 02:59:27 +0000 (10:59 +0800)]
os/bluestore: fix potential uninitialized nid of onode

The _zero() process may implicitly create a new onode,
thus we shall call _assign_nid() to initialize the nid
properly. And if the onode already has one, _assign_nid()
does nothing.

So it is proper to call _assign_nid() here under any case.

Mark's comments:

This passed "ceph_test_objectstore --gtest_filter=*/2".
This PR did not appear to have a significant impact on performance tests.

Closes #10236

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
os/bluestore: check against we don't overflow

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
os/bluestore: try to reap as many collections as we can

So if there is one collection getting contiguously stucking,
we don't abort at the same point each time.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
os/bluestore: make device size of BitFreelistManager is block-size aligned

Otherwise if we try to set past-eof blocks as allocated durint create(),
the call to _xor() will trigger the firing of the following assert:

   assert((length & block_mask) == length);

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agoos/bluestore: end scope of std::hex properly; convert csum error to EIO
xie xingguo [Sat, 9 Jul 2016 08:32:52 +0000 (16:32 +0800)]
os/bluestore: end scope of std::hex properly; convert csum error to EIO

Mark's comments:

This passed "ceph_test_objectstore --gtest_filter=*/2".
This PR did not appear to have a significant impact on performance tests.

Closes #10225

os/bluestore: end scope of std::hex properly

To avoid side-effects by accident.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
os/bluestore: convert csum error to EIO

The verify_csum() method either returns -1 or -EOPNOTSUPP, which
is not very proper and difficult for user understanding.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
os/bluestore: assert lextent is shared

Otherwise we are risking of accessing violation.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
os/bluestore: drop duplicated assignment of result code

These two methods never fail actually.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
os/bluestore: improve _do_read() a little

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
os/bluestore: assert decoding of shard of key to be successful

Otherwise we are risking of acessing null pointer.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agorpm: move mount.ceph from ceph-base to ceph-common
Nathan Cutler [Mon, 18 Jul 2016 14:16:11 +0000 (16:16 +0200)]
rpm: move mount.ceph from ceph-base to ceph-common

Ceph clients use mount.ceph to mount CephFS filesystems, and
ceph-base is not expected to be installed on client systems.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agorpm: create mount.ceph symlink in /sbin (SUSE only)
Nathan Cutler [Wed, 6 Jul 2016 08:13:03 +0000 (10:13 +0200)]
rpm: create mount.ceph symlink in /sbin (SUSE only)

Fixes: http://tracker.ceph.com/issues/16598
Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoos/bluestore: revert preferred csum behavior
Mark Nelson [Sun, 17 Jul 2016 11:39:41 +0000 (06:39 -0500)]
os/bluestore: revert preferred csum behavior

This passes "ceph_test_objectstore --gtest_filter=*/2".
This restores 4K random read performance to previous levels when objects
are were previously written out using large IOs (4MB in this case):

pre-patch: 26MB/s
post-pated: 610MB/s

Closes #10320

Signed-off-by: Mark Nelson <mnelson@redhat.com>
9 years agoBluestore: Fixed a Bluestore crash
Somnath Roy [Sat, 9 Jul 2016 02:41:46 +0000 (22:41 -0400)]
Bluestore: Fixed a Bluestore crash

A bluestore race condition is been fixed by protecting txc structures
within _txc_state_poc with collection lock.

Mark's comments:

This fixes segfaults during random write tests with bluestore.
This passes "ceph_test_objectstore --gtest_filter=*/2".
This may introduce a small performance regresion, though there is enough
noise in the results to make it inconclusive.

Closes #10220

Signed-off-by: Somnath Roy <somnath.roy@sandisk.com>
9 years agoCmake: fix using CMAKE_DL_LIBS instead of dl 10317/head
Willem Jan Withagen [Sat, 16 Jul 2016 12:08:45 +0000 (14:08 +0200)]
Cmake: fix using CMAKE_DL_LIBS instead of dl

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
9 years agocmake: only allow up to 1 hour for a ceph test 10283/head
Kefu Chai [Thu, 14 Jul 2016 07:59:14 +0000 (15:59 +0800)]
cmake: only allow up to 1 hour for a ceph test

quote from
https://cmake.org/cmake/help/v3.0/prop_test/TIMEOUT.html?highlight=timeout

> If it exceeds that the test process will be killed and ctest will move
> to the next test.

this helps us to identify test hang.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agocmake: restructure src/CMakeLists.txt in a more hierarchical way
Kefu Chai [Thu, 14 Jul 2016 06:50:31 +0000 (14:50 +0800)]
cmake: restructure src/CMakeLists.txt in a more hierarchical way

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agocmake: do not pass --disable-pip-version-check if not supported
Kefu Chai [Thu, 14 Jul 2016 04:29:20 +0000 (12:29 +0800)]
cmake: do not pass --disable-pip-version-check if not supported

on older versions of pip, this option is not supported, and
--disable-pip-version-check is implied with --no-index. so no need to
use them when --no-index is passed to pip.

this partially reverts 395f2c5

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agocmake: remove duplicated src from ceph_rgw_jsonparser
Kefu Chai [Wed, 13 Jul 2016 16:27:04 +0000 (00:27 +0800)]
cmake: remove duplicated src from ceph_rgw_jsonparser

they are included by rgw_a as well. and ceph_rgw_jsonparser is linked
against rgw_a.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agocmake: link libcommon against $CRYPTO_LIBS
Kefu Chai [Wed, 13 Jul 2016 16:25:43 +0000 (00:25 +0800)]
cmake: link libcommon against $CRYPTO_LIBS

as ceph_crypt.cc is using the symbols in it, and libcommon contains
ceph_crypt.cc.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agorun-make-check.sh: run tests in two steps
Kefu Chai [Wed, 13 Jul 2016 13:44:31 +0000 (21:44 +0800)]
run-make-check.sh: run tests in two steps

this is a workaround of the timeout found in jenkins. currently three
tests are found timeout, and they are labeld with "Racing" and
"LongRunning". so, to workaround this issue, we run the tests in two
phases:

1. run the racing tests with -j1
2. run the non-racing tests with -jN

if we all all tests with -j1, the total test time is 2683.57 sec

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agocmake: label some tests with "Racing"
Kefu Chai [Wed, 13 Jul 2016 16:04:58 +0000 (00:04 +0800)]
cmake: label some tests with "Racing"

two tests timesout for unknown reasons, so label them with
"Racing" and "LongRunning" labels.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agocmake: no need to depend run-tox-ceph-disk on test
Kefu Chai [Wed, 13 Jul 2016 13:15:32 +0000 (21:15 +0800)]
cmake: no need to depend run-tox-ceph-disk on test

run-tox-ceph-disk and run-tox-ceph-detect-init are already added as
test, so "ctest" and "make {test,check}" will run them without extra
settings.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agocmake: add a "tests" target to build tests
Kefu Chai [Wed, 13 Jul 2016 13:14:30 +0000 (21:14 +0800)]
cmake: add a "tests" target to build tests

please note "make test" is used by cmake to run tests, so we cannot just
repurpose it to *build* them.

* AddCephTest.cmake: depends on "tests"
* CMakeLists.txt: let "check" depend on "tests"
* src/CMakeLists.txt: update the run-tox tests
* run-make-check.sh: use "make tests" and "ctest" instead of "make check"
* ceph-detect-init/CMakeLists.txt: let "tests" depend on
    "ceph-detect-init"
* ceph-disk/CMakeLists.txt: let "tests" depend on "ceph-disk"

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #10301 from cbodley/wip-rgw-meta-stack-wakeup
Yehuda Sadeh [Sat, 16 Jul 2016 02:19:57 +0000 (19:19 -0700)]
Merge pull request #10301 from cbodley/wip-rgw-meta-stack-wakeup

rgw: RGWMetaSyncCR holds refs to stacks instead of crs

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
9 years agorelease: release notes update for objclass-perms 10313/head
Noah Watkins [Fri, 15 Jul 2016 19:41:18 +0000 (12:41 -0700)]
release: release notes update for objclass-perms

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
9 years agoosd: use static method and simplify return
Noah Watkins [Fri, 15 Jul 2016 19:28:10 +0000 (12:28 -0700)]
osd: use static method and simplify return

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
9 years agorgw: RGWMetaSyncCR holds refs to stacks for wakeup 10301/head
Casey Bodley [Thu, 14 Jul 2016 17:38:44 +0000 (13:38 -0400)]
rgw: RGWMetaSyncCR holds refs to stacks for wakeup

because RGWCoroutine::wakeup() calls RGWCoroutinesStack::wakeup(), the
stack must also stay alive

Fixes: http://tracker.ceph.com/issues/16666
Signed-off-by: Casey Bodley <cbodley@redhat.com>
9 years agoMerge pull request #10306 from tchaikov/wip-no-mktemp-p
Kefu Chai [Fri, 15 Jul 2016 13:34:02 +0000 (21:34 +0800)]
Merge pull request #10306 from tchaikov/wip-no-mktemp-p

qa/workunits/cephtool/test.sh: s/TMPDIR/TEMP_DIR/

Reviewed-by: Haomai Wang <haomai@xsky.com>
9 years agoMerge pull request #9972 from ceph/objclass-perm
Kefu Chai [Fri, 15 Jul 2016 09:25:44 +0000 (17:25 +0800)]
Merge pull request #9972 from ceph/objclass-perm

osd: object class loading and execution permissions

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
9 years agoMerge pull request #9980 from gaowanlong/split_out_handle_pg_scrub
Kefu Chai [Fri, 15 Jul 2016 09:09:14 +0000 (17:09 +0800)]
Merge pull request #9980 from gaowanlong/split_out_handle_pg_scrub

osd: small cleanups

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #10126 from dx9/wip-fcntl-warns
Kefu Chai [Fri, 15 Jul 2016 09:05:15 +0000 (17:05 +0800)]
Merge pull request #10126 from dx9/wip-fcntl-warns

test/libcephfs: fix gcc sys/fcntl.h warnings

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #10166 from wjwithagen/wip-wjw-cmake-test_rados_tool.sh
Kefu Chai [Fri, 15 Jul 2016 09:03:59 +0000 (17:03 +0800)]
Merge pull request #10166 from wjwithagen/wip-wjw-cmake-test_rados_tool.sh

test_rados_tool.sh: Make script work under ctest

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #9782 from Ved-vampir/zlib_cleanup
Kefu Chai [Fri, 15 Jul 2016 09:03:38 +0000 (17:03 +0800)]
Merge pull request #9782 from Ved-vampir/zlib_cleanup

compressor: zlib compressor plugin  cleanup

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agotest: run_seed_to_range.sh: check existance of a directory using [ -d "$dir" ] 10306/head
Kefu Chai [Fri, 15 Jul 2016 08:38:23 +0000 (16:38 +0800)]
test: run_seed_to_range.sh: check existance of a directory using [ -d "$dir" ]

sadly, sh evalutes `[ -d ]` to true. as it takes "-d" as a non-empty
string as true.

this fixes following failure
```
2016-07-12T23:22:02.839 INFO:teuthology.orchestra.run.mira084.stderr:cp:
missing destination file operand after ‘.’
2016-07-12T23:22:02.839 INFO:teuthology.orchestra.run.mira084.stderr:Try
'cp --help' for more information.
```
see
http://pulpito.ceph.com/kchai-2016-07-12_23:09:35-rados-wip-kefu-testing2---basic-mira/311334/

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agoqa/workunits/cephtool/test.sh: s/TMPDIR/TEMP_DIR/
Kefu Chai [Fri, 15 Jul 2016 08:20:22 +0000 (16:20 +0800)]
qa/workunits/cephtool/test.sh: s/TMPDIR/TEMP_DIR/

this fixes the test failure of
```
2016-07-12T23:29:40.935
INFO:tasks.workunit.client.0.mira101.stderr:/home/ubuntu/cephtest/workunit.client.0/cephtool/test.sh:
line 153: /CEPH_WATCH_9445: Permission denied
```
see
http://pulpito.ceph.com/kchai-2016-07-12_23:09:35-rados-wip-kefu-testing2---basic-mira/311333/

it's a regression introduced by e5c262b

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agoqa/workunits/cephtool/test.sh: use mktemp $TEMP_DIR/XXX instead
Kefu Chai [Fri, 15 Jul 2016 06:21:50 +0000 (14:21 +0800)]
qa/workunits/cephtool/test.sh: use mktemp $TEMP_DIR/XXX instead

mktemp -p is not supported on FreeBSD

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #10131 from badone/wip-peering-doc-fixes
Kefu Chai [Fri, 15 Jul 2016 04:15:55 +0000 (12:15 +0800)]
Merge pull request #10131 from badone/wip-peering-doc-fixes

doc: peering.rst, fix typo

Reviewed-by: Abhishek Lekshmanan <abhishek.lekshmanan@gmail.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #10292 from badone/wip-perf-counters-doc-fixes
Kefu Chai [Fri, 15 Jul 2016 04:13:19 +0000 (12:13 +0800)]
Merge pull request #10292 from badone/wip-perf-counters-doc-fixes

doc: perf_counters.rst fix trivial typo

Reviewed-by: Abhishek Lekshmanan <abhishek.lekshmanan@gmail.com>
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agotest: ceph-detect-init/run-tox.sh: run it from any path
Kefu Chai [Wed, 13 Jul 2016 13:09:59 +0000 (21:09 +0800)]
test: ceph-detect-init/run-tox.sh: run it from any path

this follows the pattern in ceph-disk. this enables us to run
ceph-detect-init/run-tox.sh from the ${CMAKE_BINARY_DIRECTORY}
as well.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agoclient: fix MetaRequest::set_other_inode() 9955/head
Yan, Zheng [Mon, 11 Jul 2016 07:32:41 +0000 (15:32 +0800)]
client: fix MetaRequest::set_other_inode()

Signed-off-by: Yan, Zheng <zyan@redhat.com>
9 years agoclient: close directory's snapdir when deleting directory
Yan, Zheng [Mon, 11 Jul 2016 03:25:37 +0000 (11:25 +0800)]
client: close directory's snapdir when deleting directory

Signed-off-by: Yan, Zheng <zyan@redhat.com>
9 years agoclient: invalidate snap inodes after removing snapshot
Yan, Zheng [Mon, 11 Jul 2016 03:07:01 +0000 (11:07 +0800)]
client: invalidate snap inodes after removing snapshot

Signed-off-by: Yan, Zheng <zyan@redhat.com>
9 years agomds: fix incorrect "unconnected snaprealm xxx" warning
Yan, Zheng [Mon, 11 Jul 2016 02:51:13 +0000 (10:51 +0800)]
mds: fix incorrect "unconnected snaprealm xxx" warning

If a snaprealm has no child/parent snaprelam, and the snaprealm inode
is not in the cache while client reconnects. The snaprealm does not
get properly removed from MDCache::reconnected_snaplrealm. This causes
incorrect "unconnected snaprealm xxx" warning

Signed-off-by: Yan, Zheng <zyan@redhat.com>
9 years agoqa/workunits/fs: fix expect_failure function in test scripts
Yan, Zheng [Thu, 30 Jun 2016 08:05:57 +0000 (16:05 +0800)]
qa/workunits/fs: fix expect_failure function in test scripts

The origin expect_failure function return 0 regardness of command's
return value.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
9 years agoclient: make sure snapflush is sent before normal cap message
Yan, Zheng [Wed, 29 Jun 2016 12:49:40 +0000 (20:49 +0800)]
client: make sure snapflush is sent before normal cap message

MDS does null snapflush when it receives normal cap message. So client
must send snapflush first.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
9 years agoclient: unify cap flush and snapcap flush
Yan, Zheng [Tue, 28 Jun 2016 12:39:08 +0000 (20:39 +0800)]
client: unify cap flush and snapcap flush

This patch includes following changes
- assign flush tid to snapcap flush
- remove session's flushing_capsnaps list. add inode with snapcap
  flushes to session's flushing_caps list instead.
- when reconnecting to MDS, re-send one inode's snapcap flushes and
  cap flushes at the same time.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
9 years agomds: handle partly purged directory
Yan, Zheng [Wed, 29 Jun 2016 09:15:01 +0000 (17:15 +0800)]
mds: handle partly purged directory

For a snapshoted direcotry whose snaprealm parents are being opened,
MDS does not know if the directory is purgeable. So MDS can't skip
committing dirfrags of the directory. But if the direcotry is purgeale,
some dirfrags could have already been deleted during MDS failover.
Committing them could return -ENOENT.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
9 years agomds: do files recovery after processing cap flushes
Yan, Zheng [Wed, 29 Jun 2016 03:42:42 +0000 (11:42 +0800)]
mds: do files recovery after processing cap flushes

File recovery may update inode and trigger inode COW. MDS relies on
client caps to setup CInode::client_need_snapflush. But for a given
client, the reconnected caps may not include the flushing caps.
(Before MDS failover, client released and flushed some caps at the
same time. When MDS recovers, client re-send the cap flush and send
cap reconnect to the MDS.) This may cause later snapflush to get
dropped.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
9 years agomds: combine MDCache::{reconnected_caps,cap_imports_dirty}
Yan, Zheng [Wed, 29 Jun 2016 03:25:12 +0000 (11:25 +0800)]
mds: combine MDCache::{reconnected_caps,cap_imports_dirty}

Signed-off-by: Yan, Zheng <zyan@redhat.com>
9 years agomds: remove CEPH_LOCK_IFLOCKL from cinode_lock_info
Yan, Zheng [Fri, 24 Jun 2016 09:09:34 +0000 (17:09 +0800)]
mds: remove CEPH_LOCK_IFLOCKL from cinode_lock_info

Currently we don't support dirty CEPH_CAP_FLOCK_EXCL

Signed-off-by: Yan, Zheng <zyan@redhat.com>
9 years agomds: rebuild the internal states that tracking pending snapflush
Yan, Zheng [Thu, 23 Jun 2016 08:59:46 +0000 (16:59 +0800)]
mds: rebuild the internal states that tracking pending snapflush

Signed-off-by: Yan, Zheng <zyan@redhat.com>
9 years agomds: using cap_reconnect_t to track cap recconect
Yan, Zheng [Wed, 22 Jun 2016 12:34:41 +0000 (20:34 +0800)]
mds: using cap_reconnect_t to track cap recconect

Previous commit extended cap_reconnect_t to include snapflush
related information. This information are needed in various
places

Signed-off-by: Yan, Zheng <zyan@redhat.com>
9 years agomds: add 'follows' of first pending snapflush to cap reconnect message
Yan, Zheng [Wed, 22 Jun 2016 07:56:29 +0000 (15:56 +0800)]
mds: add 'follows' of first pending snapflush to cap reconnect message

This helps the recovering MDS to reconstruct the internal states that
tracking pending snapflush.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
9 years agomds: journal snap inodes that need flush when expiring log segment
Yan, Zheng [Tue, 21 Jun 2016 09:17:56 +0000 (17:17 +0800)]
mds: journal snap inodes that need flush when expiring log segment

Treat snap inodes that need flush in the same way as open files.
When MDS recovers, this make sure that journal replay bring snap
inodes that need flush into the cache

Signed-off-by: Yan, Zheng <zyan@redhat.com>
9 years agomds: properly update client_snap_caps when splitting snap inode
Yan, Zheng [Tue, 21 Jun 2016 08:20:58 +0000 (16:20 +0800)]
mds: properly update client_snap_caps when splitting snap inode

update the new snap inode's client_snap_caps according to the old
snap inode.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
9 years agoMerge pull request #9491 from Yan-waller/yj-wip-fixbuildpushop
Yuri Weinstein [Thu, 14 Jul 2016 22:16:22 +0000 (15:16 -0700)]
Merge pull request #9491 from Yan-waller/yj-wip-fixbuildpushop

osd/ReplicatedBackend: add sanity check during build_push_op()

Reviewed-by: Haomai Wang <haomai@xsky.com>
9 years agoMerge pull request #9510 from renhwztetecs/renhw-wip-common
Yuri Weinstein [Thu, 14 Jul 2016 22:15:18 +0000 (15:15 -0700)]
Merge pull request #9510 from renhwztetecs/renhw-wip-common

common: unknown hash type of judgment modification

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #9729 from stiopaa1/common_workqueue_addMove
Yuri Weinstein [Thu, 14 Jul 2016 22:14:39 +0000 (15:14 -0700)]
Merge pull request #9729 from stiopaa1/common_workqueue_addMove

common/WorkQueue: add std move

Reviewed-by: Casey Bodley <cbodley@redhat.com>
9 years agoMerge pull request #9770 from tanghaodong25/submit-transaction-perfcounter
Yuri Weinstein [Thu, 14 Jul 2016 22:13:31 +0000 (15:13 -0700)]
Merge pull request #9770 from tanghaodong25/submit-transaction-perfcounter

kv/RocksDB: add perfcounter for submit_transaction_sync operation

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #10274 from yehudasa/wip-16665
Casey Bodley [Thu, 14 Jul 2016 21:06:11 +0000 (17:06 -0400)]
Merge pull request #10274 from yehudasa/wip-16665

rgw: collect skips a specific coroutine stack

Reviewed-by: Casey Bodley <cbodley@redhat.com>
9 years agoMerge pull request #10187 from dreamhost/wip-16618
Yehuda Sadeh [Thu, 14 Jul 2016 18:42:37 +0000 (11:42 -0700)]
Merge pull request #10187 from dreamhost/wip-16618

rgw: fix multi-delete query param parsing.

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
9 years agoMerge pull request #10289 from jdurgin/wip-googletest-centos
Samuel Just [Thu, 14 Jul 2016 14:48:35 +0000 (07:48 -0700)]
Merge pull request #10289 from jdurgin/wip-googletest-centos

fix the rpm build for centos

Reviewed-by: Samuel Just <sjust@redhat.com>
9 years agoMerge pull request #10271 from linuxbox2/rgw-rename
Orit Wasserman [Thu, 14 Jul 2016 13:42:08 +0000 (15:42 +0200)]
Merge pull request #10271 from linuxbox2/rgw-rename

rgw_file: fix rename cases and unify unlink
Reviewed-by: Orit Wasserman <owasserm@redhat.com>
9 years agoMerge pull request #8618 from linuxbox2/rgw-file-setattr
Orit Wasserman [Thu, 14 Jul 2016 13:16:03 +0000 (15:16 +0200)]
Merge pull request #8618 from linuxbox2/rgw-file-setattr

rgw: file setattr
Reviewed-by: Orit Wasserman <owasserm@redhat.com>
9 years agorgw_file: implement rgw_setattr 8618/head
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>
9 years agoMerge pull request #10284 from linuxbox2/rgwfile_write_guard
Orit Wasserman [Thu, 14 Jul 2016 12:31:21 +0000 (14:31 +0200)]
Merge pull request #10284 from linuxbox2/rgwfile_write_guard

rgw_file: refuse partial, out-of-order writes
Reviewed-by: Orit Wasserman <owasserm@redhat.com>
9 years agoMerge pull request #10258 from ukernel/wip-16655
Kefu Chai [Thu, 14 Jul 2016 12:26:32 +0000 (20:26 +0800)]
Merge pull request #10258 from ukernel/wip-16655

ceph-fuse: link to libtcmalloc or jemalloc

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #10168 from batrick/client-inode-des
John Spray [Thu, 14 Jul 2016 11:38:48 +0000 (12:38 +0100)]
Merge pull request #10168 from batrick/client-inode-des

client: move Inode specific cleanup to destructor

Reviewed-by: John Spray <john.spray@redhat.com>
9 years agokv/MemDB: drop a meaningless assert 10295/head
xie xingguo [Thu, 14 Jul 2016 11:03:26 +0000 (19:03 +0800)]
kv/MemDB: drop a meaningless assert

The string.clear() is stl method, which shall guarantee
the string will become empty. So this is absolutely
unnecessary.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>