Commit Graph

52890 Commits

Author SHA1 Message Date
Mykola Golub
a2045d6187 librbd: API to retrieve image mirroring status
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-04-26 15:52:09 +03:00
Mykola Golub
52b2fe14cf rbd-mirror: store replay status in mirroring object
Fixes: #14420
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-04-26 15:52:09 +03:00
Mykola Golub
7633407ab5 test: MockJournaler: add get_cached_client method
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-04-26 15:52:09 +03:00
Mykola Golub
8aefad5981 test: cls_rbd: methods to store/retrieve mirroring status
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-04-26 15:52:09 +03:00
Mykola Golub
17dd40df4f cls::rbd:: methods to store/retrieve mirroring status
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-04-26 15:52:09 +03:00
Mykola Golub
44a31d2b77 objclass: add method to list watchers
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-04-26 15:52:09 +03:00
xie xingguo
e7a32534eb mon/OSDMonitor: improve reweight_by_utilization() logic
By calling reweight_by_utilization() method, we are aiming at an evener result
of utilization among all osds. To achieve this, we shall decrease weights of
osds which are currently overloaded, and try to increase weights of osds which
are currently underloaded when it is possible.
However, we can't do this all at a time in order to avoid a massive pg migrations
between osds. Thus we introduce a max_osds limit to smooth the progress.

The problem here is that we have sorted the utilization of all osds in a descending
manner and we always try to decrease the weights of the most overloaded osds
since they are most likely to encounter a nearfull/full transition soon, but
we won't increase the weights from the most underloaded(least utilized by contrast)
at the same time, which I think is not quite reasonable.

Actually, the best thing would probably be to iterate over teh low and high osds
in parallel, and do the ones that are furthest from the average first.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2016-04-26 13:33:44 +08:00
Haomai Wang
25c2f5a793 Merge pull request #8683 from Ved-vampir/zlib_fix
compressor: fix of error code control in zlib decompress

Reviewed-by: Haomai Wang <haomai@xsky.com>
2016-04-26 11:43:51 +08:00
xie xingguo
3557903d5d mon/OSDMonitor: avoid potential expensive grace calculation
The grace calculation during check_failure() is now very complicated
and time-consuming. Therefore we shall skip this when it is possible.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2016-04-26 11:25:40 +08:00
Sage Weil
68a3173420 Merge pull request #8489 from SUSE/wip-15419
systemd: make Ceph daemons dependent upon time-sync.target

Reviewed-by: Tim Serong <tserong@suse.com>
Reviewed-by: James Page <james.page@ubuntu.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2016-04-25 22:33:20 -04:00
Sage Weil
ec2044818e Merge pull request #8721 from ibravo/patch-2
doc: update quick-ceph-deploy.rst

Reviewed-by: Sage Weil <sage@redhat.com>
2016-04-25 22:21:12 -04:00
Sage Weil
e265140632 Merge pull request #8713 from HeyoQiang/master
osd/PG: remove unused variable have

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
2016-04-25 22:20:21 -04:00
YongQiang
48d7519c88 PG:clear an unused variable: have
Signed-off-by: Yongqiang He <he.yongqiang@h3c.com>
2016-04-26 06:10:43 -04:00
Sage Weil
7b78fcee97 Merge pull request #8723 from cooboos/wrong_spell
doc: correct wrong spell 'mnay' to 'many'

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
2016-04-25 22:18:51 -04:00
Sage Weil
4ebca36b3c Merge pull request #6764 from kylinstorage/fix-check_become_tier
mon: fix OSDMonitor::_check_become_tier

Reviewed-by: Xinze Chi <xinze@xsky.com>
2016-04-25 22:01:19 -04:00
Sage Weil
57ea13a65a Merge pull request #8103 from adamemerson/wip-sign-of-the-time-debug
common: signed coarse time

Reviewed-by: Kefu Chai <kchai@redhat.com>
2016-04-25 21:59:40 -04:00
Sage Weil
35f4e1fd9a Merge pull request #8407 from dx9/wip-os-release
common/util: add support for distro info from /etc/os-release file

Reviewed-by: Sage Weil <sage@redhat.com>
2016-04-25 21:59:06 -04:00
Sage Weil
acb6bb598a Merge pull request #8437 from jjhuo/single_delete
os/kv, os/bluestore: Enable SingleDelete with RocksDB and Bluestore

Reviewed-by: Sage Weil <sage@redhat.com>
2016-04-25 21:58:55 -04:00
Sage Weil
fef50f3e62 Merge pull request #8451 from tchaikov/wip-signal-hanlder-typo
global/signal_handler: fix typo

