Commit Graph

128065 Commits

Author SHA1 Message Date
Ronen Friedman
2809a58411 osd/scrub: mark PG as being scrubbed, from scrub initiation to Inactive state
The scrubber's state-machine changes states only following a message dispatched
via the OSD queue. That creates some vulnerability periods, from when the
decision to change the state is made, till when the message carrying the event
is dequeued and processed by the state-machine.

One of the problems thus created is a second scrub being started on a PG, before
the previous scrub is fully terminated and cleaned up.

Here we add a 'being-scrubbed' flag, that is asserted when the first scrub
initiation message is queued and is only cleared when the state machine reaches
Inactive state after the scrub is done.

To note: scrub_finish() is now part of the FSM transition from WaitDigest to Inactive,
closing this specific vulnerability period;

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
2021-11-16 16:05:02 +00:00
Casey Bodley
874b2b304a
Merge pull request #42880 from Kalkulus1/patch-1
doc: adds a way to allow users set_contents_from_filename for rgw

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2021-11-16 11:01:00 -05:00
Sage Weil
f28f32dbc0 qa/distros/container-hosts: add 8.stream + crun
Signed-off-by: Sage Weil <sage@newdream.net>
2021-11-16 09:58:32 -06:00
Sage Weil
ec6a502cdb qa/distros/container-hosts: add collection of container targets
Signed-off-by: Sage Weil <sage@newdream.net>
2021-11-16 09:58:23 -06:00
Ronen Friedman
2766946460
Merge pull request #43912 from ronen-fr/wip-rf-test-dump
qa/standalone: fix osd-scrub-dump following changes to 'pg dump pgs' output

Reviewed-by: Samuel Just <sjust@redhat.com>
2021-11-16 17:58:07 +02:00
Casey Bodley
696968a898
Merge pull request #43854 from cbodley/wip-53199
cls/rgw: index cancelation still cleans up remove_objs

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
2021-11-16 10:28:44 -05:00
Guillaume Abrioux
76560c15f0
Merge pull request #43300 from cfsnyder/wip-52730-fix-dbwal-slot-size-calc
ceph-volume: fix bug with miscalculation of required db/wal slot size for VGs with multiple PVs
2021-11-16 15:15:28 +01:00
Sébastien Han
1654f68aea
Merge pull request #43927 from guits/fix_raw_activate
ceph-volume: follow-up on PR #42727
2021-11-16 14:11:10 +01:00
Matan Breizman
7fe0fc9a57 crimson/osd: Fixing empty PG stats issue
Signed-off-by: Matan Breizman <Matan.Brz@gmail.com>
2021-11-16 11:11:21 +00:00
Igor Fedotov
5c1ba84027 os/bluestore: adjust usefullness tag for bluestore perf counters
Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
2021-11-16 13:58:35 +03:00
Igor Fedotov
85130ebced os/bluestore: raise usefullness tag for some bluefs perf counters
Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
2021-11-16 13:58:21 +03:00
Sebastian Wagner
343708fb6e
Merge pull request #43780 from mgfritch/nfs-rgw-v4
doc/radosgw/nfs: add note about NFSv3 deprecation

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
Reviewed-by: Sage Weil <sage@newdream.net>
Reviewed-by: Varsha Rao <rvarsha016@gmail.com>
2021-11-16 11:38:03 +01:00
Sebastian Wagner
4ec317af08
Merge pull request #43933 from ceph/dependabot/pip/src/ceph-volume/plugin/zfs/pip-21.1
build(deps-dev): bump pip from 19.2 to 21.1 in /src/ceph-volume/plugin/zfs

Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
2021-11-16 10:39:37 +01:00
Pere Diaz Bou
44d3e4c264 monitoring/grafana: Grafana query tester
Signed-off-by: Pere Diaz Bou <pdiazbou@redhat.com>
2021-11-16 10:30:49 +01:00
Neha Ojha
d31130d451
Merge pull request #43938 from neha-ojha/wip-quick-fix
qa/suites/upgrade/octopus-x: set bluestore fsck quick fix on mount to true

