Zac Dover [Thu, 20 Oct 2022 18:43:24 +0000 (04:43 +1000)]
doc/cephadm: refine "os tuning" in h. management
This commit refines the English in the "OS Tuning Profiles" section of
the "Host Management" page of the cephadm documentation. This commit is
made separately from but in anticipation of a forthcoming commit that
corrects technical (non-grammatical) errors.
Zac Dover [Thu, 20 Oct 2022 16:52:30 +0000 (02:52 +1000)]
doc/dev: remove deduplication.rst from quincy
This PR undoes the backporting of https://github.com/ceph/ceph/pull/46089
to the Quincy branch, which backporting was done in
https://github.com/ceph/ceph/pull/48567. Deduplication does not exist
in the quincy branch, so I shouldn't have backported it.
Zac Dover [Mon, 17 Oct 2022 14:09:34 +0000 (00:09 +1000)]
doc/radosgw: refine "notification reliability"
This commit refines the English in the "Notification Reliability"
section of the notifications.rst page (the "Bucket Notifications"
page). I have also added signposting structure.
Co-authored-by: Anthony D'Atri <anthony.datri@gmail.com> Co-authored-by: Yuval Lifshitz <ylifshit@redhat.com> Signed-off-by: Zac Dover <zac.dover@gmail.com>
(cherry picked from commit 8f7b57f5cec475f8977e61707b287884903c1bb5)
Laura Flores [Wed, 28 Sep 2022 17:43:40 +0000 (17:43 +0000)]
mgr/telemetry: handle daemons with complex ids
Treating daemons as `<daemon_type>.x` caused a crash
in the Telemetry module since the current method does not cover a case
where a daemon id is more complex, i.e. `<daemon_type>.x.y`.
When we parse the daemon type and daemon id, we should
split it into a maximum of two pieces rather than splitting
it by every `.` character. Specifying `1` in the Python
.split() function will limit the split to a maximum of two items.
Fixes: https://tracker.ceph.com/issues/57700 Signed-off-by: Laura Flores <lflores@redhat.com>
(cherry picked from commit 97833a6a81fed7f868e1d544816cfbdf254fdb43)
bea9f4b643c introduced a regression that makes the activate process
take a very long time to complete.
`_get_bluestore_info()` which calls `ceph-bluestore-tool` binary via
subprocess is called in an exponential way while this is not needed.
This commit caused a regression in the rados suite, as evidenced by:
- with the commit:
http://pulpito.front.sepia.ceph.com/lflores-2022-09-14_15:11:39-rados-quincy-release-distro-default-smithi/
- with the commit reverted:
http://pulpito.front.sepia.ceph.com/lflores-2022-09-14_17:02:02-rados-wip-lflores-testing-quincy-release-distro-default-smithi/
Fixes: https://tracker.ceph.com/issues/57546 Signed-off-by: Laura Flores <lflores@redhat.com>
This commit caused a regression in the rados suite, as evidenced by:
- with the commit:
http://pulpito.front.sepia.ceph.com/lflores-2022-09-14_15:11:39-rados-quincy-release-distro-default-smithi/
- with the commit reverted:
http://pulpito.front.sepia.ceph.com/lflores-2022-09-14_17:02:02-rados-wip-lflores-testing-quincy-release-distro-default-smithi/
Fixes: https://tracker.ceph.com/issues/57546 Signed-off-by: Laura Flores <lflores@redhat.com>
Zac Dover [Fri, 14 Oct 2022 06:17:12 +0000 (16:17 +1000)]
doc/radosgw: add push_endpoint for rabbitmq
This commit directs users of rabbitmq to use "push_endpoint"
(with an underscore) instead of "push-endpoint" (with a hy-
phen). This commit adds a note that contains such a direct-
ive. It does not alter the examples already present in the
text.
Ilya Dryomov [Mon, 15 Aug 2022 07:44:09 +0000 (09:44 +0200)]
test/librbd: various fixups for compare-and-write test cases
- missing EILSEQ asserts in IO and IOWithIOHint
- AioCompletion leak in CompareTooSmall and WriteTooSmall
- skip StripeUnitUnaligned and TooLarge on the PWL cache as it wasn't
limited by the 512-byte sector limit before and isn't limited by the
stripe unit limit now
cmp_bl can no longer be shorter than read_bl (i.e. image extent).
This is caught very early at the API level, see commit af96e6dae3f4
("librbd: make C++ cmp&write semantics equal to C API").
However, cmp_bl can still be longer than read_bl and in that case
it should be capped by the image extent length.
Ilya Dryomov [Mon, 15 Aug 2022 07:44:09 +0000 (09:44 +0200)]
librbd: discard cache state if compare-and-write writes to disk
Otherwise this is obviously broken with rbd_cache_policy = writeback or
rbd_cache_policy = writethrough as the write is done on the OSD, beneath
ObjectCacher. This went unnoticed because the original (and so far the
only known) compare-and-write user, tcmu-runner rbd driver, disables the
cache altogether.
Jonas Pfefferle [Fri, 5 Aug 2022 17:37:55 +0000 (19:37 +0200)]
librbd: make C++ cmp&write semantics equal to C API
The compare and write C++ API (both sync and async) does not check
compare bufferlist length and executes compare ops of bufferlist length
size, even if (write) "len" is smaller than bufferlist length.
This patch changes this behavior by always issuing compares and
writes of "len" size to match the C API. The bufferlist length
can be greater than "len" for both compare and write but only
"len" bytes are compared and written. If the bufferlist length
is smaller than "len" the call will fail.
Jonas Pfefferle [Fri, 5 Aug 2022 17:36:36 +0000 (19:36 +0200)]
librbd: remove cmp&write sector size restriction
This patch removes the compare and write max sector size len
restriction. We can allow up to stripe unit size accesses if
the access is aligned properly.
To allow larger size compare and write requests in the
journal we split the buffers like we do for writes now.
Aashish Sharma [Mon, 10 Oct 2022 09:08:08 +0000 (14:38 +0530)]
mgr/dashboard: Unable to change rgw subuser permission
Tried to edit the permission of a subuser but once changed the permission, edited permission not seen in user info of UI(ceph dashboard) and from CLI as well
Fixes:https://tracker.ceph.com/issues/57805 Signed-off-by: Aashish Sharma <aasharma@redhat.com>
(cherry picked from commit 0b3bdbbc4a4ac78555d08839ee0eca1767465d1c)
Kefu Chai [Mon, 10 Oct 2022 13:57:57 +0000 (21:57 +0800)]
cephadm: run tests as root
as we will be create/access directories which are only accessible by
root with pyfakefs, and pyfake respects the uid of current effective
user, so if we run the test using non-root user, these tests would fail
after the fix for https://github.com/pytest-dev/pyfakefs/issues/489
is addressed in the pyfakefs we are using.
in this change, we will run the test on behalf of root, so we can
create and access the directories as we did before.
Nizamudeen A [Mon, 10 Oct 2022 05:41:18 +0000 (11:11 +0530)]
mgr/dashboard: fix weird data in osd details
The devices section in the OSD Details and Host Details shows more than
one daemon and device path in the column when you view the details of a
single osd details/host details. This is because more than one osd
is created on a device with same `deviceid`. I am not sure if this will
happen in the real environment but its mostly reproducible in
environments with QEMU emulated devices.
Zac Dover [Sun, 9 Oct 2022 07:09:30 +0000 (17:09 +1000)]
doc/various: update link to CRUSH pdf
This commit updates link to the research paper that announces and
explains the CRUSH algorithm. This link was broken in the migration from
the old Ceph website to ceph.io.
This commit makes several refinements to the English in
rados/operations/crush-map-edits.rst, which refinements were suggested
by Cole Mitchell and Anthony D'Atri in the discussion of PR#48085.
This PR updates the prompts in crush-map-edits.rst
to make them unselectable.
There remains no good known way to render parts of
a file if the first line of that file begins with a
hash (#). Sphinx italicizes such a first line, which
is not what I want. Two examples of this are present
in the file crush-maps-rst under the section called
"CRUSH Map Bucket Types". I set this down here for
my own records, in case it is helpful in finding a
way to make these sections render as I would prefer.
Zac Dover [Mon, 3 Oct 2022 12:51:35 +0000 (22:51 +1000)]
doc/glossary.rst: remove duplicates
This commit removes similar but distinct entries for the following:
* CephFS
* Ceph Client
Removal of a glossary term that is referred to in the body of the
documentation suite requires the alteration of the text string
that refers to the glossary term. Alterations of this kind have
been made to doc/architecture.rst and doc/rados/api/index.rst.
This mirror apparently stopped working, breaking jobs that use this
script.
Signed-off-by: Zack Cerza <zack@redhat.com>
(cherry picked from commit 3f32ab0fb3a54174a8a57681243cd944056c6ffb) Signed-off-by: Nizamudeen A <nia@redhat.com>
Conflicts:
src/pybind/mgr/dashboard/ci/cephadm/start-cluster.sh
- Change the url to point to fedora 34 image
This PR rewrites the front matter in the "Erasure Code"
section of the RADOS documentation. Previously, the information
in this section was syntactically confused. I have also fleshed
out the distinction between erasure coding and replication.