Commit Graph

67130 Commits

Author SHA1 Message Date
Orlando Moreno
d548d5a1f0 os/bluestore: allow multiple SPDK BlueStore OSD instances
Fixes: http://tracker.ceph.com/issues/16966

Signed-off-by: Orlando Moreno <orlando.moreno@intel.com>
2016-12-19 16:57:32 -07:00
Sage Weil
ec5ba4e8cf os/bluestore: preserve source collection cache during split
OSD split transactions look something like

 mkcoll new
 split old
 ...
 omap_rmkey_range old
 omap_setkeys old
 omap_setkeys new

The last part splits the log into two pieces.  The
problem is that the rmkey_range needs to wait on old
omap transactions to flush, and those are linked to the
old onode, and split clears the cache.  The result is
that we don't wait, rmkeyrange leaves some recent pg log
keys behind, and on OSD restart we get an error because
the object doesn't belong to the (old) collection.

Fix this by preserving objects in the old collection and
only clear out objects that are moving to the newly
split collections.  This will include the pgmeta object
that we care about.

(Note that we are one step closer to preserving the
cache contents across the split, but not quite there
yet: at this point we don't have all of the destination
collections.  A change in the ObjectStore interface is
probably needed to make that not be extremely awkward.)

Signed-off-by: Sage Weil <sage@redhat.com>
2016-12-19 17:05:00 -05:00
Samuel Just
dc639fd9e5 Merge pull request #12571 from athanatos/wip-15943
osd: Fix map gaps again (bug 15943)

Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2016-12-19 13:50:15 -08:00
vasukulkarni
c3afbbf30b Merge pull request #12572 from liewegas/wip-python-rados-test
qa/workunits: include extension for nose tests
2016-12-19 12:25:38 -08:00
Sage Weil
e82291342a Merge pull request #12568 from ifed01/wip-bluestore-onode-diet2
os/bluestore: reduce Onode in-memory footprint

Reviewed-by: Sage Weil <sage@redhat.com>
2016-12-19 14:15:03 -06:00
Sage Weil
3079dfc840 Merge pull request #12555 from socketpair/usr_bin
systemd: Fix startup of ceph-mgr on Debian 8

Reviewed-by: Sage Weil <sage@redhat.com>
2016-12-19 14:13:32 -06:00
Sage Weil
3649d1fc3c Merge pull request #12355 from chhabaramesh/bit_alloc_mempool
os/bluestore: simplified allocator interfaces to single apis

Reviewed-by: Sage Weil <sage@redhat.com>
2016-12-19 14:13:10 -06:00
Sage Weil
5666fd61d6 qa/workunits: include extension for nose tests
When you have a relative path you have to include the extension.
Weird.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-12-19 14:08:11 -05:00
jtlayton
20f936e841 Merge pull request #12412 from ceph/wip-jlayton-suid
client/mds: Clear setuid bits when writing or truncating
2016-12-19 13:26:27 -05:00
Willem Jan Withagen
d9acbf587b Clang/str_list.h: fix clang warning about std::move
/home/jenkins/workspace/ceph-master/src/include/str_list.h:99:10: warning: moving a local object in a return statement prevents copy elision [-Wpessimizing-move]
  return std::move(str_vec);
         ^
/home/jenkins/workspace/ceph-master/src/include/str_list.h:99:10: note: remove std::move call here
  return std::move(str_vec);
         ^~~~~~~~~~       ~
1 warning generated.

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2016-12-19 17:29:38 +01:00
Jason Dillaman
2d982ae1df Merge pull request #12565 from trociny/wip-18247-fixup
common: fix clang compilation error

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2016-12-19 10:33:24 -05:00
Igor Fedotov
7d1f46b2b7 os/bluestore: remove duplicate sbid member for Blob, use one from shared_blob member
Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
2016-12-19 15:06:47 +00:00
Igor Fedotov
a6158d5cce os/bluestore: declare a member for Blob's cached bufferlist if explicitly enabled by CACHE_BLOG_BL macro only
Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
2016-12-19 15:06:39 +00:00
Igor Fedotov
b07f3ffebb os/bluestore: recalculate shared blob key instead of keeping it in memory
Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
2016-12-19 15:06:24 +00:00
Sage Weil
1b319f2e8f os/bluestore: include modified objects in flush list even if onode unchanged
We use the onode flush list so that we can ->flush() as
a barrier before doing any read/modify/write.  For
example, omap_rmkeyrange will flush before reading to
see what keys to erase in order to ensure that any
previous inserts are applied to the db and we see them
and remove them.

