Commit Graph

44146 Commits

Author SHA1 Message Date
Sage Weil
66aae98277 os/newstore: use overlay even if it is a new object or append
This avoids the fsync for small writes.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-09-01 13:39:36 -04:00
Xiaoxi Chen
0981428123 os/Newstore:Change assert in get_onode
db->get will return negtive when key is not found.

Signed-off-by: Xiaoxi Chen <xiaoxi.chen@intel.com>
2015-09-01 13:39:36 -04:00
Sage Weil
97bda73ebf os/newstore: open by handle
Signed-off-by: Sage Weil <sage@redhat.com>
2015-09-01 13:39:36 -04:00
Sage Weil
8f2c2bff30 os/newstore: use fs abstaction layer
Signed-off-by: Sage Weil <sage@redhat.com>
2015-09-01 13:39:36 -04:00
Xiaoxi Chen
ef420baf1c os/newstore: cap fid_max below newstore_max_dir_size
Prevent fid_max over the max_dir_size when preallocation.

Signed-off-by: Xiaoxi Chen <xiaoxi.chen@intel.com>
2015-09-01 13:39:36 -04:00
Sage Weil
59cd761bca os/newstore: keep smallish overlay extents in kv db
If we have a small overwrite, keep the extent in the key/value database.
Only write it back to the file/fragment later, and when we do, write them
all at once.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-09-01 13:39:36 -04:00
Sage Weil
2af1e37d7d os/newstore: assigned unique nid to each new object
Use this as the key for omap (omap_head), but keep the omap_head field
so that we can tell when no omap data is present.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-09-01 13:39:36 -04:00
Sage Weil
713c69884e os/newstore: consolite collection_list to a single implementation
Signed-off-by: Sage Weil <sage@redhat.com>
2015-09-01 13:39:36 -04:00
Xiaoxi Chen
a4d2a53cf6 Clear removed_collections after reap
Previous code forgot to clear the removed_collections queues
after reaped the collections in _reap_collection.

Signed-off-by: Xiaoxi Chen <xiaoxi.chen@intel.com>
2015-09-01 13:39:36 -04:00
Sage Weil
d8351a8d9e os/newstore: ref count OpSequencer
Our OpSequencer may live longer than the ObjectStore::Sequencer interface
object does.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-09-01 13:39:35 -04:00
Sage Weil
fbf3d5528f os/newstore: send complete overwrite to a new fid
Signed-off-by: Sage Weil <sage@redhat.com>
2015-09-01 13:39:35 -04:00
Sage Weil
db87e423b6 os/newstore: clone omap
Signed-off-by: Sage Weil <sage@redhat.com>
2015-09-01 13:39:35 -04:00
Sage Weil
d0a4bbaf69 newstore: initial version
This includes a bunch of new ceph_test_objectstore tests, and a ton of fixes
to existing tests so that objects actually live inside the collections they
are written to.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-09-01 13:39:35 -04:00
Sage Weil
10c0bfeadd vstart.sh: debug newstore 2015-09-01 13:39:18 -04:00
Sage Weil
be93b09fd2 Revert "os/Makefile.am: add os/fs/XFS.cc"
This reverts commit 32331ede41.

Doh, this is in a conditional below.
2015-09-01 13:38:03 -04:00
David Zafman
78e784d202 Merge pull request #5173 from ceph/wip-12000-12200
Fast read for erasure coding pool and erasure code error handling

Error handling
Reviewed-by: Loic Dachary <ldachary@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Fast Read
Reviewed-by: David Zafman <dzafman@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
2015-09-01 10:25:08 -07:00
Sage Weil
32331ede41 os/Makefile.am: add os/fs/XFS.cc
Signed-off-by: Sage Weil <sage@redhat.com>
2015-09-01 13:20:03 -04:00
Kefu Chai
82acd5e9ee Merge pull request #5695 from tchaikov/wip-12012
osd: translate sparse_read to read for ecpool

Reviewed-by: Sage Weil <sage@redhat.com>
2015-09-01 19:00:46 +08:00
Kefu Chai
076bad955d ceph_test_rados_api_aio: add a test for aio_sparse_read
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-09-01 13:52:37 +08:00
Kefu Chai
4d4920610e ceph_test_rados_api_io: add tests for sparse_read
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-09-01 13:49:22 +08:00
Kefu Chai
5ae2e7a185 ceph_test_rados: also send sparse_read in ReadOp
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-09-01 13:49:22 +08:00
Kefu Chai
a5bfde69a9 osd: should use ec_pool() when checking for an ecpool
we were using pool.info.require_rollback() in do_osd_ops() when
handling OP_SPARSE_READ to tell if a pool is an ecpool. should
use pool.info.ec_pool() instead.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-09-01 13:49:21 +08:00
Kefu Chai
700d42ef1c osd: translate sparse_read to read for ecpool
Fixes: #12012
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-09-01 13:49:21 +08:00
David Zafman
28324fdb08 osd: Fix the diagnostic logging mostly to dout(20)
Signed-off-by: David Zafman <dzafman@redhat.com>
2015-08-31 19:30:00 -07:00
Loic Dachary
bf75b309ec Merge pull request #5652 from dachary/wip-mailmap
mailmap updates

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-08-31 22:35:12 +02:00
Sage Weil
403144f506 ceph.spec: package cls_numops
Signed-off-by: Sage Weil <sage@redhat.com>
2015-08-31 15:58:20 -04:00
Sage Weil
bdc6b6816c Merge pull request #5684 from liewegas/wip-hammer-corpus
add hammer objects to ceph-object-corpus
2015-08-31 13:50:11 -04:00
Sage Weil
548a04e0cf Merge pull request #5451 from XinzeChi/wip-recovery-attr
bug fix: osd: do not cache unused buffer in attrs