Reviewed-by: Sage Weil <sage@redhat.com>
2016-04-25 21:58:22 -04:00
Sage Weil
f3f2463f5c Merge pull request #8503 from yuyuyu101/wip-spdk-improve
os/bluestore/NVMEDevice: performance improvements
2016-04-25 21:58:03 -04:00
Sage Weil
8c10377be1 Merge pull request #8702 from kmroz/wip-fix-run-dir-chown
global-init: fixup chown of the run directory along with log and asok files

Reviewed-by: Sage Weil <sage@redhat.com>
2016-04-25 21:56:42 -04:00
Sage Weil
0db5e051d0 Merge pull request #8728 from liewegas/wip-notify
osd/osd_types: render notify op properly

Reviewed-by: Kefu Chai <kchai@redhat.com>
2016-04-25 21:55:54 -04:00
Jianjian Huo
0860e62b68 os/bluestore/BlueStore: cleanup overlay using single delete
Overlay entries are also only written once, eligible to use single delete.

Signed-off-by: Jianjian Huo <jianjian.huo@ssi.samsung.com>
2016-04-25 17:03:52 -07:00
Jianjian Huo
dc17107d81 os/bluestore/BlueStore: cleanup the wal entries using single delete
By use of single delete, RocksDB should be able to remove deleted wal
entries with only one compaction in theory, when wal entries land on level0.
This should reduce bluestore wal entries incurred WAF.

Signed-off-by: Jianjian Huo <jianjian.huo@ssi.samsung.com>
2016-04-25 17:03:52 -07:00
Jianjian Huo
2089cff5b5 kv/RocksDBStore: implement rm_single_delete
Use SingleDelete to delete keys which were never overwritten.

Signed-off-by: Jianjian Huo <jianjian.huo@ssi.samsung.com>
2016-04-25 17:03:07 -07:00
Jianjian Huo
9c60532eae kv/KeyValueDB: add a new interface for single delete.
This is useful for log-insert-merge tree based key value store, such as
RocksDB, to avoid more LSM compactions for already deleted key value pairs.

Signed-off-by: Jianjian Huo <jianjian.huo@ssi.samsung.com>
2016-04-25 16:35:24 -07:00
John Spray
a17c9c614f Merge pull request #8474 from xiaoxichen/wip-pycephfs-namespace
pycephfs: using namespace for data isolation

Reviewed-by: John Spray <john.spray@redhat.com>
2016-04-25 17:49:45 -05:00
Yehuda Sadeh
6f6b0c9259 rgw: fix suffix in RGWZoneParams::fix_pool_names()
Fixes: http://tracker.ceph.com/issues/15598

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-04-25 15:12:40 -07:00
Jianpeng Ma
c23b45d873 os/bluestore/BlueStore: Record released extents into wal-transaction.
If wal-reply, it release the released-extents. But it don't record those
extents. So if wal_transaction exist, it should record released-extents into
bluestore_wal_transaction_t.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
2016-04-26 05:59:25 +08:00
Jianpeng Ma
9bab8f49a4 os/bluestore/bluestore_type: dump released extents for wal-transaction
Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
2016-04-26 05:33:56 +08:00
Nathan Cutler
2310854745 ceph.spec.in: recommend ntp-daemon on SUSE
SUSE has settled on "ntp-daemon" as the generic package name. The "ntp" and
"chrony" etc. packages have "Provides: ntp-daemon" in their respective spec
files.

References: http://tracker.ceph.com/issues/15419
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-04-25 22:16:19 +02:00
Nathan Cutler
f27cda03b7 deb: make ceph-base and radosgw recommend time-daemon
References: http://tracker.ceph.com/issues/15419

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-04-25 22:16:15 +02:00
Ali Maredia
aede4a6c4d Merge pull request #8715 from runsisi/wip-fix-cmake
cmake: use LINK_PRIVATE instead of PRIVATE for CMake version == 2.8.11

Reviewed-by: Ali Maredia <amaredia@redhat.com>
2016-04-25 13:30:45 -04:00
Sage Weil
d920da71e1 Merge pull request #8730 from ibravo/patch-3
doc: Updated ceph-deploy osd to choose underlying file system
2016-04-25 13:20:27 -04:00
Sage Weil
da53f58628 Merge pull request #8745 from ErwanAliasr1/evelu-deps
install-deps: Adding gcc for debian based systems

Reviewed-by: Sage Weil <sage@redhat.com>
2016-04-25 12:24:50 -04:00
Abhishek Lekshmanan
cbd610537a doc: update keystone admin options in config-ref
Adding the short descriptions of the keystone admin tenant, user and
password options to the config reference as well. Also adding a note
that this applies to only v2 of Openstack Identity API

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
2016-04-25 17:53:59 +02:00
Abhishek Lekshmanan
d0eeb62480 doc:explain service tenant config for rgw keystone
Explain the configuration of `rgw keystone admin user`, tenant and
password which avoids the need for setting the keystone admin token
shared secret in ceph configuration, since this token is recommended to
be disabled in production environments.