However, some omap operations don't update the onode
itself, which means write_onode() doesn't get called and
we aren't put on this list.

Add a note_modified_object() helper that can be called
instead of write_onode() for those cases.  That way we
get on the list and flush() works as expected.

We could have resolved this by just putting ourselves on
the dirty onode list, but in practice every OSD op is
writing omap keys to the pgmeta object and there is no
need to touch the onode key in this case, so doing so
would be a big regression.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-12-19 10:03:44 -05:00
Sage Weil
991141c34f Merge pull request #12548 from Liuchang0812/add-document-rgw
doc: explain rgw_fcgi_socket_backlog in rgw/config-ref.rst

Reviewed-by: Sage Weil <sage@redhat.com>
2016-12-19 08:44:27 -06:00
Sage Weil
071cdbe35f Merge pull request #12561 from kylinstorage/wip-fix-osdmaptool-zero
osdmaptool: fix divide by zero error

Reviewed-by: Sage Weil <sage@redhat.com>
2016-12-19 08:38:43 -06:00
Mykola Golub
8da0f348d3 Merge pull request #12497 from dillaman/wip-18243
journal: prevent repetitive error messages after being blacklisted

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
2016-12-19 15:58:59 +02:00
Yunchuan Wen
838339d71f ECBackend: cleanup for unnecessary copy with pg_stat_t
Signed-off-by: Yunchuan Wen <yunchuan.wen@kylin-cloud.com>
2016-12-19 17:12:38 +08:00
Ramesh Chander
9ce95bb1fd remove unused wait argument and related function versions
Signed-off-by: Ramesh Chander <Ramesh.Chander@sandisk.com>
2016-12-19 00:17:40 -08:00
Mykola Golub
bd584fe797 common: fix clang compilation
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-12-19 08:44:22 +02:00
Yunchuan Wen
45a0286e86 osdmaptool: fix divide by zero error
Signed-off-by: Yunchuan Wen <yunchuan.wen@kylin-cloud.com>
2016-12-19 12:56:37 +08:00
Haomai Wang
e293d40e6a Merge pull request #12558 from Adirl/fix_bad_len_msg
msg/async/rdma: fix bad message that went to the user

Reviewed-by: Haomai Wang <haomai@xsky.com>
2016-12-19 09:59:51 +08:00
Ramesh Chander
f1e9aee716 zone block offset bug fix and related unit test case
Signed-off-by: Ramesh Chander <Ramesh.Chander@sandisk.com>

zone block offset related test case

Signed-off-by: Ramesh Chander <Ramesh.Chander@sandisk.com>
2016-12-18 10:40:40 -08:00
Ramesh Chander
86b6ca3dc2 allocat_extent api rename and tests for new api
Signed-off-by: Ramesh Chander <Ramesh.Chander@sandisk.com>
2016-12-18 10:40:40 -08:00
Ramesh Chander
78b490252d remove cont alloc alloc_blocks calls from allocator code and test
Signed-off-by: Ramesh Chander <Ramesh.Chander@sandisk.com>
2016-12-18 10:40:40 -08:00
Ramesh Chander
2942bc627a consolidate allocator calls to single alloc_extent api
Signed-off-by: Ramesh Chander <Ramesh.Chander@sandisk.com>
2016-12-18 10:40:40 -08:00
Ramesh Chander
8ed5ec0277 allocator min_alloc arguments in call stack and tests
Signed-off-by: Ramesh Chander <Ramesh.Chander@sandisk.com>
2016-12-18 10:40:40 -08:00
Ramesh Chander
f9338b1a1f allocator alloc_extents min_alloc
Signed-off-by: Ramesh Chander <Ramesh.Chander@sandisk.com>
2016-12-18 10:40:40 -08:00
Ramesh Chander
6ad9814b93 os/bluestore:Bluefs balance should use alloc_extent api with bluefs_alloc_size
Signed-off-by: Ramesh Chander <Ramesh.Chander@sandisk.com>
2016-12-18 10:40:40 -08:00
Avner BenHanoch
daca8f6873 msg/async/rdma: fix bad message that went to the user
1. the printed value of "bad length" was incorrect, because 'r' was changed before the log line.
2. log appeared to user as error even though everything was calm; hence, reducing its severity

issue: 914840

