...allowing for efficient creation and, more important,
direct consumption by the function performing the
actual I/O.
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
The owner is still the PG.
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
osd/scrub: removing PgScrubber's ref to the primary scrub map
as caching this reference (to an object that is owned by the
scrubber backend) creates a dangling-pointer risk.
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
Reformatting, minor compiler warnings, etc.
Split from "osd/scrub: extract scrub backend code into separate classes"
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
A refactoring of the scrub backend code (all Scrub related code
that checks/manipulates objects' (meta)data).
Part of the refactoring was breaking long chunks of code into
separate functions. In order to avoid passing endless lists
of state parameters from/to these new methods, the scrub backend
state is now maintained within its own objects.
a change to note:
Instead of two scrub-map collections - one that holds all
incoming maps, and one that holds pointers to all of those incoming
plus the one we (the Primary) manage - just use one collection
for both incoming and our own.
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
Split from "osd/scrub: minor fixes split from main "scrub backend" commit"
Split from "osd/scrub: scrub components embedded documentation"
fix
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
osd/scrub: fix the scrubber backend to include all PR #42735
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
crimson/alienstore: drop unused constant from AlienStore.
Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
Reviewed-by: Kefu Chai <tchaikov@gmail.com>
Currently, every rados run of ~400 jobs is running ~150 cephadm tests,
which is unnecessary and redundant. With this change, we will run some
basic cephadm tests within the rados suite. The following seems to be
a good start.
qa/suites/rados/cephadm/osds
qa/suites/rados/cephadm/smoke
qa/suites/rados/cephadm/smoke-singlehost
qa/suites/rados/cephadm/workunits
Signed-off-by: Neha Ojha <nojha@redhat.com>
script/build-integration-branch: add quincy to the list of releases
Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
This changes the string
"tenant$<user>"
to
'tenant$<user>'
in order to avoid users running into confusing
shell expansion behavior.
Hat tip to IcePic.
Signed-off-by: Zac Dover <zac.dover@gmail.com>
When remote image is deleted, rbd-mirror can encounter three cases:
1) no remote image id
2) no remote mirror metadata
3) MIRROR_IMAGE_STATE_DISABLING in remote mirror metadata
Commit d4c66ac5c6 ("rbd-mirror: fix issue with snapshot-based
mirroring deletion propagation") fixed case 1. Cases 2 and 3 remained
broken because for both of them finalize_snapshot_state_builder() would
populate not only remote_mirror_peer_uuid but also remote_image_id,
thus disabling ENOLINK logic in handle_prepare_remote_image() and
handle_bootstrap(). Commit ff60aec2d9 ("rbd-mirror: fix bootstrap
sequence while the image is removed") touched on case 3, but it made
a difference only for journal-based mirroring.
Stop calling finalize_snapshot_state_builder() on errors. Instead,
align with journal-based mirroring by filling remote_mirror_peer_uuid
together with remote_mirror_uuid.
Fixes: https://tracker.ceph.com/issues/53963
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Make it clear that the local image non-primariness is asserted
independent of the mode; avoid the default implementation being
overridden but still relied on by both modes.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
This commit rewrites one sentence in the "Bluestore
Config Reference". The sentence does not itself appear
in the directory structure under /docs/rados/, but is
instead in /src/common/options/global.yaml.in and is
included in the Bluestore Config Reference by means of
a confval directive.
The rewritten sentence has been rewritten from the passive
voice to the active voice, and a "how"-formation has been
removed. The removal of the "how"-formation, in my opinion,
makes the sentence go down much smoother for the first-time
reader.
Signed-off-by: Zac Dover <zac.dover@gmail.com>
doc/governance: Adam King
Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
So Cache::drop_from_cache() can be removed, and make it possible to add
related logs within the Cache component.
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Before the patch the test case was showing an unreliable behaviour
dependent on the underlying memory allocator. It was because
the bufferlist rebuild can be skipped, resulting in unchanged number
of buffers, if all of them begin at aligned addresses.
The commit fixes that by allocating a 4 KiB-aligned buffer and
offsetting it by a small constant (42) to ensure the memory added
to the bufferlist begins at non-4 KiB address.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
On rhel/centos the ceph user does not have permission
to access these certs which leads to s3-test failures
in teuthology.
Signed-off-by: Ali Maredia <amaredia@redhat.com>
With the validate function split from the add_repo function we can
independently test the behavior of the validate function.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
If the inputs to the `cephadm add-repo` command would result in an
invalid URL for repo metadata fail the command early with a (somewhat)
helpful error.
Fixes: https://tracker.ceph.com/issues/46773
Signed-off-by: John Mulligan <jmulligan@redhat.com>