Fixes: #13066, #13519
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
2016-04-25 17:48:33 +02:00
Karol Mroz
3d051a58cc admin-socket: use chown instead of fchown
fchown() returns success, but does not change asok file
ownership. chown() does.

Signed-off-by: Karol Mroz <kmroz@suse.com>
2016-04-25 17:24:07 +02:00
Erwan Velu
bbcda5a2c2 install-deps: Adding gcc for debian based systems
When running install-deps on a minimalistic system, we reach that situation :

dpkg-checkbuilddeps --admindir=/tmp/install-deps.5526 debian/control
    sh: 1: gcc: not found
    dpkg-checkbuilddeps: warning: Couldn't determine gcc system type, falling back to default (native compilation)
    dpkg-checkbuilddeps: error: cannot open /tmp/install-deps.5526/status: No such file or directory

This means that we shall install gcc before calling dpkg-checkbuilddeps.

Signed-off-by: Erwan Velu <erwan@redhat.com>
2016-04-25 17:11:45 +02:00
Kefu Chai
850e343d31 Merge pull request #8743 from ceph/revert-8502-song20
Revert "crushtool: do not allow to compile crushmap with repeat rules…

Reviewed-by: Sage Weil <sage@redhat.com>
2016-04-25 22:04:02 +08:00
Kefu Chai
edfe301a50 Revert "crushtool: do not allow to compile crushmap with repeat ruleset." 2016-04-25 22:00:47 +08:00
David Disseldorp
0098319ca2 TestRados: add writesame support
Can be tested via "--op writesame". Requests are currently dispatched
*without* a multiplication factor, i.e. data_len == write_len.

Signed-off-by: David Disseldorp <ddiss@suse.de>
2016-04-25 15:08:13 +02:00
David Disseldorp
b3a311f1a3 ceph_test_rados_api_c_write_ops: add writesame test
Signed-off-by: David Disseldorp <ddiss@suse.de>
2016-04-25 15:08:13 +02:00
David Disseldorp
1c7fdf5b37 ceph_test_rados_api_io: ETOBIG tests for writesame
Signed-off-by: David Disseldorp <ddiss@suse.de>
2016-04-25 15:08:13 +02:00
David Disseldorp
15c67e7823 ceph_test_rados_api_aio: add writesame tests
Write a buffer a number of times using writesame, read the full range
back, and check that it matches. Do this using rados_aio_writesame(),
ioctx.aio_writesame() and ioctx.aio_operate(op.writesame()).

Signed-off-by: David Disseldorp <ddiss@suse.de>
2016-04-25 15:08:13 +02:00
David Disseldorp
940698b706 ceph_test_rados_api_misc: add preliminary writesame tests
Test the new ioctx.writesame() and rados_writesame() API functions.

Signed-off-by: David Disseldorp <ddiss@suse.de>
2016-04-25 15:08:13 +02:00
David Disseldorp
161d67ca1d librados: add writesame API
The writesame operation allows callers to write the same data buffer
multiple times to a given object.

Signed-off-by: David Disseldorp <ddiss@suse.de>
2016-04-25 15:07:57 +02:00
Mike Christie
e334ba9bfe ceph osd: add support for new op writesame
This adds a new ceph request writesame that writes a buffer of length
writesame.data_length bytes at writesame.offset over
writesame.length bytes.

This command maps to SCSI's WRITE SAME request, so users like LIO+rbd
can pass this to the OSD. Right now, it only saves having to transfer
writesame.length bytes over the network, but future versions will be
to fully offload it by passing it directly to the FS/devices if they
support it.

v2:
- Fix tab/spaces to matching coding style.
- Allow zero write length. Check for invalid data lengths.

Signed-off-by: Mike Christie <mchristi@redhat.com>
Reviewed-by: David Disseldorp <ddiss@suse.de>
2016-04-25 15:07:57 +02:00
Ved-vampir
c127e6ce7e compressor: fix of error code control in zlib decompress
Signed-off-by: Alyona Kiseleva <akiselyova@mirantis.com>
2016-04-25 14:00:21 +03:00
Kefu Chai
ff18083d23 Merge pull request #8725 from liewegas/wip-make-check
test/encoding/readable.sh: fix make check for autotool

Reviewed-by: Kefu Chai <kchai@redhat.com>
2016-04-25 13:58:20 +08:00