Commit Graph

33982 Commits

Author SHA1 Message Date
Sage Weil
a0689eccb8 Merge pull request #1954 from dachary/wip-8307-erasure-code-profile-implicit-creation
erasure code profile implicit creation

Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
2014-06-16 09:35:05 -07:00
Sage Weil
e0315268b0 Merge pull request #1964 from ceph/wip-osd-configs
osd: add sanity check/warning on a few key configs

Reviewed-by: Loic Dachary <loic@dachary.org>
2014-06-16 09:30:34 -07:00
Sage Weil
11ce9119ce Merge pull request #1966 from dachary/wip-erasure-code-profile-default
DNM: erasure-code: create default profile if necessary

Reviewed-by: Sage Weil <sage@inktank.com>
2014-06-16 09:29:28 -07:00
Sage Weil
4bd1b5e2b0 PendingReleaseNotes: note about keyvaluestore-dev on-disk format change
Signed-off-by: Sage Weil <sage@inktank.com>
2014-06-16 09:17:36 -07:00
Sage Weil
d3d60af4cf Merge pull request #1941 from yuyuyu101/wip-8564
Fix write operation on a deleted object in the same transaction(KeyValueStore)

Reviewed-by: Sage Weil <sage@inktank.com>
2014-06-16 09:13:49 -07:00
Loic Dachary
360de6adf2 erasure-code: create default profile if necessary
http://tracker.ceph.com/issues/8601

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-06-15 16:54:02 +02:00
Loic Dachary
1fb4574116 Merge pull request #1960 from dachary/wip-test-kill-race
tests: prevent kill race condition

Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
2014-06-15 11:56:54 +02:00
Sage Weil
f3ec7d0b23 osd: add sanity check/warning on a few key configs
Warn when certain config values are set to bad values.

Backport: firefly, dumpling
Signed-off-by: Sage Weil <sage@inktank.com>
2014-06-14 10:30:50 -07:00
Josh Durgin
82c547952d Merge pull request #1949 from ceph/wip-7774-3
Wip 7774 3

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2014-06-13 18:24:19 -07:00
Josh Durgin
f7c093e974 Merge pull request #1915 from ceph/wip-8452-2
rgw: set meta object in extra flag when initializing it

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2014-06-13 16:30:37 -07:00
Loic Dachary
4786a485df osd: remove non const get_erasure_code_profile
It is not used and will unexpectedly create a new entry if selected when
the const version is intended.

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-06-13 14:59:51 +02:00
Loic Dachary
a1c13c57ba tests: prevent kill race condition
When trying to kill a daemon, keep its pid in a variable instead of
retrieving it from the pidfile multiple times. It prevents the following
race condition:

  * try to kill ceph-mon
  * ceph-mon is in the process of dying and removed its pidfile
  * try to kill ceph-mon fails because the pidfile is not found
  * another ceph-mon is spawned and fails to bind the port
    because the previous ceph-mon is still holding it

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-06-13 14:46:42 +02:00
Loic Dachary
5c1f9aaec1 osd: improve osd pool create error message readability
Add std::endl to separate independent error messages related to erasure
code.

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-06-13 12:56:14 +02:00
Loic Dachary
6bf8183fd1 erasure-code: consistent argument parsing for profiles
Remove the = from the goodchars of the erasure_code_profile argument of
osd pool create so that it is consistent with the goodchars of osd
erasure-code-profile set / rm.

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-06-13 12:56:14 +02:00
Loic Dachary
3c638111a4 erasure-code: OSDMonitor::get_erasure_code is a const
If it is not, the non const version of OSDMap::get_erasure_code_profile
is called and a profile is created as a side effect, which is not
intended.

http://tracker.ceph.com/issues/8307 refs: #8307

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-06-13 12:56:14 +02:00
Loic Dachary
ff2eb234e6 erasure-code: pool create must not create profiles
If a non existent profile is provided as an argument to osd pool create,
it must exit on error and not create the profile as a side effect.

