]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Radoslaw Zarzynski [Sun, 27 Jun 2021 21:50:37 +0000 (21:50 +0000)]
crimson/os: fix memory corruption in AlienStore::get_attrs().
`FuturizedStore` and `ObjectStore` use different memory layout for
conveying object attributes: map of `bufferlists` and map of `bptrs`
respectively. Unfortunately, `AlienStore` was trying to solve this
mismatch with just a `reinterpret_cast`.
Very likely this problem was the root cause behind the observed
crashes in `PGBackend::load_matadata` like the following one:
```
2021-06-15T09:25:07.511 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: DEBUG 2021-06-15 09:24:19,199 [shard 0] osd - peering_event(id=412, detail=PeeringEvent(from=7 pgid=5.14 sent=49 requested=49 evt=epoch_sent: 49 epoch_requested: 49 MInfoRec from 7 info: 5.14( v 45'2 (0'0,45'2] local-lis/les=48/49 n=0 ec=44/44 lis/c=48/44 les/c/f=49/45/0 sis=48) pg_lease_ack(ruub 19.176788330s))): complete
2021-06-15T09:25:07.511 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: Segmentation fault on shard 0.
2021-06-15T09:25:07.511 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: Backtrace:
2021-06-15T09:25:07.511 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 0# 0x000055C99757FFBF in /usr/bin/ceph-osd
2021-06-15T09:25:07.511 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 1# FatalSignal::signaled(int, siginfo_t const*) in /usr/bin/ceph-osd
2021-06-15T09:25:07.511 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 2# FatalSignal::install_oneshot_signal_handler<11>()::{lambda(int, siginfo_t*, void*)#1}::_FUN(int, siginfo_t*, void*) in /usr/bin/ceph-osd
2021-06-15T09:25:07.512 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 3# 0x00007F34BB632B20 in /lib64/libpthread.so.0
2021-06-15T09:25:07.512 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 4# 0x000055C99263D4D2 in /usr/bin/ceph-osd
2021-06-15T09:25:07.512 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 5# 0x000055C992740E47 in /usr/bin/ceph-osd
2021-06-15T09:25:07.512 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 6# seastar::continuation<seastar::internal::promise_base_with_type<std::unique_ptr<PGBackend::loaded_object_md_t, std::default_delete<PGBackend::loaded_object_md_t> > >, seastar::noncopyable_function<crimson::errorator<crimson::unthrowable_wrapper<std::error_code const&, crimson::ec<(std::errc)84> > >::_future<crimson::errorated_future_marker<std::unique_ptr<PGBackend::loaded_object_md_t, std::default_delete<PGBackend::loaded_object_md_t> > > > (seastar::future<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, std::less<void>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> > > >&&)>, seastar::future<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, std::less<void>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> > > >::then_wrapped_nrvo<crimson::errorator<crimson::unthrowable_wrapper<std::error_code const&, crimson::ec<(std::errc)84> > >::_future<crimson::errorated_future_marker<std::unique_ptr<PGBackend::loaded_object_md_t, std::default_delete<PGBackend::loaded_object_md_t> > > >, seastar::noncopyable_function<crimson::errorator<crimson::unthrowable_wrapper<std::error_code const&, crimson::ec<(std::errc)84> > >::_future<crimson::errorated_future_marker<std::unique_ptr<PGBackend::loaded_object_md_t, std::default_delete<PGBackend::loaded_object_md_t> > > > (seastar::future<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, std::less<void>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> > > >&&)> >(seastar::noncopyable_function<crimson::errorator<crimson::unthrowable_wrapper<std::error_code const&, crimson::ec<(std::errc)84> > >::_future<crimson::errorated_future_marker<std::unique_ptr<PGBackend::loaded_object_md_t, std::default_delete<PGBackend::loaded_object_md_t> > > > (seastar::future<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, std::less<void>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> > > >&&)>&&)::{lambda(seastar::internal::promise_base_with_type<std::unique_ptr<PGBackend::loaded_object_md_t, std::default_delete<PGBackend::loaded_object_md_t> > >&&, seastar::noncopyable_function<crimson::errorator<crimson::unthrowable_wrapper<std::error_code const&, crimson::ec<(std::errc)84> > >::_future<crimson::errorated_future_marker<std::unique_ptr<PGBackend::loaded_object_md_t, std::default_delete<PGBackend::loaded_object_md_t> > > > (seastar::future<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, std::less<void>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> > > >&&)>&, seastar::future_state<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, std::less<void>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> > > >&&)#1}, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, std::less<void>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> > > >::run_and_dispose() in /usr/bin/ceph-osd
2021-06-15T09:25:07.512 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 7# 0x000055C99CFD195F in /usr/bin/ceph-osd
2021-06-15T09:25:07.513 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 8# 0x000055C99CFD6EA0 in /usr/bin/ceph-osd
2021-06-15T09:25:07.513 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 9# 0x000055C99D188F0B in /usr/bin/ceph-osd
2021-06-15T09:25:07.513 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 10# 0x000055C99CCE698A in /usr/bin/ceph-osd
2021-06-15T09:25:07.513 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 11# 0x000055C99CCF0AAE in /usr/bin/ceph-osd
2021-06-15T09:25:07.513 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 12# main in /usr/bin/ceph-osd
2021-06-15T09:25:07.513 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 13# __libc_start_main in /lib64/libc.so.6
2021-06-15T09:25:07.514 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 14# _start in /usr/bin/ceph-osd
2021-06-15T09:25:07.514 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: Fault at location: 0x31dfff8000
2021-06-15T09:25:07.514 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:20 smithi100 podman[55356]: 2021-06-15 09:24:20.
230341885 +0000 UTC m=+0.
072958807 container died
a3ea2a1d0a176286b93b8f5b94458982b9038e70d09128fb55f53b92976f0c42 (image=quay.ceph.io/ceph-ci/ceph@sha256:
13ae953e3f83ee011d784d6eb9126fdc692f5bb688fe7d918be61ca7a7282b3c , name=ceph-
43579b90 -cdba-11eb-8c13-
001a4aab830c -osd.3)
```
The fix deals with the issue by wrapping the `bptrs` in `bufferlists`.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Samuel Just [Tue, 15 Jun 2021 14:01:07 +0000 (07:01 -0700)]
Merge pull request #41801 from liu-chunmei/seastore-fix-get-retired-extent
crimson/seastore: fix cache::get_extent got retired extent
Reviewed-by: Samuel Just <sjust@redhat.com>
Sebastian Wagner [Tue, 15 Jun 2021 11:59:54 +0000 (13:59 +0200)]
Merge pull request #41854 from sebastian-philipp/fix-mypy-yaml-representation
mgr/orch: fix mypy errors
Reviewed-by: Patrick Seidensal <pseidensal@suse.com>
Sebastian Wagner [Tue, 15 Jun 2021 09:39:37 +0000 (11:39 +0200)]
Merge pull request #41846 from batrick/i51214
doc: fix typo in option
Reviewed-by: Daniel Pivonka <dpivonka@redhat.com>
Sebastian Wagner [Tue, 15 Jun 2021 09:24:34 +0000 (11:24 +0200)]
pyhton-common: fix mypy errors
Fixes:
```
py3 run-test: commands[2] | mypy --config-file=../mypy.ini -p ceph
ceph/deployment/service_spec.py: note: In member "yaml_representer" of class "ServiceSpec":
ceph/deployment/service_spec.py:659: error: Argument 1 to "represent_dict" of "SafeRepresenter" has incompatible type "_OrderedDictItemsView[str, Any]"; expected "Mapping[Any, Any]"
```
Signed-off-by: Sebastian Wagner <sewagner@redhat.com>
Sebastian Wagner [Tue, 15 Jun 2021 08:19:40 +0000 (10:19 +0200)]
mgr/orch: fix mypy errors
Fixes:
```
orchestrator/__init__.py:6: note: In module imported here:
orchestrator/_interface.py: note: In member "yaml_representer" of class "DaemonDescription":
orchestrator/_interface.py:1039: error: Argument 1 to "represent_dict" of "SafeRepresenter" has incompatible type "ItemsView[Any, Any]"; expected "Mapping[Any, Any]"
orchestrator/_interface.py: note: In member "yaml_representer" of class "ServiceDescription":
orchestrator/_interface.py:1178: error: Argument 1 to "represent_dict" of "SafeRepresenter" has incompatible type "ItemsView[Any, Any]"; expected "Mapping[Any, Any]"
orchestrator/_interface.py: note: At top level:
orchestrator/_interface.py:1181: error: Argument 2 to "add_representer" has incompatible type "Callable[[SafeDumper, DaemonDescription], Any]"; expected "Callable[[SafeDumper, ServiceDescription], Node]"
Found 3 errors in 1 file (checked 29 source files)
```
Signed-off-by: Sebastian Wagner <sewagner@redhat.com>
Kefu Chai [Tue, 15 Jun 2021 06:26:05 +0000 (14:26 +0800)]
Merge pull request #41841 from ljflores/patch-1
doc: update testing.rst and build-integration test to say ./run-make-check.sh
Reviewed-by: Kefu Chai <kchai@redhat.com>
chunmei-liu [Thu, 10 Jun 2021 03:37:07 +0000 (20:37 -0700)]
crimson/seastore: fix cache::get_extent got retired extent
one transaction got an extent whose state is MUTATION_PENDINGat that time.
but another transaction do split and set the extent state to RETIRED.
when the first transaction resume and do continuation, the state of the extent
has been changed to RETIRED. So need eagain to try again.
Signed-off-by: chunmei-liu <chunmei.liu@intel.com>
Patrick Donnelly [Mon, 14 Jun 2021 20:37:29 +0000 (13:37 -0700)]
doc: fix typo in option
Fixes: https://tracker.ceph.com/issues/51214
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
Laura Flores [Mon, 14 Jun 2021 17:03:01 +0000 (12:03 -0500)]
script/build-integration-branch: update print statement based on update to documentation
The print statement originally suggested to the user to run "make && ctest -j12", but that is outdated. The user should execute "./run-make-check.sh" instead.
Signed-off-by: Laura Flores <lflores@redhat.com>
Laura Flores [Mon, 14 Jun 2021 16:23:54 +0000 (11:23 -0500)]
doc/dev: should be ./run-make-check.sh
Updating the initial pull request. The smoke test line should read "./run-make-check.sh" instead of "make && ctest -j12".
Signed-off-by: Laura Flores <lflores@redhat.com>
Laura Flores [Mon, 14 Jun 2021 16:01:15 +0000 (11:01 -0500)]
doc/dev: update testing.rst to say ninja
The current version of Ceph uses "ninja" rather than "make," so the testing documentation needs to be updated.
Signed-off-by: Laura Flores <lflores@redhat.com>
Sage Weil [Mon, 14 Jun 2021 15:02:31 +0000 (11:02 -0400)]
Merge PR #41799 into master
* refs/pull/41799/head:
cephadm: validate `--fsid` during bootstrap
Reviewed-by: Sebastian Wagner <swagner@suse.com>
Sage Weil [Mon, 14 Jun 2021 15:02:16 +0000 (11:02 -0400)]
Merge PR #41805 into master
* refs/pull/41805/head:
cephadm: set TCMALLOC_MAX_TOTAL_THREAD_CACHE_BYTES=
134217728
Reviewed-by: Sebastian Wagner <swagner@suse.com>
Kefu Chai [Mon, 14 Jun 2021 14:53:02 +0000 (22:53 +0800)]
Merge pull request #39624 from sebastian-philipp/mypy-812
src,qa: Upgrade to mypy 0.901
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Sebastian Wagner [Mon, 14 Jun 2021 14:09:07 +0000 (16:09 +0200)]
Merge pull request #41632 from jmolmo/fix_osd_rm_help_msg
mgr/cephadm: fix errors in command <ceph orch osd> help and documentation
Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
Sebastian Wagner [Mon, 14 Jun 2021 14:08:46 +0000 (16:08 +0200)]
Merge pull request #41556 from adk3798/daemon-count
mgr/cephadm: fix --service-type flag in orch ls when service has id
Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
Sage Weil [Mon, 14 Jun 2021 13:11:04 +0000 (09:11 -0400)]
Merge PR #41827 into master
* refs/pull/41827/head:
qa: move dashboard e2e from cephadm -> rados suite
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Kefu Chai [Mon, 14 Jun 2021 13:00:04 +0000 (21:00 +0800)]
Merge pull request #41796 from rzarzynski/wip-crimson-cltreq-dbgs
crimson/osd: improve debugs in ClientRequest
Reviewed-by: Kefu Chai <kchai@redhat.com>
Radoslaw Zarzynski [Wed, 9 Jun 2021 20:55:34 +0000 (20:55 +0000)]
crimson/osd: improve debugs in OpSequencer.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 9 Jun 2021 19:18:33 +0000 (19:18 +0000)]
crimson/osd: should_abort_request() dumps Operation's details.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 9 Jun 2021 19:16:56 +0000 (19:16 +0000)]
crimson/osd: print prev_op_id in ClientRequest's debugs.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Kefu Chai [Mon, 14 Jun 2021 10:13:21 +0000 (18:13 +0800)]
Merge pull request #41832 from inspur-wyq/patch-4
os/ObjectStore: fix typo in comments
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Patrick Donnelly [Mon, 14 Jun 2021 02:57:37 +0000 (19:57 -0700)]
Merge PR #41786 into master
* refs/pull/41786/head:
mon/MonCommands: remove obsolete mds commands
mon/MonCommands: remove obsolete mon commands
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Mon, 14 Jun 2021 02:57:05 +0000 (19:57 -0700)]
Merge PR #41580 into master
* refs/pull/41580/head:
cephfs: make ceph_fallocate() platform independent
Reviewed-by: Jeff Layton <jlayton@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Patrick Donnelly [Mon, 14 Jun 2021 02:56:34 +0000 (19:56 -0700)]
Merge PR #41482 into master
* refs/pull/41482/head:
qa: remove obsolete deactivate routines
Reviewed-by: Venky Shankar <vshankar@redhat.com>
Patrick Donnelly [Mon, 14 Jun 2021 02:56:04 +0000 (19:56 -0700)]
Merge PR #41481 into master
* refs/pull/41481/head:
client: Add ceph.caps vxattr
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Jeff Layton <jlayton@redhat.com>
Patrick Donnelly [Mon, 14 Jun 2021 02:54:45 +0000 (19:54 -0700)]
Merge PR #41431 into master
* refs/pull/41431/head:
mds: progress the recover queue immediately after the inode is enqueued
mds: switch to mdr->get_client()
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Mon, 14 Jun 2021 02:52:48 +0000 (19:52 -0700)]
Merge PR #41422 into master
* refs/pull/41422/head:
qa/tasks/cephfs/test_sessionmap: reap connections immediately
msg/async: configurable threshold for reaping dead connections
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Mon, 14 Jun 2021 02:51:52 +0000 (19:51 -0700)]
Merge PR #41403 into master
* refs/pull/41403/head:
mgr/volumes: Add config to insert delay at the beginning of the clone
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
wangyunqing [Mon, 14 Jun 2021 02:42:14 +0000 (10:42 +0800)]
os/ObjectStore: fix typo in comments
Signed-off-by: wangyunqing <wangyunqing@inspur.com>
Kefu Chai [Sun, 13 Jun 2021 15:30:20 +0000 (23:30 +0800)]
Merge pull request #40740 from batrick/i50278
pybind/mgr: add support for common sqlite3 databases
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sun, 13 Jun 2021 15:27:58 +0000 (23:27 +0800)]
Merge pull request #41809 from linuxbox2/wip-returnvec-64
rados: increase osd_max_write_op_reply_len default to 64 bytes
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
Kefu Chai [Sun, 13 Jun 2021 15:26:46 +0000 (23:26 +0800)]
Merge pull request #41746 from strenuous-life/wip-cephadm-osd-create
mgr/cephadm: When create osd which include db, _create_daemon will be…
Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
Sage Weil [Sat, 12 Jun 2021 13:02:19 +0000 (09:02 -0400)]
Merge PR #41781 into master
* refs/pull/41781/head:
mgr/mgr_module:delete invalid judgment
Reviewed-by: Kefu Chai <kchai@redhat.com>
Sage Weil [Sat, 12 Jun 2021 13:01:38 +0000 (09:01 -0400)]
Merge PR #41699 into master
* refs/pull/41699/head:
mgr/telemetry: pass leaderboard flag even w/o ident
Reviewed-by: Yaarit Hatuka <yaarithatuka@gmail.com>
Sage Weil [Sat, 12 Jun 2021 12:52:42 +0000 (07:52 -0500)]
qa: move dashboard e2e from cephadm -> rados suite
This test fails ~20% of the time.
Signed-off-by: Sage Weil <sage@newdream.net>
Patrick Donnelly [Sat, 12 Jun 2021 03:04:53 +0000 (20:04 -0700)]
qa: choose victim pg from rbd pool
Right now scrub_test picks any pg in ceph. Unfortunately, it picked the
.mgr pool's only pg in [1]:
2021-05-16T11:36:35.035 DEBUG:teuthology.orchestra.run.smithi049:> adjust-ulimits ceph-coverage /home/ubuntu/cephtest/archive/coverage rados --cluster ceph --pool rbd setomapval main.db-journal.
0000000000000000 key val
Instead, only pick a pg in the rbd pool.
[1] /ceph/teuthology-archive/kchai-2021-05-16_11:19:39-rados-wip-kefu-testing-2021-05-16-1043-distro-basic-smithi/
6117396 /teuthology.log
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Sat, 1 May 2021 02:31:35 +0000 (19:31 -0700)]
qa,pybind/mgr: allow disabling .mgr pool
This is mostly for testing: a lot of tests assume that there are no
existing pools. These tests relied on a config to turn off creating the
"device_health_metrics" pool which generally exists for any new Ceph
cluster. It would be better to make these tests tolerant of the new .mgr
pool but clearly there's a lot of these. So just convert the config to
make it work.
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Tue, 13 Apr 2021 02:42:57 +0000 (19:42 -0700)]
doc: document new .mgr pool
And that pool names beginning with `.` are reserved names.
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Mon, 19 Apr 2021 19:58:01 +0000 (12:58 -0700)]
qa: add upgrade test for devicehealth
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Sun, 11 Apr 2021 20:16:25 +0000 (13:16 -0700)]
qa: fix api test failures
"device_health_metrics" pool is gone -- .mgr pool is in.
I don't think the pool removal code in some test cases is necessary any
longer with recent changes to remove those warnings; so that code is
gone too.
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Fri, 9 Apr 2021 23:56:53 +0000 (16:56 -0700)]
pybind/mgr/devicehealth: load legacy device metrics pool
Fixes: https://tracker.ceph.com/issues/50278
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Fri, 9 Apr 2021 22:00:06 +0000 (15:00 -0700)]
pybind/mgr/devicehealth: update to store metrics in sqlite
This commit just modifies the module to use the sqlite3 database for
storing health metrics. A followup commit loads the legacy pool's data.
Fixes: https://tracker.ceph.com/issues/50278
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Fri, 9 Apr 2021 21:58:47 +0000 (14:58 -0700)]
pybind/mgr: add sqlite3 db module helpers
This creates a new '.mgr' pool for storing a default sqlite3 database
for each mgr module. Each module's database is stored in:
file:///.mgr:<mgr module name>/main.db?vfs=ceph
The "main.db" is the only one used presently but perhaps a module may
want extra databases for some reason. The module name is used for the
RADOS namespace.
Databases are versioned in a common table called MgrModuleKV using the
"__version" key. A mechanism is in place (SCHEMA_VERSIONED) to allow
modules to upgrade their databases over time in a consistent way.
Fixes: https://tracker.ceph.com/issues/50278
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
Kefu Chai [Sat, 12 Jun 2021 00:37:35 +0000 (08:37 +0800)]
Merge pull request #40480 from kamoltat/wip-ksirivad-fix-bug-49988
pybind/mgr/progress: Disregard unreported pgs
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Kefu Chai [Sat, 12 Jun 2021 00:11:45 +0000 (08:11 +0800)]
Merge pull request #41772 from cyx1231st/wip-seastore-onode-tree-node-size
crimson/onode-staged-tree: extend tree node sizes to fit insert upper-bounds
Reviewed-by: Kefu Chai <kchai@redhat.com>
Patrick Donnelly [Sat, 12 Jun 2021 00:10:41 +0000 (17:10 -0700)]
Merge PR #39505 into master
* refs/pull/39505/head:
qa: test nowsync option in kernel client workflows
qa: deep merge top level overrides for fuse/kclient
Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
Reviewed-by: Jeff Layton <jlayton@redhat.com>
Kefu Chai [Sat, 12 Jun 2021 00:08:47 +0000 (08:08 +0800)]
Merge pull request #40952 from tchaikov/wip-deb-build-profile
debian: use build-profile to manage build deps
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Sat, 12 Jun 2021 00:07:06 +0000 (17:07 -0700)]
Merge PR #41683 into master
* refs/pull/41683/head:
qa: update RHEL to 8.4
Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Ernesto Puerta [Fri, 11 Jun 2021 17:46:15 +0000 (19:46 +0200)]
Merge pull request #41550 from aaryanporwal/navbar-fix
mgr/dashboard: fix for right sidebar nav icon not clickable
Reviewed-by: Waad Alkhoury <walkhour@redhat.com>
Reviewed-by: aaryanporwal <NOT@FOUND>
Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Yingxin Cheng [Wed, 9 Jun 2021 03:06:28 +0000 (11:06 +0800)]
crimson/onode-staged-tree: convert ghobject_t to key_hobj_t to print
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Wed, 9 Jun 2021 02:48:43 +0000 (10:48 +0800)]
crimson/onode-staged-tree: merge with single-value tail internal node
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Tue, 8 Jun 2021 07:19:33 +0000 (15:19 +0800)]
crimson/onode-staged-tree: switch to and test larger node sizes
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Tue, 8 Jun 2021 06:11:52 +0000 (14:11 +0800)]
crimson/onode-staged-tree: support unaligned read to leaf_sub_items_t::num_keys
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Tue, 8 Jun 2021 06:03:07 +0000 (14:03 +0800)]
crimson/onode-staged-tree: add the missing retired validation
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Tue, 8 Jun 2021 01:59:32 +0000 (09:59 +0800)]
crimson/onode-staged-tree: encode/decode stage_size instead
end-offset may risk overflow the node_offset_t, but stage_size will not.
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Tue, 8 Jun 2021 01:55:15 +0000 (09:55 +0800)]
crimson/onode-staged-tree: use extent_len_t and node_offset_t correctly
extent_len_t represents a value that may include the node size, but
node_offset_t cannot and may overflow. Also add validations when
try to cast a larger type to node_offset_t.
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Tue, 8 Jun 2021 01:42:34 +0000 (09:42 +0800)]
crimson/onode-staged-tree: remove unused code
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Tue, 8 Jun 2021 01:41:44 +0000 (09:41 +0800)]
crimson/onode-staged-tree: validate node size where possible
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Mon, 7 Jun 2021 05:57:13 +0000 (13:57 +0800)]
crimson/onode-staged-tree: remove compile-time NODE_BLOCK_SIZE
Switch to run-time node_size.
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Mon, 7 Jun 2021 05:15:58 +0000 (13:15 +0800)]
crimson/onode-staged-tree: pass node_size to lower node stages
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Mon, 7 Jun 2021 02:45:18 +0000 (10:45 +0800)]
crimson/onode-staged-tree: remove compile-time node SIZE
Switch to run-time node_extent_t::node_size instead.
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Mon, 7 Jun 2021 02:43:31 +0000 (10:43 +0800)]
crimson/onode-staged-tree: cleanup internal_fields_3_t template
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Thu, 3 Jun 2021 02:28:50 +0000 (10:28 +0800)]
crimson/onode-staged-tree: pass node_size into node_extent_t
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Wed, 2 Jun 2021 15:44:07 +0000 (23:44 +0800)]
crimson/onode-staged-tree: extend num_keys_t to support larger nodes
Also adjust the accroding layout related unit tests.
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Wed, 2 Jun 2021 08:25:05 +0000 (16:25 +0800)]
crimson/onode-staged-tree: remove hard-coded node_stage_t::EXTENT_SIZE
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Wed, 2 Jun 2021 06:07:33 +0000 (14:07 +0800)]
crimson/onode-staged-tree: check the maximum tree height
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Wed, 2 Jun 2021 05:36:11 +0000 (13:36 +0800)]
crimson/onode-staged-tree: validate safe-split from tree_conf_t
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Wed, 2 Jun 2021 05:33:50 +0000 (13:33 +0800)]
crimson/onode-staged-tree: add and use node sizes in tree_conf_t
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Wed, 2 Jun 2021 05:18:48 +0000 (13:18 +0800)]
crimson/onode-staged-tree: implement size upper-bounds to value
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Wed, 2 Jun 2021 04:47:55 +0000 (12:47 +0800)]
crimson/onode-staged-tree: implement size upper-bounds to ns/oid
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Wed, 2 Jun 2021 03:52:33 +0000 (11:52 +0800)]
crimson/onode-staged-tree: introduce compile-time tree_conf_t
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Mon, 31 May 2021 07:58:30 +0000 (15:58 +0800)]
crimson/onode-staged-tree: cleanup, decouple test_item_t from TestValue
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Mon, 31 May 2021 02:11:01 +0000 (10:11 +0800)]
crimson/seastore: introduce TransactionManager::read_extent(t, offset)
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Wed, 26 May 2021 06:26:59 +0000 (14:26 +0800)]
crimson/onode-staged-tree: correct the node size equation
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Wed, 26 May 2021 04:45:27 +0000 (12:45 +0800)]
crimson/onode-staged-tree: try merge peer if node has one value
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Yingxin Cheng [Wed, 26 May 2021 04:44:13 +0000 (12:44 +0800)]
crimson/onode-staged-tree: cleanup and introduce has_single_value()
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Kefu Chai [Fri, 11 Jun 2021 11:59:46 +0000 (19:59 +0800)]
Merge pull request #41814 from tchaikov/wip-crimson-fmt-seq
crimson/osd: specialize fmt::formatter<> for OpSequencer
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
Ernesto Puerta [Fri, 11 Jun 2021 09:08:18 +0000 (11:08 +0200)]
Merge pull request #41759 from rhcs-dashboard/wip-api_label-master
.github/labeler: add api-change label
Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Sebastian Wagner [Fri, 11 Jun 2021 08:45:47 +0000 (10:45 +0200)]
Merge pull request #41242 from zdover23/wip-doc-cephadm-monitoring-deploying-monitoring-second-half-2021-05-10
doc/cephadm: rewrite "deploy. mon. w/cephadm" 2/2
Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
Sebastian Wagner [Fri, 11 Jun 2021 08:45:04 +0000 (10:45 +0200)]
Merge pull request #41241 from zdover23/wip-doc-cephadm-monitoring-deploying-monitoring-first-half-2021-05-10
doc/cephadm: rewrite "deploy. mon. w/cephadm"
Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
Kefu Chai [Fri, 11 Jun 2021 06:18:22 +0000 (14:18 +0800)]
crimson/osd: specialize fmt::formatter<> for OpSequencer
so we can print it like fmt::format("{}", sequencer)
Signed-off-by: Kefu Chai <kchai@redhat.com>
jianglong01 [Fri, 11 Jun 2021 02:56:30 +0000 (10:56 +0800)]
mgr/cephadm: When test osd active, it need to add "mock call" to make sure execute correctly
Signed-off-by: jianglong01 <jianglong01@qianxin.com>
Kefu Chai [Fri, 11 Jun 2021 00:41:36 +0000 (08:41 +0800)]
Merge pull request #41812 from agayev/zoned-fix-block-size
os/bluestore: Fix the size of the block in the Allocator base class t…
Reviewed-by: Igor Fedotov <ifedotov@suse.com>
Kefu Chai [Fri, 11 Jun 2021 00:32:30 +0000 (08:32 +0800)]
Merge pull request #41744 from tchaikov/wip-cmake-no-python-bindings-on-wnin32
cmake: vstart do not depend on cython_rbd if WIN32
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Thu, 10 Jun 2021 21:53:21 +0000 (14:53 -0700)]
Merge PR #41442 into master
* refs/pull/41442/head:
doc/cephfs/nfs: add ganesha configuration hierarchy
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Sebastian Wagner <swagner@suse.com>
Patrick Donnelly [Thu, 10 Jun 2021 20:55:12 +0000 (13:55 -0700)]
Merge PR #41797 into master
* refs/pull/41797/head:
qa: update cephfs-shell distro to ubuntu 20.04
Reviewed-by: Kefu Chai <kchai@redhat.com>
Igor Fedotov [Thu, 10 Jun 2021 20:32:00 +0000 (23:32 +0300)]
Merge pull request #41575 from ifed01/wip-ifed-fix-no-osd-daemonperf
common/PriorityCache: low perf counters priorities for submodules.
Reviewed-by: Mark Nelson <mnelson@readhat.com>
Abutalib Aghayev [Thu, 10 Jun 2021 19:59:45 +0000 (15:59 -0400)]
os/bluestore: Fix the size of the block in the Allocator base class to avoid
the confusing log message about the block size.
Signed-off-by: Abutalib Aghayev <agayev@psu.edu>
Matt Benjamin [Thu, 10 Jun 2021 14:27:58 +0000 (10:27 -0400)]
rados: increase osd_max_write_op_reply_len default to 64 bytes
Agreed in #ceph-devel on 6/10. The current controlling
rationale is that the default value should be sufficient to
marshall a SHA-512 checksum.
Fixes: https://tracker.ceph.com/issues/51166
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
Sage Weil [Thu, 10 Jun 2021 12:39:11 +0000 (08:39 -0400)]
cephadm: set TCMALLOC_MAX_TOTAL_THREAD_CACHE_BYTES=
134217728
This used to live in /etc/{sysconfig,defaults}/ceph, but that does not
apply inside the container.
Signed-off-by: Sage Weil <sage@newdream.net>
Matt Benjamin [Thu, 10 Jun 2021 11:56:52 +0000 (07:56 -0400)]
Merge pull request #41585 from pritha-srivastava/wip-rgw-sts-session-policy-eval
rgw/sts: correcting the evaluation of session policies
Matt Benjamin [Thu, 10 Jun 2021 11:56:31 +0000 (07:56 -0400)]
Merge pull request #41735 from pritha-srivastava/wip-rgw-sts-ops-log-updates
rgw/sts: adding role name and role session to ops log.
Sebastian Wagner [Wed, 9 Jun 2021 13:17:35 +0000 (15:17 +0200)]
cephadm: Upgrade to mypy 0.901
Signed-off-by: Sebastian Wagner <sewagner@redhat.com>
Sebastian Wagner [Wed, 9 Jun 2021 12:08:10 +0000 (14:08 +0200)]
pybind/mgr: Upgrade to mypy 0.901
Signed-off-by: Sebastian Wagner <sewagner@redhat.com>
Sebastian Wagner [Thu, 10 Jun 2021 10:52:17 +0000 (12:52 +0200)]
Merge pull request #41653 from zdover23/wip-doc-cephadm-serve-man-setting-a-limit-2021-06-02
doc/cephadm: enriching "setting a limit"
Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
Sebastian Wagner [Thu, 10 Jun 2021 10:13:40 +0000 (12:13 +0200)]
Merge pull request #41693 from sebastian-philipp/cephadm-devenv-bootstrap-mount
doc/dev/cephadm: cephadm bootstrap --shared_ceph_folder
Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com>
Liu-Chunmei [Thu, 10 Jun 2021 00:17:07 +0000 (17:17 -0700)]
Merge pull request #41741 from liu-chunmei/seastore-fixe-read-invalid
crimson/seastore: fix OTree read invalid extent
Michael Fritch [Wed, 9 Jun 2021 23:45:03 +0000 (17:45 -0600)]
cephadm: validate `--fsid` during bootstrap
Signed-off-by: Michael Fritch <mfritch@suse.com>