Pull-up Boost to the commit which merged the upstream fix for
upstream Boost/iostreams bug #11860 (template arity warnings),
per discussion in core.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
Build Boost using the src/boost submodule, unless overridden
by -DWITH_SYSTEM_BOOST.
If -DBOOST_J=<n> is provided, builds Boost with <n> jobs.
Boost builds in the configured Build directory.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
This implements option #4 for external boost, based on upstream
discussion. In option #4:
1. boost is added as a submodule
2. builds default to using the attached boost module
3. building against a system-provided boost is supported, but
must be configured explicitly
Because all of the boost components are attached as nested
submodules in the upstream boost repository, neither the nested
submodules nor the root boost submodule have been cloned into
modules in github.com/ceph (acked by Sage).
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
rgw: fix the field 'total_time' of log entry in log show opt
Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
Reviewed-by: Orit Wasserman <owasserm@redhat.com>
use a unique_ptr to ensure the entries_index is freed on destruction
Fixes: http://tracker.ceph.com/issues/17812
Signed-off-by: Casey Bodley <cbodley@redhat.com>
If we have an OSD with a weight that's not 1.0 and mark it out,
we should restore the same weight when we mark it back in. We
already do this when an OSD is automatically marked out, just
not when it is explicitly marked out.
Signed-off-by: Sage Weil <sage@redhat.com>
...otherwise, if the connection is idle (i.e. no proper TAG_MSG
messages), keepalive ack will not get sent until some point in the
future.
Fixes: #17664
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Commit 48d929c4f0 ("msg: async: improve _send_keepalive_or_ack()
a little") removed _try_send() call. _try_send(false) was a no-op by
then, but still - rename appropriately.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
process() will potentially handle multiple messages, yet we are
scheduling the writer to write out acks only once, after the first
message is processed. This effectively races the reader with the
writer and leaves the window for exiting the process() loop with
pending acks (ack_left > 0 but no kicked writer).
Close this window by moving dispatch_event_external() out of the loop.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Otherwise when umount finish reap and wait for pending io done, the last
pending io may aim to remove collection and make removed_collection not
empty. So the leaked collection ref will result in BlueStore deconstruction
segment failt
Signed-off-by: Haomai Wang <haomai@xsky.com>
if we are creating an osd which has the same id as a previously
removed 'in' osd, we should not mark this newly created osd as 'in'
Signed-off-by: runsisi <runsisi@zte.com.cn>