Commit Graph

138841 Commits

Author SHA1 Message Date
Aashish Sharma
a58490c1bd
Merge pull request #51283 from rhcs-dashboard/disable-delete
mgr/dashboard: disable delete on multisite

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
2023-06-27 17:28:12 +05:30
Prasanna Kumar Kalever
947a53677d rbd-mirror: fix image replayer shut down description on force promote
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>
2023-06-27 16:37:18 +05:30
Venky Shankar
f370b581f6 qa: assign file system affinity for replaced MDS
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>
2023-06-27 09:23:14 +05:30
Yingxin Cheng
2fed9397d5 crimson/net: cleanup, rename is_fixed_cpu
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-27 10:31:11 +08:00
John Mulligan
5cc6f0a147 mgr/orchestrator: reformat ceph.deployment.service_spec import line
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>
2023-06-26 10:56:48 -04:00
John Mulligan
3d7b934238 mgr/cephadm: reformat ceph.deployment.service_spec import line
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>
2023-06-26 10:56:48 -04:00
John Mulligan
d895398bcb python-common: reformat ceph.deployment.service_spec import line
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>
2023-06-26 10:56:48 -04:00
John Mulligan
4561fc3708 python-common: add tests for service spec extra args handling
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>
2023-06-26 10:56:47 -04:00
Samarah Uriarte
fd62a8dfcb
Merge pull request #51928 from samarahu/cmake-cleanup
Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
2023-06-26 10:30:40 -04:00
Venky Shankar
cffeb112fb Merge PR #52149 into main
* refs/pull/52149/head:
	cephfs-journal-tool: disambiguate usage of all keyword (in tool help).

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Kotresh Hiremath Ravishankar <khiremat@redhat.com>
Reviewed-by: Rishabh Dave <ridave@redhat.com>
2023-06-26 17:51:25 +05:30
Ilya Dryomov
0447bb33b6
Merge pull request #52155 from nbalacha/poolreplayer-logging
rbd-mirror: add additional logs to PoolReplayer

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
2023-06-26 11:49:26 +02:00
Venky Shankar
f5dae89148 Merge PR #51417 into main
* 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>
2023-06-26 12:59:12 +05:30
Venky Shankar
703f265d63 Merge PR #50908 into main
* 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>
2023-06-26 12:57:43 +05:30
Venky Shankar
8f4ae9b832 Merge PR #49295 into main
* refs/pull/49295/head:
	mgr/snap_schedule: catch all exceptions for cli

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2023-06-26 12:56:33 +05:30
zdover23
46cfee7ae0
Merge pull request #51845 from ssdohammer-sl/doc-update-deduplication
doc:dev update how to use deduplication

Reviewed-by: Zac Dover <zac.dover@proton.me>
2023-06-26 11:46:07 +10:00
Sungmin Lee
9b74a33fa1 doc:dev update how to use deduplication
Add prerequisite for deduplication, example outputs, and chunk-repair operation.

Signed-off-by: Sungmin Lee <sung_min.lee@samsung.com>
2023-06-26 00:29:46 +00:00
Manish M Yathnalli
52c033f85e cephfs-journal-tool: disambiguate usage of all keyword (in tool help).
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>
2023-06-25 19:42:57 +05:30
zdover23
69cfd0e6d2
Merge pull request #52181 from zdover23/wip-doc-2023-06-25-radosgw-s3select-formatting
doc/radosgw: remove pipes from s3select.rst

Reviewed-by: Cole Mitchell <cole.mitchell.ceph@gmail.com>
2023-06-25 23:46:11 +10:00
Yuval Lifshitz
a20a4d95b9
Merge pull request #52110 from yuvalif/wip-yuval-fix-61639
rgw/amqp: remove possible race conditions with the amqp connections
2023-06-25 15:54:26 +03:00
Yuval Lifshitz
45d233535a rgw/lua: destroy iterator when table iteration completes
also, prevent from dtor being called twice by reusing the iterator
and protect against nested loops

Signed-off-by: Yuval Lifshitz <ylifshit@redhat.com>
2023-06-25 12:36:55 +00:00
Zac Dover
a4d302ee1a doc/radosgw: remove pipes from s3select.rst
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>
2023-06-25 19:03:07 +10:00
Yuval Lifshitz
2e92331369 rgw/amqp: use "fmt" for converting connection_id to string
Signed-off-by: Yuval Lifshitz <ylifshit@redhat.com>
2023-06-25 08:56:26 +00:00
Yingxin
a4d14062eb
Merge pull request #51980 from aisakaki/wip-fix-check_node
crimson/os/seastore: fix in check_node

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
Reviewed-by: Xuehan Xu <xxhdx1985126@gmail.com>
2023-06-25 13:46:17 +08:00
Yingxin Cheng
1e8a39f359 crimson/net: dispatch the initial acceptance from the socket core
It's meaningless to dispatch the initial acceptance always from the
msgr core.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
bdd89b68ea crimson/net: keep the order of cross-core events in msgr v2
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
6a01988894 crimson/net: expose is_fixed_cpu configuration at Messenger level
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
7726867963 crimson/net: misc cleanups with logs around cross-core
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
0b60209df6 crimson/net: convert all interactions between protocol and io-handler to be cross-core
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
5b8003386d crimson/net: prevent racing in protocol to switch core and to call io-handler interfaces
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>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
b10f0bd3cc crimson/net: implement logic to move a io-handler to a new sid
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>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
b2a456d6b8 crimson/net: expose the connection working shard to users
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
18d2c30e67 crimson/net: notify the new connection shard upon accept/connect
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>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
77fef01fa8 crimson/net: make io-handler in/out dispatching aware of being switched
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>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
ca30d02ccb crimson/net: allow io-handler to dispatch in/out independently based on ctx
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
bea8fb50fd crimson/net: make send/keepalive keep trying until the shard is correct
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>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
37f1456027 crimson/net: factor out IOHandler::shard_states_t which will be switchable atomically
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
8d0f5943aa crimson/net: misc cleanups to io handler implementations
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
6658ba17ef crimson/net: misc cleanups to protocol v2 implementations
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
d20fb83040 crimson/net: notify and update io_states from io_handler to protocol asynchronously
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
23c1330677 crimson/net: introduce a simpler reset_peer_state() with cleanups
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
51636d9954 crimson/net: clear FrameAssemblerV2 at replace
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
d1b4323606 crimson/net: adjust the IO path in FrameAssemblerV2 with the foreign socket
FrameAssemblerV2 and Socket may in different cores during handshake.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
50bc62a9da crimson/net: allow FrameAssemblerV2 to check and shutdown a foreign socket
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
c47dc1d0e4 crimson/net: check that FrameAssemblerV2 is working in the expected core
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
23c7a85084 crimson/net: use SocketFRef
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
d5a9f0eda3 crimson/net: check that Socket only works in its core
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
db07ae9d5c crimson/net: wrap message with foreign-ptr in the send path
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
58491826d5 crimson/net: change the static IS_FIXED_CPU to runtime
Otherwise the messenger implementation needs to be templated.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
7797cabe2a crimson/net: decouple tests from SocketConnection class
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00
Yingxin Cheng
4dab5cf87a crimson/net: hide seastar packet and temporary_buffer inside Socket
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-06-25 11:57:19 +08:00