Reviewed-by: Igor Fedotov <igor.fedotov@croit.io>
2021-11-15 16:09:30 -08:00
Neha Ojha
94e3a240ad qa/suites/upgrade/octopus-x: set bluestore fsck quick fix on mount to true
First step towards catching bugs like https://tracker.ceph.com/issues/53062.

Signed-off-by: Neha Ojha <nojha@redhat.com>
2021-11-15 21:39:15 +00:00
Greg Farnum
ccb1b7eb8b mon: MonMap: do not increase mon_info_t's compatv in stretch mode, for real
This was supposed to be fixed a year ago in commit
2e3643647b, but it set compat_v to 4 instead of all
the way back to 1 as it should have.

Our testing for stretch mode in these areas is just not very thorough -- the
kernel only supports compat_v 1 and apparently nobody's noticed the issue
since then? :/
As the prior commit says, you can't set locations without being gated on a
server feature bit, so simply cancelling this enforcement is completely safe.

Fixes: https://tracker.ceph.com/issues/53237

Signed-off-by: Greg Farnum <gfarnum@redhat.com>
2021-11-15 20:24:20 +00:00
Samuel Just
16e152e161
Merge pull request #43928 from josephsawaya/futurize-futurized-store
crimson: futurize FuturizedStore::create()

Reviewed-by: Samuel Just <sjust@redhat.com>
2021-11-15 12:17:33 -08:00
Matan
02348afc73
Merge pull request #43344 from Matan-B/wip-matanb-crimson-clog
crimson/osd: Implementing cluster logging
2021-11-15 21:37:49 +02:00
Casey Bodley
879dd9543c
Merge pull request #43761 from cbodley/wip-beast-timeout-alloc
rgw/beast: optimizations for request timeout

Reviewed-by: Mark Kogan <mkogan@redhat.com>
2021-11-15 13:31:18 -05:00
Casey Bodley
b848ccae96 rgw/rados: index transactions pass remove_objs to cancel() too
whenever an index transaction uses remove_objs for complete(), it also
needs to pass them for cancel() to avoid leaking index entries

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2021-11-15 13:16:07 -05:00
Casey Bodley
8b27472bbd cls/rgw: index cancelation still cleans up remove_objs
when multipart uploads complete their final bucket index transaction,
they pass the list of part objects in 'remove_objs' for bulk removal -
the part objects, along with their bucket stats, get replaced by the
head object

but if CompleteMultipart races with another upload, the head object
write will fail with ECANCELED and the bucket index transaction gets
canceled with CLS_RGW_OP_CANCEL. these canceled uploads still need to
clean up their 'remove_objs', but cancelation was returning too early.
as a result, these bucket index entries get orphaned and leave the
bucket stats inconsistent

this commit reworks rgw_bucket_complete_op() so that CLS_RGW_OP_CANCEL
is handled the same way as OP_ADD and OP_DEL, so always runs the loop to
clean up 'remove_objs'

