]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
11 years agocrush: misc formatting and whitespace fixes 987/head
Ilya Dryomov [Mon, 23 Dec 2013 16:12:56 +0000 (18:12 +0200)]
crush: misc formatting and whitespace fixes

- whitespace in crush.h

- format is_out() definition and call site to 80 columns

- whitespace around local_fallback_tries in crush_choose_firstn()

All of this is to shrink the diff with the kernel implementation.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
11 years agocrush: use kernel-doc consistently
Ilya Dryomov [Mon, 23 Dec 2013 16:12:56 +0000 (18:12 +0200)]
crush: use kernel-doc consistently

kernel-doc syntax is "@arg: desc", not "@param arg desc".  In addition,
these comments are usually placed around function definitions instead
of function declarations.  Follow these guidelines to shrink the diff.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
11 years agocrush/mapper: unsigned -> unsigned int
Ilya Dryomov [Mon, 23 Dec 2013 16:12:56 +0000 (18:12 +0200)]
crush/mapper: unsigned -> unsigned int

Kernel implementation is located in net/, and use of "unsigned int" is
preferred to bare "unsigned" in net tree (as proven by several net/
cleanups).  Follow this guideline to shrink the diff.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
11 years agoMerge pull request #981 from dachary/wip-rep-replicated
Sage Weil [Sun, 22 Dec 2013 07:43:38 +0000 (23:43 -0800)]
Merge pull request #981 from dachary/wip-rep-replicated

replace pool type REP with REPLICATED

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoceph_test_rados_api_tier: more grace for HitSetTrim
Sage Weil [Sun, 22 Dec 2013 07:40:14 +0000 (23:40 -0800)]
ceph_test_rados_api_tier: more grace for HitSetTrim

Saw this test fail due to ill-timed thrashing:

 /a/teuthology-2013-12-20_23:00:02-rados-master-testing-basic-plana/10941

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoceph_test_rados: update in-memory user_version on RemoveAttrsOp
Sage Weil [Sun, 22 Dec 2013 07:32:24 +0000 (23:32 -0800)]
ceph_test_rados: update in-memory user_version on RemoveAttrsOp

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoreplace pool type REP with REPLICATED 981/head
Loic Dachary [Sun, 22 Dec 2013 06:04:36 +0000 (07:04 +0100)]
replace pool type REP with REPLICATED

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agodoc/release-notes: missed a name
Sage Weil [Sun, 22 Dec 2013 05:42:43 +0000 (21:42 -0800)]
doc/release-notes: missed a name

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agodoc/release-notes: v0.72.2
Sage Weil [Sun, 22 Dec 2013 05:33:23 +0000 (21:33 -0800)]
doc/release-notes: v0.72.2

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #977 from ceph/wip-kill-raid4
Sage Weil [Fri, 20 Dec 2013 23:20:23 +0000 (15:20 -0800)]
Merge pull request #977 from ceph/wip-kill-raid4

osd: remove remaining instances of raid4 pool types (never implemented)

Reviewed-by: Loic Dachary <loic@dachary.org>
11 years agoMerge pull request #975 from BCLibCoop/bclibcoop/rgw_cors
Yehuda Sadeh [Fri, 20 Dec 2013 22:26:41 +0000 (14:26 -0800)]
Merge pull request #975 from BCLibCoop/bclibcoop/rgw_cors

RGW: CORS use the correct headers for checking, and validate headers as lowercase where needed

Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agoMerge pull request #979 from dachary/wip-wrapped-vstart-errors
Sage Weil [Fri, 20 Dec 2013 22:19:05 +0000 (14:19 -0800)]
Merge pull request #979 from dachary/wip-wrapped-vstart-errors

vstart_wrapped_tests must fail if one test fail

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #818 from ceph/wip-rgw-standalone-2
Sage Weil [Fri, 20 Dec 2013 21:41:58 +0000 (13:41 -0800)]
Merge pull request #818 from ceph/wip-rgw-standalone-2

Wip rgw standalone 2

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoRevert "Enable libs3 support for debian packages"
Sage Weil [Fri, 20 Dec 2013 21:14:08 +0000 (13:14 -0800)]
Revert "Enable libs3 support for debian packages"

This reverts commit 8814265f0888f8091a7d83a900ffd6b65ae77f34.

Or not!  This adds a build-time dependency which none of the gitbuilders
have, so scrap it.

11 years agomon: pool create will not fail if the type differs 979/head
Loic Dachary [Fri, 20 Dec 2013 21:00:31 +0000 (22:00 +0100)]
mon: pool create will not fail if the type differs

