Question #1
Update election requirements for Ceph Executive Council Elections?
Remove "ranked-choice" requirement 13
Keep "ranked-choice" requirement (no change) 16
Question #2
Require periodic elections in governance charter?
No (no change) 8
Annual 15
Semi-annual 3
Quarterly 2
Question #3
Update the Ceph Executive Council term length?
Change to 3 years 14
Keep 2 years (no change) 14
Question #4
Amend governance document to require a supermajority of votes for amendments to the governance model? The current requirement is a simple majority.
Require a supermajority 20
Require a simple majority (no change) 9
Question #5
Clarify "supermajority" and "majority" election requirements?
Of members voting on a given question (abstaining does not bias the vote) 18
Of members voting on the election (abstaining is an implicit "no") 6
Of members in the CSC 3
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
Zac Dover [Sun, 27 Oct 2024 12:04:16 +0000 (22:04 +1000)]
doc/rados: add blaum_roth coding guidance
Direct Ceph administrators using blaum_roth coding for erasure-coded
pools to change the default value of w=7 to a different value in order
to ensure that w+1 is prime.
This information was provided to the Ceph upstream by Benjamin Mare in
September of 2024.
Ronen Friedman [Tue, 15 Oct 2024 11:38:06 +0000 (06:38 -0500)]
osd/scrub: improve scrub information conveyed in standard
PG log line references
When "mentioning" a PG in a log message, we include a set of data
items, including some scrub related information. This
commit improves the scrubber information conveyed, following
changes to the scrub scheduler.
Adam King [Thu, 24 Oct 2024 14:45:42 +0000 (10:45 -0400)]
Merge pull request #59982 from rkachach/fix_issue_mgmt_gw_high_availability
Adding HA support for mgmt-gateway and oauth2-proxy services
Reviewed-by: Adam king <adking@redhat.com> Reviewed-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com> Reviewed-by: Juan Miguel Olmo MartÃnez <jolmomar@redhat.com>
Zac Dover [Thu, 24 Oct 2024 04:52:58 +0000 (14:52 +1000)]
doc/cephfs: edit "Disabling Volumes Plugin"
Improve the English language in the section 'Disabling Volumes Plugin"
(which here becomes "Disabling the Volumes Plugin") in the
doc/cephfs/troubleshooting.rst file.
The change here is similar to a change introduced in
https://github.com/ceph/ceph/pull/60448/. That PR seems to be unable to
pass the "make check", and this PR is part of a test to see if breaking
the changes in that PR into several smaller changes results in mergeable
PRs.
Zac Dover [Wed, 23 Oct 2024 08:34:25 +0000 (18:34 +1000)]
doc/rados: standardize markup of "clean"
Standardize the markup around the status "clean" in the documentation so
that readers don't mistakenly get the idea that inconsistent
presentation of the word "clean" implies a never-stated difference
between one instance and the other.
cailianchun [Fri, 18 Oct 2024 02:39:46 +0000 (02:39 +0000)]
test/crimson: disable stall-detector on aarch64 to fix asan failures
Ceph crimson uses seastar on debug mode which would enable ASAN, while stall-detector uses glibc backtrace function which would cause ASAN failures on aarch64.
Reason see scylladb/scylladb#15090 (comment)
Because arm ci servers in lab are "elderly", causing stall happened often, this PR is to disable stall-detector until seastar upstream migrated to libunwind, see scylladb/seastar#1878
Seastar does not provide a function to disable stall-detector, at present, increase stall-detector time to avoid stall-detector timeout on arm platform.
Nizamudeen A [Fri, 18 Oct 2024 15:20:33 +0000 (20:50 +0530)]
mgr/dashboard: fix bucket get for s3 account owned bucket
**Issue 1:**
When a bucket is created with a user that is owner by the account user,
it fails to fetch the info for the bucket because the owner of that
bucket is considered as owned by the account rather than the user.
dashboard api try to fetch some info for the bucket on the basis of the
bucket owner which in this case fails since its not a real user.
To keep the existing behavior as it is and fix the current issue, I am
doing a check to make sure the user id exists or not. if it doesn't
exist, we goes on to fetch using the dashboard user.
**Issue 2**
Editing the bucket owner by the account is broken. So disabling the
ownership change for the bucket owned by account until we have user
account management for rgw in the dashboard
Fixes: https://tracker.ceph.com/issues/68622 Signed-off-by: Nizamudeen A <nia@redhat.com>
Soumya Koduri [Mon, 7 Oct 2024 11:24:02 +0000 (16:54 +0530)]
rgw/lc: Fix issues with non-current objects with instance empty
When the bucket versioning is enabled, old plain object entry is converted
to versioned by updating its instance as "null" in its raw head/old object.
However its instance remains empty in the bi list entry. Same is the case for
the entries created after versioning is suspended and re-enabled.
So to access such objects which are non-current, we need to set rgw_obj_key.instance as
1) "null" to read the actual raw obj and
2) empty while accessing/updating their bi entry.
Ronen Friedman [Wed, 16 Oct 2024 12:04:38 +0000 (07:04 -0500)]
osd/scrub: make sched-targets comparator transitive
The comparator used to sort the scrub targets wasn't transitive, which
can lead to undefined behavior (and likely - to a crash of the sort
algorithm in some implementations). That - due to the clause comparing
the two targets of the same PG.
This commit fixes the comparator. The sorted queue is no longer
guaranteed to have a ripe deep target before the corresponding
shallow one, which is less than optimal - but it won't crash.
Patrick Donnelly [Tue, 22 Oct 2024 00:57:15 +0000 (20:57 -0400)]
Merge PR #60174 into main
* refs/pull/60174/head:
common/Finisher: pass name as std::string_view to ctor
common/Finisher: add method get_thread_name()
mgr/ActivePyModule: build thread name with fmt
mgr/ActivePyModule: return std::string_view instead of std::string copy
common/Finisher: use fmt to build strings
common/Finisher: un-inline ctor and dtor
common/Finisher: add `const` to several fields
common/Finisher: merge duplicate field initializers
common/Finisher: call notify_one() instead of notify_all()
common/Finisher: wake up after pushing to the queue
common/Finisher: do not wake up the thread if already running
common/Finisher: call logger without holding the lock
common/Finisher: use `std::lock_guard` instead of `std::unique_lock`
common/Finisher: merge all queue() container methods into one template
Patrick Donnelly [Tue, 22 Oct 2024 00:56:01 +0000 (20:56 -0400)]
Merge PR #60214 into main
* refs/pull/60214/head:
mds/MDCache: use `auto`
mds/CDir: use the erase() return value
mds/MDCache: remove unnecessary empty() check
mds/MDCache: use the erase() return value
mds/MDCache: pass iterator by value
Patrick Donnelly [Tue, 22 Oct 2024 00:54:15 +0000 (20:54 -0400)]
Merge PR #60216 into main
* refs/pull/60216/head:
common/options: pass name as rvalue reference
common/config: use libfmt to build strings
common/config: use emplace_back() instead of push_back()
common/HeartbeatMap: pass name as rvalue reference
common/config_obs_mgr: use the erase() return value
common/SloppyCRCMap: use the erase() return value
common: disable `boost::intrusive::constant_time_size`
Patrick Donnelly [Tue, 22 Oct 2024 00:53:44 +0000 (20:53 -0400)]
Merge PR #60220 into main
* refs/pull/60220/head:
msg/async/AsyncConnection: move the writeCallback instead of copying it
msg/async/AsyncConnection: do not wrap writeCallback in `std::optional`
msg/async/frames_v2: use zero-initialization instead of memset()
msg/async/Event: use zero-initialization instead of memset()
msg/Message: use zero-initialization instead of memset()
msg/async/ProtocolV2: eliminate redundant std::map lookups
msg/async/ProtocolV[12]: reverse the std::map sort order
msg/async/ProtocolV[12]: use `auto`
msg/async/ProtocolV[12]: use range-based `for`
msg/async/ProtocolV1: use zero-initialization instead of memset()