Reviewed-by: Sage Weil <sage@redhat.com>
2015-08-31 13:31:06 -04:00
Sage Weil
589fa81518 Merge pull request #5357 from ceph/wip-12325
mon: LogMonitor: handle boolean options consistently

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-08-31 11:33:13 -04:00
Sage Weil
ad3f16912b Merge remote-tracking branch 'gh/infernalis' 2015-08-31 11:29:14 -04:00
Sage Weil
b518b6811f Merge pull request #5622 from ceph/wip-memstore
MemStore locking enhancements and bufferlist alternative

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Haomai Wang <haomaiwang@gmail.com>
2015-08-31 11:08:46 -04:00
Sage Weil
9245007293 Merge pull request #5705 from dachary/wip-12786-centos-systemd
ceph-disk: {CentOS,RHEL} >= 7 && Fedora >= 22 are systemd

Reviewed-by: Travis Rhoden <trhoden@redhat.com>
2015-08-31 11:06:52 -04:00
Sage Weil
9979bb6cc7 Merge pull request #5699 from dachary/wip-11881-multipath
ceph-disk: add multipath support

Reviewed-by: Sage Weil <sage@redhat.com>
2015-08-31 11:06:27 -04:00
Kefu Chai
7a09ea09e2 Merge pull request #5655 from duduribeiro/patch-1
doc: update ruby doc with the aws-sdk gem usage

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-08-31 22:33:15 +08:00
Kadu Ribeiro
d05e531dc0 doc: update ruby doc with the aws-sdk gem usage
Since I'm using ceph with the `aws-sdk` gem (https://github.com/aws/aws-sdk-ruby) instead `aws-s3` (https://github.com/marcel/aws-s3) because the aws-s3 have a trouble with the new active support (https://github.com/marcel/aws-s3/issues/98) (and the downgrade active-support wasn't a option), I proposed change the doc to receive the usage instructions with the aws-sdk gem.

I used ceph with aws-sdk gem with this commands.

Thanks so much

Signed-off-by: Carlos E Ribeiro <mail@carlosribeiro.me>
2015-08-31 11:28:05 -03:00
Sage Weil
f030af3cd3 Merge pull request #4869 from joaquimrocha/cls_numops
CLS numops

Reviewed-by: Noah Watkins <noahwatkins@gmail.com>
2015-08-31 10:16:10 -04:00
Gregory Farnum
728e2229a8 Merge pull request #5724 from ceph/wip-i386
perf_serialize: fix i386 build

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2015-08-31 15:12:19 +01:00
Sage Weil
63bd5a729e Merge pull request #5713 from yuyuyu101/wip-12798
Fix keyvaluestore fails ceph_test_objectstore

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-08-31 09:24:02 -04:00
Kefu Chai
6dc9ed5814 Merge pull request #5603 from wonzhq/doc-read-recency
doc: add the description for min_read_recency_for_promote

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-08-31 18:12:43 +08:00
Kefu Chai
3b089b0a97 Merge pull request #5460 from ceph/port/new
OSX and BSD derivatives port

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-08-31 17:43:52 +08:00
Joao Eduardo Luis
35c80951ca Merge pull request #4896 from xinxinsh/wip-monitor-dump-transaction
MonitorDBStore : make monitor transaction more readable

Reviewed-by: Joao Eduardo Luis <joao@suse.de>
Reviewed-by: Sage Weil <sage@redhat.com>
2015-08-31 10:17:58 +01:00
Kefu Chai
109e5b127b make: do not compile XFS.cc if --without-libxfs
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-08-31 16:00:29 +08:00
Kefu Chai
8ef07420b1 os/fs: include <sys/mount.h> on osx
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-08-31 16:00:29 +08:00
Yan, Zheng
491d8939bb test_c_headers: don't use -Werror option for clang
When using clang to compile ceph, there are lots of warnings:
clang: warning: argument unused during compilation: '-Wp,-D_FORTIFY_SOURCE=2'

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-08-31 16:00:29 +08:00
Yan, Zheng
d36e514935 ceph: use 'sed -ie' to edit file in-place
On OSX, 'sed -i script' does not work, because it considers 'script'
as suffix of backup file. 'sed -ie script' works on both OSX and Linux.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-08-31 16:00:29 +08:00
Yan, Zheng
68db9f6fda client: fix compile error on OSX
On OSX, type of the 3rd parameters of getgrouplist is 'int *'

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-08-31 16:00:28 +08:00
Yan, Zheng
0b94867a93 common/blkdev: fix complie error on OSX/FreeBSD
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-08-31 16:00:28 +08:00
Yan, Zheng
8d527d4167 common/admin_socket: fix compile error on OSX
Invalid operands to binary expression ('__bind<int &, sockaddr *,
unsigned long>' and 'int')

Without :: clang confuses C bind function and std::bind().

Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-08-31 16:00:28 +08:00
Yan, Zheng
2cd7d4fca1 tests: only use posix_fadvise on linux
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-08-31 16:00:28 +08:00
Yan, Zheng
c092b4fcc4 os/chain_xattr: set CHAIN_XATTR_MAX_NAME_LEN according to max length of xattr name
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-08-31 16:00:27 +08:00