Change-Id: I41520d27fc53fbbe07b61dd915e16448b87769d5
Signed-off-by: Avner BenHanoch <avnerb@mellanox.com>
2016-12-18 16:52:12 +00:00
Mark Korenberg
2ccd02a838 Fix startup of Ceph cluster manager daemon on Debian 8
Signed-off-by: Mark Korenberg <socketpair@gmail.com>
2016-12-18 18:07:21 +05:00
Loic Dachary
049641df2e Merge pull request #12531 from dachary/wip-18291-bluestore
ceph-disk: do not create bluestore wal/db partitions by default

Reviewed-by: Sage Weil <sage@redhat.com>
2016-12-18 09:59:23 +01:00
Loic Dachary
c83d030d30 ceph-disk: do not create bluestore wal/db partitions by default
Fixes: http://tracker.ceph.com/issues/18291

Signed-off-by: Loic Dachary <loic@dachary.org>
2016-12-17 20:55:36 +01:00
liuchang0812
6fc0e59a1c doc: explain rgw_fcgi_socket_backlog in rgw/config-ref.rst
Signed-off-by: liuchang0812 <liuchang0812@gmail.com>
2016-12-17 22:49:42 +08:00
Xie Xingguo
a30d90cdc6 Merge pull request #12458 from Liuchang0812/add-more-log-for-network-error
osd: enhance logging for osd network error

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
2016-12-17 12:54:32 +08:00
liuchang0812
7ceadba31d ods: enhance logging for osd network error
Signed-off-by: liuchang0812 <liuchang0812@gmail.com>
2016-12-17 12:07:36 +08:00
huangjun
9e19b86721 osd/ECBackend: remove unused variable "ReadCB"
Signed-off-by: huangjun <hjwsm1989@gmail.com>
2016-12-17 10:00:06 +08:00
Yunchuan Wen
25efc6f060 test: add new testcase for request admin_socket with long request
Signed-off-by: Yunchuan Wen <yunchuan.wen@kylin-cloud.com>
2016-12-17 08:40:26 +08:00
Sage Weil
3cf1ca5d41 Merge pull request #12343 from liewegas/wip-bluestore-release
os/bluestore: simplify allocator release flow

Reviewed-by: Sage Weil <sage@redhat.com>
2016-12-16 17:40:47 -06:00
Sage Weil
45d698ebdc Merge pull request #12351 from xiexingguo/xxg-wip-bluestore-1207
os/bluestore: clear omap flag if parent has none

Reviewed-by: Sage Weil <sage@redhat.com>
2016-12-16 17:40:30 -06:00
Sage Weil
4444540d78 Merge pull request #12353 from xiexingguo/xxg-wip-bluestore-1207-01
os/bluestore: don't implicitly create the source object for clone

Reviewed-by: Sage Weil <sage@redhat.com>
2016-12-16 17:40:06 -06:00
Sage Weil
be4c0c7261 Merge pull request #12466 from kylinstorage/wip-remove-unused-class-declaration
remove unused declaration

Reviewed-by: Sage Weil <sage@redhat.com>
2016-12-16 17:39:44 -06:00
Sage Weil
2c7c27ab6c Merge branch 'master' into wip-remove-unused-class-declaration 2016-12-16 17:38:32 -06:00
Dan Mick
e72c80197b ceph.in: allow 'flags' to not be present in cmddescs
the 'flags' key in the command description dict may not be
present on older monitors.  Check for existence before
using it.

Introduced in 61d63433df

Fixes: http://tracker.ceph.com/issues/18297
Signed-off-by: Dan Mick <dan.mick@redhat.com>
2016-12-16 14:59:17 -08:00
Sage Weil
26ab33ae79 Merge pull request #12538 from liewegas/wip-workunits
qa/tasks/workunit: retry on ceph.git if checkout fails

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2016-12-16 15:38:24 -06:00
Sage Weil
02d301bff0 Merge pull request #12534 from liewegas/wip-truncate-fix
osd/PrimaryLogPG: don't truncate if we don't have to for WRITEFULL

Reviewed-by: Sage Weil <sage@redhat.com>
2016-12-16 14:08:59 -06:00
Sage Weil
72d73b8c88 qa/tasks/workunit: retry on ceph.git if checkout fails
Signed-off-by: Sage Weil <sage@redhat.com>
2016-12-16 15:06:16 -05:00
Mykola Golub
4fe7e2a458 Merge pull request #12486 from dillaman/wip-18247
librbd: keep rbd_default_features setting as bitmask

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
2016-12-16 21:15:02 +02:00
Sage Weil
de3186203f Merge pull request #12514 from vasukulkarni/wip-cd-shaman
qa/tasks/ceph_deploy: use dev option instead of dev-commit

Reviewed-by: Sage Weil <sage@redhat.com>
2016-12-16 11:46:38 -06:00