Commit Graph

59 Commits

Author SHA1 Message Date
Sage Weil
af848d4a4a Merge pull request #1176 from ceph/wip-primary-affinity
osd: primary affinity

Added primary-affinity thrashing to thrashosd.py.

Reviewed-by: Loic Dachary <loic@dachary.org>
2014-02-15 16:59:35 -08:00
Loic Dachary
d921d9b383 qa: do not create erasure pools yet
comment out erasure pool related tests when an OSD is involved because
it does not work yet. See http://tracker.ceph.com/issues/7360.

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-02-16 00:53:13 +01:00
Sage Weil
7e9f03b18e Merge pull request #1181 from dachary/wip-7277
DNM: mon: s/ENOSYS/ENOTSUP/

Reviewed-by: Christophe Courtaut <christophe.courtaut@gmail.com>
Reviewed-by: Sage Weil <sage@inktank.com>
2014-02-15 10:08:45 -08:00
Sage Weil
1cc8c258b9 mon/OSDMonitor: add 'osd primary-affinity ...' command
Signed-off-by: Sage Weil <sage@inktank.com>
2014-02-12 13:38:12 -08:00
Sage Weil
d136eb4cbd mon: allow firefly crush tunables to be selected
Signed-off-by: Sage Weil <sage@inktank.com>
2014-02-11 11:12:56 -08:00
Sage Weil
bb6d3f81a7 rest/test.py: use larger max_file_size for mds set test
Current min is 64k.

Signed-off-by: Sage Weil <sage@inktank.com>
2014-02-07 06:11:57 -08:00
Loic Dachary
302fc924fe mon: s/ENOSYS/ENOTSUP/
On Linux ENOTSUP is remapped
/usr/include/x86_64-linux-gnu/bits/errno.h

    /* Linux has no ENOTSUP error code.  */
    # define ENOTSUP EOPNOTSUPP

and should have different values on other operating systems. On Ubuntu
precise the string returned when translating the error value of ENOTSUP
or EOPNOTSUPP is always EOPNOTSUPP but on Ubuntu saucy it is always
ENOTSUP.

Replace ENOSYS with ENOTSUP because the expected semantic is very
similar and modify the test to not check on the string translation of
the error.

Rework the check_response shell function to optionaly check the return
code. The erasure coded pool size change test verifies the error message
only but not the error code.

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-02-07 12:41:42 +01:00
David Zafman
42a64e19b7 Revert test case of "mon: OSDMonitor: do not allow changing an erasure-coded pool's size"
This reverts part of commit c8c4cc6e81816069886af6bff968712993554759.

Fixes: #7355

Signed-off-by: David Zafman <david.zafman@inktank.com>
2014-02-06 19:13:20 -08:00
Joao Eduardo Luis
c8c4cc6e81 mon: OSDMonitor: do not allow changing an erasure-coded pool's size
Fixes: 7277

Reviewed-by: Loic Dachary <loic@dachary.org>
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
2014-02-04 10:22:48 +01:00
Sage Weil
eb9ffd5a79 mon: use 'mds set inline_data ...' for enable/disable of inline data
This makes the management interface a bit more consistent.

Signed-off-by: Sage Weil <sage@inktank.com>
2014-02-03 17:50:32 -08:00
Sage Weil
408b0c8e75 mon: fix 'mds set allow_new_snaps'
We had already added this as a flag (set/unset) when I generalized the
'mds set_max_mds' to be 'ceph mds set <var> <val>'.  Switch the snaps
flag to be a key/value to with true/false (similar to the hashpspool
pool flag) since there are fewer users and the var/val approach is more
general.

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
2014-02-03 17:50:18 -08:00
Loic Dachary
08c17b7c5c qa: cleanup cephtool/test.sh tmp files
When run in a shared environment ( as opposed as a machine created for
the purpose of running this test only ), it is important to cleanup
leftovers to avoid poluting the /tmp space. Create a common temporary
directory for all tmp files.

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-01-14 17:31:04 +01:00
Sage Weil
ca9acb9634 mon: implement 'mds set max_mds|max_file_size'
First, add the ability to modify max_file_size.  While we are at it, move
to a more sensible interface for adjusting max_mds too.

Signed-off-by: Sage Weil <sage@inktank.com>
2014-01-09 04:31:41 -08:00
Loic Dachary
a10fc025d7 osd: build_simple creates a single rule
The three rules created by build_simple are identical. They are replaced
by a single rule named replicated_rule which is set to be used by the
data, rbd and metadata pools.

Instead of hardcoding the ruleset number to zero, it is read from
osd_pool_default_crush_ruleset which defaults to zero.

The CEPH_DEFAULT_CRUSH_REPLICATED_RULESET enum is moved from osd_type.h to
config.h because it may be needed when osd_type.h is not included.

