cephfs: Fix variable declartion in capture list in lambda
/home/jenkins/workspace/ceph-master-compile/src/tools/cephfs_mirror/Mirror.cc:529:33: error: 'mirror_action' in capture list does not name a variable
m_cond.wait(locker, [this, &mirror_action] {return !mirror_action.action_in_progress;});
^
/home/jenkins/workspace/ceph-master-compile/src/tools/cephfs_mirror/Mirror.cc:529:57: error: reference to local binding 'mirror_action' declared in enclosing function 'cephfs::mirror::Mirror::run'
m_cond.wait(locker, [this, &mirror_action] {return !mirror_action.action_in_progress;});
^
/home/jenkins/workspace/ceph-master-compile/src/tools/cephfs_mirror/Mirror.cc:526:27: note: 'mirror_action' declared here
for (auto &[filesystem, mirror_action] : m_mirror_actions) {
^
/home/jenkins/workspace/ceph-master-compile/src/tools/cephfs_mirror/Mirror.cc:529:26: warning: lambda capture 'this' is not used [-Wunused-lambda-capture]
m_cond.wait(locker, [this, &mirror_action] {return !mirror_action.action_in_progress;});
^~~~
1 warning and 2 errors generated.
Tracker: https://tracker.ceph.com/issues/47973 Fixes: https://github.com/ceph/ceph/pull/37313 Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
haoyixing [Sun, 18 Oct 2020 01:23:48 +0000 (09:23 +0800)]
msg: move DispatchStrategy into test/
Since commit cc9a914, xio related code were all removed, which made
direct_messenger become the only user of DispatchStraegy. So move
these code there.
Patrick Donnelly [Fri, 23 Oct 2020 00:17:37 +0000 (17:17 -0700)]
Merge PR #36204 into master
* refs/pull/36204/head:
client: add command_lock support
client: defer swapping the newmap to mdsmap
client: try to grab the client_lock when needed
client: clean up the client code
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Samuel Just [Thu, 22 Oct 2020 23:07:06 +0000 (16:07 -0700)]
test/crimson/seastore/test_btree_lba_manager: test mutate_mapping on more split/merge states
incref_mapping has a slightly different relationship with merge than
decref_mapping, update split/merge test to ensure that we call into
mutate_mapping at each step as the nodes fill, split, empty, and merge.
Patrick Donnelly [Thu, 22 Oct 2020 19:52:01 +0000 (12:52 -0700)]
Merge PR #36544 into master
* refs/pull/36544/head:
vstart_runner: omit result line only when testcases are run one by one
vstart_runner: don't quit running testsuite on a test failure
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Nizamudeen A [Wed, 16 Sep 2020 13:54:31 +0000 (19:24 +0530)]
mgr/dashboard: Created a Download and Copy-to-Clipboard option for the logs
Created Download Button Component.
Added a Download and Copy-to-Clipboard button for the Cluster and Audit Logs in the Log section. Also added a flag in the current Copy2ClipboardButton directive to indicate the incoming string is actually a log.
Fixes: https://tracker.ceph.com/issues/47498 Signed-off-by: Nizamudeen A <nia@redhat.com>
jinmyeonglee [Thu, 22 Oct 2020 08:25:51 +0000 (17:25 +0900)]
vstart.sh: fix fs set max_mds bug
Fix a bug where the name used when creating a volume and the name used when setting max_mds were different. Fixes: https://tracker.ceph.com/issues/47946 Signed-off-by: Jinmyeong Lee <jinmyeong.lee@linecorp.com>
Jos Collin [Thu, 15 Oct 2020 11:30:50 +0000 (17:00 +0530)]
mds: detect mds-mds messages not of type MMDSOp
* Detect mds-mds messages not of type MMDSOp.
* Return true from MetricAggregator::ms_dispatch2 only when the peer is an MDS and the metrics is handled.
Fixes: https://tracker.ceph.com/issues/46426 Signed-off-by: Jos Collin <jcollin@redhat.com>
Kefu Chai [Thu, 22 Oct 2020 04:40:37 +0000 (12:40 +0800)]
crimson/osd: add more privacy
* reorder the member variable and member function definitions so the
private members are listed at the end of class. as requested by
the CodingStyle
* mark some member variables and member functions private, as long as
they are not used by other classes or non-friend classes.
* document UrgentRecovery
* refactor BackgroundRecovery::get_scheduler_params() to dedup
the comments
Samuel Just [Mon, 19 Oct 2020 20:13:26 +0000 (13:13 -0700)]
crimson/os/seastore/.../lba_btree_node_impl: use node_[un]resolve_vals
Implement node_[un]resolve_vals to transform values to/from block relative
representations when copying out of/in to newly created blocks. This can
happen when splitting a node which has had entries added during the
same transaction, or itself was created during the transaction.
Samuel Just [Thu, 27 Aug 2020 07:14:30 +0000 (00:14 -0700)]
crimson/os/seastore: add space accounting to segment_cleaner and wire in
Adds support for space accounting to SegmentCleaner and wires into
Journal, Cache, and tests.
SegmentCleaner has two tracking implementations, SpaceTrackerSimple
and SpaceTrackerDetailed. SpaceTrackerSimple simply keeps a count
of live bytes and is intended to be the normal implementation.
SpaceTrackerDetailed maintains a bitmap and is simply useful
for debugging unit tests. It may be removed in the future.
rgw: rgw-orphan-list should use "plain" formatted `rados ls` output
The previous version that used "json-pretty" output for `rados ls`
added complications due to json's escaping of special characters. So
this version returns to the "plain" output for `rados ls` but deals
with entries (oids) that might have namespaces and/or locators as
well.
Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
Jason Dillaman [Tue, 20 Oct 2020 15:13:11 +0000 (11:13 -0400)]
librbd: remove remainder of ImageCache API hooks
With the incorporation of the ImageDispatcher, there is no longer a
need for the ImageCache (and related) classes which were added as
a temporary workaround to incorporate the PWL cache.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Kefu Chai [Fri, 16 Oct 2020 17:10:24 +0000 (01:10 +0800)]
pybind/mgr/dashboard: use setUpClass for initializeing class
instead of relying on __init__(), use setUpClass() to initialize class
for testing. it turns out in pytest > 4, __init__() is called for the
test class but the attributes of the instantiated class is in turn overriden.
Kefu Chai [Tue, 20 Oct 2020 10:33:29 +0000 (18:33 +0800)]
pybind/mgr/dashboard: refactor overlong statement
to silence lint warning like:
services/tcmu_service.py:64:39: E126 continuation line over-indented for hanging indent':'./services/tcmu_service.py:64:39: E126 continuation line over-indented for hanging indent'}
2: 1 E126 continuation line over-indented for hanging indent
Kefu Chai [Thu, 8 Oct 2020 07:13:36 +0000 (15:13 +0800)]
tools/setup-virtualenv.sh: pass --use-feature=2020-resolver to pip
as long as pip supports this option, pass it to `pip install`
to silence warnings and errors like:
ERROR: After October 2020 you may experience errors when installing or updating packages. This is because pip will change the way that it resolves dependency conflicts.
We recommend you use --use-feature=2020-resolver to test your packages with the new resolver before it becomes the default.
autopep8 1.5.4 requires pycodestyle>=2.6.0, but you'll have pycodestyle 2.5.0 which is incompatible.
pytest-cov 2.10.1 requires pytest>=4.6, but you'll have pytest 3.10.1 which is incompatible.
rgw/gc: fixing the condition when marker for a queue is
always reset to empty which causes RGWGC::list to get stuck in
a loop, which ultimately is broken out of when the queue's truncated
flag is false.
1. Check for entries size also while evaluating whether objects cache for
a gc object should be marked as 'transitioned' in case of cls_rgw_gc_list.
When there are no entries, we get back a return value of 0, and the
object cache is not marked as 'transitioned'.
2. Also for the last gc object, we need to check whether the queue is still
under process and set the correct flag.
Missing the two conditions above causes the GC::list to loop continously
over the same gc object.
rgw/gc: fix for incrementing the perf counter 'gc_retire_object'
in the new gc queue code for omap offload, when gc objects from queue
are deleted. This was missed out initially.