http://tracker.ceph.com/issues/8307 refs: #8307

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-06-13 12:56:13 +02:00
Josh Durgin
1781e7f11d Merge pull request #1955 from ceph/wip-8585
rgw: set a default data extra pool name

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2014-06-12 18:02:46 -07:00
Sage Weil
da2c72a86d Merge pull request #1933 from ceph/wip-8556
osd: do not require EC feature bit from clients.

Reviewed-by: Greg Farnum <greg@inktank.com>
2014-06-12 16:45:31 -07:00
Sage Weil
3fe1699f96 osd/OSDMap: do not require ERASURE_CODE feature of clients
Just because an EC pool exists in the cluster does not mean tha tthe client
has to support the feature:

1) The way client IO is initiated is no different for EC pools than for
   replicated pools.
2) People may add an EC pool to an existing cluster with old clients and
   locking those old clients out is very rude when they are not using the
   new pool.
3) The only direct client user of EC pools right now is rgw, and the new
   versions already need to support various other features like CRUSH_V2
   in order to work.  These features are present in new kernels.

Fixes: #8556
Backport: firefly
Signed-off-by: Sage Weil <sage@inktank.com>
2014-06-12 16:45:00 -07:00
Sage Weil
250677c965 osd/OSDMap: make get_features() take an entity type
Make the helper that returns what features are required of the OSDMap take
an entity type argument, as the required features may vary between
components in the cluster.

Backport: firefly
Signed-off-by: Sage Weil <sage@inktank.com>
2014-06-12 16:44:53 -07:00
Josh Durgin
894f37248c Merge pull request #1957 from ceph/wip-doc-os-recommendations
doc: Updated the OS Recommendations for Firefly.

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2014-06-12 13:14:13 -07:00
John Wilkins
e720314aa6 doc: Updated the OS Recommendations for Firefly.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2014-06-12 12:48:29 -07:00
John Wilkins
2e3302cc3e doc: Updated the example configuration.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2014-06-12 11:35:27 -07:00
John Wilkins
5a31df214f doc: Updated doc for more recent versions.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2014-06-12 11:34:41 -07:00
Sage Weil
1e18d85b27 Merge pull request #1939 from ceph/wip-mon
mon: a few basic perfcounter guages

Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
2014-06-12 10:37:15 -07:00
Sage Weil
a5857e3d4a Merge pull request #1956 from ceph/wip-fsx-sizeof
test_librbd_fsx: fix sign-compare gcc warning

Reviewed-by: Sage Weil <sage@inktank.com>
2014-06-12 09:57:02 -07:00
Alfredo Deza
87650d430f Merge pull request #1948 from steveftaylor/6700
Fix for bug #6700

Reviewed-by: Alfredo Deza <alfredo.deza@inktank.com>
2014-06-12 08:23:22 -04:00
Ilya Dryomov
a290d3490f test_librbd_fsx: fix sign-compare gcc warning
{read,write}bdy are signed, sizeof returns unsigned, gcc complains.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2014-06-12 14:37:03 +04:00
Sage Weil
e287f02a0b Merge pull request #1937 from yuyuyu101/keyvaluestore-strip-size
Add strip size and set_alloc_hint op support for KeyValueStore

Reviewed-by: Sage Weil <sage@inktank.com>
2014-06-11 20:24:04 -07:00
Yehuda Sadeh
b2542f8e88 rgw: set a default data extra pool name
Fixes: #8585
Have a default name for the data extra pool, otherwise it would be empty
which means that it'd default to the data pool name (which is a problem
with ec backends).

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2014-06-11 16:50:41 -07:00
John Wilkins
94c8f70ea6 doc: Made mention of "incomplete" status.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2014-06-11 16:11:47 -07:00
Gregory Farnum
027e75cbd7 Merge pull request #1953 from ceph/wip-xattr-spillout
Enable and fix the existing xattr spillout code.