Signed-off-by: Loic Dachary <loic@dachary.org>
2013-12-27 00:13:47 +01:00
Loic Dachary
5cf2cdc073 qa: remove osd pool create erasure tests
Creating an erasure pool will crash the OSD because OSD::_make_pg
asserts if the type is not replicated. The tests related to erasure
coded pool creation are removed from qa/workunits/cephtool/test.sh.

The osd-create-pool.sh unit test covers the cases removed from test.sh
more extensively. The intent is to check the interactions with the MON
only, therefore it does not run an OSD and the absence of erasure code
placement group backend implementation is not an issue.

Signed-off-by: Loic Dachary <loic@dachary.org>
2013-12-26 10:01:19 +01:00
Loic Dachary
df0d038d7b mon: osd create pool must fail on incompatible type
When osd create pool is called twice on the same pool, it will succeed
because the pool already exists. However, if a different type is
specified, it must fail.

Signed-off-by: Loic Dachary <loic@dachary.org>
2013-12-22 23:43:50 +01:00
Loic Dachary
a0d1521ddb replace pool type REP with REPLICATED
Signed-off-by: Loic Dachary <loic@dachary.org>
2013-12-22 08:15:24 +01:00
Loic Dachary
1e238e6f95 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>
2013-12-20 22:00:31 +01:00
Joao Eduardo Luis
b3ee598f50 qa: workunit: cephtool: test osd pool create with erasure type
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
2013-12-19 02:21:05 +00:00
Sage Weil
1bb46c0ec9 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>
2013-12-18 10:00:55 -08:00
Sage Weil
7e0c84b84d mon/OSDMonitor: 'osd crush show-tunables'
Signed-off-by: Sage Weil <sage@inktank.com>
2013-12-18 08:35:25 -08:00
Sage Weil
0d217cf9e9 qa/workunits/cephtool/test.sh: clean up our client.xx.keyring
Signed-off-by: Sage Weil <sage@inktank.com>
2013-12-17 18:18:46 -08:00
Sage Weil
58d68995c4 Merge pull request #947 from dachary/wip-6824
mon: set ceph osd (down|out|in|rm) error code on failure

Reviewed-by: Sage Weil <sage@inktank.com>
2013-12-15 21:16:48 -08:00
Sage Weil
edc4224de4 Merge remote-tracking branch 'gh/wip-hitset'
Reviewed-by: Greg Farnum <greg@inktank.com>

Conflicts:
	src/common/config_opts.h
	src/osd/ReplicatedPG.cc
	src/osdc/Objecter.cc
	src/vstart.sh
2013-12-15 16:57:23 -08:00
Loic Dachary
31507c90f0 qa: test for error when ceph osd rm is EBUSY
http://tracker.ceph.com/issues/6824 fixes #6824

Signed-off-by: Loic Dachary <loic@dachary.org>
2013-12-15 23:06:26 +01:00
Loic Dachary
4b9a41aa17 qa: make cephtool test imune to pool size
instead of assuming the pool size is 2, query it and increment it to
test for pool set data size. It allows to run the test from vstart.sh
without knowing what the required pool size is in advance:

    rm -fr dev out ;  mkdir -p dev ; \
     MON=1 OSD=3 ./vstart.sh -n -X -l mon osd

    LC_ALL=C PATH=:$PATH CEPH_CONF=ceph.conf \
      ../qa/workunits/cephtool/test.sh

Signed-off-by: Loic Dachary <loic@dachary.org>
2013-12-15 21:45:31 +01:00
Loic Dachary
f9cfa24adc qa: add function name and line number to cephtool output
Signed-off-by: Loic Dachary <loic@dachary.org>
2013-12-15 21:45:31 +01:00
Loic Dachary
cb352484f1 qa: silence cephtool tests cleanup
The file removal installed to be triggered when the script stops must
not fail if the file does not exist.

Signed-off-by: Loic Dachary <loic@dachary.org>
2013-12-15 21:45:31 +01:00
Sage Weil
0cd36e0587 mon/OSDMonitor: take 'osd pool set ...' value as a string again
We ran into problems before when we made this a string because a mixed
cluster of mons might forward a client request with the wrong schema.
To make this work, we make the new code understand both the new and
old schema, and also backport a change to emperor and dumpling to
handle the new schema.

