Commit Graph

119245 Commits

Author SHA1 Message Date
Varsha Rao
01db81e2bc doc/cephfs/nfs: Add rook pod restart note, export and log block example
Fixes: https://tracker.ceph.com/issues/48914
Signed-off-by: Varsha Rao <varao@redhat.com>
2021-02-02 20:07:43 +05:30
Igor Fedotov
f6b18055ab
Merge pull request #39041 from ifed01/wip-ifed-fix-48966
os/bluestore: fix a bug causing unexpected Onode's unpinned state.

Reviewed-by: Kefu Chai <kchai@redhat.com>
2021-02-02 14:10:01 +03:00
Jan Fajerski
e332eae077 Merge PR #38869 into master
* refs/pull/38869/head:
	ceph-volume: Fix usage of is_lv

Reviewed-by: Jan Fajerski <jfajerski@suse.com>
2021-02-02 10:46:35 +01:00
Kefu Chai
11dc14e1bf
Merge pull request #38975 from athanatos/sjust/wip-seastore-pipelines
seastore: update to support pipelined write operations

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2021-02-02 17:40:37 +08:00
Igor Fedotov
ea0fc57ef5 os/bluestore: fix a bug causing unexpected Onode's unpinned state.
There could be a race for Onodes put() and get() methods:

