Jason Dillaman
a786cfd0ab
librbd: avoid bl manipulation on single object read/writes
...
If a read or write only spans a single object and buffer extent,
there isn't any need to build a new bufferlist from a full sub-bl.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2019-05-13 13:30:09 -04:00
Jason Dillaman
cac640c564
librbd: switch to lightweight striper for hot IO path
...
Optimize non-complex IO requests using the new lightweight object
striper that avoids heap allocations for small requests.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2019-05-13 13:30:09 -04:00
Jason Dillaman
f5a93d6802
librbd: drop data oid parameter from IO path
...
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2019-05-13 13:30:09 -04:00
Jason Dillaman
10bebfcac0
librbd: helper method to generate data object OIDs on-demand
...
The new generator avoids multiple string length and copy operations
that are currently required in the Striper.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2019-05-13 13:07:04 -04:00
Jason Dillaman
58bbb87c5c
osdc/Striper: implemented a lightweight version of StripedReadResult
...
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2019-05-13 13:07:04 -04:00
Jason Dillaman
a3448eda33
osdc/Striper: implemented a lightweight version of file_to_extents
...
The previous versions of file_to_extents resulted in numerous heap
allocations for maps, vectors, and strings -- in addition to using
a CPU inefficient oid name formater.
librbd doesn't require the use of object_t and it would be better to
avoid any heap allocations on the IO path for the common case.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2019-05-13 12:38:13 -04:00
Jason Dillaman
cc7ec3e18d
common/Finisher: avoid memory re-allocations for finisher queue
...
Since there is only a single thread associated with the Finisher,
swap between two queues to avoid the need to re-allocate a new
vector for each iteration through the loop. Also replace the
condition broadcast with a signal since there is only a single
thread to wake up.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2019-05-13 12:38:12 -04:00
Jason Dillaman
99826fbe75
Merge pull request #27999 from trociny/wip-rbd-sparse_copyup
...
librbd: clone copy-on-write operations should preserve sparseness
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2019-05-13 12:15:51 -04:00
Kefu Chai
5a79b4c822
Merge pull request #28071 from tchaikov/wip-crimson-perf-regres
...
crimson,osd: performance fixes
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-05-14 00:00:00 +08:00
Casey Bodley
782be351c8
Merge pull request #27270 from theanalyst/beast-fe-ipv6
...
rgw: normalize v6 endpoint behaviour for the beast frontend
Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
2019-05-13 10:02:21 -04:00
Nathan Cutler
cfa2c5fb4d
Merge pull request #26281 from smithfarm/wip-git-describe-long
...
make-dist: set version number only once
Reviewed-by: Tim Serong <tserong@suse.com>
2019-05-13 15:10:20 +02:00
Casey Bodley
d39f6a5008
Merge pull request #28045 from cbodley/wip-39635
...
cls/user: cls_user_set_buckets_info overwrites creation_time
Reviewed-by: Abhishek Lekshmanan <abhishek@suse.com>
2019-05-13 09:09:17 -04:00
Casey Bodley
f1f223d103
Merge pull request #27980 from cbodley/wip-24991
...
rgw: delete_obj_index() takes mtime for bilog
Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
2019-05-13 09:07:04 -04:00
Casey Bodley
cd236e7a42
Merge pull request #28031 from ivancich/wip-rgw-admin-unordered
...
rgw: allow radosgw-admin to list bucket w --allow-unordered
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Abhishek Lekshmanan <abhishek@suse.com>
2019-05-13 09:05:29 -04:00
Casey Bodley
b59fcb0c95
Merge pull request #27676 from mkogan1/wip-rgw-39380
...
rgw: fix default_placement containing "/" when storage_class is standard
Reviewed-by: Casey Bodley <cbodley@redhat.com>
2019-05-13 08:53:58 -04:00
Casey Bodley
1ad2cb777d
Merge pull request #27984 from cbodley/wip-test-rgw-multisite-sh
...
test/rgw: fix test-rgw-multisite.sh script for creating multisite clusters
Reviewed-by: Shilpa Jagannath <smanjara@redhat.com>
2019-05-13 08:51:47 -04:00
Kefu Chai
e8da9e1e13
Merge pull request #27807 from cyb70289/utf8-encode
...
common: optimize encode_utf8
Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-05-13 20:42:24 +08:00
Mykola Golub
76e4f2ce24
Merge pull request #28051 from dillaman/wip-39521
...
librbd: fix issues with object-map/fast-diff feature interlock
Reviewed-by: Mykola Golub <mgolub@suse.com>
2019-05-13 15:25:09 +03:00
Mykola Golub
b2c799e7d0
Merge pull request #28063 from dillaman/wip-39656
...
qa/workunits/rbd: use https protocol for devstack git operations
Reviewed-by: Mykola Golub <mgolub@suse.com>
2019-05-13 15:24:39 +03:00
Kefu Chai
a09a4f342c
cmake: define BOOST_SP_DISABLE_THREADS for crimson
...
because we are single-threaded
Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-05-12 22:41:02 +08:00
Radoslaw Zarzynski
0291178ede
osd/osd_internal_types: bring moving semantics to ObjectState.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-05-12 22:40:43 +08:00
Radoslaw Zarzynski
d2b49dae15
crimson/osd: simplify write handling in PG::do_osd_ops.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-05-12 22:40:35 +08:00
Mykola Golub
750e61ac91
librbd: clone copy-on-write operations should preserve sparseness
...
Signed-off-by: Mykola Golub <mgolub@suse.com>
2019-05-12 09:03:25 +01:00
J. Eric Ivancich
ce1df3ceef
Merge pull request #27870 from theanalyst/rgw-objexp-fixes-cli
...
rgw: object expirer fixes
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
2019-05-11 09:10:54 -04:00
Kefu Chai
93ba1a31df
Merge pull request #27926 from tchaikov/wip-38627
...
pybind/mgr: convert str to int using "int()"
Reviewed-by: Noah Watkins <noahwatkins@gmail.com>
2019-05-11 09:37:39 +08:00
David Zafman
624d1172c3
Merge pull request #27914 from dzafman/wip-39304
...
osd: Include dups in copy_after() and copy_up_to()
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
2019-05-10 17:41:31 -07:00
David Zafman
09fb7a5a12
Merge pull request #27961 from dzafman/wip-39582
...
osd: Output Base64 encoding of CRC header if binary data present
Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-05-10 15:46:16 -07:00
David Zafman
f526c6d55c
osd: Fix merge_log_dups() not remove dup corresponding to log.tail
...
The log tail is not inclusive of the log, so not an overlap
Fix unittest_pglog to verify proper operation
Signed-off-by: David Zafman <dzafman@redhat.com>
2019-05-10 15:31:51 -07:00
David Zafman
d0d244d222
test: unittest_pglog: Additional test cases for trim, copy_up_to and copy_after
...
Signed-off-by: David Zafman <dzafman@redhat.com>
2019-05-10 15:31:51 -07:00
David Zafman
a008bd8c18
test: unittest_pglog: Remove irrelevant config values
...
osd_min_pg_log_entries and osd_max_pg_log_entries are not involved
in the log handling code being tested.
Signed-off-by: David Zafman <dzafman@redhat.com>
2019-05-10 15:31:51 -07:00
David Zafman
7959159e83
test: Adding standalone test of log copy handling
...
Signed-off-by: David Zafman <dzafman@redhat.com>
2019-05-10 15:31:51 -07:00
Sage Weil
62e241e4da
Merge PR #27782 into master
...
* refs/pull/27782/head:
os/bluestore: protect BlueFS::FileReader::buf
os/bluestore: log 'buffered' in KernelDevice::read_random
os/bluestore: support RocksDB prefetching at BlueFS
os/bluestore: call BlueFS::_init_logger earlier.
tools/ceph-objectstore-tool: dump perf counters on competion.
os/bluestore: optimize mapping offset to extent in BlueFS.
Reviewed-by: Sage Weil <sage@redhat.com>
2019-05-10 16:29:35 -05:00
Sage Weil
5229e1ec7f
Merge PR #27928 into master
...
* refs/pull/27928/head:
mon/OSDMonitor: require nautilus to set pg_autoscale_mode
mon/OSDMonitor: allow pg_num to increase when require_osd_release < N
Reviewed-by: Neha Ojha <nojha@redhat.com>
2019-05-10 16:22:40 -05:00
Sage Weil
4982bd58fc
Merge PR #27877 into master
...
* refs/pull/27877/head:
mon: paxos: introduce new reset_pending_committing_finishers for safety
Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-05-10 16:21:58 -05:00
Neha Ojha
de5c5d8468
Merge pull request #21722 from mslovy/wip-parial-recovery
...
osd: partial recovery strategy based on PGLog
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
2019-05-10 11:48:23 -07:00
Alfredo Deza
d362301306
Merge pull request #28060 from ceph/wip-bz1666822
...
ceph-volume: use the Device.rotational property instead of sys_api
Reviewed-by: Alfredo Deza <adeza@redhat.com>
2019-05-10 14:37:35 -04:00
Andrew Schoen
f1db0a8648
ceph-volume: skip missing interpreters when running tox tests
...
This will skip tests for versions of python that don't exist on the node
that's running the tests.
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2019-05-10 11:04:35 -05:00
Andrew Schoen
8ebff475df
ceph-volume: use the Device.rotational property instead of sys_api
...
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1666822
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2019-05-10 10:41:49 -05:00
Jason Dillaman
fb4f9a8a08
qa/workunits/rbd: use https protocol for devstack git operations
...
Fixes: http://tracker.ceph.com/issues/39656
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2019-05-10 11:09:54 -04:00
Sage Weil
d2c591a142
mon/OSDMonitor: require nautilus to set pg_autoscale_mode
...
Signed-off-by: Sage Weil <sage@redhat.com>
2019-05-10 09:31:03 -05:00
Sage Weil
7e7134aa93
mon/OSDMonitor: allow pg_num to increase when require_osd_release < N
...
Setting pg_num_target has no effect when we encode our OSDMap with mimic
or luminous features. Fall back to the pre-nautilus behavior of directly
setting pg_num.
Fixes: http://tracker.ceph.com/issues/39570
Signed-off-by: Sage Weil <sage@redhat.com>
2019-05-10 09:31:03 -05:00
Casey Bodley
8107bc6aef
Merge pull request #27795 from cbodley/wip-rgw-beast-async-body
...
rgw: beast frontend uses yield_context to read/write body
Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
Reviewed-by: Abhishek Lekshmanan <abhishek@suse.com>
2019-05-10 09:05:32 -04:00
Lenz Grimmer
e7ad5ed68d
mgr/dashboard: Added Object Gateway menu tab tests ( #27565 )
...
mgr/dashboard: Added Object Gateway menu tab tests
Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Tatjana Dehler <tdehler@suse.com>
2019-05-10 12:41:09 +02:00
Nathan Cutler
ae4f94c868
Merge pull request #28042 from smithfarm/wip-doc-ceph-backport-sh
...
doc: improve ceph-backport.sh comment block
Reviewed-by: Abhishek Lekshmanan <abhishek@suse.com>
2019-05-10 11:27:30 +02:00
Nathan Cutler
0b6c121805
doc: improve ceph-backport.sh comment block
...
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2019-05-10 10:22:50 +02:00
Samuel Just
d20076b7b4
Merge pull request #28048 from athanatos/sjust/wip-peering-state-cleanup
...
More PeeringState and related cleanups to ease use in crimson
Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2019-05-09 20:34:06 -07:00
Sage Weil
5cca06aab8
Merge PR #27811 into master
...
* refs/pull/27811/head:
commom: make cluster_network work.
Reviewed-by: Sage Weil <sage@redhat.com>
2019-05-09 20:42:16 -05:00
David Zafman
00f279db37
osd: Include dups in copy_after() and copy_up_to()
...
Client saw out of order results in a test with a very small
pg_log because a backfill/recovery sent a small number of
log entries for duplicate checks.
Since these copy operations are equivalent to both a copy
and trim (an argument controls how many log entries
transfer), we need to include any new dups with enough
existing dups up to the configured maximum.
Fixes: http://tracker.ceph.com/issues/39304
Signed-off-by: David Zafman <dzafman@redhat.com>
2019-05-09 17:50:27 -07:00
Xie Xingguo
a14545d592
Merge pull request #28050 from dillaman/wip-39448
...
msg/async: reduce verbosity of connection timeout failures
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
2019-05-10 08:39:15 +08:00
sjust@redhat.com
0d7115584e
osd/: Move PG::_prepare_write_info into osd_types prepare_info_keymap
...
Signed-off-by: Samuel Just <sjust@redhat.com>
2019-05-09 17:22:34 -07:00