Reviewed-by: Sage Weil <sage@inktank.com>
2014-06-11 14:59:25 -07:00
Gregory Farnum
b8709ec0ad Merge pull request #1897 from somnathr/wip-sharded-threadpool
Reviewed-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
2014-06-11 14:29:55 -07:00
Greg Farnum
29c33f0c05 qa: add an fsx run which turns on kernel debugging
Signed-off-by: Greg Farnum <greg@inktank.com>
2014-06-11 13:40:48 -07:00
Greg Farnum
f9787224ba FileStore: remove the user_only param from _fgetattrs
Nobody sets it to true, so remove it!

Signed-off-by: Greg Farnum <greg@inktank.com>
2014-06-11 10:48:59 -07:00
Greg Farnum
bb4e3a9fbc FileStore: remove user_only options from getattrs through the ObjectStore stack
This sort of awareness belongs at a higher level in the stack -- as
evidenced by nobody using the option at this level. Remove it from the
implementations and the interface

Signed-off-by: Greg Farnum <greg@inktank.com>
2014-06-11 10:48:59 -07:00
Greg Farnum
fbe6009f22 FileStore: do not use user_only in collection_getattrs
There's no particular reason why any of the callers of collection_getattrs
want to avoid looking at Ceph's internal xattrs.
It looks like this flag (set in 1862ddd885) was
set this way by mistake.
And finally, we don't actually set xattrs on collections anymore, anyway.

Signed-off-by: Greg Farnum <greg@inktank.com>
2014-06-11 10:48:59 -07:00
Greg Farnum
7267a37d03 FileStore: remove dead code
This case wasn't reachable when it was introduced, and it's still not.

Signed-off-by: Greg Farnum <greg@inktank.com>
2014-06-11 10:48:59 -07:00
Greg Farnum
e3b995e156 FileStore: set XATTR_NO_SPILL_OUT when creating new files.
Fixes: #8205
Backport: firefly

Signed-off-by: Greg Farnum <greg@inktank.com>
2014-06-11 10:48:59 -07:00
Haomai Wang
239476a928 FileStore: make _clone() copy spill out marker
Previously we were not doing so, and that resulted in unpredictable loss
of xattrs from the client's perspective.

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
2014-06-11 10:47:40 -07:00
Haomai Wang
af8052bddb Add xattr test to ceph_test_objectstore
Add xattr synthetic test to test ObjectStore xattr related interfaces.

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
2014-06-11 10:47:26 -07:00
Yehuda Sadeh
d9fac9c655 rgw: chain to multiple cache entries in one call
This ensures that chained cache entries that depend on more than one raw
cache entry (bucket info cache depends on both the bucket entry point
and on the bucket info object), are chained and created atomically.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2014-06-10 23:08:58 -07:00
Yehuda Sadeh
c616358fe0 rgw: chain binfo_cache to multiple cache entries
Need to chain it to both the entry point and to the instance.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2014-06-10 23:08:58 -07:00
Yehuda Sadeh
7e81185b06 rgw: bucket info uses cache chaining
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2014-06-10 23:08:57 -07:00
Yehuda Sadeh
a2f6709fd8 rgw: user info uses cache chaining
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2014-06-10 23:08:57 -07:00
Yehuda Sadeh
ab764f38c1 rgw: an infrastructure for hooking into the raw cache
Extend the RGWCache so that we can chain other caches to it so that when
data is invalidated it notifies them.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2014-06-10 23:08:57 -07:00
Yehuda Sadeh
7fb6a3d68f rgw: cache bucket info
This is really a partial implementation, so should only be used for
testing.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2014-06-10 23:08:56 -07:00
Yehuda Sadeh
eaff42f3e9 rgw: cache decoded user info
Instead of accessing the raw user info data, cache the decoded
structure.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2014-06-10 23:08:56 -07:00
Somnath Roy
0bbeeee3b4 PG: Added a const spg_t member to the PG class
The const spg_t member is been insantiated from constructor
and now get_pgid() can reference this to return a spg_t instance
without the need of pg_info (thus not requiring to acquire pg_lock).

Signed-off-by: Somnath Roy <somnath.roy@sandisk.com>
2014-06-10 18:10:30 -07:00
John Wilkins
85e491fb77 doc: Added a tip to install NTP when running multiple monitors.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2014-06-10 17:45:18 -07:00