It looked like it worked because the wrapper hide the error. The failing
tests are commented out so that the other tests can be used.

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agodoc/release-notes: v0.67.5
Sage Weil [Fri, 20 Dec 2013 20:53:03 +0000 (12:53 -0800)]
doc/release-notes: v0.67.5

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agounittests: fail if one test fail
Loic Dachary [Fri, 20 Dec 2013 20:13:00 +0000 (21:13 +0100)]
unittests: fail if one test fail

vstart_wrapped_tests must return on error if one of the tests
fail.

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoMerge pull request #460 from toabctl/build-depends
Sage Weil [Fri, 20 Dec 2013 18:48:11 +0000 (10:48 -0800)]
Merge pull request #460 from toabctl/build-depends

Enable libs3 support for debian packages

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #916 from ceph/port/buffer
Sage Weil [Fri, 20 Dec 2013 18:29:03 +0000 (10:29 -0800)]
Merge pull request #916 from ceph/port/buffer

buffer: use int64_t instead of loff_t

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agobuffer: use int64_t instead of loff_t 916/head
Noah Watkins [Fri, 6 Dec 2013 19:09:51 +0000 (11:09 -0800)]
buffer: use int64_t instead of loff_t

Because portability.

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
11 years agoMerge pull request #933 from dachary/wip-erasure-code-benchmark
Loic Dachary [Fri, 20 Dec 2013 11:24:10 +0000 (03:24 -0800)]
Merge pull request #933 from dachary/wip-erasure-code-benchmark

osd: erasure code benchmark tool

Reviewed-by: Andreas Peters <andreas.joachim.peters@cern.ch>
Reviewed-by: Christophe Courtaut <christophe.courtaut@gmail.com>
11 years agoosd: git ignore erasure code benchmark binary 933/head
Loic Dachary [Thu, 19 Dec 2013 11:14:38 +0000 (12:14 +0100)]
osd: git ignore erasure code benchmark binary

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoosd: erasure code benchmark is installed is part of ceph-test
Loic Dachary [Thu, 19 Dec 2013 11:12:41 +0000 (12:12 +0100)]
osd: erasure code benchmark is installed is part of ceph-test

Add to the packaging for RPMs and DEBs

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoosd: erasure code benchmark workunit
Loic Dachary [Thu, 12 Dec 2013 22:14:02 +0000 (23:14 +0100)]
osd: erasure code benchmark workunit

Display benchmark results for the default erasure code plugins, in a tab
separated CSV file. The first two column contain the amount of KB
that were coded or decoded, for a given combination of parameters
displayed in the following fields.

seconds KB plugin k m work. iter. size eras.
1.2 10 example 2 1 encode 10 1024 0
0.5 10 example 2 1 decode 10 1024 1

It can be used as input for a human readable report. It is also intented
to be used to show if a given version of an erasure code plugin performs
better than another.

The last column ( not shown above for brievety ) is the exact command
that was run to produce the result so it can be copy / pasted to
reproduce them or to profile.

Only the jerasure techniques mentionned in
https://www.usenix.org/legacy/events/fast09/tech/full_papers/plank/plank_html/
are benchmarked, the others are assumed to be less interesting.

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoosd: erasure code benchmark tool
Loic Dachary [Wed, 11 Dec 2013 23:34:35 +0000 (00:34 +0100)]
osd: erasure code benchmark tool

Implement the ceph_erasure_code_benchmark utility to:

* load an erasure code plugin

* loop over the encode/decode function using the parameters from the
  command line

* print the number of bytes encoded/decoded and the time to process

When decoding, random chunks ( as set with --erasures ) are lost on each
run.

For instance:

    $ ceph_erasure_code_benchmark \
       --plugin jerasure \
       --parameter erasure-code-directory=.libs \
       --parameter erasure-code-technique=reed_sol_van \
       --parameter erasure-code-k=2 \
       --parameter erasure-code-m=2 \
       --workload decode \
       --erasures 2 \
       --iterations 1000
    0.964759 1048576

shows 1GB is decoded in 1second.

It is intended to be used by other scripts to present a human readable
output or detect performance regressions.

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoosd: set erasure code packet size default to 2048
Loic Dachary [Fri, 13 Dec 2013 23:41:03 +0000 (00:41 +0100)]
osd: set erasure code packet size default to 2048

