Radoslaw Zarzynski
49a4c51e02
os/bluestore: _dump_onode() don't prolongate Onode anymore.
...
Before the patch `BlueStore::_dump_onode()` takes `OnodeRef`
by value effectively extending the object's life time.
This is unnecessary and can be costly as `BlueStore::OnodeRef`
is ref-counted with `boost::intrusive_ptr`. Moreover, callers
are supposed to already hold a reference, so the optimization
for `count == 0` case stays without effect of inhibiting call
to `BlueStore::Onode::put()` and atomic integer increment.
```
0000000000907d70 <BlueStore::_do_read(BlueStore::Collection*, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list&, unsigned int)>:
907d70: 41 57 push %r15
907d72: 41 56 push %r14
...
907f1f: 48 8b 44 24 78 mov 0x78(%rsp),%rax
907f24: 48 8b 00 mov (%rax),%rax
907f27: 48 85 c0 test %rax,%rax
907f2a: 48 89 84 24 a0 01 00 mov %rax,0x1a0(%rsp)
907f31: 00
907f32: 74 04 je 907f38 <BlueStore::_do_read(BlueStore::Collection*, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list&, unsigned int)+0x1c8>
907f34: f0 83 00 01 lock addl $0x1,(%rax)
907f38: 48 8d 84 24 a0 01 00 lea 0x1a0(%rsp),%rax
907f3f: 00
907f40: ba 1e 00 00 00 mov $0x1e,%edx
907f45: 4c 89 ff mov %r15,%rdi
907f48: 48 89 c6 mov %rax,%rsi
907f4b: 48 89 44 24 20 mov %rax,0x20(%rsp)
907f50: e8 9b bc fb ff callq 8c3bf0 <BlueStore::_dump_onode(boost::intrusive_ptr<BlueStore::Onode>, int)>
907f55: 48 8b bc 24 a0 01 00 mov 0x1a0(%rsp),%rdi
907f5c: 00
907f5d: 48 85 ff test %rdi,%rdi
907f60: 74 05 je 907f67 <BlueStore::_do_read(BlueStore::Collection*, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list&, unsigned int)+0x1f7>
907f62: e8 99 14 02 00 callq 929400 <BlueStore::Onode::put()>
907f67: 48 8d 84 24 d0 00 00 lea 0xd0(%rsp),%rax
```
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2018-01-08 13:27:25 +01:00
Kefu Chai
c9c821cb99
Merge pull request #19428 from tchaikov/wip-erasure-cleanup
...
erasure-code: use std::count() instead
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2018-01-08 19:51:10 +08:00
Kefu Chai
f69516e1dc
Merge pull request #19777 from tchaikov/wip-rpm-fix-upgrade
...
rpm: adjust ceph-{osdomap,kvstore,monstore}-tool feature move
Reviewed-by: Boris Ranto <branto@redhat.com>
Reviewed-By: Nathan Cutler <ncutler@suse.com>
2018-01-08 19:07:48 +08:00
Bingyin Zhang
95bb4e93e5
rgw: drop useless type conversion
...
* variable 'max_buckets' is already 'uint64_t', so the type conversion is useless.
Signed-off-by: Bingyin Zhang <zhangbingyin@cloudin.cn>
2018-01-08 09:02:29 +08:00
Eric Ivancich
158f3173de
Merge pull request #18827 from TaewoongKim/anticipation_timeout
...
osd: Make dmclock's anticipation timeout be configurable
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: myoungwon oh <omwmw@sk.com>
2018-01-07 10:49:18 -05:00
Jason Dillaman
50ef9aff9d
Merge pull request #19704 from trociny/wip-nbd-format
...
rbd-nbd: output format support for list-mapped command
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2018-01-07 09:04:35 -05:00
Jason Dillaman
ff889ea592
Merge pull request #19722 from Songweibin/wip-rbd-import
...
rbd: replace positional_path parameter with arg_index in get_path()
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2018-01-07 08:56:41 -05:00
myoungwon oh
3a568704e5
osd: fix ObjectContextRef leak
...
To avoid ObjectContextRef leak, drop ObjectContextRef
before send a flush request to low tier
Signed-off-by: Myoungwon Oh <omwmw@sk.com>
2018-01-07 22:42:50 +09:00
myoungwon oh
085f1caadf
osd: fix updating wrong object size
...
Signed-off-by: Myoungwon Oh <omwmw@sk.com>
2018-01-07 22:42:38 +09:00
myoungwon oh
6273c2ffef
osd: use stop_block() if the object is blocked
...
This commit prevents double free in finish_flush()
(stop_block() -> cancel_flush())
Signed-off-by: Myoungwon Oh <omwmw@sk.com>
2018-01-07 22:42:19 +09:00
myoungwon oh
fca74efe04
src/test: remove version check and add data alignment for chunk_read test
...
Signed-off-by: Myoungwon Oh <omwmw@sk.com>
2018-01-07 22:41:55 +09:00
myoungwon oh
c97fc50a20
src/test: add chunked object unit test
...
Signed-off-by: Myoungwon Oh <omwmw@sk.com>
2018-01-07 22:41:35 +09:00
myoungwon oh
e5cc463460
osd: add ordered flag if the object is flushing
...
Signed-off-by: Myoungwon Oh <omwmw@sk.com>
2018-01-07 22:41:12 +09:00
myoungwon oh
2e3af00ab1
osd: add flush() for the chunked object.
...
If all chunks are dirty, the cheunked object will be flushed
Signed-off-by: Myoungwon Oh <omwmw@sk.com>
2018-01-07 22:40:58 +09:00
myoungwon oh
437bb83c8b
osd: set dirty flag if chunks are overwritten
...
Signed-off-by: Myoungwon Oh <omwmw@sk.com>
2018-01-07 22:40:47 +09:00
Mykola Golub
44cc02483c
rbd-ggate: make list command produce valid xml format output
...
Signed-off-by: Mykola Golub <mgolub@suse.com>
2018-01-07 12:44:07 +00:00
Yao Zongyou
b637f7b8f1
osd: silence maybe-uninitialized false positives
...
Signed-off-by: Yao Zongyou <yaozongyou@vip.qq.com>
2018-01-07 16:25:09 +08:00
Adam C. Emerson
322d2a5718
Merge pull request #17010 from jgibson/bugfix-rgw-s3-policy-ip-address-condition
...
rgw: S3 Bucket Policy Conditions IpAddress and NotIpAddress do not work
Reviewed-By: Adam C. Emerson <aemerson@redhat.com>
Reviewed-By: Matt Benjamin <mbenjamin@redhat.com>
2018-01-07 02:07:55 -05:00
Bingyin Zhang
e0a05d23dc
rgw: drop useless lines
...
* There is no 'break' statement in the for loop, so 'eiter' must be equal to 'ent_map.end()' in this place.
Signed-off-by: Bingyin Zhang <zhangbingyin@cloudin.cn>
2018-01-07 09:33:48 +08:00
Yuri Weinstein
25550823df
Merge pull request #19354 from shinobu-x/osd_atomic
...
osd: Use specializations, typedefs instead
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
2018-01-06 09:29:52 -08:00
Yuri Weinstein
392314d980
Merge pull request #19549 from bi-shun/brotli-compressor
...
compressor: Add Brotli Compressor
Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-01-06 09:28:58 -08:00
Yuri Weinstein
938919028a
Merge pull request #19564 from kungf/list_bucket_osd
...
mon/OSDMonitor: list osd tree in named bucket
Reviewed-by: Sage Weil <sage@redhat.com>
2018-01-06 09:28:22 -08:00
Sage Weil
0973c371f6
Merge pull request #19816 from tchaikov/wip-22596
...
qa/standalone: remove osd-map-max-advance related tests
Reviewed-by: Sage Weil <sage@redhat.com>
2018-01-06 10:25:12 -06:00
Kefu Chai
b07aa210aa
rpm: adjust ceph-{osdomap,kvstore,monstore}-tool feature move
...
this is the rpm's counterpart of debian/control changes related to the
ceph-{osdomap,kvstore,monstore}-tool feature move. see #19328 and #19356 .
the commit introducing this move is 6dba25e
. and
$ git describe 6dba25e
v12.2.2-8-g6dba25e39d
so the first release that have this change is 12.2.2-8. in other words,
ceph-{base,osd,mon} >= 12.2.2.8 cannot co-exist with ceph-test < 12.2.2-8
in the same system. so we let ceph-test Requires ceph-common with the
same version. and since ceph-{osd,mon} Requires ceph-base with the same
version, and ceph-base Requires ceph-common with the same version, so by
tiering ceph-test with ceph-common with the same version, we enforce
this restriction.
Fixes: http://tracker.ceph.com/issues/22558
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-01-06 20:00:54 +08:00
Kefu Chai
e7097593a7
qa/standalone: remove osd-map-max-advance related tests
...
this setting was removed in 8967b73
Fixes: http://tracker.ceph.com/issues/22596
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-01-06 19:40:15 +08:00
Bingyin Zhang
3e0e1a029a
rgw: optimize function parse_raw_oid
...
* drop redundant checks
Signed-off-by: Bingyin Zhang <zhangbingyin@cloudin.cn>
2018-01-06 14:38:05 +08:00
Kefu Chai
077351fab7
Merge pull request #19808 from cbodley/wip-boost-1.66
...
cmake: update minimum boost version to 1.66
Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-01-06 11:35:44 +08:00
Xuehan Xu
7e0a27a5c8
common: compute SimpleLRU's size with contents.size() instead of lru.size()
...
As libstdc++ earlier than version 5 implement the list::size() as a O(n) operation,
this should be needed to avoid regression of various ceph component's performance.
Signed-off-by: Xuehan Xu <xuxuehan@360.cn>
2018-01-06 10:42:32 +08:00
dongdong tao
fa796a0593
mds: clean up log's function name for CDir.cc and Beacon.cc
...
Signed-off-by: dongdong tao <tdd21151186@gmail.com>
2018-01-06 10:27:03 +08:00
dongdong tao
dc2ed13123
mds: clean up log's function name for CDentry.cc
...
Signed-off-by: dongdong tao <tdd21151186@gmail.com>
2018-01-06 10:26:50 +08:00
dongdong tao
d5f11b19ca
mds: clean up log's function name for CInode.cc
...
Signed-off-by: dongdong tao <tdd21151186@gmail.com>
2018-01-06 10:26:36 +08:00
Shinobu Kinjo
e691a27de7
osd: Remove redundant local variable declaration
...
Signed-off-by: Shinobu Kinjo <shinobu@redhat.com>
2018-01-06 11:06:33 +09:00
Matt Benjamin
d1ec523427
Merge pull request #19358 from taoCH/wip-librgw-multitenancy
...
librgw: export multitenancy support
2018-01-05 15:49:14 -05:00
Casey Bodley
b589b73c70
cmake: add WITH_BOOST_CONTEXT option
...
adds a more specific option for this boost::context dependency, which was
previously only used by the radosgw beast frontend. see
http://tracker.ceph.com/issues/20048 for more background
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2018-01-05 14:55:23 -05:00
Casey Bodley
d85f42dd69
cmake: remove Beast submodule and include path
...
the beast library is included in boost 1.66
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2018-01-05 14:55:23 -05:00
Casey Bodley
a66a644929
rgw: update beast frontend for boost 1.66
...
Fixes: http://tracker.ceph.com/issues/22600
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2018-01-05 14:55:16 -05:00
Casey Bodley
01f9b599e6
Merge pull request #19806 from cbodley/wip-common-escape
...
common: add streaming interfaces for json/xml escaping
Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
2018-01-05 14:29:23 -05:00
Casey Bodley
0e47a339df
cmake: update minimum boost version to 1.66
...
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2018-01-05 13:52:47 -05:00
Casey Bodley
688cc25755
common: add streaming interfaces for json/xml escaping
...
adds stream output operators that escape json/xml strings without having
to allocate a separate output buffer
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2018-01-05 13:26:25 -05:00
Casey Bodley
dff9562098
test: EscapeJson.Utf8 uses json instead of xml
...
the xml version does not escape the \n, while json does
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2018-01-05 12:38:13 -05:00
Casey Bodley
b2960e4721
test: use hex string literals
...
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2018-01-05 12:38:08 -05:00
Yuri Weinstein
135c0a0104
Merge pull request #19279 from taoCH/wip-fix-librgw-shutdown-err
...
librgw: fix shutdown err with resources uncleaned
Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
2018-01-05 08:42:12 -08:00
Yuri Weinstein
3b033d8e81
Merge pull request #19394 from zhangsw/cleanup-rgw-datasync-lease_cr
...
rgw: lease_cr->go_down is called twice, remove the needless one.
Reviewed-by: Casey Bodley <cbodley@redhat.com>
2018-01-05 08:41:42 -08:00
Kefu Chai
92eae109a3
Merge pull request #19725 from shinobu-x/osd_max_object_size
...
osd,os/bluestore: Display current size of osd_max_object_size
Reviewed-by: Sage Weil <sage@redhat.com>
2018-01-06 00:02:28 +08:00
Kefu Chai
6a817b90c6
Merge pull request #19718 from ifed01/wip-ifed-freelist-cleanup
...
os/bluestore: refactor FreeListManager to get clearer view on the number
Reviewed-by: Sage Weil <sage@redhat.com>
2018-01-05 23:59:58 +08:00
Casey Bodley
b99dae03c3
Merge pull request #18324 from Jeegn-Chen/wip-bucket-quota-api
...
rgw: Admin API Support for bucket quota change
Reviewed-by: Casey Bodley <cbodley@redhat.com>
2018-01-05 10:52:30 -05:00
Kefu Chai
58fe27ebc2
common/perf_counters: remove unused parameter
...
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-01-05 23:52:10 +08:00
Kefu Chai
44bbb372a4
Merge pull request #19719 from shinobu-x/bluestore_extentmap_dup
...
bluestore: BlueStore::ExtentMap::dup impl
Reviewed-by: Sage Weil <sage@redhat.com>
2018-01-05 23:50:29 +08:00
Kefu Chai
2775cc9aa3
Merge pull request #19698 from Liuchang0812/cleanup-ceph-tool
...
ceph: add the right bracket to watch-channel argument in the help message
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-01-05 23:43:30 +08:00
Kefu Chai
16a1a02e70
Merge pull request #19660 from cfanz/tmp
...
include/encoding: fix compat version error message
Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-01-05 23:35:54 +08:00