On force promote if the opposite site is down then we currently show
image status description as "local image linked to unknown peer"
Previously:
----------
$ rbd --cluster=site-b mirror image status pool1/img1
img1:
global_id: a73341a6-8302-4c97-ac6e-278083fd347e
state: up+stopping_replay
description: local image linked to unknown peer
service: admin on localhost.localdomain
last_update: 2023-06-15 19:47:45
peer_sites:
name: site-a
state: up+stopped
description: local image is primary
last_update: 2023-06-15 19:47:32
snapshots:
9 .mirror.primary.a73341a6-8302-4c97-ac6e-278083fd347e.1f101367-277f-42f0-8308-e51201d0529a (peer_uuids:[c46c6d97-f59b-4591-9d35-d7ff9d0d72f7])
Currently:
---------
$ rbd --cluster=site-b mirror image status pool1/img1
img1:
global_id: 2a6d61e1-8e76-42c4-af76-8f61ce65c7e2
state: up+stopped
description: orphan (force promoting)
service: admin on localhost.localdomain
last_update: 2023-06-15 19:29:22
peer_sites:
name: site-a
state: down+stopped
description: local image is primary
last_update: 2023-06-15 19:29:05
snapshots:
9 .mirror.primary.2a6d61e1-8e76-42c4-af76-8f61ce65c7e2.99f82a30-0241-4e51-8428-7a2376d137f6 (peer_uuids:[3150c6ef-aeee-45dc-8d0e-5dc5a53d88eb])
Fixes: https://tracker.ceph.com/issues/52913
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
Otherwise, the MDS that just got replaced can transition to a rank
for another file system and the test cannot deterministically infer
which MDS needs to checked.
Fixes: http://tracker.ceph.com/issues/61764
Signed-off-by: Venky Shankar <vshankar@redhat.com>
Quoting https://peps.python.org/pep-0008/#maximum-line-length
```
The preferred way of wrapping long lines is by using Python’s
implied line continuation inside parentheses, brackets and braces. Long
lines can be broken over multiple lines by wrapping expressions in
parentheses. These should be used in preference to using a backslash for
line continuation.
```
I also think it is much more readable and is similar to the style
applied by automated code formatting tools like `black`.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
Quoting https://peps.python.org/pep-0008/#maximum-line-length
```
The preferred way of wrapping long lines is by using Python’s
implied line continuation inside parentheses, brackets and braces. Long
lines can be broken over multiple lines by wrapping expressions in
parentheses. These should be used in preference to using a backslash for
line continuation.
```
I also think it is much more readable and is similar to the style
applied by automated code formatting tools like `black`.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
Quoting https://peps.python.org/pep-0008/#maximum-line-length
```
The preferred way of wrapping long lines is by using Python’s
implied line continuation inside parentheses, brackets and braces. Long
lines can be broken over multiple lines by wrapping expressions in
parentheses. These should be used in preference to using a backslash for
line continuation.
```
I also think it is much more readable and is similar to the style
applied by automated code formatting tools like `black`.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
There were no existing tests for how the service spec(s) handled the
extra_container_args and extra_entrypoint_args values. Add a short
parametrized test function to assert some basic properties of how the
arguments are currently handled. In particular, it asserts that the
values can appear at the top-level of the YAML and under spec.
This is in preparation for adding a more sophisticated argument
type in the future.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
* refs/pull/51417/head:
client: only wait for write MDS OPs when unmounting
client: flush the mdlog before waiting for unsafe requests
Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
* refs/pull/50908/head:
mon/MDSMonitor: plug paxos when maybe manipulating the osdmap
mon/MDSMonitor: force immediate propose when evicting an MDS
Reviewed-by: Venky Shankar <vshankar@redhat.com>
The fs:all for rank option description was confusing. It seemd
like the fs was optional, but it is mandatory. This change modifies the
help message to reflect the correct way to use all in the --rank option.
Fixes: https://tracker.ceph.com/issues/61753
Signed-off-by: Manish M Yathnalli <myathnal@redhat.com>
also, prevent from dtor being called twice by reusing the iterator
and protect against nested loops
Signed-off-by: Yuval Lifshitz <ylifshit@redhat.com>
Remove strange formatting introduced in
61d6813726.
Note to the documentation team: This is not a line-edit. This commit
includes nothing but the removal of pipes added to the left of much of
the text in this file. Several future commits will line-edit this file
and correct its formatting.
Signed-off-by: Zac Dover <zac.dover@proton.me>
Otherwise, calling io-handler interfaces may result in wrong core/order.
This needs to take special care to handle preemptive cases such as
closing and replacing.
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Note that it is inevitable that the user can mark down the connection
while the protocol is trying to move the connection to another core.
In that case, the implementation should tolerate the racing, which
finally needs to cleanup resources correctly and dispatch reasonable
events.
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Users may need to know the new connection shard prior to message
dispatching. Otherwise, there will be no chance for user to do any
related preparations.
This is still a placeholder before multi-core messegner is enabled.
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
To prevent the previous shard-states racing on the shared data
structures after switching to a new shard-states.
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
It will be possible that during cross-core send/keepalive, the
connection shard is changed on-the-fly.
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>