As shown in
https://www.usenix.org/legacy/events/fast09/tech/full_papers/plank/plank_html/
under "Impact of the Packet Size", the optimal for is in the order of 1k
rather than the current default of 8. Benchmarks are required to find
the actual optimum.

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoosd: better performances for the erasure code example
Loic Dachary [Fri, 13 Dec 2013 13:07:37 +0000 (14:07 +0100)]
osd: better performances for the erasure code example

The XOR based example is ten times slower than it could because it uses
the buffer::ptr[] operator. Use a temporary char * instead. It performs
as well as jerasure Reed Solomon when decoding with a single erasure:

$ ceph_erasure_code_benchmark \
   --plugin example  --parameter erasure-code-directory=.libs \
   --parameter erasure-code-technique=example \
   --parameter erasure-code-k=2 --parameter erasure-code-m=1 \
   --erasure 1 --workload decode --iterations 5000
8.095007 5GB

$ ceph_erasure_code_benchmark \
   --plugin jerasure  --parameter erasure-code-directory=.libs \
   --parameter erasure-code-technique=reed_sol_van \
   --parameter erasure-code-k=10 --parameter erasure-code-m=6 \
   --erasure 1 --workload decode --iterations 5000
7.870990 5GB

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoosd: conditionally disable dlclose of erasure code plugins
Loic Dachary [Thu, 12 Dec 2013 13:03:26 +0000 (14:03 +0100)]
osd: conditionally disable dlclose of erasure code plugins

When profiling, tools such as valgrind --tool=callgrind require that the
dynamically loaded libraries are not dlclosed so they can collect usage
information.

The public ErasureCodePluginRegistry::disable_dlclose boolean is introduced
for this purpose.

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoosd: Fix assert which doesn't apply when compat_mode on
David Zafman [Thu, 19 Dec 2013 22:37:28 +0000 (14:37 -0800)]
osd: Fix assert which doesn't apply when compat_mode on

Signed-off-by: David Zafman <david.zafman@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
11 years agoosd: remove remaining instances of raid4 pool types (never implemented) 977/head
Sage Weil [Thu, 19 Dec 2013 21:28:09 +0000 (13:28 -0800)]
osd: remove remaining instances of raid4 pool types (never implemented)

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #941 from ceph/wip-6028
Sage Weil [Thu, 19 Dec 2013 18:17:15 +0000 (10:17 -0800)]
Merge pull request #941 from ceph/wip-6028

#6028 : ensure that erasure coded pools don't work until the osds can handle it

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #973 from ceph/wip-mds-coverity2
Sage Weil [Thu, 19 Dec 2013 16:14:20 +0000 (08:14 -0800)]
Merge pull request #973 from ceph/wip-mds-coverity2

mds: fixes for coverity scan

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agomds: fix Resetter locking
Alexandre Oliva [Thu, 19 Dec 2013 16:09:46 +0000 (08:09 -0800)]
mds: fix Resetter locking

