rely on 'bucket sync status' instead of looking up sync-status object.
it reports that there are no sync sources once the bucket's disabled
flag has propagated. also add a meta checkpoint after disabling.
Signed-off-by: Shilpa Jagannath <smanjara@redhat.com>
Add unit-tests to recreate the problems found by the IO Sequencer in the previous commit.
Some tests here rely on frameworks added in Umbrella and as such we are keeping them
independent (in their own PRs).
Signed-off-by: Alex Ainscow <aainscow@uk.ibm.com>
Signed-off-by: Matty Williams <Matty.Williams@ibm.com>
Assisted-by: IBM Bob:Claude/GPT
Some binaries and man pages were not included in rpm builds or debian
builds. This adds those artifacts to ceph.spec.in
debian/ceph-common.install and debian/radosgw.install.
Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
The warning said device classes are "not supported" and that such a rule
"will not work", without saying what actually happens. Ceph accepts the
rule, honors the class, and places the data correctly. Peering is what
fails. The rule takes from a shadow tree, so an OSD's datacenter resolves
to "zone1~ssd", while the Monitors record the surviving zone as "zone1".
The two never match. Nothing looks wrong while both data centers are up,
but once one is lost, the PGs left behind cannot peer. Bringing the data
center back does not help either, because the cluster leaves degraded
stretch mode only once no PG is inactive.
Describe that, and point at the class-free rule under "Entering Stretch
Mode". Also fix the example, which wrote "type replicated class ssd". The
CRUSH grammar takes a device class on the take step.
Related-to: https://tracker.ceph.com/issues/67414
Signed-off-by: Kefu Chai <k.chai@proxmox.com>
mgr/smb: only resync clusters that reference a changed resource
Reviewed-by: Anoop C S <anoopcs@cryptolab.net>
Reviewed-by: John Mulligan <jmulligan@redhat.com>
The vendor stylizes it as NGINX.
Previously docs capitalized it as either NGINX, Nginx or nginx. nginx
was the preferred capitalization before commercialization of the
software.
Signed-off-by: Ville Ojamo <git2233+ceph@ojamo.eu>
objects only when it's not missing on the primary too
The issue was introduced by 60537bdd2f
which didn't fix the issue it was supposed to because of the same error
this commit tries to fix.
Fixes: https://tracker-origin.ceph.com/issues/78676
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
ow_gap_from_last_entry() returns how much the node grows when the tail entry
is overwritten. However, it compared *value* lengths only.
overwriting pg-log key (31B) is longer than a _fastinfo key (9B) -
So the growth was under-counted by 22 bytes.
Also assert in _append()/_overwrite() that the write stays within capacity() to
avoid similar issues.
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
period commit only triggers async push (RGWPeriodPusher)
from the a zone's gateway to the other zones. it doesn't block
until they've applied it. a reconfigure delay alone might not
be sufficient. add checkpoint retries to allow for lag.
Signed-off-by: Shilpa Jagannath <smanjara@redhat.com>
mgr/volumes: accept unit with subvolume resize
Reviewed-by: Rishabh Dave <ridave@redhat.com>
Reviewed-by: Neeraj Pratap Singh <neesingh@redhat.com>
Reviewed-by: Christopher Hoffman <choffman@redhat.com>