Fixes: https://tracker.ceph.com/issues/53199

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2021-11-15 13:16:05 -05:00
Casey Bodley
f3325fc76f cls/rgw: add complete_remove_obj() helper for remove_objs
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2021-11-15 13:06:46 -05:00
dependabot[bot]
3306425d38
build(deps-dev): bump pip in /src/ceph-volume/plugin/zfs
Bumps [pip](https://github.com/pypa/pip) from 19.2 to 21.1.
- [Release notes](https://github.com/pypa/pip/releases)
- [Changelog](https://github.com/pypa/pip/blob/main/NEWS.rst)
- [Commits](https://github.com/pypa/pip/compare/19.2...21.1)

---
updated-dependencies:
- dependency-name: pip
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-15 17:48:13 +00:00
Casey Bodley
d7ec0b281c cls/rgw: helpers take const input params
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2021-11-15 12:34:07 -05:00
Matan Breizman
7b5cb61bd9 crimosn/osd: Implementing cluster logging
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
2021-11-15 16:29:15 +00:00
Ernesto Puerta
689c213d1a
Merge pull request #43903 from rhcs-dashboard/edit-service-feature
mgr/dashboard: Edit a service feature 

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
2021-11-15 17:25:33 +01:00
Sage Weil
22871aa2e0 Merge PR #43894 into master
* refs/pull/43894/head:
	qa/suites/orch/cephadm: verify that 'orch ls' reports OSDs properly
	mgr/cephadm: show unmanaged OSDs under 'osd' service

Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
2021-11-15 11:13:11 -05:00
Sage Weil
49a424fdac mgr/cephadm: turn off asyncssh debug output
Signed-off-by: Sage Weil <sage@newdream.net>
2021-11-15 11:04:30 -05:00
Mark Kogan
c0c1dc389c rgwi/beast: stream timer with duration 0 disables timeout
fixes all S3 operations failing with:
`2021-11-15T15:46:05.992+0000 7ffee17fa700 20 failed to read header: Bad file descriptor`
when `--rgw_frontends="beast port=8000 request_timeout_ms=0"`

Signed-off-by: Mark Kogan <mkogan@redhat.com>
2021-11-15 15:57:42 +00:00
Sage Weil
4f71cbba1a qa/suites/orch/cephadm: verify /var/log/ceph/$fsid ownership
Signed-off-by: Sage Weil <sage@newdream.net>
2021-11-15 10:48:42 -05:00
Sage Weil
393960c164 cephadm: only make_log_dir for ceph daemons
For non-ceph daemons, (1) they don't log to /var/log/ceph, and (2) the
container image isn't a ceph image, which means the uid/gid extraction
won't have the correct uid/gid and we'll end up with a log directory that
ceph daemons no longer have write permissions for.

Fixes: https://tracker.ceph.com/issues/53257
Signed-off-by: Sage Weil <sage@newdream.net>
2021-11-15 10:48:01 -05:00
Joseph Sawaya
6fe9dea75b crimson: futurize FuturizedStore::create()
This commit changes the FuturizedStore::create() function to return a
seastar::future containing its original return value.

Signed-off-by: Joseph Sawaya <jsawaya@redhat.com>
2021-11-15 15:17:13 +00:00
Guillaume Abrioux
2c228a9a40 ceph-volume: follow-up on PR #42727
PR #42727 introduced a regression in `ceph-volume raw activate`

since it dropped `nargs='+'` from the argument `--device`, the variable
is no longer a list but a string.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
2021-11-15 16:02:46 +01:00
Venky Shankar
785edd08a0
Merge pull request #42110 from joscollin/wip-doc-cephfs-top-misc-fixes
cephfs-top: fix Refresh interval

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2021-11-15 11:50:22 +05:30
Satoru Takeuchi
b80c3b8438 rbd: correct encoding of snap protection record in exporting image
Correct the size of `protection` field. This bug is harmless since Export/Import writes/reads
one byte for `protected` field regardless of `length` field. So the current wrong diff works
correctly by chance

Fixes: https://tracker.ceph.com/issues/53243
Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
2021-11-13 22:09:04 +00:00
Deepika Upadhyay
44cd7c7650
Merge pull request #42046 from CongMinYin/align-entry-bit
librbd/cache/pwl/ssd: make log entry 64 bit and add ssd version control

Reviewed-by: Mykola Golub <mykola.golub@clyso.com>
Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
2021-11-13 17:27:27 +05:30
Deepika Upadhyay
b287de4219
Merge pull request #43837 from majianpeng/librbd-fix-reorder-problem-between-process_writeback_dirty_entries
librbd/cache/pwl: fix reorder issue between func process_writeback_dirty_entries

Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
2021-11-13 17:26:24 +05:30
J. Eric Ivancich
5156e4e7ce rgw: remove prefix & delim params for bucket removal & mp upload abort
The calls to remove a bucket had parameters to specify a prefix and
delimiter, which does not make sense. This was precipitated due to some
existing Swift protocol logic, but buckets are removed irrespective of
prefix and delimiter. So the functions and calls are adjusted to
remove those parameters. Additionally, those same parameters were
removed for aborting incomplete multipart uploads.

Additionally a bug is fixed in which during bucket removal, multipart
uploads were only removed if the prefix was non-empty.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
2021-11-12 18:09:27 -05:00
Greg Farnum
1e34788f9a mon: MonMap: display disallowed_leaders whenever they're set
In c59a6f8946, I erroneously changed
the CLI display output so it would only dump disallowed_leaders in
stretch mode. But they can also be set in connectivity or disallow
election modes and we want users to be able to see them then as well.

Fixes: https://tracker.ceph.com/issues/53258

Signed-off-by: Greg Farnum <gfarnum@redhat.com>
2021-11-12 23:05:02 +00:00
Casey Bodley
2a6fce4edc
Merge pull request #43773 from linuxbox2/wip-rgwnfs-crash
librgw: treat empty root path as "/" on mount

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
2021-11-12 15:57:37 -05:00
Casey Bodley
a50dcf6dbd
Merge pull request #43563 from Zhiwei-Dai/wip-fix-mutex-unlock-twice
common: avoid pthread_mutex_unlock twice

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
2021-11-12 15:56:18 -05:00
Casey Bodley
51eafb38ac
Merge pull request #43829 from cbodley/wip-rgw-auth-uninitialized-optional
rgw/auth: perm_mask uses std::optional

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
2021-11-12 15:53:10 -05:00
Casey Bodley
f1bbf70272
Merge pull request #43103 from ivancich/wip-none-stats-fix
rgw: fix rgw.none statistics

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2021-11-12 15:52:46 -05:00
Ronen Friedman
9dda986bd5 qa/standalone: fix scrub/osd-scrub-dump following changes to 'pg dump pgs' output
Make osd-scrub-dump test ignore the 'scrubbing' that might be late to disappear
from the modified (PR #43403) 'pg dump' output.

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
2021-11-12 18:43:41 +00:00
Ernesto Puerta
6fe330c800
Merge pull request #43877 from rhcs-dashboard/fix-spelling-network-address
mgr/dashboard: Spelling mistake in host-form Network address field

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
2021-11-12 19:10:23 +01:00
J. Eric Ivancich
17c2b6c1c4 rgw: make some logging easier to read
While __PRETTY_FUNCTION__ includes more information, it can clutter
the logs. So this reverts some uses of __PRETTY_FUNCTION__ back to
__func__.

I'm thinking that a strategy going forward is for the function entry
logging to use __PRETTY_FUNCTION__ to disambiguate overloaded
functions, but all others in the function simply to use __func__.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
2021-11-12 11:49:46 -05:00
J. Eric Ivancich
5c624489f4 rgw: a few coding fix-ups
Adds some code documentation and nudges code towards ceph coding
standards.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
2021-11-12 11:49:46 -05:00
J. Eric Ivancich
037ce8c4dd rgw: add ability to easily display ListParams
During debugging it can be useful to see all the contents of
rgw::sal::Bucket::ListParams. This allows the structure to be dumped
to an output stream in human-readable format.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
2021-11-12 11:49:46 -05:00
J. Eric Ivancich
2e620ac2ab rgw: fix bi put not using right bucket index shard
When `radosgw-admin bi put` adds an entry for an incomplete multipart
upload, the bucket index shard is not calculated correctly. It should
be based on the name of the ultimate object. However the calculation
was including the added organizational suffixes as well. This corrects
that.

NOTE: When entries are not put in the correct index shard, unordered
listing becomes unreliable, perhaps causing entries to be skipped or
infinite loops to form.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
2021-11-12 11:37:40 -05:00