ceph-mds --reset-journal didn't work; it would deadlock waiting for
the osdmap.  Comparing the init code in the Dumper (that worked) with
that in the Resetter (that didn't), I noticed the lock had to be
released before waiting for the osdmap.

Now the resetter works.  However, both the resetter and the dumper
fail an assertion after they've performed their task; I didn't look
into it:

../../src/msg/SimpleMessenger.cc: In function 'void SimpleMessenger::reaper()' t
hread 7fdc188d27c0 time 2013-12-19 04:48:16.930895
../../src/msg/SimpleMessenger.cc: 230: FAILED assert(!cleared)
 ceph version 0.72.1-6-g6bca44e (6bca44ec129d11f1c4f38357db8ae435616f2c7c)
 1: (SimpleMessenger::reaper()+0x706) [0x880da6]
 2: (SimpleMessenger::wait()+0x36f) [0x88180f]
 3: (Resetter::reset()+0x714) [0x56e664]
 4: (main()+0x1359) [0x562769]
 5: (__libc_start_main()+0xf5) [0x3632e21b45]
 6: /l/tmp/build/ceph/build/src/ceph-mds() [0x564e49]
 NOTE: a copy of the executable, or `objdump -rdS <executable>` is needed to int
erpret this.
2013-12-19 04:48:16.934093 7fdc188d27c0 -1 ../../src/msg/SimpleMessenger.cc: In
function 'void SimpleMessenger::reaper()' thread 7fdc188d27c0 time 2013-12-19 04
:48:16.930895
../../src/msg/SimpleMessenger.cc: 230: FAILED assert(!cleared)

Signed-off-by: Alexandre Oliva <oliva@gnu.org>
11 years agoMerge pull request #969 from yuyuyu101/wip-7040
Sage Weil [Thu, 19 Dec 2013 16:05:32 +0000 (08:05 -0800)]
Merge pull request #969 from yuyuyu101/wip-7040

Fix segmentation fault when handler is NULL pointer

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #972 from dachary/wip-build-depends
Loic Dachary [Thu, 19 Dec 2013 14:39:55 +0000 (06:39 -0800)]
Merge pull request #972 from dachary/wip-build-depends

packaging: revert adding argparse and uuidgen

11 years agopackaging: revert adding argparse and uuidgen 972/head
Loic Dachary [Thu, 19 Dec 2013 14:33:07 +0000 (15:33 +0100)]
packaging: revert adding argparse and uuidgen

Because the gitbuilder build environment does not read the build depends
from the packages and needs to be updated independantly.

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoMerge pull request #971 from dachary/wip-build-depends
Loic Dachary [Thu, 19 Dec 2013 14:27:09 +0000 (06:27 -0800)]
Merge pull request #971 from dachary/wip-build-depends

packaging: make check needs argparse and uuidgen

Reviewed-by: Christophe Courtaut <christophe.courtaut@gmail.com>
11 years agoMerge pull request #970 from dachary/wip-autogen
Loic Dachary [Thu, 19 Dec 2013 13:57:52 +0000 (05:57 -0800)]
Merge pull request #970 from dachary/wip-autogen

autogen: test compare strings with != not -ne

Reviewed-by: Christophe Courtaut <christophe.courtaut@gmail.com>
11 years agopackaging: make check needs argparse and uuidgen 971/head
Loic Dachary [Thu, 19 Dec 2013 12:57:04 +0000 (13:57 +0100)]
packaging: make check needs argparse and uuidgen

make check runs vstart.sh to setup a cluster from source and it misses
the python-argparse library as well as uuidgen otherwise it will fail
with:

    ./vstart.sh: 460: uuidgen: not found
    ...
    Error: Import No module named argparse

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoautogen: test compare strings with != not -ne 970/head
Loic Dachary [Thu, 19 Dec 2013 12:40:06 +0000 (13:40 +0100)]
autogen: test compare strings with != not -ne

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoFix segmentation fault when handler is NULL pointer 969/head
Haomai Wang [Thu, 19 Dec 2013 10:54:04 +0000 (18:54 +0800)]
Fix segmentation fault when handler is NULL pointer

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
11 years agoMerge pull request #966 from dachary/ceph-master
Loic Dachary [Thu, 19 Dec 2013 10:31:41 +0000 (02:31 -0800)]
Merge pull request #966 from dachary/ceph-master

crush: silence error messages in unit tests

Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agoMerge pull request #968 from ceph/wip-crush
Loic Dachary [Thu, 19 Dec 2013 10:28:30 +0000 (02:28 -0800)]
Merge pull request #968 from ceph/wip-crush

make check is happy and the change is non controversial

Reviewed-by: Loic Dachary <loic@dachary.org>
11 years agomds: fixes for coverity scan 973/head
Yan, Zheng [Wed, 18 Dec 2013 01:33:13 +0000 (09:33 +0800)]
mds: fixes for coverity scan

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
11 years agocrush/mapper: fix crush_choose_firstn comment 968/head
Sage Weil [Thu, 19 Dec 2013 05:18:28 +0000 (21:18 -0800)]
crush/mapper: fix crush_choose_firstn comment

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agocrush/mapper: attempts -> tries
Sage Weil [Thu, 19 Dec 2013 05:17:02 +0000 (21:17 -0800)]
crush/mapper: attempts -> tries

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agocrush/mapper: finish adding choose_local_[fallback_]tries
Sage Weil [Thu, 19 Dec 2013 05:15:41 +0000 (21:15 -0800)]
crush/mapper: finish adding choose_local_[fallback_]tries

Didn't finish this in d129e09e57fbc61cfd4f492e3ee77d0750c9d292.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agovstart.sh: NOTE, not WARNING, to make gitbuilder happy
Sage Weil [Thu, 19 Dec 2013 05:16:10 +0000 (21:16 -0800)]
vstart.sh: NOTE, not WARNING, to make gitbuilder happy

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoqa: workunit: cephtool: test osd pool create with erasure type 941/head
Joao Eduardo Luis [Wed, 18 Dec 2013 17:42:20 +0000 (17:42 +0000)]
qa: workunit: cephtool: test osd pool create with erasure type

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agopybind: test_ceph_argparse: test 'ceph osd pool create' with pool type
Joao Eduardo Luis [Wed, 18 Dec 2013 17:58:31 +0000 (17:58 +0000)]
pybind: test_ceph_argparse: test 'ceph osd pool create' with pool type

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agomon: OSDMonitor: add optional 'pool type' arg to 'osd pool create'
Joao Eduardo Luis [Tue, 17 Dec 2013 18:00:50 +0000 (18:00 +0000)]
mon: OSDMonitor: add optional 'pool type' arg to 'osd pool create'

Allow specifying 'rep', 'raid4' and 'erasure'.
Only allow setting type 'erasure' if all up osds support erasure codes.

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agoosd: OSDMap: add 'get_up_osds()' function
Joao Eduardo Luis [Wed, 18 Dec 2013 16:26:25 +0000 (16:26 +0000)]
osd: OSDMap: add 'get_up_osds()' function

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agoceph_osd: add EC to OSD's supported features used by the messenger
Joao Eduardo Luis [Wed, 18 Dec 2013 02:47:32 +0000 (02:47 +0000)]
ceph_osd: add EC to OSD's supported features used by the messenger

Fixes: 6028
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agoosd: OSD: reflect OSDMap EC flag being set by setting on-disk feature
Joao Eduardo Luis [Thu, 12 Dec 2013 18:25:31 +0000 (18:25 +0000)]
osd: OSD: reflect OSDMap EC flag being set by setting on-disk feature

If OSDMap has the EC feature set, then update our superblock to
reflect as such, making our on-disk format incompatible with previous
OSDs without EC support.

Fixes: 6028
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agomon: OSDMonitor: handle osd features on boot
Joao Eduardo Luis [Thu, 12 Dec 2013 17:58:17 +0000 (17:58 +0000)]
mon: OSDMonitor: handle osd features on boot

Add the osd's features to the osd's extra info field in the OSDMap
so we can track which OSDs are able to deal with Erasure Codes.

This will allow us to decide whether or not we are ready to set EC
whenever the user asks us to set EC on a pool -- which shall be
handled by a subsequent commit.

Fixes: 6028
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agoosd: OSDMap: add 'features' bit mask field to osd_xinfo_t
Joao Eduardo Luis [Thu, 12 Dec 2013 17:09:14 +0000 (17:09 +0000)]
osd: OSDMap: add 'features' bit mask field to osd_xinfo_t

And make sure we dump it on osd_xinfo_t::dump().

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agoosd: OSDMap: check for erasure pools when getting features
Joao Eduardo Luis [Sat, 14 Dec 2013 00:41:01 +0000 (00:41 +0000)]
osd: OSDMap: check for erasure pools when getting features

If we have a pool with type Erasure, then we consider we require
CEPH_FEATURE_OSD_ERASURE_CODES.

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agoosd: OSD: add binary compat feature for Erasure Codes
Joao Eduardo Luis [Thu, 12 Dec 2013 17:10:54 +0000 (17:10 +0000)]
osd: OSD: add binary compat feature for Erasure Codes

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agoinclude/ceph_features: add CEPH_FEATURES_OSD_ERASURE_CODES
Joao Eduardo Luis [Sat, 14 Dec 2013 00:39:02 +0000 (00:39 +0000)]
include/ceph_features: add CEPH_FEATURES_OSD_ERASURE_CODES

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agoadded execute permission to the script
tamil [Wed, 18 Dec 2013 22:32:35 +0000 (14:32 -0800)]
added execute permission to the script

Signed-off-by: tamil <tamil.muthamizhan@inktank.com>
11 years agorgw workunit to test bucket quota
tamil [Wed, 18 Dec 2013 22:23:54 +0000 (14:23 -0800)]
rgw workunit to test bucket quota

Signed-off-by: tamil <tamil.muthamizhan@inktank.com>
11 years agoMerge pull request #926 from yuyuyu101/wip/6950
Sage Weil [Wed, 18 Dec 2013 18:42:40 +0000 (10:42 -0800)]
Merge pull request #926 from yuyuyu101/wip/6950

Move PerfCounter from ObjectStore.h to FileStore.h

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #961 from dachary/wip-erasure-code-alignment
Sage Weil [Wed, 18 Dec 2013 18:41:31 +0000 (10:41 -0800)]
Merge pull request #961 from dachary/wip-erasure-code-alignment

erasure-code: tests must use aligned buffers

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #967 from ceph/wip-7026
Gregory Farnum [Wed, 18 Dec 2013 18:24:00 +0000 (10:24 -0800)]
Merge pull request #967 from ceph/wip-7026

osd/ReplicatedPG: fix hit_set_setup() on_activate()
Reviewed-by: Greg Farnum <greg@inktank.com>
11 years agoMerge pull request #955 from ceph/wip-crush-2
Sage Weil [Wed, 18 Dec 2013 18:00:55 +0000 (10:00 -0800)]
Merge pull request #955 from ceph/wip-crush-2

crush: make set_chooseleaf_tries work with firstn chooseleaf, too

Reviewed-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Loic Dachary <loic@dachary.com>
11 years agoMerge pull request #964 from apeters1971/wip-arch-sse2
Loic Dachary [Wed, 18 Dec 2013 17:57:18 +0000 (09:57 -0800)]
Merge pull request #964 from apeters1971/wip-arch-sse2

ARCH: add variable for sse2 register

Reviewed-by: Loic Dachary <loic@dachary.org>
11 years agocrush: silence error messages in unit tests 966/head
Loic Dachary [Wed, 18 Dec 2013 16:16:08 +0000 (17:16 +0100)]
crush: silence error messages in unit tests

The error messages are intentional when error conditions are
created. They will create false positive in the gitbuilder parser when
the string error is found.

The --debug-crush flag is detected to allow the caller to reset the
verbosity level.

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoARCH: adding SSE2 flag to arch-test 964/head
Andreas Peters [Wed, 18 Dec 2013 14:32:59 +0000 (15:32 +0100)]
ARCH: adding SSE2 flag to arch-test

11 years agoMerge pull request #965 from ksperis/rbdmap.upstart
Sage Weil [Wed, 18 Dec 2013 16:57:29 +0000 (08:57 -0800)]
Merge pull request #965 from ksperis/rbdmap.upstart

upstart: add rbdmap script

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agomon/OSDMonitor: 'osd crush show-tunables' 955/head
Sage Weil [Tue, 17 Dec 2013 20:21:41 +0000 (12:21 -0800)]
mon/OSDMonitor: 'osd crush show-tunables'

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agocrush: expand info about tunables that we dump
Sage Weil [Tue, 17 Dec 2013 20:15:51 +0000 (12:15 -0800)]
crush: expand info about tunables that we dump

Include the tunables profile, and flags indicating whether it is optimal,
legacy, or requires certain features.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomon: warn if crush has non-optimal tunables
Sage Weil [Tue, 17 Dec 2013 17:28:43 +0000 (09:28 -0800)]
mon: warn if crush has non-optimal tunables

Allow warning to be disabled via ceph.conf.  Link to the docs from the
warning detail.  Add a section to the docs specifically about what to do
about the warning.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agocrush: add set_choose_local_[fallback_]tries steps
Sage Weil [Tue, 17 Dec 2013 19:51:10 +0000 (11:51 -0800)]
crush: add set_choose_local_[fallback_]tries steps

This alls all of the tunables to be overridden by a specific rule.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #952 from kri5/master
Loic Dachary [Wed, 18 Dec 2013 15:00:42 +0000 (07:00 -0800)]
Merge pull request #952 from kri5/master

vstart: Update apache conf to run against apache 2.4

Reviewed-by: Loic Dachary <loic@dachary.org>
11 years agovstart: Update apache conf to run against apache 2.4 952/head
Christophe Courtaut [Mon, 16 Dec 2013 17:13:57 +0000 (18:13 +0100)]
vstart: Update apache conf to run against apache 2.4

Signed-off-by: Christophe Courtaut <christophe.courtaut@gmail.com>
11 years agoupstart: add rbdmap script 965/head
Laurent Barbe [Wed, 18 Dec 2013 13:20:24 +0000 (14:20 +0100)]
upstart: add rbdmap script

Upstart script for mapping / unmapping rbd device based on /etc/ceph/rbdmap file.
It does not mount or unmount filesystem, this part should be performed by _netdev option in fstab.

Signed-off-by: Laurent Barbe <laurent@ksperis.com>
11 years agoARCH: add variable for sse2 register
Andreas Peters [Fri, 13 Dec 2013 15:39:56 +0000 (16:39 +0100)]
ARCH: add variable for sse2 register

11 years agoqa/workunits/cephtool/test.sh: clean up our client.xx.keyring
Sage Weil [Wed, 18 Dec 2013 02:16:59 +0000 (18:16 -0800)]
qa/workunits/cephtool/test.sh: clean up our client.xx.keyring

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoosd/ReplicatedPG: fix hit_set_setup() on_activate() 967/head
Sage Weil [Tue, 17 Dec 2013 23:58:21 +0000 (15:58 -0800)]
osd/ReplicatedPG: fix hit_set_setup() on_activate()

Didn't read that if carefully the first time around!

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #960 from ceph/wip-6990
David Zafman [Tue, 17 Dec 2013 19:46:48 +0000 (11:46 -0800)]
Merge pull request #960 from ceph/wip-6990

Add backward comptible acting set until all OSDs updated

Reviewed-by: Samuel Just <sam.just@inktank.com>
11 years agoAdd backward comptible acting set until all OSDs updated 960/head
David Zafman [Tue, 17 Dec 2013 06:08:07 +0000 (22:08 -0800)]
Add backward comptible acting set until all OSDs updated

Add configuration variable to override compatible acting set handling.
Later we'll check the osdmap that all OSDs are updated to use new acting sets.

Fixes: #6990
Signed-off-by: David Zafman <david.zafman@inktank.com>
11 years agoerasure-code: tests must use aligned buffers 961/head
Loic Dachary [Tue, 17 Dec 2013 19:26:01 +0000 (20:26 +0100)]
erasure-code: tests must use aligned buffers

The underlying code assumes the memory buffer is aligned on a long
boundary which is not always the case. Using buffer::create_page_aligned
which calls posix_memalign ensure the allocated buffer starts at an
address that is properly aligned.

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoMerge pull request #953 from dachary/wip-qa-suite
Sage Weil [Tue, 17 Dec 2013 18:46:49 +0000 (10:46 -0800)]
Merge pull request #953 from dachary/wip-qa-suite

use qa/workunits/cephtool/test.sh as a unittest

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agomds: drop unused find_ino_dir
Alexandre Oliva [Tue, 17 Dec 2013 11:00:00 +0000 (09:00 -0200)]
mds: drop unused find_ino_dir

Remove all traces of find_ino_dir, it is no longer used.

Signed-off-by: Alexandre Oliva <oliva@gnu.org>
11 years agoFix typo in #undef in ceph-dencoder
Alexandre Oliva [Tue, 17 Dec 2013 10:55:27 +0000 (08:55 -0200)]
Fix typo in #undef in ceph-dencoder

Signed-off-by: Alexandre Oliva <oliva@gnu.org>
Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoqa: add ../qa/workunits/cephtool/test.sh to unittests 953/head
Loic Dachary [Tue, 17 Dec 2013 16:53:02 +0000 (17:53 +0100)]
qa: add ../qa/workunits/cephtool/test.sh to unittests

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoMerge pull request #957 from ceph/wip-rbd-coverity
Sage Weil [Tue, 17 Dec 2013 16:51:32 +0000 (08:51 -0800)]
Merge pull request #957 from ceph/wip-rbd-coverity

rbd: make coverity happy

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoqa: vstart wrapper helper for unittests
Loic Dachary [Mon, 16 Dec 2013 16:13:27 +0000 (17:13 +0100)]
qa: vstart wrapper helper for unittests

Primarily useful to run scripts from qa/workunits as part of make check.

vstart_wrapper.sh starts a vstart.sh cluster, runs the command given in
argument and tearsdown cluster when it completes.

The vstart_wrapped_tests.sh script contains the list of scripts that
need the vstart_wrapper.sh to run. It would not be necessary if automake
allowed passing argument to tests scripts. It also adds markers to the
output to facilitate searching the output because it can be very verbose.

This wrapper is kept simple and will probably evolve into something more
sophisticated depending on the scripts being added to
vstart_wrapper_tests.sh. There are numerous options, ranging from
parsing the yaml from ceph-qa-suite to figure out the configuration
cluster to converting the same yaml into a puppet manifest that is
applied locally or even driving OpenStack instances to avoid messing
with the local machine. But this would probably be overkill at this
point.

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agorbd: make coverity happy 957/head
Ilya Dryomov [Tue, 17 Dec 2013 15:42:30 +0000 (17:42 +0200)]
rbd: make coverity happy

A recent coverity run found two "defects" in rbd.cc:

** CID 1138367:  Time of check time of use  (TOCTOU)
/rbd.cc: 2024 in do_kernel_rm(const char *)()

2019   const char *fname = "/sys/bus/rbd/remove_single_major";
2020   if (stat(fname, &sbuf)) {
2021     fname = "/sys/bus/rbd/remove";
2022   }
2023
2024   int fd = open(fname, O_WRONLY);
2025   if (fd < 0) {

** CID 1138368:  Time of check time of use  (TOCTOU)
/rbd.cc: 1735 in do_kernel_add(const char *, const char *, const char *)()

same as above, s/remove/add

There is nothing racey going on here, and this is not an instance of
TOCTOU, but, instead of silencing coverity with annotatations, redo
this with two open() calls.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
11 years agovstart/stop: use pkill instead of killall
Loic Dachary [Mon, 16 Dec 2013 15:27:34 +0000 (16:27 +0100)]
vstart/stop: use pkill instead of killall

killall fails to kill all OSDs when called as a oneliner. Replace with a
loop using pkill that retries until there are no more process to kill by
the required name.

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoqa: recursively remove .gcno and .gcda
Loic Dachary [Mon, 16 Dec 2013 13:36:26 +0000 (14:36 +0100)]
qa: recursively remove .gcno and .gcda

Instead of removing them only in the current directory. Leftovers
prevent running make check-coverage properly because lcov fails
when stumbling on old .gcno files with

lcov -d . -c -i -o check-coverage_base_full.lcov
Processing os/BtrfsFileStoreBackend.gcno
geninfo: ERROR: ceph/src/os/BtrfsFileStoreBackend.gcno: reached
         unexpected end of file

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agocrushtool: reorg test-map-* cli tests
Sage Weil [Tue, 17 Dec 2013 05:46:20 +0000 (21:46 -0800)]
crushtool: reorg test-map-* cli tests

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agocrush/CrushWrapper: minor cleanup on tunables helpers
Sage Weil [Tue, 17 Dec 2013 05:35:19 +0000 (21:35 -0800)]
crush/CrushWrapper: minor cleanup on tunables helpers

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agocrush/mapper: generalize descend_once
Sage Weil [Tue, 17 Dec 2013 05:33:07 +0000 (21:33 -0800)]
crush/mapper: generalize descend_once

The legacy behavior is to make the normal number of tries for the
recursive chooseleaf call.  The descend_once tunable changed this to
making a single try and bail if we get a reject (note that it is
impossible to collide in the recursive case).

The new set_chooseleaf_tries lets you select the number of recursive
chooseleaf attempts for indep mode, or default to 1.  Use the same
behavior for firstn, except default to total_tries when the legacy
tunables are set (for compatibility).  This makes the rule step
override the (new) default of 1 recursive attempt, keeping behavior
consistent with indep mode.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoceph_test_rados_api_tier: fix HitSetTrim vs split, too
Sage Weil [Tue, 17 Dec 2013 01:09:13 +0000 (17:09 -0800)]
ceph_test_rados_api_tier: fix HitSetTrim vs split, too

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #904 from ceph/wip-mds-cluster2
Sage Weil [Tue, 17 Dec 2013 01:03:27 +0000 (17:03 -0800)]
Merge pull request #904 from ceph/wip-mds-cluster2

Wip mds cluster2

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoceph_test_rados_api_tier: fix HitSetRead test race with split
Sage Weil [Tue, 17 Dec 2013 00:52:35 +0000 (16:52 -0800)]
ceph_test_rados_api_tier: fix HitSetRead test race with split

Recalculate the hash on each iteration in case we are racing with split.

Fixes: #7013
Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #954 from ceph/wip-7009
Sage Weil [Tue, 17 Dec 2013 00:31:39 +0000 (16:31 -0800)]
Merge pull request #954 from ceph/wip-7009

mon: move supported_commands fields, methods into Monitor, and fix leak

Reviewed-by: Greg Farnum <greg@inktank.com>
11 years agomon: move supported_commands fields, methods into Monitor, and fix leak 954/head
Sage Weil [Tue, 17 Dec 2013 00:09:44 +0000 (16:09 -0800)]
mon: move supported_commands fields, methods into Monitor, and fix leak

We were leaking the static leader_supported_mon_commands.  Move this into
the class so that we can clean up in the destructor.

Rename get_command_descriptions -> format_command_descriptions.

Fixes: #7009
Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomongoose: update submodule 818/head
Yehuda Sadeh [Mon, 16 Dec 2013 20:27:55 +0000 (12:27 -0800)]
mongoose: update submodule

switched to a different source repository, added .gitignore

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>