For the previous attempt to do this, see:
 337195f04653eed8e8f153a5b074f3bd48408998
 2fe0d0d97af95c22db80800f5b9da51f672d9407

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
2013-12-11 15:29:42 -08:00
Sage Weil
b92f431100 mon/OSDMonitor: set hit_set fields
Signed-off-by: Sage Weil <sage@inktank.com>
Signed-off-by: Greg Farnum <greg@inktank.com>
2013-12-06 14:37:27 -08:00
tamil
11e26ee424 s/true/1 and s/false/0
Signed-off-by: tamil <tamil.muthamizhan@inktank.com>
2013-12-05 13:05:12 -08:00
Sage Weil
d39ff4c3d8 mon/OSDMonitor: 'osd metadata N' command
Report recorded metadata about an OSD.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-11-09 06:10:14 -08:00
Sage Weil
0d508156ca Merge pull request #687 from ceph/wip-pool
mon: make 'mon {add,remove}_data_pool ...' take pool name or id

Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
2013-10-15 15:09:09 -07:00
Sage Weil
e2602c549f mon: make 'mon {add,remove}_data_pool ...' take pool name or id
Take either a pool name or an id.  Fix up the tests accordingly.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-10-14 16:46:58 -07:00
Joao Eduardo Luis
1c2886964a mon: OSDMonitor: allow (un)setting 'hashpspool' flag via 'osd pool set'
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
2013-10-11 08:05:02 -07:00
Dan Mick
1ba7e47c6a ceph_argparse.py, cephtool/test.sh: fix blacklist with no nonce
It's legal to give a CephEntityAddr to osd blacklist with no nonce,
so allow it in the valid() method; also add validation of any nonce
given that it's a long >= 0.

Also fix comment on CephEntityAddr type description in MonCommands.h,
and add tests for invalid nonces (while fixing the existing tests to remove
the () around expect_false args).

Fixes: #6425
Signed-off-by: Dan Mick <dan.mick@inktank.com>
2013-09-26 18:06:30 -07:00
Joao Eduardo Luis
b1eeaddd5f qa: workunits: cephtool: check if 'heap' commands are parseable
Signed-off-by: Joao Eduardo Luis <jecluis@gmail.com>
2013-09-20 17:51:50 +01:00
Greg Farnum
3516996bb3 mon/OSDMonitor: 'osd tier {set,remove}-overlay <pool> [tierpool]'
Also prevent 'osd tier remove ...' if the tierpool is the current overlay.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-08-30 14:06:33 -07:00
Greg Farnum
efb7ab2ae4 qa/workunits/cephtool/test.sh: test osd tier CLI
Signed-off-by: Sage Weil <sage@inktank.com>
2013-08-30 14:06:33 -07:00
Sage Weil
0c1fd629fa qa/workunits/cephtool/test.sh: test set/unset of all osd flags
Signed-off-by: Sage Weil <sage@inktank.com>
2013-08-07 08:35:48 -07:00
Sage Weil
db27c3f5a3 qa/workunits/cephtool/test.sh: add tests for 'pg dump ...'
Signed-off-by: Sage Weil <sage@inktank.com>
2013-08-05 13:06:42 -07:00
Dan Mick
6dd4ff8371 cephtool/test.sh, rest/test.py: add tell command tests
Also add HTTP method to test.py output

Signed-off-by: Dan Mick <dan.mick@inktank.com>
2013-08-05 11:21:19 -07:00
Dan Mick
55095d56ea cephtool/test.sh: add a few tests for invalid command args
Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
2013-08-05 11:20:41 -07:00
Sage Weil
2e216b5474 qa/workunits/cephtool/test.sh: test 'osd create <uuid>'
Make sure it gives us back the same id.

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
2013-07-17 18:18:51 -07:00
Sage Weil
56c5b83589 qa/workunits/cephtest/test.sh: put 'osd ls' before any 'osd create' tests
A monc/mon connection fault or the dup command test flag may mean an extra
osd id is created that we isn't actually up; reorder so that doesn't screw
up 'osd ls'.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-07-17 09:36:36 -07:00
Sage Weil
f129d17414 qa/workunits/cephtool/test.sh: mds cluster_down/up are idempotent
As of d45429b81ab9817284d6dca98077cb77b5e8280f; fix the test.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-07-16 17:16:36 -07:00
Dan Mick
07590ae865 cephtool/test.sh: sync status no longer supported
da0aff28ab removed 'ceph sync status';
test script needs to stop trying it

Signed-off-by: Dan Mick <dan.mick@inktank.com>
2013-07-10 20:58:51 -07:00
Dan Mick
e66d011cc8 cephtool/test.sh cleanup
1) don't pass subshell to expect_false
2) osd pause/unpause don't take arguments (apply to all OSDs)

Signed-off-by: Dan Mick <dan.mick@inktank.com>
2013-07-10 20:58:51 -07:00
Dan Mick
ca55c3416e cephtool/test.sh: add case for auth add with no caps
Test case for failure in #5467.  Supplying new auth info overwrites.

Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
2013-06-26 17:09:49 -07:00
Sage Weil
fd769c0f21 qa/workunits/cephtool/test.sh: fix and cleanup several tests
Signed-off-by: Sage Weil <sage@inktank.com>
2013-06-20 11:28:26 -07:00