put()(pinned, nref=3)
  int n = --nref; (nref = 2)
  if (n == 2) {
    ..
    std::lock_guard l(ocs->lock);
    ...
    pinned = pinned && nref > 2; (= false)
    ...                                     get()
    if (r) {                                ++nref; (=3)
      n = --nref; (nref = 2)                return;
    }
    ...
    return

As a result nref = 2, pinned = false which is wrong

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
2021-02-02 12:25:00 +03:00
Kefu Chai
391cd0cd46
Merge pull request #39205 from rzarzynski/wip-crimson-configurable-alien-threads-num
crimson: make the number of alien threads configurable.

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Mark Nelson <mnelson@redhat.com>
2021-02-02 14:04:59 +08:00
Josh Durgin
caa58fce7a
Merge pull request #38956 from zdover23/2021_Jan_19_release_notes_grammar
doc/PendingReleaseNotes: grammar and wording

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2021-02-01 15:31:48 -08:00
Sage Weil
fafdb1e47d Merge PR #39149 into master
* refs/pull/39149/head:
	qa/workunits/cephtool/test.sh: tolerate some settling for osd info vs dump test

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2021-02-01 16:25:01 -06:00
Samuel Just
a27b03940f crimson/os/seastore/segment_cleaner: tolerate mark_space_used on closed segment
A journal segment can be closed while outstanding writes on that
segment have not yet updated metadata.

Signed-off-by: Samuel Just <sjust@redhat.com>
2021-02-01 13:29:22 -08:00
Samuel Just
dfb1adaed6 crimson/os/seastore/journal: tolerate journal rolls during commit
Signed-off-by: Samuel Just <sjust@redhat.com>
2021-02-01 13:29:22 -08:00
Samuel Just
41ae1c497b crimson/os/seastore: add basic pipeline phases to TransactionManager
We need to ensure that the metadata preperation and completions happen
in order.

Signed-off-by: Samuel Just <sjust@redhat.com>
2021-02-01 13:29:19 -08:00
Samuel Just
ad14ecedb6 crimson/common/operation: add OrderedConcurrentPhase
Signed-off-by: Samuel Just <sjust@redhat.com>
2021-02-01 12:48:39 -08:00
Samuel Just
86348b48b3 src/crimson/common: decouple handle from stage
We're going to introduce stages with other properties.

Signed-off-by: Samuel Just <sjust@redhat.com>
2021-02-01 12:48:39 -08:00
Samuel Just
260c7c4af9 crimson/os/seastore: fix find_hole
We actually need to propogate eagain errors now, fix to use do_until.

Signed-off-by: Samuel Just <sjust@redhat.com>
2021-02-01 12:48:39 -08:00
Samuel Just
bcf4c89adf crimson/os/seastore: annotate all assert_all instances
Signed-off-by: Samuel Just <sjust@redhat.com>
2021-02-01 12:48:39 -08:00
Samuel Just
568a332fba store-nbd: support concurrent operations
Signed-off-by: Samuel Just <sjust@redhat.com>
2021-02-01 12:48:39 -08:00
Samuel Just
e43e5eadc5 crimson/os/seastore: validate node immediately prior to adding pin
Mostly, operating on an invalid extent is harmless by construction --
it'll be caught by the read set check in submit_transaction.  However,
prior to adding an extent to the lba pin set, we need to check that it's
really still live, which we can do by checking that it and its immediate
parent are still valid.  Mutating the target extent would have
invalidated it, and replacing the target extent would necessarily have
involved a mutation to the parent, which would have invalidated it.

Signed-off-by: Samuel Just <sjust@redhat.com>
2021-02-01 12:48:39 -08:00
Samuel Just
d244530f92 crimson/os/seastore: expand error type for reads to include eagain
There are cases where reads may detect an invalid cached extent and require
the user to restart the transaction.

As a side effect, clean up errorators to assert cases where construction
is invalid (invalid refcounts, enoent or invarg on node read, etc).  In
such cases, we may eventually want to introduce an internal_error error
type, but asserting is fine for now as we do not expect users to handle
these cases.

Signed-off-by: Samuel Just <sjust@redhat.com>
2021-02-01 12:48:39 -08:00
Samuel Just
ae9d15f670 crimson/common/errorator: add extend_ertr helper for merging errorators
Signed-off-by: Samuel Just <sjust@redhat.com>
2021-02-01 12:48:39 -08:00
Samuel Just
ef24a8cb2d crimson/os/seastore/cache: put root in t.mutated_extents and avoid special behavior
Signed-off-by: Samuel Just <sjust@redhat.com>
2021-02-01 12:48:39 -08:00
Samuel Just
d3e5937c08 crimson/common/operation.h: permit moving Handle objects
Signed-off-by: Samuel Just <sjust@redhat.com>
2021-02-01 12:48:39 -08:00
Samuel Just
ccbc728ca9 test/crimson/seastore/test_transaction_manager: add tests for concurrent IO
Signed-off-by: Samuel Just <sjust@redhat.com>
2021-02-01 12:48:36 -08:00
Samuel Just
c7eb6e4002 crimson/os/seastore/cached_extent: add asserts for debugging
Signed-off-by: Samuel Just <sjust@redhat.com>
2021-02-01 12:48:16 -08:00
Ernesto Puerta
27c32caa19
Merge pull request #36518 from yongseokoh/fix-dashboard
mgr/dashboard: Fix missing root path of each session for CephFS

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
2021-02-01 21:46:44 +01:00
Josh Durgin
25651e57b5
Merge pull request #38805 from kamoltat/wip-mgr-pg-autoscaler-improve-out-of-box-experience
pybind/mgr/pg_autoscaler: avoid scale-down until there is pressure

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2021-02-01 11:33:55 -08:00
Zac Dover
fa62671167 doc/PendingReleaseNotes: grammar and wording
This commit vets the PendingReleaseNotes for Octopus.
This might not be the only commit that updates the
release notes, but it is the first by me.

Signed-off-by: Zac Dover <zac.dover@gmail.com>
2021-02-02 01:37:59 +10:00
Radoslaw Zarzynski
387834bae9 crimson: make the number of alien threads configurable.
It's particularly important for reads to have large-enough
thread pool in `AlienStore` as they are synchronous; that
is, e.g. `BlueStore` blocks on IO when handling reads.

This commit introduces a configurable allowing operators
to increase the number from `1` which we were limited to
before the change.

Naming similarity with `osd_op_num_threads_per_shard` is
intentional.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2021-02-01 15:22:05 +01:00
Kamoltat
daeb6f6ac0 mgr/pg_autoscaler: avoid scale-down until there is pressure
The autoscaler will start out with scaling each
pools to have a full complements of pgs from the start
and will only decrease it when pools need more due to
increased usage.

Introduced a unit test that tests only the
function get_final_pg_target_and_ratio() which
deals with the distrubtion of pgs amongst the
pools

Edited workunit script to reflect the change
of how pgs are calculated and distrubted.

Signed-off-by: Kamoltat <ksirivad@redhat.com>
2021-02-01 13:05:54 +00:00
Sebastian Wagner
4203a7f93d
Merge pull request #39200 from mitsu-ko/mypatch
doc/mgr/orchestrator: Unify the content of command and yaml

Reviewed-by: Kefu Chai <kchai@redhat.com>
2021-02-01 13:22:50 +01:00
Kefu Chai
65285f8f08
Merge pull request #39201 from tchaikov/wip-sphinx-openapi
doc: silence warnings from openapi sphinx extension

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
2021-02-01 20:15:23 +08:00
Kefu Chai
8a01bad75f
Merge pull request #39194 from tchaikov/wip-dashboard-enum
pybind/mgr/dashboard: do not install enum34

Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
2021-02-01 19:11:32 +08:00
Mitsumasa KONDO
53639c2b01 doc/mgr/orchestrator: Unify the content of command and yaml
Signed-off-by: Mitsumasa KONDO <kondo.mitsumasa@gmail.com>
2021-02-01 18:13:12 +08:00
Kefu Chai
1debd98565 doc: silence warnings from openapi sphinx extension
it prints out

skipping non-JSON example generation.

if an API does not contains example while ":example:" is specified for
openapi extension, and if this API is not a GET request, openapi
extention complains.

see also
9dbae9c9a6/sphinxcontrib/openapi/openapi30.py (L191)

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-02-01 17:57:57 +08:00
Sebastian Wagner
639fac3564
Merge pull request #39198 from tchaikov/wip-mypy.ini
mypy.ini: fix the unresolve conflict

Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
2021-02-01 09:48:04 +01:00
zdover23
e9a74d6951
Merge pull request #39196 from badone/wip-doc-python3-api
doc/rados/api: Update code samples to python3

Reviewed-by: Zac Dover <zac.dover@gmail.com>
2021-02-01 17:18:35 +10:00
Kefu Chai
0c926d26cd mypy.ini: fix the unresolved conflict
it was introduced by a0930a6310, i failed
to resolve this conflict when resolving the merge confliction.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-02-01 15:11:56 +08:00
Brad Hubbard
0060cc52f9 doc/rados/api: Update code samples to python3
Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
2021-02-01 11:14:16 +10:00
Kefu Chai
d6c6669032
Merge pull request #39106 from mgfritch/cephadm-apt-get
cephadm: use `apt-get` for package install/update

Reviewed-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com>
2021-01-31 17:23:10 +08:00
Kefu Chai
15a53419ca
Merge pull request #39131 from sebastian-philipp/rook-disable-untyped
mgr/rook: disallow_untyped_defs = True

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Varsha Rao <varao@redhat.com>
2021-01-31 17:22:20 +08:00
Kefu Chai
9d0023ba90 pybind/mgr/dashboard: do not install enum34
enum was introduced by python 3.4, but we require python3.6 and up.
so drop it.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-01-31 12:04:23 +08:00
Sebastian Wagner
a3555a22c8 doc: add rook_client._helper to mock_imports
This is due to `mgr/rook` now also includes `._helper`

Co-authored-by Kefu Chai <kchai@redhat.com>

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2021-01-31 11:19:01 +08:00
Sebastian Wagner
a0930a6310 mgr/rook: disallow_untyped_defs = True
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2021-01-31 11:18:58 +08:00
Sebastian Wagner
ea51f6990c mgr/rook: Fix possibly infinite loop in _execute_blight_job
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2021-01-31 11:18:12 +08:00
Kefu Chai
79b91ea62d
Merge pull request #39143 from adk3798/ha-rgw-data-dir
cephadm: fix get_data_dir calls for ha-rgw daemons

Reviewed-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com>
Reviewed-by: Daniel-Pivonka <dpivonka@redhat.com>
2021-01-31 10:34:46 +08:00
Kefu Chai
383af836d7
Merge pull request #39081 from ifed01/wip-ifed-perpg-instrumentation
os/bluestore: be more verbose when fsck detects stray per-pg omaps

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
2021-01-31 10:31:13 +08:00
Kefu Chai
78cdd1e5a2
Merge pull request #39095 from tchaikov/wip-cephadm-fsid
cephadm: add fsid if --name is not specified

Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
2021-01-31 10:29:59 +08:00
Kefu Chai
461b384aeb
Merge pull request #39056 from sebastian-philipp/alerts-percent-d
mgr/alerts: interval can be None

Reviewed-by: Kefu Chai <kchai@redhat.com>
2021-01-31 10:28:54 +08:00
Kefu Chai
aca5ed1442
Merge pull request #38930 from vbashkirtsev/master
client/fuse_ll.cc: use uint64_t for fuse_ll_forget() nlookup argument

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2021-01-31 10:28:13 +08:00
Kefu Chai
510b0e067e
Merge pull request #39132 from rzarzynski/wip-blk-ptr_node-for-aio
blk: avoid temporary bptrs on aio paths; use ptr_node instead.

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2021-01-31 10:26:38 +08:00
Kefu Chai
11a8d4fbd5
Merge pull request #39151 from batrick/radosstriper-refactor
libradosstriper: make default layout const and static

Reviewed-by: Kefu Chai <kchai@redhat.com>
2021-01-31 10:25:46 +08:00