======= Octopus ======= Octopus is the 15th stable release of Ceph. It is named after an order of 8-limbed cephalopods. v15.2.17 Octopus ================ This is the 17th and final backport release in the Octopus series. We recommend all users update to this release. Notable Changes --------------- * Octopus modified the SnapMapper key format from __ to ___ When this change was introduced, 94ebe0e also introduced a conversion with a crucial bug which essentially destroyed legacy keys by mapping them to __ without the object-unique suffix. The conversion is fixed in this release. Relevant tracker: https://tracker.ceph.com/issues/5614 * The ability to blend all RBD pools together into a single view by invoking "rbd perf image iostat" or "rbd perf image iotop" commands without any options or positional arguments is resurrected. Such invocations accidentally became limited to just the default pool (``rbd_default_pool``) in v15.2.14. * Users who were running OpenStack Manila to export native CephFS, who upgraded their Ceph cluster from Nautilus (or earlier) to a later major version, were vulnerable to an attack by malicious users (:ref:`CVE-2022-0670`). The vulnerability allowed users to obtain access to arbitrary portions of the CephFS filesystem hierarchy, instead of being properly restricted to their own subvolumes. The vulnerability is due to a bug in the "volumes" plugin in Ceph Manager. This plugin is responsible for managing Ceph File System subvolumes which are used by OpenStack Manila services as a way to provide shares to Manila users. With this release, the vulnerability is fixed. Administrators who are concerned they may have been impacted should audit the CephX keys in their cluster for proper path restrictions. Again, this vulnerability only impacts OpenStack Manila clusters which provided native CephFS access to their users. Changelog --------------- * admin/doc-requirements: bump sphinx to 4.4.0 (`pr#45972 `_, Kefu Chai) * backport qemu-iotests fixup for centos stream 8 (`pr#45206 `_, Ken Dreyer, Ilya Dryomov) * Catch exception if thrown by __generate_command_map() (`pr#45891 `_, Nikhil Kshirsagar) * ceph-volume: abort when passed devices have partitions (`pr#45147 `_, Guillaume Abrioux) * ceph-volume: fix error 'KeyError' with inventory (`pr#44883 `_, Guillaume Abrioux) * ceph-volume: fix tags dict output in `lvm list` (`pr#44768 `_, Guillaume Abrioux) * ceph-volume: zap osds in rollback_osd() (`pr#44770 `_, Guillaume Abrioux) * ceph/admin: s/master/main (`pr#46219 `_, Zac Dover) * cephadm: infer the default container image during pull (`pr#45570 `_, Michael Fritch) * cephadm: preserve `authorized_keys` file during upgrade (`pr#45356 `_, Michael Fritch) * client: do not dump mds twice in Inode::dump() (`pr#45162 `_, Xue Yantao) * cls/rbd: GroupSnapshotNamespace comparator violates ordering rules (`pr#45076 `_, Ilya Dryomov) * cls/rgw: rgw_dir_suggest_changes detects race with completion (`pr#45902 `_, Casey Bodley) * cmake: pass RTE_DEVEL_BUILD=n when building dpdk (`pr#45261 `_, Kefu Chai) * common: avoid pthread_mutex_unlock twice (`pr#45465 `_, Dai Zhiwei) * common: replace BitVector::NoInitAllocator with wrapper struct (`pr#45180 `_, Casey Bodley) * crush: cancel upmaps with up set size != pool size (`pr#43416 `_, huangjun) * doc/dev: update basic-workflow.rst (`pr#46308 `_, Zac Dover) * doc/start: s/3/three/ in intro.rst (`pr#46328 `_, Zac Dover) * doc/start: update "memory" in hardware-recs.rst (`pr#46451 `_, Zac Dover) * Fixes for make check (`pr#46230 `_, Kefu Chai, Adam C. Emerson) * krbd: return error when no initial monitor address found (`pr#45004 `_, Burt Holzman) * librados: check latest osdmap on ENOENT in pool_reverse_lookup() (`pr#45587 `_, Ilya Dryomov) * librbd: bail from schedule_request_lock() if already lock owner (`pr#47160 `_, Christopher Hoffman) * librbd: fix use-after-free on ictx in list_descendants() (`pr#45000 `_, Ilya Dryomov, Wang ShuaiChao) * librbd: honor FUA op flag for write_same() in write-around cache (`pr#44992 `_, Ilya Dryomov) * librbd: readv/writev fix iovecs length computation overflow (`pr#45560 `_, Jonas Pfefferle) * librbd: track complete async operation requests (`pr#45019 `_, Mykola Golub) * librbd: unlink newest mirror snapshot when at capacity, bump capacity (`pr#46592 `_, Ilya Dryomov) * librbd: update progress for non-existent objects on deep-copy (`pr#46912 `_, Ilya Dryomov) * librgw: make rgw file handle versioned (`pr#45496 `_, Xuehan Xu) * mds: add heartbeat_reset() in start_files_to_reover() (`pr#45157 `_, Yongseok Oh) * mds: check rejoin_ack_gather before enter rejoin_gather_finish (`pr#45161 `_, chencan) * mds: directly return just after responding the link request (`pr#44624 `_, Xiubo Li) * mds: ensure that we send the btime in cap messages (`pr#45164 `_, Jeff Layton) * mds: fix possible mds_lock not locked assert (`pr#45156 `_, Xiubo Li) * mds: fix seg fault in expire_recursive (`pr#45055 `_, 胡玮文) * mds: ignore unknown client op when tracking op latency (`pr#44976 `_, Venky Shankar) * mds: mds_oft_prefetch_dirfrags default to false (`pr#45015 `_, Dan van der Ster) * mds: progress the recover queue immediately after the inode is enqueued (`pr#45158 `_, "Yan, Zheng", Xiubo Li) * mds: reset the return value for heap command (`pr#45155 `_, Xiubo Li) * mds: skip directory size checks for reintegration (`pr#44668 `_, Patrick Donnelly) * mgr/cephadm: fix and improve osd draining (`pr#46645 `_, Sage Weil) * mgr/cephadm: try to get FQDN for active instance (`pr#46787 `_, Tatjana Dehler) * mgr/cephadm: try to get FQDN for configuration files (`pr#45621 `_, Tatjana Dehler) * mgr/dashboard: dashboard turns telemetry off when configuring report (`pr#45110 `_, Sarthak0702, Aaryan Porwal) * mgr/dashboard: fix "NullInjectorError: No provider for I18n (`pr#45613 `_, Nizamudeen A) * mgr/dashboard: fix Grafana OSD/host panels (`pr#44924 `_, Patrick Seidensal) * mgr/dashboard: Notification banners at the top of the UI have fixed height (`pr#44763 `_, Waad AlKhoury) * mgr/dashboard: Table columns hiding fix (`issue#51119 `_, `pr#45726 `_, Daniel Persson) * mgr/devicehealth: fix missing timezone from time delta calculation (`pr#45287 `_, Yaarit Hatuka) * mgr/prometheus: Added `avail_raw` field for Pools DF Prometheus mgr module (`pr#45238 `_, Konstantin Shalygin) * mgr/rbd_support: cast pool_id from int to str when collecting LevelSpec (`pr#45530 `_, Ilya Dryomov) * mgr/rbd_support: fix schedule remove (`pr#45006 `_, Sunny Kumar) * mgr/telemetry: fix waiting for mgr to warm up (`pr#45772 `_, Yaarit Hatuka) * mgr/volumes: A few volumes plugin backport (`issue#51271 `_, `pr#44800 `_, Kotresh HR, Venky Shankar, Jan Fajerski) * mgr/volumes: Fix permission during subvol creation with mode (`pr#43224 `_, Kotresh HR) * mgr/volumes: Fix subvolume discover during upgrade (`pr#47236 `_, Kotresh HR) * mgr: limit changes to pg_num (`pr#44541 `_, Sage Weil) * mirror snapshot schedule and trash purge schedule fixes (`pr#46777 `_, Ilya Dryomov) * mon/MonCommands.h: fix target_size_ratio range (`pr#45398 `_, Kamoltat) * mon: Abort device health when device not found (`pr#44960 `_, Benoît Knecht) * octopus rgw: on FIPS enabled, fix segfault performing s3 multipart PUT (`pr#46701 `_, Mark Kogan) * octopus rgw: under fips, set flag to allow md5 in select rgw ops (`pr#44806 `_, Mark Kogan) * os/bluestore: Always update the cursor position in AVL near-fit search (`pr#46687 `_, Mark Nelson) * osd/OSD: Log aggregated slow ops detail to cluster logs (`pr#45154 `_, Prashant D) * osd/OSD: osd_fast_shutdown_notify_mon not quite right (`pr#45655 `_, Nitzan Mordechai, Satoru Takeuchi) * osd/OSDMap: Add health warning if 'require-osd-release' != current release (`pr#44260 `_, Sridhar Seshasayee) * osd/OSDMapMapping: fix spurious threadpool timeout errors (`pr#44546 `_, Sage Weil) * osd/PGLog.cc: Trim duplicates by number of entries (`pr#46253 `_, Nitzan Mordechai) * osd/PrimaryLogPG.cc: CEPH_OSD_OP_OMAPRMKEYRANGE should mark omap dirty (`pr#45593 `_, Neha Ojha) * osd/SnapMapper: fix pacific legacy key conversion and introduce test (`pr#47108 `_, Manuel Lausch, Matan Breizman) * osd: log the number of 'dups' entries in a PG Log (`pr#46609 `_, Radoslaw Zarzynski) * osd: require osd_pg_max_concurrent_snap_trims > 0 (`pr#45324 `_, Dan van der Ster) * qa/rgw: add failing tempest test to blocklist (`pr#45437 `_, Casey Bodley) * qa/rgw: update apache-maven mirror for rgw/hadoop-s3a (`pr#45446 `_, Casey Bodley) * qa/suites/rados/thrash-erasure-code-big/thrashers: add `osd max backfills` setting to mapgap and pggrow (`pr#46392 `_, Laura Flores) * qa/suites: clean up client-upgrade-octopus-pacific test (`pr#45334 `_, Ilya Dryomov) * qa/tasks/qemu: make sure block-rbd.so is installed (`pr#45071 `_, Ilya Dryomov) * qa/tasks: teuthology octopus backport (`pr#46149 `_, Kefu Chai, Shraddha Agrawal) * qa/tests: added upgrade-clients/client-upgrade-octopus-quincy tests (`pr#45282 `_, Yuri Weinstein) * qa: always format the pgid in hex (`pr#45159 `_, Xiubo Li) * qa: check mounts attribute in ctx (`pr#45633 `_, Jos Collin) * qa: remove .teuthology_branch file (`pr#46489 `_, Jeff Layton) * radosgw-admin: 'reshard list' doesn't log ENOENT errors (`pr#45452 `_, Casey Bodley) * radosgw-admin: 'sync status' is not behind if there are no mdlog entries (`pr#45443 `_, Casey Bodley) * radosgw-admin: skip GC init on read-only admin ops (`pr#45423 `_, Mark Kogan) * rbd-fuse: librados will filter out -r option from command-line (`pr#46952 `_, wanwencong) * rbd-mirror: don't prune non-primary snapshot when restarting delta sync (`pr#46589 `_, Ilya Dryomov) * rbd-mirror: generally skip replay/resync if remote image is not primary (`pr#46812 `_, Ilya Dryomov) * rbd-mirror: make mirror properly detect pool replayer needs restart (`pr#45169 `_, Mykola Golub) * rbd-mirror: remove bogus completed_non_primary_snapshots_exist check (`pr#47117 `_, Ilya Dryomov) * rbd-mirror: synchronize with in-flight stop in ImageReplayer::stop() (`pr#45177 `_, Ilya Dryomov) * rbd: don't default empty pool name unless namespace is specified (`pr#47142 `_, Ilya Dryomov) * rbd: mark optional positional arguments as such in help output (`pr#45009 `_, Ilya Dryomov, Jason Dillaman) * rbd: recognize rxbounce map option (`pr#45001 `_, Ilya Dryomov) * Revert "rocksdb: do not use non-zero recycle_log_file_num setting" (`pr#47053 `_, Laura Flores) * revert of #46253, add tools: ceph-objectstore-tool is able to trim solely pg log dups' entries (`pr#46611 `_, Radosław Zarzyński, Radoslaw Zarzynski) * rgw/amqp: add default case to silence compiler warning (`pr#45479 `_, Casey Bodley) * rgw: add the condition of lock mode conversion to PutObjRentention (`pr#45441 `_, wangzhong) * rgw: bucket chown bad memory usage (`pr#45492 `_, Mohammad Fatemipour) * rgw: change order of xml elements in ListRoles response (`pr#45449 `_, Casey Bodley) * rgw: cls_bucket_list_unordered() might return one redundent entry every time is_truncated is true (`pr#45458 `_, Peng Zhang) * rgw: document rgw_lc_debug_interval configuration option (`pr#45454 `_, J. Eric Ivancich) * rgw: document S3 bucket replication support (`pr#45485 `_, Matt Benjamin) * rgw: Dump Object Lock Retain Date as ISO 8601 (`pr#43656 `_, Preben Berg) * rgw: fix leak of RGWBucketList memory (octopus only) (`pr#45283 `_, Casey Bodley) * rgw: fix md5 not match for RGWBulkUploadOp upload when enable rgw com… (`pr#45433 `_, yuliyang_yewu) * rgw: fix segfault in UserAsyncRefreshHandler::init_fetch (`pr#45412 `_, Cory Snyder) * rgw: have "bucket check --fix" fix pool ids correctly (`pr#45456 `_, J. Eric Ivancich) * rgw: init bucket index only if putting bucket instance info succeeds (`pr#45481 `_, Huber-ming) * rgw: parse tenant name out of rgwx-bucket-instance (`pr#45523 `_, Casey Bodley) * rgw: resolve empty ordered bucket listing results w/ CLS filtering \*and\* bucket index list produces incorrect result when non-ascii entries (`pr#45088 `_, J. Eric Ivancich) * rgw: return OK on consecutive complete-multipart reqs (`pr#45488 `_, Mark Kogan) * rgw: RGWCoroutine::set_sleeping() checks for null stack (`pr#46042 `_, Or Friedmann, Casey Bodley) * rgw: RGWPostObj::execute() may lost data (`pr#45503 `_, Lei Zhang) * rgw: url_decode before parsing copysource in copyobject (`issue#43259 `_, `pr#45431 `_, Paul Reece) * rgw:When KMS encryption is used and the key does not exist, we should… (`pr#45462 `_, wangyingbin) * rgwlc: fix segfault resharding during lc (`pr#46745 `_, Mark Kogan) * rocksdb: do not use non-zero recycle_log_file_num setting (`pr#45040 `_, Igor Fedotov) * src/rgw: Fix for malformed url (`pr#45460 `_, Kalpesh Pandya) * test/bufferlist: ensure rebuild_aligned_size_and_memory() always rebuilds (`pr#46216 `_, Radoslaw Zarzynski) * test/librbd: add test to verify diff_iterate size (`pr#45554 `_, Christopher Hoffman) * test: fix wrong alarm (HitSetWrite) (`pr#45320 `_, Myoungwon Oh) * tools/rbd: expand where option rbd_default_map_options can be set (`pr#45182 `_, Christopher Hoffman, Ilya Dryomov) v15.2.16 Octopus ================ This is the 16th backport release in the Octopus series. We recommend all users update to this release. Notable Changes --------------- * Fix in the read lease logic to prevent PGs from going into WAIT state after OSD restart. * Several bug fixes in BlueStore, including a fix for object listing bug, which could cause stat mismatch scrub errors. Changelog --------- * Fix data corruption in bluefs truncate() (`pr#44860 `_, Adam Kupczyk) * Octopus: mds: just respawn mds daemon when osd op requests timeout (`pr#43785 `_, Xiubo Li) * admin/doc-requirements.txt: pin Sphinx at 3.5.4 (`pr#43758 `_, Casey Bodley, Kefu Chai, Nizamudeen A, Varsha Rao) * backport diff-iterate include_parent tests (`pr#44673 `_, Ilya Dryomov) * ceph-volume: `get_first_lv()` refactor (`pr#43959 `_, Guillaume Abrioux) * ceph-volume: don't use MultiLogger in find_executable_on_host() (`pr#44766 `_, Guillaume Abrioux) * ceph-volume: fix a typo causing AttributeError (`pr#43950 `_, Taha Jahangir) * ceph-volume: fix bug with miscalculation of required db/wal slot size for VGs with multiple PVs (`pr#43947 `_, Guillaume Abrioux, Cory Snyder) * ceph-volume: fix regression introcuded via #43536 (`pr#44757 `_, Guillaume Abrioux) * ceph-volume: honour osd_dmcrypt_key_size option (`pr#44974 `_, Guillaume Abrioux) * ceph-volume: human_readable_size() refactor (`pr#44210 `_, Guillaume Abrioux) * ceph-volume: improve mpath devices support (`pr#44791 `_, Guillaume Abrioux) * ceph-volume: make it possible to skip needs_root() (`pr#44320 `_, Guillaume Abrioux) * ceph-volume: show RBD devices as not available (`pr#44709 `_, Michael Fritch) * ceph-volume: util/prepare fix osd_id_available() (`pr#43952 `_, Guillaume Abrioux) * cephadm/ceph-volume: do not use lvm binary in containers (`pr#43953 `_, Guillaume Abrioux) * cephadm: Fix iscsi client caps (allow mgr calls) (`pr#43822 `_, Juan Miguel Olmo Martínez) * cephfs: client: Fix executeable access check for the root user (`pr#41295 `_, Kotresh HR) * cls/journal: skip disconnected clients when calculating min_commit_position (`pr#44689 `_, Mykola Golub) * common/PriorityCache: low perf counters priorities for submodules (`pr#44176 `_, Igor Fedotov) * doc: Use older mistune (`pr#44227 `_, David Galloway) * doc: prerequisites fix for cephFS mount (`pr#44271 `_, Nikhilkumar Shelke) * librbd/object_map: rbd diff between two snapshots lists entire image content (`pr#43806 `_, Sunny Kumar) * librbd: diff-iterate reports incorrect offsets in fast-diff mode (`pr#44548 `_, Ilya Dryomov) * mds: Add new flag to MClientSession (`pr#43252 `_, Kotresh HR) * mds: PurgeQueue.cc fix for 32bit compilation (`pr#44169 `_, Duncan Bellamy) * mds: do not trim stray dentries during opening the root (`pr#43816 `_, Xiubo Li) * mds: skip journaling blocklisted clients when in `replay` state (`pr#43842 `_, Venky Shankar) * mgr/dashboard/api: set a UTF-8 locale when running pip (`pr#43607 `_, Kefu Chai) * mgr/dashboard: all pyfakefs must be pinned on same version (`pr#44159 `_, Rishabh Dave) * mgr/dashboard: upgrade Cypress to the latest stable version (`pr#44373 `_, Alfonso Martínez) * mgr: Add check to prevent mgr from crashing (`pr#43446 `_, Aswin Toni) * mgr: fix locking for MetadataUpdate::finish (`pr#44720 `_, Sage Weil) * mgr: set debug_mgr=2/5 (so INFO goes to mgr log by default) (`pr#42677 `_, Sage Weil) * mon/MgrStatMonitor: do not spam subscribers (mgr) with service_map (`pr#44722 `_, Sage Weil) * mon/MgrStatMonitor: ignore MMgrReport from non-active mgr (`pr#43861 `_, Sage Weil) * mon/OSDMonitor: avoid null dereference if stats are not available (`pr#44700 `_, Josh Durgin) * mon: prevent new sessions during shutdown (`pr#44544 `_, Sage Weil) * msg/async: allow connection reaping to be tuned; fix cephfs test (`pr#43310 `_, Sage Weil, Gerald Yang) * msgr/async: fix unsafe access in unregister_conn() (`pr#43325 `_, Sage Weil, Gerald Yang) * os/bluestore/AvlAllocator: introduce bluestore_avl_alloc_ff_max\_\* options (`pr#43747 `_, Kefu Chai, Mauricio Faria de Oliveira, Adam Kupczyk, Xue Yantao) * os/bluestore: _do_write_small fix head_pad (`pr#43757 `_, dheart) * os/bluestore: avoid premature onode release (`pr#44724 `_, Igor Fedotov) * os/bluestore: cap omap naming scheme upgrade transactoin (`pr#42958 `_, Adam Kupczyk, Igor Fedotov) * os/bluestore: fix additional errors during missed shared blob repair (`pr#43887 `_, Igor Fedotov) * os/bluestore: fix writing to invalid offset when repairing (`pr#43885 `_, Igor Fedotov) * os/bluestore: list obj which equals to pend (`pr#44978 `_, Mykola Golub, Kefu Chai) * os/bluestore: make shared blob fsck much less RAM-greedy (`pr#44614 `_, Igor Fedotov) * os/bluestore: use proper prefix when removing undecodable Share Blob (`pr#43883 `_, Igor Fedotov) * osd/OSDMap.cc: clean up pg_temp for nonexistent pgs (`pr#44097 `_, Cory Snyder) * osd/PeeringState: separate history's pruub from pg's (`pr#44585 `_, Sage Weil) * osd: fix 'ceph osd stop ' doesn't take effect (`pr#43962 `_, tan changzhi) * osd: fix partial recovery become whole object recovery after restart osd (`pr#44165 `_, Jianwei Zhang) * osd: re-cache peer_bytes on every peering state activate (`pr#43438 `_, Mykola Golub) * osd: set r only if succeed in FillInVerifyExtent (`pr#44174 `_, yanqiang-ux) * osdc: add set_error in BufferHead, when split set_error to right (`pr#44726 `_, jiawd) * pybind/mgr/balancer: define Plan.{dump,show}() (`pr#43965 `_, Kefu Chai) * qa/ceph-ansible: Bump OS version for centos (`pr#43658 `_, Brad Hubbard) * qa/ceph-ansible: Pin to last compatible stable release (`pr#43557 `_, Brad Hubbard) * qa/distros: Remove stale kubic distros (`pr#43788 `_, Sebastian Wagner) * qa/mgr/dashboard/test_pool: don't check HEALTH_OK (`pr#43441 `_, Ernesto Puerta) * qa/rgw: Fix vault token file access.case (`issue#51539 `_, `pr#43963 `_, Marcus Watts) * qa/rgw: bump tempest version to resolve dependency issue (`pr#43967 `_, Casey Bodley) * qa/rgw: octopus branch targets ceph-octopus branch of java_s3tests (`pr#43810 `_, Casey Bodley) * qa/run-tox-mgr-dashboard: Do not write to /tmp/test_sanitize_password… (`pr#44728 `_, Kevin Zhao) * qa/run_xfstests_qemu.sh: stop reporting success without actually running any tests (`pr#44595 `_, Ilya Dryomov) * qa/suites/rados/cephadm: use centos 8.stream (`pr#44929 `_, Adam King, Sage Weil) * qa: account for split of the kclient "metrics" debugfs file (`pr#44270 `_, Jeff Layton, Xiubo Li) * qa: miscellaneous perf suite fixes (`pr#44254 `_, Neha Ojha) * qa: remove centos8 from supported distros (`pr#44864 `_, Casey Bodley, Sage Weil) * rbd-mirror: fix mirror image removal (`pr#43663 `_, Arthur Outhenin-Chalandre) * rbd-mirror: fix races in snapshot-based mirroring deletion propagation (`pr#44753 `_, Ilya Dryomov) * rbd: add missing switch arguments for recognition by get_command_spec() (`pr#44741 `_, Ilya Dryomov) * rgw/beast: optimizations for request timeout (`pr#43961 `_, Mark Kogan, Casey Bodley) * rgw/rgw_rados: make RGW request IDs non-deterministic (`pr#43696 `_, Cory Snyder) * rgw: clear buckets before calling list_buckets() (`pr#43381 `_, Nikhil Kshirsagar) * rgw: disable prefetch in rgw_file to fix 3x read amplification (`pr#44170 `_, Kajetan Janiak) * rgw: fix `bi put` not using right bucket index shard (`pr#44167 `_, J. Eric Ivancich) * rgw: fix bucket purge incomplete multipart uploads (`pr#43863 `_, J. Eric Ivancich) * rgw: user stats showing 0 value for "size_utilized" and "size_kb_utilized" fields (`pr#44172 `_, J. Eric Ivancich) * rgwlc: remove lc entry on bucket delete (`pr#44730 `_, Matt Benjamin) * rpm, debian: move smartmontools and nvme-cli to ceph-base (`pr#44177 `_, Yaarit Hatuka) v15.2.15 Octopus ================ This is the 15th backport release in the Octopus series. We recommend all users update to this release. Notable Changes --------------- * The default value of `osd_client_message_cap` has been set to 256, to provide better flow control by limiting maximum number of in-flight client requests. * A new ceph-erasure-code-tool has been added to help manually recover an object from a damaged PG. Changelog --------- * auth,mon: don't log "unable to find a keyring" error when key is given (`pr#43312 `_, Ilya Dryomov) * ceph-monstore-tool: use a large enough paxos/{first,last}_committed (`issue#38219 `_, `pr#43263 `_, Kefu Chai) * ceph-volume/tests: retry when destroying osd (`pr#42547 `_, Guillaume Abrioux) * ceph-volume: disable cache for blkid calls (`pr#41115 `_, Rafał Wądołowski) * ceph-volume: fix batch report and respect ceph.conf config values (`pr#41715 `_, Andrew Schoen) * ceph-volume: fix lvm activate --all --no-systemd (`pr#43268 `_, Dimitri Savineau) * ceph-volume: fix lvm activate arguments (`pr#43117 `_, Dimitri Savineau) * ceph-volume: fix lvm migrate without args (`pr#43111 `_, Dimitri Savineau) * ceph-volume: fix raw list with logical partition (`pr#43088 `_, Guillaume Abrioux, Dimitri Savineau) * ceph-volume: lvm batch: fast_allocations(): avoid ZeroDivisionError (`pr#42494 `_, Jonas Zeiger) * ceph-volume: pvs --noheadings replace pvs --no-heading (`pr#43077 `_, FengJiankui) * ceph-volume: remove --all ref from deactivate help (`pr#43097 `_, Dimitri Savineau) * ceph-volume: support no_systemd with lvm migrate (`pr#43092 `_, Dimitri Savineau) * ceph-volume: work around phantom atari partitions (`pr#42752 `_, Blaine Gardner) * ceph.spec: selinux scripts respect CEPH_AUTO_RESTART_ON_UPGRADE (`pr#43234 `_, Dan van der Ster) * cephadm: add thread ident to log messages (`pr#43133 `_, Michael Fritch) * cephadm: default to quay.io, not docker.io (`pr#42533 `_, Sage Weil) * cephadm: use quay, not docker (`pr#43094 `_, Sage Weil, Juan Miguel Olmo Martínez) * cmake: Replace boost download url (`pr#42694 `_, Rafał Wądołowski) * cmake: s/Python_EXECUTABLE/Python3_EXECUTABLE/ (`pr#43265 `_, Michael Fritch) * common/buffer: fix SIGABRT in rebuild_aligned_size_and_memory (`pr#42975 `_, Yin Congmin) * common/options: Set osd_client_message_cap to 256 (`pr#42616 `_, Mark Nelson) * doc/ceph-volume: add lvm migrate/new-db/new-wal (`pr#43090 `_, Dimitri Savineau) * Don't persist report data (`pr#42670 `_, Brad Hubbard) * krbd: escape udev_enumerate_add_match_sysattr values (`pr#42968 `_, Ilya Dryomov) * mgr/cephadm: pass --container-init to cephadm if specified (`pr#42666 `_, Tim Serong) * mgr/dashboard: cephadm e2e start script: add --expanded option (`pr#42794 `_, Alfonso Martínez) * mgr/dashboard: deprecated variable usage in Grafana dashboards (`pr#43189 `_, Patrick Seidensal) * mgr/dashboard: Incorrect MTU mismatch warning (`pr#43186 `_, Aashish Sharma) * mgr/dashboard: stats=false not working when listing buckets (`pr#42892 `_, Avan Thakkar) * mgr/influx: use "N/A" for unknown hostname (`pr#43369 `_, Kefu Chai) * mgr/prometheus: Fix metric types from gauge to counter (`pr#42674 `_, Patrick Seidensal) * mon/OSDMonitor: account for PG merging in epoch_by_pg accounting (`pr#42837 `_, Dan van der Ster) * mon/PGMap: remove DIRTY field in `ceph df detail` when cache tiering is not in use (`pr#42862 `_, Deepika Upadhyay) * mon: return -EINVAL when handling unknown option in 'ceph osd pool get' (`pr#43266 `_, Zhao Cuicui) * monitoring/grafana/cluster: use per-unit max and limit values (`pr#42675 `_, David Caro) * monitoring: fix Physical Device Latency unit (`pr#42676 `_, Seena Fallah) * os/bluestore: accept undecodable multi-block bluefs transactions on log (`pr#43024 `_, Igor Fedotov) * os/bluestore: fix bluefs migrate command (`pr#43140 `_, Igor Fedotov) * os/bluestore: fix using incomplete bluefs log when dumping it (`pr#43008 `_, Igor Fedotov) * osd/OSD: mkfs need wait for transcation completely finish (`pr#43418 `_, Chen Fan) * pybind/rbd: fix mirror_image_get_status (`pr#42971 `_, Ilya Dryomov, Will Smith) * qa/mgr/dashboard: add extra wait to test (`pr#43352 `_, Ernesto Puerta) * qa/suites/rados: use centos_8.3_container_tools_3.0.yaml (`pr#43102 `_, Sebastian Wagner) * qa/tests: advanced version to 15.2.14 to match the latest release (`pr#42761 `_, Yuri Weinstein) * qa/workunits/mon/test_mon_config_key: use subprocess.run() instead of proc.communicate() (`pr#42498 `_, Kefu Chai) * rbd-mirror: add perf counters to snapshot replayed (`pr#42986 `_, Arthur Outhenin-Chalandre) * rbd-mirror: fix potential async op tracker leak in start_image_replayers (`pr#42978 `_, Mykola Golub) * rbd-mirror: unbreak one-way snapshot-based mirroring (`pr#43314 `_, Ilya Dryomov) * rgw : add check for tenant provided in RGWCreateRole (`pr#43270 `_, caolei) * rgw: avoid infinite loop when deleting a bucket (`issue#49206 `_, `pr#43272 `_, Jeegn Chen) * rgw: fail as expected when set/delete-bucket-website attempted on a non-exis… (`pr#43424 `_, xiangrui meng) * rgw: fix sts memory leak (`pr#43349 `_, yuliyang_yewu) * rgw: remove quota soft threshold (`pr#43271 `_, Zulai Wang) * rgw: when deleted obj removed in versioned bucket, extra del-marker added (`pr#43273 `_, J. Eric Ivancich) * run-make-check.sh: Increase failure output log size (`pr#42849 `_, David Galloway) * tools/erasure-code: new tool to encode/decode files (`pr#43407 `_, Mykola Golub) v15.2.14 Octopus ================ This is the 14th backport release in the Octopus series. We recommend all users update to this release. Notable Changes --------------- * RGW: It is possible to specify ssl options and ciphers for beast frontend now. The default ssl options setting is "no_sslv2:no_sslv3:no_tlsv1:no_tlsv1_1". If you want to return back the old behavior add 'ssl_options=' (empty) to ``rgw frontends`` configuration. * CephFS: old clusters (pre-Jewel) that did not use CephFS have legacy data structures in the ceph-mon stores. These structures are not understood by Pacific monitors. With Octopus v15.2.14, the monitors have been taught to flush and trim these old structures out in preparation for an upgrade to Pacific or Quincy. For more information, see `Issue 51673 `. * `ceph-mgr-modules-core` debian package does not recommend `ceph-mgr-rook` anymore. As the latter depends on `python3-numpy` which cannot be imported in different Python sub-interpreters multi-times if the version of `python3-numpy` is older than 1.19. Since `apt-get` installs the `Recommends` packages by default, `ceph-mgr-rook` was always installed along with `ceph-mgr` debian package as an indirect dependency. If your workflow depends on this behavior, you might want to install `ceph-mgr-rook` separately. * Several bug fixes in BlueStore, including a fix for an unexpected ENOSPC bug in Avl/Hybrid allocators. * Includes a fix for a bug that affects recovery below *min_size* for EC pools. Changelog --------- * bind on loopback address if no other addresses are available (`pr#42478 `_, Kefu Chai, Matthew Oliver) * bluestore: use string_view and strip trailing slash for dir listing (`pr#41757 `_, Jonas Jelten, Kefu Chai) * ceph-volume/tests: update ansible environment variables in tox (`pr#42491 `_, Dimitri Savineau) * ceph-volume: Consider /dev/root as mounted (`pr#41584 `_, David Caro) * ceph-volume: implement bluefs volume migration (`pr#42377 `_, Igor Fedotov, Kefu Chai) * ceph: ignore BrokenPipeError when printing help (`pr#41586 `_, Ernesto Puerta) * cephadm: fix escaping/quoting of stderr-prefix arg for ceph daemons (`pr#40948 `_, Michael Fritch, Sage Weil) * cephadm: fix port_in_use when IPv6 is disabled (`pr#41602 `_, Patrick Seidensal) * cephfs: client: add ability to lookup snapped inodes by inode number (`pr#40768 `_, Jeff Layton, Xiubo Li) * cls/rgw: look for plain entries in non-ascii plain namespace too (`pr#41775 `_, Mykola Golub) * cmake: build static libs if they are internal ones (`pr#39904 `_, Kefu Chai) * crush/crush: ensure alignof(crush_work_bucket) is 1 (`pr#41622 `_, Kefu Chai) * debian/control: ceph-mgr-modules-core does not Recommend ceph-mgr-rook (`pr#41878 `_, Kefu Chai) * doc/rados/operations: s/max_misplaced/target_max_misplaced_ratio/ (`pr#41624 `_, Kefu Chai) * librbd: don't stop at the first unremovable image when purging (`pr#41663 `_, Ilya Dryomov) * librbd: global config overrides do not apply to in-use images (`pr#41763 `_, Jason Dillaman) * make-dist: refuse to run if script path contains a colon (`pr#41087 `_, Nathan Cutler) * mds: avoid journaling overhead for setxattr("ceph.dir.subvolume") for no-op case (`pr#41996 `_, Patrick Donnelly) * mds: completed_requests -> num_completed_requests and dump num_completed_flushes (`pr#41625 `_, Dan van der Ster) * mds: fix cpu_profiler asok crash (`pr#41767 `_, liu shi) * mds: place the journaler pointer under the mds_lock (`pr#41626 `_, Xiubo Li) * MDSMonitor: monitor crash after upgrade from ceph 15.2.13 to 16.2.4 (`pr#42537 `_, Patrick Donnelly) * mds: reject lookup ino requests for mds dirs (`pr#40782 `_, Xiubo Li, Patrick Donnelly) * mgr/DaemonServer.cc: prevent mgr crashes caused by integer underflow that is triggered by large increases to pg_num/pgp_num (`pr#41764 `_, Cory Snyder) * mgr/DaemonServer: skip redundant update of pgp_num_actual (`pr#42420 `_, Dan van der Ster) * mgr/Dashboard: Remove erroneous elements in hosts-overview Grafana dashboard (`pr#41649 `_, Malcolm Holmes) * mgr/cephadm: fix prometheus alerts (`pr#41660 `_, Paul Cuzner, Sage Weil, Patrick Seidensal) * mgr/dashboard: Add configurable MOTD or wall notification (`pr#42412 `_, Volker Theile) * mgr/dashboard: Fix bucket name input allowing space in the value (`pr#42241 `_, Nizamudeen A) * mgr/dashboard: RGW buckets async validator performance enhancement and name constraints (`pr#42123 `_, Nizamudeen A) * mgr/dashboard: User database migration has been cut out (`pr#42142 `_, Volker Theile) * mgr/dashboard: disable NFSv3 support in dashboard (`pr#41199 `_, Volker Theile) * mgr/dashboard: fix API docs link (`pr#41508 `_, Avan Thakkar) * mgr/dashboard: fix OSD out count (`pr#42154 `_, 胡玮文) * mgr/dashboard: fix OSDs Host details/overview grafana graphs (`issue#49769 `_, `pr#41530 `_, Alfonso Martínez, Michael Wodniok) * mgr/dashboard: fix bucket objects and size calculations (`pr#41647 `_, Avan Thakkar) * mgr/dashboard: fix for right sidebar nav icon not clickable (`pr#42015 `_, Aaryan Porwal) * mgr/dashboard: run cephadm-backend e2e tests with KCLI (`pr#42243 `_, Alfonso Martínez) * mgr/dashboard: show partially deleted RBDs (`pr#41887 `_, Tatjana Dehler) * mgr/telemetry: pass leaderboard flag even w/o ident (`pr#41870 `_, Sage Weil) * mgr: do not load disabled modules (`pr#41617 `_, Kefu Chai) * mon/MonClient: tolerate a rotating key that is slightly out of date (`pr#41449 `_, Ilya Dryomov) * mon/OSDMonitor: drop stale failure_info even if can_mark_down() (`pr#41618 `_, Kefu Chai) * mon: load stashed map before mkfs monmap (`pr#41621 `_, Dan van der Ster) * os/bluestore: Remove possibility of replay log and file inconsistency (`pr#42374 `_, Adam Kupczyk) * os/bluestore: compact db after bulk omap naming upgrade (`pr#42375 `_, Igor Fedotov) * os/bluestore: fix erroneous SharedBlob record removal during repair (`pr#42373 `_, Igor Fedotov) * os/bluestore: fix unexpected ENOSPC in Avl/Hybrid allocators (`pr#41658 `_, Igor Fedotov) * os/bluestore: introduce multithireading sync for bluestore's repairer (`pr#41613 `_, Igor Fedotov) * os/bluestore: tolerate zero length for allocators' init\_[add/rm]_free() (`pr#41612 `_, Igor Fedotov) * osd/PG.cc: handle removal of pgmeta object (`pr#41623 `_, Neha Ojha) * osd/PeeringState: fix acting_set_writeable min_size check (`pr#41609 `_, Samuel Just) * osd/osd_type: use f->dump_unsigned() when appropriate (`pr#42257 `_, Kefu Chai) * osd: clear data digest when write_trunc (`pr#41620 `_, Zengran Zhang) * osd: fix scrub reschedule bug (`pr#41972 `_, wencong wan) * osd: log snaptrim message to dout (`pr#42484 `_, Arthur Outhenin-Chalandre) * osd: move down peers out from peer_purged (`pr#42239 `_, Mykola Golub) * pacific: pybind/ceph_volume_client: stat on empty string (`pr#42161 `_, Patrick Donnelly) * qa/\*/test_envlibrados_for_rocksdb.sh: install libarchive-3.3.3 (`pr#42421 `_, Neha Ojha) * qa/cephadm/upgrade: use v15.2.9 for cephadm tests (`pr#41568 `_, Deepika Upadhyay) * qa/config/rados: add dispatch delay testing params (`pr#42180 `_, Deepika Upadhyay) * qa/distros: move to latest version on supported distro's (`pr#41478 `_, Josh Durgin, Yuri Weinstein, Deepika Upadhyay, Sage Weil, Kefu Chai, Patrick Donnelly, rakeshgm) * qa/suites/rados/perf: pin to 18.04 (`pr#41922 `_, Neha Ojha) * qa/suites/rados: add simultaneous scrubs to the thrasher (`pr#42422 `_, Ronen Friedman) * qa/tasks/qemu: precise repos have been archived (`pr#41642 `_, Ilya Dryomov) * qa/upgrade: disable update_features test_notify with older client as lockowner (`pr#41511 `_, Deepika Upadhyay) * qa/workunits/rbd: use bionic version of qemu-iotests for focal (`pr#42025 `_, Ilya Dryomov) * rbd-mirror: fix segfault in snapshot replayer shutdown (`pr#41502 `_, Arthur Outhenin-Chalandre) * rbd: retrieve global config overrides from the MONs (`pr#41836 `_, Ilya Dryomov, Jason Dillaman) * rgw : add check empty for sync url (`pr#41766 `_, caolei) * rgw/amqp/kafka: prevent concurrent shutdowns from happening (`pr#40381 `_, Yuval Lifshitz) * rgw/amqp/test: fix mock prototype for librabbitmq-0.11.0 (`pr#41418 `_, Yuval Lifshitz) * rgw/notifications: delete bucket notification object when empty (`pr#41412 `_, Yuval Lifshitz) * rgw/rgw_file: Fix the return value of read() and readlink() (`pr#41416 `_, Dai zhiwei, luo rixin) * rgw/sts: read_obj_policy() consults iam_user_policies on ENOENT (`pr#41415 `_, Casey Bodley) * rgw: Backport 51674 to Octopus (`pr#42347 `_, Adam C. Emerson) * rgw: Improve error message on email id reuse (`pr#41784 `_, Ponnuvel Palaniyappan) * rgw: allow rgw-orphan-list to process multiple data pools (`pr#41417 `_, J. Eric Ivancich) * rgw: allow to set ssl options and ciphers for beast frontend (`pr#42368 `_, Mykola Golub) * rgw: check object locks in multi-object delete (`issue#47586 `_, `pr#41031 `_, Mark Houghton) * rgw: fix bucket object listing when marker matches prefix (`pr#41413 `_, J. Eric Ivancich) * rgw: fix segfault related to explicit object manifest handling (`pr#41420 `_, Mark Kogan) * rgw: limit rgw_gc_max_objs to RGW_SHARDS_PRIME_1 (`pr#40383 `_, Rafał Wądołowski) * rgw: qa/tasks/barbican.py: fix year2021 problem (`pr#40385 `_, Marcus Watts) * rgw: radoslist incomplete multipart parts marker (`pr#40820 `_, J. Eric Ivancich) * rgw: require bucket name in bucket chown (`pr#41765 `_, Zulai Wang) * rgw: send headers of quota settings (`pr#41419 `_, Or Friedmann) * rpm: drop use of $FIRST_ARG in ceph-immutable-object-cache (`pr#42509 `_, Nathan Cutler) * rpm: three spec file cleanups (`pr#42440 `_, Nathan Cutler, Franck Bui) * test: bump DecayCounter.steady acceptable error (`pr#41619 `_, Patrick Donnelly) v15.2.13 Octopus ================ This is the 13th backport release in the Octopus series. We recommend all users update to this release. Notable Changes --------------- * RADOS: Ability to dynamically adjust trimming rate in the monitor and several other bug fixes. * A long-standing bug that prevented 32-bit and 64-bit client/server interoperability under msgr v2 has been fixed. In particular, mixing armv7l (armhf) and x86_64 or aarch64 servers in the same cluster now works. Changelog --------- * blk/kernel: fix io_uring got (4) Interrupted system call (`pr#39899 `_, Yanhu Cao) * ceph.spec.in: Enable tcmalloc on IBM Power and Z (`pr#39487 `_, Nathan Cutler, Yaakov Selkowitz) * cephadm: `cephadm ls` broken for SUSE downstream alertmanager container (`pr#39802 `_, Patrick Seidensal) * cephadm: Allow to use paths in all <_devices> drivegroup sections (`pr#40838 `_, Juan Miguel Olmo Martínez) * cephadm: add docker.service dependency in systemd units (`pr#39804 `_, Sage Weil) * cephadm: allow redeploy of daemons in error state if container running (`pr#39717 `_, Adam King) * cephadm: fix failure when using --apply-spec and --shh-user (`pr#40737 `_, Daniel Pivonka) * cephadm: run containers using `--init` (`pr#39914 `_, Michael Fritch, Sage Weil) * cephfs: client: only check pool permissions for regular files (`pr#40779 `_, Xiubo Li) * cephfs: client: wake up the front pos waiter (`pr#40771 `_, Xiubo Li) * client: fire the finish_cap_snap() after buffer being flushed (`pr#40778 `_, Xiubo Li) * cmake: build static libs if they are internal ones (`pr#40789 `_, Kefu Chai) * cmake: define BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT globaly (`pr#40784 `_, Kefu Chai) * common/buffer: adjust align before calling posix_memalign() (`pr#41247 `_, Ilya Dryomov) * common/ipaddr: Allow binding on lo (`pr#39343 `_, Thomas Goirand) * common/ipaddr: skip loopback interfaces named 'lo' and test it (`pr#40424 `_, Dan van der Ster) * common/mempool: Improve mempool shard selection (`pr#39978 `_, singuliere, Adam Kupczyk) * common/options/global.yaml.in: increase default value of bluestore_cache_trim_max_skip_pinned (`pr#40919 `_, Neha Ojha) * common/options: bluefs_buffered_io=true by default (`pr#40392 `_, Dan van der Ster) * common: Fix assertion when disabling and re-enabling clog_to_monitors (`pr#39935 `_, Gerald Yang) * common: remove log_early configuration option (`pr#40550 `_, Changcheng Liu) * crush/CrushLocation: do not print logging message in constructor (`pr#40791 `_, Alex Wu) * crush/CrushWrapper: update shadow trees on update_item() (`pr#39919 `_, Sage Weil) * debian/ceph-common.postinst: do not chown cephadm log dirs (`pr#40275 `_, Sage Weil) * doc/cephfs/nfs: Add note about cephadm NFS-Ganesha daemon port (`pr#40777 `_, Varsha Rao) * doc/cephfs/nfs: Add rook pod restart note, export and log block example (`pr#40766 `_, Varsha Rao) * doc: snap-schedule documentation (`pr#40775 `_, Jan Fajerski) * install-deps.sh: remove existing ceph-libboost of different version (`pr#40286 `_, Kefu Chai) * krbd: make sure the device node is accessible after the mapping (`pr#39968 `_, Ilya Dryomov) * librbd/api: avoid retrieving more than max mirror image info records (`pr#39964 `_, Jason Dillaman) * librbd/io: conditionally disable move optimization (`pr#39958 `_, Jason Dillaman) * librbd/io: send alloc_hint when compression hint is set (`pr#40386 `_, Jason Dillaman) * librbd/mirror/snapshot: avoid UnlinkPeerRequest with a unlinked peer (`pr#41302 `_, Arthur Outhenin-Chalandre) * librbd: allow interrupted trash move request to be restarted (`pr#40387 `_, Jason Dillaman) * librbd: explicitly disable readahead for writearound cache (`pr#39962 `_, Jason Dillaman) * librbd: refuse to release exclusive lock when removing (`pr#39966 `_, Ilya Dryomov) * mds: fix race of fetching large dirfrag (`pr#40774 `_, Erqi Chen) * mds: trim cache regularly for standby-replay (`pr#40743 `_, Xiubo Li, Patrick Donnelly) * mds: update defaults for recall configs (`pr#40764 `_, Patrick Donnelly) * mgr/PyModule: put mgr_module_path before Py_GetPath() (`pr#40534 `_, Kefu Chai) * mgr/cephadm: alias rgw-nfs -> nfs (`pr#40009 `_, Michael Fritch) * mgr/cephadm: on ssh connection error, advice chmod 0600 (`pr#40823 `_, Sebastian Wagner) * mgr/dashboard: Add badge to the Label column in Host List (`pr#40433 `_, Nizamudeen A) * mgr/dashboard: Device health status is not getting listed under hosts section (`pr#40495 `_, Aashish Sharma) * mgr/dashboard: Fix for alert notification message being undefined (`pr#40589 `_, Nizamudeen A) * mgr/dashboard: Fix for broken User management role cloning (`pr#40399 `_, Nizamudeen A) * mgr/dashboard: OSDs placement text is unreadable (`pr#41124 `_, Aashish Sharma) * mgr/dashboard: Remove redundant pytest requirement (`pr#40657 `_, Kefu Chai) * mgr/dashboard: Remove username and password from request body (`pr#41057 `_, Nizamudeen A) * mgr/dashboard: Remove username, password fields from Manager Modules/dashboard,influx (`pr#40491 `_, Aashish Sharma) * mgr/dashboard: Revoke read-only user's access to Manager modules (`pr#40649 `_, Nizamudeen A) * mgr/dashboard: Splitting tenant$user when creating rgw user (`pr#40297 `_, Nizamudeen A) * mgr/dashboard: additional logging to SMART data retrieval (`pr#37972 `_, Kiefer Chang, Patrick Seidensal) * mgr/dashboard: allow getting fresh inventory data from the orchestrator (`pr#41387 `_, Kiefer Chang) * mgr/dashboard: debug nodeenv hangs (`pr#40816 `_, Ernesto Puerta) * mgr/dashboard: filesystem pool size should use stored stat (`pr#41020 `_, Avan Thakkar) * mgr/dashboard: fix base-href: revert it to previous approach (`pr#41252 `_, Avan Thakkar) * mgr/dashboard: fix dashboard instance ssl certificate functionality (`pr#40001 `_, Avan Thakkar) * mgr/dashboard: improve telemetry opt-in reminder notification message (`pr#40894 `_, Waad Alkhoury) * mgr/dashboard: test prometheus rules through promtool (`pr#39987 `_, Aashish Sharma, Kefu Chai) * mgr/progress: ensure progress stays between [0,1] (`pr#41311 `_, Dan van der Ster) * mgr/rook: Add timezone info (`pr#39716 `_, Varsha Rao) * mgr/telemetry: check if 'ident' channel is active (`pr#39922 `_, Sage Weil, Yaarit Hatuka) * mgr/volumes: Retain suid guid bits in clone (`pr#40268 `_, Kotresh HR) * mgr: fix deadlock in ActivePyModules::get_osdmap() (`pr#39341 `_, peng jiaqi) * mgr: relax osd ok-to-stop condition on degraded pgs (`pr#39887 `_, Xuehan Xu) * mgr: update mon metadata when monmap is updated (`pr#39219 `_, Kefu Chai) * mon/ConfigMap: fix stray option leak (`pr#40298 `_, Sage Weil) * mon/MgrMonitor: populate available_modules from promote_standby() (`pr#40757 `_, Sage Weil) * mon/MonClient: reset authenticate_err in _reopen_session() (`pr#41017 `_, Ilya Dryomov) * mon/OSDMonitor: drop stale failure_info after a grace period (`pr#40558 `_, Kefu Chai) * mon/OSDMonitor: fix safety/idempotency of {set,rm}-device-class (`pr#40276 `_, Sage Weil) * mon: Modifying trim logic to change paxos_service_trim_max dynamically (`pr#40699 `_, Aishwarya Mathuria) * mon: check mdsmap is resizeable before promoting standby-replay (`pr#40783 `_, Patrick Donnelly) * monmaptool: Don't call set_port on an invalid address (`pr#40758 `_, Brad Hubbard, Kefu Chai) * mount.ceph: collect v2 addresses for non-legacy ms_mode options (`pr#40763 `_, Jeff Layton) * os/FileStore: don't propagate split/merge error to "create"/"remove" (`pr#40988 `_, Mykola Golub) * os/FileStore: fix to handle readdir error correctly (`pr#41237 `_, Misono Tomohiro) * os/bluestore/BlueFS: do not _flush_range deleted files (`pr#40793 `_, weixinwei) * os/bluestore/BlueFS: use iterator_impl::copy instead of bufferlist::c_str() to avoid bufferlist rebuild (`pr#39884 `_, weixinwei) * os/bluestore: Make Onode::put/get resiliant to split_cache (`pr#40441 `_, Igor Fedotov, Adam Kupczyk) * os/bluestore: be more verbose in _open_super_meta by default (`pr#41061 `_, Igor Fedotov) * osd/OSDMap: An empty bucket or OSD is not an error (`pr#39970 `_, Brad Hubbard) * osd: add osd_fast_shutdown_notify_mon option (default false) (`issue#46978 `_, `pr#40013 `_, Mauricio Faria de Oliveira) * osd: compute OSD's space usage ratio via raw space utilization (`pr#41112 `_, Igor Fedotov) * osd: do not dump an osd multiple times (`pr#40788 `_, Xue Yantao) * osd: don't assert in-flight backfill is always in recovery list (`pr#41321 `_, Mykola Golub) * osd: fix potential null pointer dereference when sending ping (`pr#40277 `_, Mykola Golub) * osd: propagate base pool application_metadata to tiers (`pr#40274 `_, Sage Weil) * packaging: require ceph-common for immutable object cache daemon (`pr#40666 `_, Ilya Dryomov) * pybind/ceph_argparse.py: use a safe value for timeout (`pr#40476 `_, Kefu Chai) * pybind/cephfs: DT_REG and DT_LNK values are wrong (`pr#40770 `_, Varsha Rao) * pybind/mgr/balancer/module.py: assign weight-sets to all buckets before balancing (`pr#40127 `_, Neha Ojha) * pybind/mgr/dashboard: bump flake8 to 3.9.0 (`pr#40492 `_, Kefu Chai, Volker Theile) * qa/\*/thrash_cache_writeback_proxy_none.yaml: disable writeback overlay tests (`pr#39578 `_, Neha Ojha) * qa/ceph-ansible: Update ansible version and ceph_stable_release (`pr#40945 `_, Brad Hubbard) * qa/suites/krbd: address recent issues caused by newer kernels (`pr#40065 `_, Ilya Dryomov) * qa/suites/rados/cephadm/upgrade: change starting version by distro (`pr#40364 `_, Sage Weil) * qa/suites/rados/cephadm: rm ubuntu_18.04_podman (`pr#39949 `_, Sebastian Wagner) * qa/suites/rados/singletone: whitelist MON_DOWN when injecting msgr errors (`pr#40138 `_, Sage Weil) * qa/tasks/mgr/test_progress.py: remove calling of _osd_in_out_completed_events_count() (`pr#40225 `_, Kamoltat) * qa/tasks/mgr/test_progress: fix wait_until_equal (`pr#39360 `_, Kamoltat) * qa/tasks/vstart_runner.py: start max required mgrs (`pr#40792 `_, Alfonso Martínez) * qa/tests: advanced octopus initial version to 15.2.10 (`pr#41228 `_, Yuri Weinstein) * qa: add sleep for blocklisting to take effect (`pr#40773 `_, Patrick Donnelly) * qa: bump osd heartbeat grace for ffsb workload (`pr#40767 `_, Patrick Donnelly) * qa: delete all fs during tearDown (`pr#40772 `_, Patrick Donnelly) * qa: for the latest kclient it will also return EIO (`pr#40765 `_, Xiubo Li) * qa: krbd_blkroset.t: update for separate hw and user read-only flags (`pr#40211 `_, Ilya Dryomov) * rbd-mirror: bad state and crashes in snapshot-based mirroring (`pr#39961 `_, Jason Dillaman) * rbd-mirror: delay update snapshot mirror image state (`pr#39967 `_, Jason Dillaman) * rbd-mirror: fix UB while registering perf counters (`pr#40790 `_, Arthur Outhenin-Chalandre) * rbd/bench: include used headers (`pr#40388 `_, Kefu Chai) * rgw/amqp: fix race condition in amqp manager initialization (`pr#40382 `_, Yuval Lifshitz) * rgw/http: add timeout to http client (`pr#40384 `_, Yuval Lifshitz) * rgw/notification: support GetTopicAttributes API (`pr#40812 `_, Yuval Lifshitz) * rgw/notification: trigger notifications on changes from any user (`pr#40029 `_, Yuval Lifshitz) * rgw: Use correct bucket info when put or get large object with swift (`pr#40296 `_, zhiming zhang, yupeng chen) * rgw: add MD5 in forward_request (`pr#39758 `_, caolei) * rgw: allow rgw-orphan-list to handle intermediate files w/ binary data (`pr#39766 `_, J. Eric Ivancich) * rgw: catch non int exception (`pr#39746 `_, caolei) * rgw: during reshard lock contention, adjust logging (`pr#41157 `_, J. Eric Ivancich) * rgw: fix sts get_session_token duration check failed (`pr#39954 `_, yuliyang_yewu) * rgw: multisite: fix single-part-MPU object etag misidentify problem (`pr#39611 `_, Yang Honggang) * rgw: objectlock: improve client error messages (`pr#40755 `_, Matt Benjamin) * rgw: return error when trying to copy encrypted object without key (`pr#40672 `_, Ilsoo Byun) * rgw: tooling to locate rgw objects with missing rados components (`pr#39785 `_, Michael Kidd, J. Eric Ivancich) * run-make-check.sh: let ctest generate XML output (`pr#40406 `_, Kefu Chai) * src/global/signal_handler.h: fix preprocessor logic for alpine (`pr#39940 `_, Duncan Bellamy) * test/rbd-mirror: fix broken ceph_test_rbd_mirror_random_write (`pr#39965 `_, Jason Dillaman) * test/rgw: test_datalog_autotrim filters out new entries (`pr#40673 `_, Casey Bodley) * test: cancelling both noscrub \*and\* nodeep-scrub (`pr#40278 `_, Ronen Friedman) * test: reduce number of threads to 32 in LibCephFS.ShutdownRace (`pr#40776 `_, Jeff Layton) * test: use std::atomic instead of volatile for cb_done var (`pr#40708 `_, Jeff Layton) * tests: ceph_test_rados_api_watch_notify: Allow for reconnect (`pr#40756 `_, Brad Hubbard) * tools/cephfs: don't bind to public_addr (`pr#40762 `_, "Yan, Zheng") * vstart.sh: disable "auth_allow_insecure_global_id_reclaim" (`pr#40958 `_, Kefu Chai) v15.2.12 Octopus ================ This is a hotfix release addressing a number of security issues and regressions. We recommend all users update to this release. Changelog --------- * mgr/dashboard: fix base-href: revert it to previous approach (`issue#50684 `_, Avan Thakkar) * mgr/dashboard: fix cookie injection issue (:ref:`CVE-2021-3509`, Ernesto Puerta) * rgw: RGWSwiftWebsiteHandler::is_web_dir checks empty subdir_name (:ref:`CVE-2021-3531`, Felix Huettner) * rgw: sanitize \r in s3 CORSConfiguration's ExposeHeader (:ref:`CVE-2021-3524`, Sergey Bobrov, Casey Bodley) v15.2.11 Octopus ================ This is the 11th bugfix release in the Octopus stable series. It addresses a security vulnerability in the Ceph authentication framework. We recommend all Octopus users upgrade. Security fixes -------------- * This release includes a security fix that ensures the global_id value (a numeric value that should be unique for every authenticated client or daemon in the cluster) is reclaimed after a network disconnect or ticket renewal in a secure fashion. Two new health alerts may appear during the upgrade indicating that there are clients or daemons that are not yet patched with the appropriate fix. To temporarily mute the health alerts around insecure clients for the duration of the upgrade, you may want to:: ceph health mute AUTH_INSECURE_GLOBAL_ID_RECLAIM 1h ceph health mute AUTH_INSECURE_GLOBAL_ID_RECLAIM_ALLOWED 1h For more information, see :ref:`CVE-2021-20288`. v15.2.10 Octopus ================ This is the 10th backport release in the Octopus series. We recommend all users update to this release. Notable Changes --------------- * The containers include an updated tcmalloc that avoids crashes seen on 15.2.9. See `issue#49618 `_ for details. * RADOS: BlueStore handling of huge(>4GB) writes from RocksDB to BlueFS has been fixed. * When upgrading from a previous cephadm release, systemctl may hang when trying to start or restart the monitoring containers. (This is caused by a change in the systemd unit to use ``type=forking``.) After the upgrade, please run:: ceph orch redeploy nfs ceph orch redeploy iscsi ceph orch redeploy node-exporter ceph orch redeploy prometheus ceph orch redeploy grafana ceph orch redeploy alertmanager Changelog --------- * octopus: .github: add workflow for adding label and milestone (`pr#39890 `_, Kefu Chai, Ernesto Puerta) * octopus: ceph-volume: Fix usage of is_lv (`pr#39220 `_, Michał Nasiadka) * octopus: ceph-volume: Update batch.py (`pr#39469 `_, shenjiatong) * octopus: ceph-volume: add some flexibility to bytes_to_extents (`pr#39271 `_, Jan Fajerski) * octopus: ceph-volume: pass --filter-for-batch from drive-group subcommand (`pr#39523 `_, Jan Fajerski) * octopus: cephadm: Delete the unnecessary error line in open_ports (`pr#39633 `_, Donggyu Park) * octopus: cephadm: fix 'inspect' and 'pull' (`pr#39715 `_, Sage Weil) * octopus: cephfs: pybind/ceph_volume_client: Update the 'volumes' key to 'subvolumes' in auth-metadata file (`pr#39906 `_, Kotresh HR) * octopus: cmake: boost>=1.74 adds BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT to radosgw (`pr#39885 `_, Casey Bodley) * octopus: librbd: allow disabling journaling for snapshot based mirroring image (`pr#39864 `_, Mykola Golub) * octopus: librbd: correct incremental deep-copy object-map inconsistencies (`pr#39577 `_, Mykola Golub, Jason Dillaman) * octopus: librbd: don't log error if get mirror status fails due to mirroring disabled (`pr#39862 `_, Mykola Golub) * octopus: librbd: use on-disk image name when storing mirror snapshot state (`pr#39866 `_, Mykola Golub) * octopus: mgr/dashboard/monitoring: upgrade Grafana version due to CVE-2020-13379 (`pr#39306 `_, Alfonso Martínez) * octopus: mgr/dashboard: CLI commands: read passwords from file (`pr#39436 `_, Ernesto Puerta, Alfonso Martínez, Juan Miguel Olmo Martínez) * octopus: mgr/dashboard: Fix for incorrect validation in rgw user form (`pr#39027 `_, Nizamudeen A) * octopus: mgr/dashboard: Fix missing root path of each session for CephFS (`pr#39868 `_, Yongseok Oh) * octopus: mgr/dashboard: Monitoring alert badge includes suppressed alerts (`pr#39512 `_, Aashish Sharma) * octopus: mgr/dashboard: add ssl verify option for prometheus and alert manager (`pr#39872 `_, Jean "henyxia" Wasilewski) * octopus: mgr/dashboard: avoid using document.write() (`pr#39527 `_, Avan Thakkar) * octopus: mgr/dashboard: delete EOF when reading passwords from file (`pr#40155 `_, Alfonso Martínez) * octopus: mgr/dashboard: fix MTU Mismatch alert (`pr#39854 `_, Aashish Sharma) * octopus: mgr/dashboard: fix issues related with PyJWT versions >=2.0.0 (`pr#39836 `_, Alfonso Martínez) * octopus: mgr/dashboard: fix tooltip for Provisioned/Total Provisioned fields (`pr#39645 `_, Avan Thakkar) * octopus: mgr/dashboard: prometheus alerting: add some leeway for package drops and errors (`pr#39507 `_, Patrick Seidensal) * octopus: mgr/dashboard: report mgr fsid (`pr#39852 `_, Ernesto Puerta) * octopus: mgr/dashboard: set security headers (`pr#39627 `_, Avan Thakkar) * octopus: mgr/dashboard: trigger alert if some nodes have a MTU different than the median value (`pr#39103 `_, Aashish Sharma) * octopus: mgr/dashboard:minimize console log traces of Ceph backend API tests (`pr#39545 `_, Aashish Sharma) * octopus: mgr/rbd_support: create mirror snapshots asynchronously (`pr#39376 `_, Mykola Golub, Kefu Chai) * octopus: mgr/rbd_support: mirror snapshot schedule should skip non-primary images (`pr#39863 `_, Mykola Golub) * octopus: mgr/volume: subvolume auth_id management and few bug fixes (`pr#39390 `_, Rishabh Dave, Patrick Donnelly, Kotresh HR, Ramana Raja) * octopus: mgr/zabbix: format ceph.[{#POOL},percent_used as float (`pr#39235 `_, Kefu Chai) * octopus: os/bluestore: Add option to check BlueFS reads (`pr#39754 `_, Adam Kupczyk) * octopus: os/bluestore: fix huge reads/writes at BlueFS (`pr#39701 `_, Jianpeng Ma, Igor Fedotov) * octopus: os/bluestore: introduce bluestore_rocksdb_options_annex config parame… (`pr#39325 `_, Igor Fedotov) * octopus: qa/suites/rados/dashboard: whitelist TELEMETRY_CHANGED (`pr#39704 `_, Sage Weil) * octopus: qa/suites/upgrade: s/whitelist/ignorelist for octopus specific tests (`pr#40074 `_, Deepika Upadhyay) * octopus: qa: use normal build for valgrind (`pr#39583 `_, Sage Weil) * octopus: rbd-mirror: reset update_status_task pointer in timer thread (`pr#39867 `_, Mykola Golub) * octopus: rgw: fix trailing null in object names of multipart reuploads (`pr#39277 `_, Casey Bodley) * octopus: rgw: radosgw-admin: clarify error when email address already in use (`pr#39662 `_, Matthew Vernon) * octopus: whitelist -> ignorelist for qa/\* only (`pr#39534 `_, Neha Ojha, Sage Weil) * qa/tests: fixed branch entry (`pr#39819 `_, Yuri Weinstein) v15.2.9 Octopus =============== This is the 9th backport release in the Octopus series. We recommend all users update to this release. Notable Changes --------------- * MGR: progress module can now be turned on/off, using the commands: ``ceph progress on`` and ``ceph progress off``. * OSD: PG removal has been optimized in this release. Changelog --------- * octopus: Do not add sensitive information in Ceph log files (`pr#38620 `_, Neha Ojha) * octopus: PendingReleaseNotes: mgr/pg_autoscaler (`pr#39393 `_, Kamoltat) * octopus: Revert "mgr/pg_autoscaler: avoid scale-down until there is pressure" (`pr#39560 `_, Neha Ojha) * octopus: bluestore: Make mempool assignment same after bufferlist rebuild (`pr#38429 `_, Adam Kupczyk) * octopus: bluestore: Support flock retry (`pr#37860 `_, wanghongxu) * octopus: bluestore: attach csum for compressed blobs (`pr#37861 `_, Igor Fedotov) * octopus: bluestore: fix "end reached" check in collection_list_legacy (`pr#38098 `_, Mykola Golub) * octopus: bluestore: provide a different name for fallback allocator (`pr#37794 `_, Igor Fedotov) * octopus: build/ops: doc: pass --use-feature=2020-resolver to pip (`pr#37859 `_, Kefu Chai) * octopus: ceph-volume: lvm/create.py: fix a typo in the help message (`pr#38425 `_, ZhenLiu94) * octopus: cephadm: Don't make sysctl spam the log file (`pr#39020 `_, Sebastian Wagner) * octopus: cephadm: Revert "spec: Podman (temporarily) requires apparmor-abstractions on suse" (`pr#37766 `_, Nathan Cutler) * octopus: cephadm: Various properties like 'last_refresh' do not contain timezone (`pr#39059 `_, Volker Theile) * octopus: cephadm: batch backport January (1) (`pr#38782 `_, Ricardo Marques, Patrick Donnelly, Ken Dreyer, Paul Cuzner, Daniel-Pivonka, Juan Miguel Olmo Martínez, Volker Theile, Sebastian Wagner, Varsha Rao, Adam King, Patrick Seidensal, Michael Fritch, Dan Mick) * octopus: cephadm: fix rgw osd cap tag (`pr#39170 `_, Patrick Donnelly) * octopus: cephadm: make "ceph orch {restart|...}" asynchronous (`pr#39018 `_, Sebastian Wagner) * octopus: cephadm: silence "Failed to evict container" log msg (`pr#39166 `_, Sebastian Wagner, Sage Weil) * octopus: cephadm: use `apt-get` for package install/update (`pr#39297 `_, Michael Fritch) * octopus: cephfs: client: add ceph.{cluster_fsid/client_id} vxattrs suppport (`pr#39000 `_, Xiubo Li) * octopus: cephfs: client: check rdonly file handle on truncate (`pr#38424 `_, Patrick Donnelly) * octopus: cephfs: client: do not use g_conf().get_val<>() in libcephfs (`pr#38466 `_, Xiubo Li) * octopus: cephfs: client: ensure we take Fs caps when fetching directory link count from cached inode (`pr#38949 `_, Jeff Layton) * octopus: cephfs: client: increment file position on _read_sync near eof (`pr#37989 `_, Patrick Donnelly) * octopus: cephfs: client: set CEPH_STAT_RSTAT mask for dir in readdir_r_cb (`pr#38947 `_, chencan) * octopus: cephfs: mds: dir->mark_new() should together with dir->mark_dirty() (`pr#38352 `_, "Yan, Zheng") * octopus: cephfs: mds: move start_files_to_recover() to recovery_done (`pr#37985 `_, Simon Gao) * octopus: cephfs: osdc: restart read on truncate/discard (`pr#37987 `_, Patrick Donnelly) * octopus: cephfs: release client dentry_lease before send caps release to mds (`pr#38349 `_, Wei Qiaomiao) * octopus: client: dump which fs is used by client for multiple-fs (`pr#38551 `_, Zhi Zhang) * octopus: cmake: add empty RPATH to ceph-diff-sorted (`pr#38847 `_, Nathan Cutler) * octopus: cmake: define BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT for Boost.Asio users (`pr#38759 `_, Kefu Chai) * octopus: cmake: detect and use sigdescr_np() if available (`pr#38951 `_, David Disseldorp) * octopus: do_cmake.sh: use python-3.9 with fedora version 33 (`pr#38943 `_, Sunny Kumar) * octopus: doc: document MDS cache configuration (`pr#38202 `_, Patrick Donnelly) * octopus: global: reexpand conf meta in child process (`pr#38340 `_, Xiubo Li) * octopus: install-deps.sh: Make powertools repo case insensitive (`pr#38808 `_, Brad Hubbard) * octopus: krbd: add support for msgr2 (kernel 5.11) (`pr#39203 `_, Ilya Dryomov) * octopus: librbd: clear implicitly enabled feature bits when creating images (`pr#39122 `_, Jason Dillaman) * octopus: librbd: fix regression in object map diff request (`pr#38455 `_, Mykola Golub, Jason Dillaman) * octopus: librbd: update hidden global config when removing pool config override (`pr#38343 `_, Jason Dillaman) * octopus: mds: dump granular cap info in mds_sessions (`pr#37362 `_, Yanhu Cao) * octopus: mds: provide altrenatives to increase the total cephfs subvolume snapshot counts to greater than the current 400 across a Cephfs volume (`pr#38553 `_, "Yan, Zheng") * octopus: mds: throttle cap acquisition via readdir (`pr#38095 `_, Kotresh HR) * octopus: mgr/ActivePyModules.cc: always release GIL before attempting to acquire a lock (`pr#38801 `_, Cory Snyder) * octopus: mgr/balancer: fix available pgs sent to calc_pg_upmaps (`pr#38337 `_, Dan van der Ster) * octopus: mgr/cephadm: fix host refresh (`pr#39532 `_, Sage Weil) * octopus: mgr/cephadm: lock multithreaded access to OSDRemovalQueue (`pr#39019 `_, Sebastian Wagner) * octopus: mgr/cephadm: raise HEALTH_WARN when cephadm daemon in 'error' state (`pr#39169 `_, Sage Weil) * octopus: mgr/cephadm: tolerate old host inventory without 'hostname' key (`pr#39167 `_, Sage Weil) * octopus: mgr/cephadm: try again calling ceph-volume without --filter-for-batch (`pr#39300 `_, Sebastian Wagner) * octopus: mgr/crash: Serialize command handling (`pr#38592 `_, Boris Ranto) * octopus: mgr/dashboard: Add clay plugin support (`pr#38489 `_, Stephan Müller) * octopus: mgr/dashboard: Create Ceph services via Orchestrator by using ServiceSpec (`pr#38888 `_, Volker Theile) * octopus: mgr/dashboard: Display a warning message in Dashboard when debug mode is enabled (`pr#38798 `_, Volker Theile) * octopus: mgr/dashboard: Drop invalid RGW client instances, improve logging (`pr#38583 `_, Volker Theile) * octopus: mgr/dashboard: Fix CRUSH map viewer VirtualScroll (`pr#38607 `_, Avan Thakkar) * octopus: mgr/dashboard: Fix for misleading "Orchestrator is not available" error (`pr#38598 `_, Nizamudeen A) * octopus: mgr/dashboard: Fixing dashboard logs e2e test (`pr#38797 `_, Nizamudeen A) * octopus: mgr/dashboard: Prevent table items from getting selected while expanding (`pr#37930 `_, Nizamudeen A) * octopus: mgr/dashboard: RGW User Form is validating disabled fields (`pr#38594 `_, Aashish Sharma) * octopus: mgr/dashboard: Temporary User Lockout if 10 Invalid Login attempts (`pr#38810 `_, Nizamudeen A) * octopus: mgr/dashboard: The /rgw/status endpoint does not check for running service (`pr#38770 `_, Volker Theile) * octopus: mgr/dashboard: Updating the inbuilt ssl providers error (`pr#38508 `_, Nizamudeen A) * octopus: mgr/dashboard: Use secure cookies to store JWT Token (`pr#39120 `_, Avan Thakkar, Aashish Sharma) * octopus: mgr/dashboard: add `--ssl` to `ng serve` (`pr#38973 `_, Tatjana Dehler) * octopus: mgr/dashboard: adjust refresh intervals of Services and Daemons (`pr#38597 `_, Kiefer Chang) * octopus: mgr/dashboard: allow selecting all daemons for Orchestrator NFS clusters (`pr#38496 `_, Kiefer Chang) * octopus: mgr/dashboard: assign flags to single OSDs (`pr#38469 `_, Tatjana Dehler) * octopus: mgr/dashboard: disable cluster selection in NFS export editing form (`pr#37969 `_, Kiefer Chang) * octopus: mgr/dashboard: display placement column in service table (`pr#38336 `_, Volker Theile) * octopus: mgr/dashboard: enable different URL for users of browser to Grafana (`pr#38761 `_, Patrick Seidensal) * octopus: mgr/dashboard: fix Reads/Writes ratio of Clients IOPS donut chart (`pr#38867 `_, Kiefer Chang) * octopus: mgr/dashboard: remove pyOpenSSL version pinning (`pr#38503 `_, Kiefer Chang) * octopus: mgr/dashboard: test_standby\* (tasks.mgr.test_dashboard.TestDashboard) failed locally (`pr#38526 `_, Volker Theile) * octopus: mgr/pg_autoscaler: avoid scale-down until there is pressure (`pr#39248 `_, Kamoltat) * octopus: mgr/progress: introduce turn off/on feature (`pr#39289 `_, kamoltat) * octopus: mgr/prometheus: Fix 'pool filling up' with >50% usage (`pr#38593 `_, Daniël Vos) * octopus: mgr/prometheus: Sync and backport prometheus fixes (`pr#38333 `_, Paul Cuzner, Boris Ranto, Kefu Chai, Ken Dreyer) * octopus: mgr/rbd_support: store global schedule without localized prefix (`pr#38342 `_, Mykola Golub) * octopus: mgr/restful: fix TypeError occurring in _gather_osds() (`issue#48488 `_, `pr#38595 `_, Jerry Pu) * octopus: mgr/volumes: Add a per subvolume trash (`pr#38612 `_, Venky Shankar, Shyamsundar Ranganathan) * octopus: mgr/volumes: Implement subvolume version v2 (`pr#36803 `_, Shyamsundar Ranganathan) * octopus: mgr: Fix for dashboard/prometheus failure due to laggy pg state (`pr#38596 `_, Alexander Sushko) * octopus: mgr: don't update osd stat which is already out (`pr#38353 `_, Zhi Zhang) * octopus: mon: paxos: Delete logger in destructor (`pr#39161 `_, Brad Hubbard) * octopus: mon: validate crush-failure-domain (`pr#38347 `_, Prashant Dhange) * octopus: monitoring: Use null yaxes min for OSD read latency (`pr#37960 `_, Seena Fallah) * octopus: msg/async/ProtocolV2: allow rxbuf/txbuf get bigger in testing, again (`pr#38267 `_, Ilya Dryomov) * octopus: ocf: add support for mapping images within an RBD namespace (`pr#39046 `_, Jason Dillaman) * octopus: os/bluestore: detect and fix "zombie" spanning blobs using fsck (`pr#39256 `_, Igor Fedotov) * octopus: os/bluestore: fix huge (>4GB) bluefs reads (`pr#39253 `_, Igor Fedotov) * octopus: os/bluestore: fix inappropriate ENOSPC from avl/hybrid allocator (`pr#38474 `_, Igor Fedotov) * octopus: os/bluestore: fix segfault on out-of-bound offset provided to claim_free_to_right() call (`pr#38428 `_, Igor Fedotov) * octopus: os/bluestore: fixing onode pinning and more (`pr#39230 `_, Adam Kupczyk, Igor Fedotov) * octopus: osd: fix bluestore bitmap allocator calculate wrong last_pos with hint (`pr#38430 `_, Xue Yantao) * octopus: osd: optimize PG removal (part1) (`pr#38477 `_, Igor Fedotov) * octopus: pybind/cephfs: fix missing terminating NULL char in readlink()'s C string (`pr#38893 `_, Tuan Hoang) * octopus: pybind/mgr/rbd_support: delay creation of progress module events (`pr#38344 `_, Jason Dillaman) * octopus: python-common/drivegroups: avoid dropping "rotational: 0" from Device Selection (`issue#49014 `_, `pr#39171 `_, Lukas Stockner) * octopus: python-common: fix test_datetime_to_str_2 on non-UTC hosts (`pr#39296 `_, Sage Weil) * octopus: qa/cephadm: Add yaml output to smoke test (`pr#39168 `_, Sebastian Wagner) * octopus: qa/mgr: mgr_test_case: raise SkipTest instead of calling skipTest() (`pr#38165 `_, Rishabh Dave) * octopus: qa/tasks/cephfs/nfs: Check if host ip is in cluster info output (`pr#39004 `_, Varsha Rao) * octopus: qa/tasks/mgr/test_progress: update test suite to check for specific progress events (`pr#38555 `_, Kamoltat) * octopus: qa/tasks/vstart_runner: do not teardown test_path if "create-cluster-only" (`pr#39540 `_, Kefu Chai) * octopus: qa/workunits/rbd: fix permission issue when removing mirror peer (`pr#38341 `_, Jason Dillaman) * octopus: qa: accept timeout argument in run_shell (`pr#38550 `_, Patrick Donnelly) * octopus: qa: ignore evicted client warnings (`pr#38422 `_, Patrick Donnelly) * octopus: qa: ignore logrotate state rename error (`pr#37690 `_, Patrick Donnelly) * octopus: qa: krbd_stable_pages_required.sh: move to stable_writes attribute (`pr#39321 `_, Ilya Dryomov) * octopus: qa: tox failures (`pr#38626 `_, Patrick Donnelly) * octopus: qa: unmount volumes before removal (`pr#38688 `_, Patrick Donnelly) * octopus: rgw/multisite: Verify if the synced object is identical to source (`pr#38981 `_, Prasad Krishnan, Casey Bodley) * octopus: rgw/rgw-admin: fixes BucketInfo for missing buckets (`pr#38184 `_, Nick Janus, caolei) * octopus: rgw: S3 Put Bucket Policy should return 204 on success (`pr#38420 `_, Matthew Oliver) * octopus: rgw: adding user related web token claims to ops log (`pr#38970 `_, Pritha Srivastava) * octopus: rgw: avoid expiration early triggering caused by overflow (`pr#38421 `_, jiahuizeng) * octopus: rgw: cls/rgw/cls_rgw.cc: fix multiple lastest version problem (`pr#38086 `_, Yang Honggang, Ruan Zitao) * octopus: rgw: cls/user: set from_index for reset stats calls (`pr#38821 `_, Mykola Golub, Abhishek Lekshmanan) * octopus: rgw: distribute cache for exclusive put (`pr#38971 `_, Or Friedmann) * octopus: rgw: fix bucket limit check fill_status warnings (`issue#40255 `_, `pr#38826 `_, Paul Emmerich) * octopus: rgw: fix invalid payload issue when serving s3website error page (`pr#38339 `_, Ilsoo Byun) * octopus: rgw: keep syncstopped flag when copying bucket shard headers (`pr#38338 `_, Ilsoo Byun) * octopus: rgw: lc: correctly dimension lc shard index vector (`pr#38824 `_, Matt Benjamin) * octopus: rgw_file: return common_prefixes in lexical order (`pr#38829 `_, Matt Benjamin) * octopus: rpm,deb: change sudoers file mode to 440 (`pr#38427 `_, David Turner) * octopus: rpm: require smartmontools on SUSE (`pr#38755 `_, Nathan Cutler) * octopus: test/run-cli-tests: use cram from github (`pr#39071 `_, Kefu Chai) * octopus: tests: qa/task/cephadm: run cephadm only on bootstrap_remote (`pr#38040 `_, Kyr Shatskyy) v15.2.8 Octopus =============== This is the 8th backport release in the Octopus series. This release fixes a security flaw in CephFS and includes a number of bug fixes. We recommend users to update to this release. Notable Changes --------------- * CVE-2020-27781 : OpenStack Manila use of ceph_volume_client.py library allowed tenant access to any Ceph credential's secret. (Kotresh Hiremath Ravishankar, Ramana Raja) * ceph-volume: The ``lvm batch`` subcommand received a major rewrite. This closed a number of bugs and improves usability in terms of size specification and calculation, as well as idempotency behaviour and disk replacement process. Please refer to https://docs.ceph.com/en/latest/ceph-volume/lvm/batch/ for more detailed information. * MON: The cluster log now logs health detail every ``mon_health_to_clog_interval``, which has been changed from 1hr to 10min. Logging of health detail will be skipped if there is no change in health summary since last known. * The ``ceph df`` command now lists the number of pgs in each pool. * The ``bluefs_preextend_wal_files`` option has been removed. * It is now possible to specify the initial monitor to contact for Ceph tools and daemons using the ``mon_host_override`` config option or ``--mon-host-override `` command-line switch. This generally should only be used for debugging and only affects initial communication with Ceph's monitor cluster. Changelog --------- * pybind/ceph_volume_client: disallow authorize on existing auth ids (Kotresh Hiremath Ravishankar, Ramana Raja) * Enable per-RBD image monitoring (`pr#37697 `_, Patrick Seidensal) * [ceph-volume]: remove unneeded call to get_devices() (`pr#37412 `_, Marc Gariepy) * bluestore: fix collection_list ordering (`pr#37048 `_, Mykola Golub) * bluestore: mempool's finer granularity + adding missed structs (`pr#37264 `_, Deepika Upadhyay, Igor Fedotov, Adam Kupczyk) * bluestore: remove preextended WAL support (`pr#37373 `_, Igor Fedotov) * ceph-volume batch: reject partitions in argparser (`pr#38280 `_, Jan Fajerski) * ceph-volume inventory: make libstoragemgmt data retrieval optional (`pr#38299 `_, Jan Fajerski) * ceph-volume: add libstoragemgmt support (`pr#36852 `_, Paul Cuzner, Satoru Takeuchi) * ceph-volume: add no-systemd argument to zap (`pr#37722 `_, wanghongxu) * ceph-volume: avoid format strings for now (`pr#37345 `_, Jan Fajerski) * ceph-volume: consume mount opt in simple activate (`pr#38014 `_, Dimitri Savineau) * ceph-volume: fix filestore/dmcrypt activate (`pr#38199 `_, Guillaume Abrioux) * ceph-volume: fix journal size argument not work (`pr#37344 `_, wanghongxu) * ceph-volume: fix lvm batch auto with full SSDs (`pr#38045 `_, Dimitri Savineau, Guillaume Abrioux) * ceph-volume: fix simple activate when legacy osd (`pr#37194 `_, Guillaume Abrioux) * ceph-volume: implement the --log-level flag (`pr#38426 `_, Andrew Schoen) * ceph-volume: major batch refactor (`pr#37520 `_, Jan Fajerski, Joshua Schmid) * ceph-volume: prepare: use \*-slots arguments for implicit sizing (`pr#38205 `_, Jan Fajerski) * ceph-volume: remove mention of dmcache from docs and help text (`pr#38047 `_, Dimitri Savineau, Andrew Schoen) * ceph-volume: retry when acquiring lock fails (`pr#36925 `_, Sébastien Han) * ceph-volume: simple scan should ignore tmpfs (`pr#36953 `_, Andrew Schoen) * ceph-volume: support for mpath devices (`pr#36928 `_, Jan Fajerski) * ceph.in: ignore failures to flush stdout (`pr#37225 `_, Dan van der Ster) * ceph.spec, debian: add smartmontools, nvme-cli dependencies (`pr#37257 `_, Yaarit Hatuka) * cephadm batch backport November (`pr#38155 `_, Ricardo Marques, Sebastian Wagner, Kyr Shatskyy, Dan Williams, Volker Theile, Varsha Rao, Tim Serong, Adam King, Dimitri Savineau, Patrick Seidensal, Dan Mick, Michael Fritch, Joshua Schmid) * cephadm batch backport September (1) (`pr#36975 `_, Stephan Müller, Matthew Oliver, Sebastian Wagner, Paul Cuzner, Adam King, Patrick Seidensal, Shraddha Agrawal, Michael Fritch, Dan Mick) * cephadm batch backport September (2) (`pr#37436 `_, Varsha Rao, Kiefer Chang, Patrick Donnelly, Sebastian Wagner, Kefu Chai, Guillaume Abrioux, Juan Miguel Olmo Martínez, Paul Cuzner, Volker Theile, Tim Serong, Zac Dover, Adam King, Michael Fritch, Joshua Schmid) * cephfs-journal-tool: fix incorrect read_offset when finding missing objects (`pr#37854 `_, Xue Yantao) * cephfs: client: fix directory inode can not call release callback (`pr#37017 `_, sepia-liu) * cephfs: client: fix extra open ref decrease (`pr#37249 `_, Xiubo Li) * cephfs: client: fix inode ll_ref reference count leak (`pr#37839 `_, sepia-liu) * cephfs: client: handle readdir reply without Fs cap (`pr#37370 `_, "Yan, Zheng") * cephfs: client: make Client::open() pass proper cap mask to path_walk (`pr#37369 `_, "Yan, Zheng") * cephfs: client: use non-static dirent for thread-safety (`pr#37351 `_, Patrick Donnelly) * cephfs: libcephfs: ignore restoring the open files limit (`pr#37358 `_, Xiubo Li) * cephfs: osdc/Journaler: do not call onsafe->complete() if onsafe is 0 (`pr#37368 `_, Xiubo Li) * common/admin_socket: always validate the parameters (`pr#37341 `_, Kefu Chai) * compressor: Add a config option to specify Zstd compression level (`pr#37253 `_, Bryan Stillwell) * core: include/encoding: Fix encode/decode of float types on big-endian systems (`pr#37032 `_, Ulrich Weigand) * debian: Add missing Python dependency for ceph-mgr (`pr#37422 `_, Johannes M. Scheuermann) * doc/PendingReleaseNotes: mention bluefs_preextend_wal_files (`pr#37549 `_, Nathan Cutler) * doc/mgr/orchestrator: Add hints related to custom containers to the docs (`pr#37962 `_, Volker Theile) * doc: cephfs: improve documentation of "ceph nfs cluster create" and "ceph fs volume create" commands (`pr#37691 `_, Nathan Cutler) * doc: enable Read the Docs (`pr#37201 `_, Kefu Chai) * erasure-code: enable isa-l EC for aarch64 platform (`pr#37504 `_, luo rixin, Hang Li) * krbd: optionally skip waiting for udev events (`pr#37285 `_, Ilya Dryomov) * librbd: ensure that thread pool lock is held when processing throttled IOs (`pr#37116 `_, Jason Dillaman) * librbd: handle DNE from immutable-object-cache (`pr#36860 `_, Feng Hualong, Mykola Golub, Yin Congmin, Jason Dillaman) * librbd: using migration abort can result in the loss of data (`pr#37164 `_, Jason Dillaman) * mds/CInode: Optimize only pinned by subtrees check (`pr#37248 `_, Mark Nelson) * mds: account for closing sessions in hit_session (`pr#37856 `_, Dan van der Ster) * mds: add request to batch_op before taking auth pins and locks (`pr#37022 `_, "Yan, Zheng") * mds: do not raise "client failing to respond to cap release" when client working set is reasonable (`pr#37353 `_, Patrick Donnelly) * mds: do not submit omap_rm_keys if the dir is the basedir of merge (`pr#37034 `_, "Yan, Zheng", Chencan) * mds: don't recover files after normal session close (`pr#37334 `_, "Yan, Zheng") * mds: fix 'forward loop' when forward_all_requests_to_auth is set (`pr#37360 `_, "Yan, Zheng") * mds: fix hang issue when accessing a file under a lost parent directory (`pr#37020 `_, Zhi Zhang) * mds: fix kcephfs parse dirfrag's ndist is always 0 (`pr#37357 `_, Yanhu Cao) * mds: fix mds forwarding request 'no_available_op_found' (`pr#37240 `_, Yanhu Cao) * mds: fix nullptr dereference in MDCache::finish_rollback (`pr#37243 `_, "Yan, Zheng") * mds: fix purge_queue's _calculate_ops is inaccurate (`pr#37372 `_, Yanhu Cao) * mds: make threshold for MDS_TRIM configurable (`pr#36970 `_, Paul Emmerich) * mds: optimize random threshold lookup for dentry load (`pr#37247 `_, Patrick Donnelly) * mds: place MDSGatherBuilder on the stack (`pr#37354 `_, Patrick Donnelly) * mds: reduce memory usage of open file table prefetch #37382 (`pr#37383 `_, "Yan, Zheng") * mds: resolve SIGSEGV in waiting for uncommitted fragments (`pr#37355 `_, Patrick Donnelly) * mds: revert the decode version (`pr#37356 `_, Jos Collin) * mds: send scrub status to ceph-mgr only when scrub is running (`issue#45349 `_, `pr#36047 `_, Kefu Chai, Venky Shankar) * mds: standy-replay mds remained in the "resolve" state after resta… (`pr#37363 `_, Wei Qiaomiao) * messages,mds: Fix decoding of enum types on big-endian systems (`pr#36813 `_, Ulrich Weigand) * mgr/dashboard/api: move/create OSD histogram in separate endpoint (`pr#37973 `_, Aashish Sharma) * mgr/dashboard: Add short descriptions to the telemetry report preview (`pr#37597 `_, Nizamudeen A) * mgr/dashboard: Allow editing iSCSI targets with initiators logged-in (`pr#37277 `_, Tiago Melo) * mgr/dashboard: Auto close table column dropdown on click outside (`pr#36862 `_, Tiago Melo) * mgr/dashboard: Copy to clipboard does not work in Firefox (`pr#37493 `_, Volker Theile) * mgr/dashboard: Datatable catches select events from other datatables (`pr#36899 `_, Volker Theile, Tiago Melo) * mgr/dashboard: Disable TLS 1.0 and 1.1 (`pr#38331 `_, Volker Theile) * mgr/dashboard: Disable autocomplete on user form (`pr#36901 `_, Volker Theile) * mgr/dashboard: Disable sso without python3-saml (`pr#38405 `_, Kevin Meijer) * mgr/dashboard: Disabling the form inputs for the read_only modals (`pr#37239 `_, Nizamudeen) * mgr/dashboard: Fix bugs in a unit test and i18n translation (`pr#36991 `_, Volker Theile) * mgr/dashboard: Fix for CrushMap viewer items getting compressed vertically (`pr#36871 `_, Nizamudeen A) * mgr/dashboard: Fix many-to-many issue in host-details Grafana dashboard (`pr#37299 `_, Patrick Seidensal) * mgr/dashboard: Fix npm package's vulnerabilities (`pr#36921 `_, Tiago Melo) * mgr/dashboard: Hide table action input field if limit=0 (`pr#36872 `_, Volker Theile) * mgr/dashboard: Host delete action should be disabled if not managed by Orchestrator (`pr#36874 `_, Volker Theile) * mgr/dashboard: Improve notification badge (`pr#37090 `_, Aashish Sharma) * mgr/dashboard: Landing Page improvements (`pr#37390 `_, Tiago Melo, Alfonso Martínez) * mgr/dashboard: Merge disable and disableDesc (`pr#37763 `_, Tiago Melo) * mgr/dashboard: Proper format iSCSI target portals (`pr#36870 `_, Volker Theile) * mgr/dashboard: REST API returns 500 when no Content-Type is specified (`pr#37308 `_, Avan Thakkar) * mgr/dashboard: Remove useless tab in monitoring/alerts datatable details (`pr#36875 `_, Volker Theile) * mgr/dashboard: Show warning when replicated size is 1 (`pr#37578 `_, Sebastian Krah) * mgr/dashboard: The performance 'Client Read/Write' widget shows incorrect write values (`pr#38189 `_, Volker Theile) * mgr/dashboard: Update datatable only when necessary (`pr#37331 `_, Volker Theile) * mgr/dashboard: Use pipe instead of calling function within template (`pr#38094 `_, Volker Theile) * mgr/dashboard: cluster > manager modules (`pr#37434 `_, Avan Thakkar) * mgr/dashboard: display devices' health information within a tabset (`pr#37784 `_, Kiefer Chang) * mgr/dashboard: fix error when typing existing paths in the Ganesha form (`pr#37688 `_, Kiefer Chang) * mgr/dashboard: fix perf. issue when listing large amounts of buckets (`pr#37405 `_, Alfonso Martínez) * mgr/dashboard: fix security scopes of some NFS-Ganesha endpoints (`pr#37450 `_, Kiefer Chang) * mgr/dashboard: fix the error when exporting CephFS path "/" in NFS exports (`pr#37686 `_, Kiefer Chang) * mgr/dashboard: get rgw daemon zonegroup name from mgr (`pr#37620 `_, Alfonso Martinez) * mgr/dashboard: increase Grafana iframe height to avoid scroll bar (`pr#37182 `_, Ngwa Sedrick Meh) * mgr/dashboard: log in non-admin users successfully if the telemetry notification is shown (`pr#37452 `_, Tatjana Dehler) * mgr/dashboard: support Orchestrator and user-defined Ganesha cluster (`pr#37885 `_, Kiefer Chang) * mgr/dashboard: table detail rows overflow (`pr#37332 `_, Aashish Sharma) * mgr/devicehealth: device_health_metrics pool gets created even without any OSDs in the cluster (`pr#37533 `_, Sunny Kumar) * mgr/insights: Test environment requires 'six' (`pr#38396 `_, Brad Hubbard) * mgr/prometheus: add pool compression stats (`pr#37562 `_, Paul Cuzner) * mgr/telemetry: fix device id splitting when anonymizing serial (`pr#37302 `_, Yaarit Hatuka) * mgr/volumes/nfs: Check if orchestrator spec service_id is valid (`pr#37371 `_, Varsha Rao) * mgr/volumes/nfs: Fix wrong error message for pseudo path (`pr#37855 `_, Varsha Rao) * mgr/volumes: Make number of cloner threads configurable (`pr#37671 `_, Kotresh HR) * mgr/zabbix: indent the output of "zabbix config-show" (`pr#37128 `_, Kefu Chai) * mgr: PyModuleRegistry::unregister_client() can run endlessly (`issue#47329 `_, `pr#37217 `_, Venky Shankar) * mgr: don't update pending service map epoch on receiving map from mon (`pr#37180 `_, Mykola Golub) * mon scrub testing (`pr#38361 `_, Brad Hubbard) * mon/MDSMonitor do not ignore mds's down:dne request (`pr#37858 `_, chencan) * mon/MDSMonitor: divide mds identifier and mds real name with dot (`pr#37857 `_, Zhi Zhang) * mon/MonMap: fix unconditional failure for init_with_hosts (`pr#37817 `_, Nathan Cutler, Patrick Donnelly) * mon/PGMap: add pg count for pools in the ceph df command (`pr#36945 `_, Vikhyat Umrao) * mon: Log "ceph health detail" periodically in cluster log (`pr#38345 `_, Prashant Dhange) * mon: deleting a CephFS and its pools causes MONs to crash (`pr#37256 `_, Patrick Donnelly) * mon: have 'mon stat' output json as well (`pr#37705 `_, Joao Eduardo Luis) * mon: mark pgtemp messages as no_reply more consistenly in preprocess\_… (`pr#37347 `_, Greg Farnum) * mon: set session_timeout when adding to session_map (`pr#37553 `_, Ilya Dryomov) * mon: store mon updates in ceph context for future MonMap instantiation (`pr#36705 `_, Patrick Donnelly, Shyamsundar Ranganathan) * msg/async/ProtocolV2: allow rxbuf/txbuf get bigger in testing (`pr#37080 `_, Ilya Dryomov) * os/bluestore: enable more flexible bluefs space management by default (`pr#37092 `_, Igor Fedotov) * osd/osd-rep-recov-eio.sh: TEST_rados_repair_warning: return 1 (`pr#37853 `_, David Zafman) * osd: Check for nosrub/nodeep-scrub in between chunks, to avoid races (`pr#38359 `_, David Zafman) * osdc/ObjectCacher: overwrite might cause stray read request callbacks (`pr#37674 `_, Jason Dillaman) * osdc: add timeout configs for mons/osds (`pr#37530 `_, Patrick Donnelly) * prometheus: Properly split the port off IPv6 addresses (`pr#36985 `_, Matthew Oliver) * pybind/cephfs: add special values for not reading conffile (`pr#37724 `_, Kefu Chai) * pybind/cephfs: fix custom exception raised by cephfs.pyx (`pr#37350 `_, Ramana Raja) * pybind/mgr/volumes: add global lock debug (`pr#37366 `_, Patrick Donnelly) * qa/\*/mon/mon-last-epoch-clean.sh: mark osd out instead of down (`pr#37349 `_, Neha Ojha) * qa/cephfs: add session_timeout option support (`pr#37841 `_, Xiubo Li) * qa/tasks/nfs: Test mounting of export created with nfs command (`pr#37365 `_, Varsha Rao) * qa/tasks/{ceph,ceph_manager}: drop py2 support (`pr#37863 `_, Kefu Chai) * qa/tests: added rhel 8.2 (`pr#38287 `_, Yuri Weinstein) * qa/tests: use bionic only for old clients in rados/thrash-old-clients (`pr#36931 `_, Yuri Weinstein) * qa/workunits/mon: fixed excessively large pool PG count (`pr#37346 `_, Jason Dillaman) * qa: Enable debug_client for mgr tests (`pr#37270 `_, Brad Hubbard) * qa: Fix traceback during fs cleanup between tests (`pr#36713 `_, Kotresh HR) * qa: add debugging for volumes plugin use of libcephfs (`pr#37352 `_, Patrick Donnelly) * qa: drop hammer branch qa tests (`pr#37728 `_, Neha Ojha, Deepika Upadhyay) * qa: ignore expected mds failover message (`pr#37367 `_, Patrick Donnelly) * rbd-mirror: peer setup can still race and fail creation of peer (`pr#37342 `_, Jason Dillaman) * rbd: include RADOS namespace in krbd symlinks (`pr#37343 `_, Ilya Dryomov) * rbd: journal: possible race condition between flush and append callback (`pr#37850 `_, Jason Dillaman) * rbd: librbd: ignore -ENOENT error when disabling object-map (`pr#37852 `_, Jason Dillaman) * rbd: librbd: update AioCompletion return value before evaluating pending count (`pr#37851 `_, Jason Dillaman) * rbd: make common options override krbd-specific options (`pr#37408 `_, Ilya Dryomov) * rbd: rbd-nbd: don't ignore namespace when unmapping by image spec (`pr#37812 `_, Mykola Golub) * rgw/gc: fix for incrementing the perf counter 'gc_retire_object' (`pr#37847 `_, Pritha Srivastava) * rgw/gc: fixing the condition when marker for a queue is (`pr#37846 `_, Pritha Srivastava) * rgw/rgw_file: Fix the incorrect lru object eviction (`pr#37672 `_, luo rixin) * rgw: Add bucket name to bucket stats error logging (`pr#37335 `_, Seena Fallah) * rgw: Add request timeout to beast (`pr#37809 `_, Adam C. Emerson, Or Friedmann) * rgw: RGWObjVersionTracker tracks version over increments (`pr#37337 `_, Casey Bodley) * rgw: Swift API anonymous access should 401 (`pr#37339 `_, Matthew Oliver) * rgw: adds code for creating and managing oidc provider entities in rgw and for offline validation of OpenID Connect Access and ID Token (`pr#37640 `_, Pritha Srivastava, Casey Bodley) * rgw: allow rgw-orphan-list to note when rados objects are in namespace (`pr#37800 `_, J. Eric Ivancich) * rgw: dump transitions in RGWLifecycleConfiguration::dump() (`pr#36812 `_, Shengming Zhang) * rgw: during GC defer, prevent new GC enqueue (`pr#38249 `_, Casey Bodley, J. Eric Ivancich) * rgw: fix expiration header returned even if there is only one tag in the object the same as the rule (`pr#37807 `_, Or Friedmann) * rgw: fix setting of namespace in ordered and unordered bucket listing (`pr#37673 `_, J. Eric Ivancich) * rgw: fix user stats iterative increment (`pr#37779 `_, Mark Kogan) * rgw: fix: S3 API KeyCount incorrect return (`pr#37849 `_, 胡玮文) * rgw: log resharding events at level 1 (formerly 20) (`pr#36840 `_, Or Friedmann) * rgw: radosgw-admin should paginate internally when listing bucket (`pr#37803 `_, J. Eric Ivancich) * rgw: radosgw-admin: period pull command is not always a raw_storage_op (`pr#37336 `_, Casey Bodley) * rgw: replace '+' with "%20" in canonical query string for s3 v4 auth (`pr#37338 `_, yuliyang_yewu) * rgw: rgw_file: avoid long-ish delay on shutdown (`pr#37551 `_, Matt Benjamin) * rgw: s3: mark bucket encryption as not implemented (`pr#36691 `_, Abhishek Lekshmanan) * rgw: urlencode bucket name when forwarding request (`pr#37340 `_, caolei) * rgw: use yum rather than dnf for teuthology testing of rgw-orphan-list (`pr#37845 `_, J. Eric Ivancich) * rpm,deb: drop /etc/sudoers.d/cephadm (`pr#37401 `_, Nathan Cutler) * run-make-check.sh: Don't run tests if build fails (`pr#38294 `_, Brad Hubbard) * systemd: Support Graceful Reboot for AIO Node (`pr#37300 `_, Wong Hoi Sing Edison) * test/librados: fix endian bugs in checksum test cases (`pr#37604 `_, Ulrich Weigand) * test/rbd-mirror: pool watcher registration error might result in race (`pr#37208 `_, Jason Dillaman) * test/store_test: use 'threadsafe' style for death tests (`pr#37819 `_, Igor Fedotov) * tools/osdmaptool.cc: add ability to clean_temps (`pr#37348 `_, Neha Ojha) * tools/rados: flush formatter periodically during json output of "rados ls" (`pr#37835 `_, J. Eric Ivancich) * vstart.sh: fix fs set max_mds bug (`pr#37837 `_, Jinmyeong Lee) v15.2.7 Octopus =============== This is the 7th backport release in the Octopus series. This release fixes a serious bug in RGW that has been shown to cause data loss when a read of a large RGW object (i.e., one with at least one tail segment) takes longer than one half the time specified in the configuration option ``rgw_gc_obj_min_wait``. The bug causes the tail segments of that read object to be added to the RGW garbage collection queue, which will in turn cause them to be deleted after a period of time. Changelog --------- * rgw: during GC defer, prevent new GC enqueue (`issue#47866 `_, `pr#38249 `_, Eric Ivancich, Casey Bodley) v15.2.6 Octopus =============== This is the 6th backport release in the Octopus series. This release fixes a security flaw affecting Messenger v1 & v2. We recommend users to update to this release. Notable Changes --------------- * CVE 2020-25660: CEPHX_V2 replay attack protection lost, for Messenger v1 & v2 (Ilya Dryomov) Changelog --------- * mon/MonClient: bring back CEPHX_V2 authorizer challenges (Ilya Dryomov) v15.2.5 Octopus =============== This is the fifth release of the Ceph Octopus stable release series. This release brings a range of fixes across all components. We recommend that all Octopus users upgrade to this release. Notable Changes --------------- * CephFS: Automatic static subtree partitioning policies may now be configured using the new distributed and random ephemeral pinning extended attributes on directories. See the documentation for more information: https://docs.ceph.com/docs/master/cephfs/multimds/ * Monitors now have a config option ``mon_osd_warn_num_repaired``, 10 by default. If any OSD has repaired more than this many I/O errors in stored data a ``OSD_TOO_MANY_REPAIRS`` health warning is generated. * Now when noscrub and/or no deep-scrub flags are set globally or per pool, scheduled scrubs of the type disabled will be aborted. All user initiated scrubs are NOT interrupted. * Fix an issue with osdmaps not being trimmed in a healthy cluster ( `issue#47297 `_, `pr#36981 `_) Changelog --------- * bluestore,core: bluestore: blk:BlockDevice.cc: use pending_aios instead of iovec size as ios num (`pr#36668 `_, weixinwei) * bluestore,tests: test/store_test: refactor bluestore spillover test (`pr#34943 `_, Igor Fedotov) * bluestore,tests: tests: objectstore/store_test: kill ExcessiveFragmentation test case (`pr#36049 `_, Igor Fedotov) * bluestore: bluestore: Rescue procedure for extremely large bluefs log (`pr#36123 `_, Adam Kupczyk) * bluestore: octopus:os/bluestore: improve/fix bluefs stats reporting (`pr#35748 `_, Igor Fedotov) * bluestore: os/bluestore: fix bluefs log growth (`pr#36621 `_, Adam Kupczyk, Jianpeng Ma) * bluestore: os/bluestore: simplify Onode pin/unpin logic (`pr#36795 `_, Igor Fedotov) * build/ops: Revert "mgr/osd_support: remove module and all traces" (`pr#36973 `_, Sebastian Wagner) * build/ops: ceph-iscsi: selinux fixes (`pr#36302 `_, Mike Christie) * build/ops: mgr/dashboard/api: reduce amount of daemon logs (`pr#36693 `_, Ernesto Puerta) * ceph-volume: add dmcrypt support in raw mode (`pr#35830 `_, Guillaume Abrioux) * ceph-volume: add drive-group subcommand (`pr#36558 `_, Jan Fajerski, Sebastian Wagner) * ceph-volume: add tests for new functions that run LVM commands (`pr#36614 `_, Rishabh Dave) * ceph-volume: don't use container classes in api/lvm.py (`pr#35879 `_, Rishabh Dave, Guillaume Abrioux) * ceph-volume: fix lvm functional tests (`pr#36409 `_, Jan Fajerski) * ceph-volume: handle idempotency with batch and explicit scenarios (`pr#35880 `_, Andrew Schoen) * ceph-volume: remove container classes from api/lvm.py (`pr#36608 `_, Rishabh Dave) * ceph-volume: report correct rejected reason in inventory if device type is invalid (`pr#36410 `_, Satoru Takeuchi) * ceph-volume: run flake8 in python3 (`pr#36588 `_, Jan Fajerski) * cephfs,common: common: ignore SIGHUP prior to fork (`issue#46269 `_, `pr#36195 `_, Willem Jan Withagen, hzwuhongsong) * cephfs,core,mgr: mgr/status: metadata is fetched async (`pr#36630 `_, Michael Fritch) * cephfs,core,rbd,rgw: librados: add LIBRADOS_SUPPORTS_GETADDRS support (`pr#36643 `_, Xiubo Li) * cephfs,mgr: mgr/volumes/nfs: Add interface for adding user defined configuration (`pr#36635 `_, Varsha Rao) * cephfs,mon: mon/MDSMonitor: copy MDS info which may be removed (`pr#36035 `_, Patrick Donnelly) * cephfs,pybind: pybind/ceph_volume_client: Fix PEP-8 SyntaxWarning (`pr#36100 `_, Đặng Minh Dũng) * cephfs,tests: mgr/fs/volumes: misc fixes (`pr#36327 `_, Patrick Donnelly, Kotresh HR) * cephfs,tests: tests: Revert "Revert "qa/suites/rados/mgr/tasks/module_selftest: whitelist … (`issue#43943 `_, `pr#36042 `_, Venky Shankar) * cephfs,tests: tests: qa/tasks/cephfs/cephfs_test_case.py: skip cleaning the core dumps when in program case (`pr#36043 `_, Xiubo Li) * cephfs,tests: tests: qa/tasks: make sh() in vstart_runner.py identical with teuthology.orchestra.remote.sh (`pr#36044 `_, Jos Collin) * cephfs: Update nfs-ganesha package requirements doc backport (`pr#36063 `_, Varsha Rao) * cephfs: cephfs: client: fix setxattr for 0 size value (NULL value) (`pr#36045 `_, Sidharth Anupkrishnan) * cephfs: cephfs: client: fix snap directory atime (`pr#36039 `_, Luis Henriques) * cephfs: cephfs: client: release the client_lock before copying data in read (`pr#36046 `_, Chencan) * cephfs: client: expose ceph.quota.max_bytes xattr within snapshots (`pr#36403 `_, Shyamsundar Ranganathan) * cephfs: client: introduce timeout for client shutdown (`issue#44276 `_, `pr#35962 `_, "Yan, Zheng", Venky Shankar) * cephfs: mds/MDSRank: fix typo in "unrecognized" (`pr#36197 `_, Nathan Cutler) * cephfs: mds: add ephemeral random and distributed export pins (`pr#35759 `_, Patrick Donnelly, Sidharth Anupkrishnan) * cephfs: mds: fix filelock state when Fc is issued (`pr#35842 `_, Xiubo Li) * cephfs: mds: reset heartbeat in EMetaBlob replay (`pr#36040 `_, Yanhu Cao) * cephfs: mgr/nfs: Check if pseudo path is absolute path (`pr#36299 `_, Varsha Rao) * cephfs: mgr/nfs: Update MDCACHE block in ganesha config and doc about nfs-cephadm in vstart (`pr#36224 `_, Varsha Rao) * cephfs: mgr/volumes: Deprecate protect/unprotect CLI calls for subvolume snapshots (`pr#36126 `_, Shyamsundar Ranganathan) * cephfs: mgr/volumes: fix "ceph nfs export" help messages (`pr#36220 `_, Nathan Cutler) * cephfs: nfs backport (`pr#35499 `_, Jeff Layton, Varsha Rao, Ramana Raja, Kefu Chai) * common,core: common, osd: add sanity checks around osd_scrub_max_preemptions (`pr#36034 `_, xie xingguo) * common,rbd,tools: rbd: immutable-object-cache: fixed crashes on start up (`pr#36660 `_, Jason Dillaman) * common,rbd: crush/CrushWrapper: rebuild reverse maps after rebuilding crush map (`pr#36662 `_, Jason Dillaman) * common: common: log: fix timestap precision of log can't set to millisecond (`pr#36048 `_, Guan yunfei) * core,mgr: mgr: decrease pool stats if pg was removed (`pr#36667 `_, Aleksei Gutikov) * core,rbd: osd/OSDCap: rbd profile permits use of "rbd_info" (`pr#36414 `_, Florian Florensa) * core,tools: tools/rados: Set locator key when exporting or importing a pool (`pr#36666 `_, Iain Buclaw) * core: mon/OSDMonitor: Reset grace period if failure interval exceeds a threshold (`pr#35799 `_, Sridhar Seshasayee) * core: mon/OSDMonitor: only take in osd into consideration when trimming osd… (`pr#36981 `_, Kefu Chai) * core: mon: fix the 'Error ERANGE' message when conf "osd_objectstore" is filestore (`pr#36665 `_, wangyunqing) * core: monclient: schedule first tick using mon_client_hunt_interval (`pr#36633 `_, Mykola Golub) * core: osd/OSD.cc: remove osd_lock for bench (`pr#36664 `_, Neha Ojha, Adam Kupczyk) * core: osd/PG: fix history.same_interval_since of merge target again (`pr#36033 `_, xie xingguo) * core: osd/PeeringState: prevent peer's num_objects going negative (`pr#36663 `_, xie xingguo) * core: osd/PrimaryLogPG: don't populate watchers if replica (`pr#36029 `_, Ilya Dryomov) * core: osd: Cancel in-progress scrubs (not user requested) (`pr#36291 `_, David Zafman) * core: osd: expose osdspec_affinity to osd_metadata (`pr#35957 `_, Joshua Schmid) * core: osd: fix crash in _committed_osd_maps if incremental osdmap crc fails (`pr#36340 `_, Neha Ojha, Dan van der Ster) * core: osd: make message cap option usable again (`pr#35737 `_, Neha Ojha, Josh Durgin) * core: osd: wakeup all threads of shard rather than one thread (`pr#36032 `_, Jianpeng Ma) * core: test: osd-backfill-stats.sh use nobackfill to avoid races in remainin… (`pr#36030 `_, David Zafman) * doc: cephadm batch backport (`pr#36450 `_, Varsha Rao, Ricardo Marques, Kiefer Chang, Matthew Oliver, Paul Cuzner, Kefu Chai, Daniel-Pivonka, Sebastian Wagner, Volker Theile, Adam King, Michael Fritch, Joshua Schmid) * doc: doc/mgr/crash: Add missing command in rm example (`pr#36690 `_, Daniël Vos) * doc: doc/rados: Fix osd_scrub_during_recovery default value (`pr#36661 `_, Benoît Knecht) * doc: doc/rbd: add rbd-target-gw enable and start (`pr#36416 `_, Zac Dover) * doc: doc: PendingReleaseNotes: clean slate for 15.2.5 (`pr#35753 `_, Nathan Cutler) * mgr,pybind: pybind/mgr/balancer: use "==" and "!=" for comparing str (`pr#36036 `_, Kefu Chai) * mgr,pybind: pybind/mgr/pg_autoscaler/module.py: do not update event if ev.pg_num== ev.pg_num_target (`pr#36037 `_, Neha Ojha) * mgr,rbd: mgr/prometheus: automatically discover RBD pools for stats gathering (`pr#36411 `_, Jason Dillaman) * mgr/dashboard/api: increase API health timeout (`pr#36562 `_, Ernesto Puerta) * mgr/dashboard: Add button to copy the bootstrap token into the clipboard (`pr#35796 `_, Ishan Rai) * mgr/dashboard: Add host labels in UI (`pr#35893 `_, Volker Theile) * mgr/dashboard: Add hosts page unit tests (`pr#36350 `_, Volker Theile) * mgr/dashboard: Allow to edit iSCSI target with active session (`pr#35997 `_, Ricardo Marques) * mgr/dashboard: Always use fast angular unit tests (`pr#36267 `_, Stephan Müller) * mgr/dashboard: Configure overflow of popover in health page (`pr#36460 `_, Tiago Melo) * mgr/dashboard: Display check icon instead of true|false in various datatables (`pr#35892 `_, Volker Theile) * mgr/dashboard: Display users current bucket quota usage (`pr#35926 `_, Ernesto Puerta, Avan Thakkar) * mgr/dashboard: Extract documentation link to a component (`pr#36587 `_, Tiago Melo) * mgr/dashboard: Fix host attributes like labels are not returned (`pr#36678 `_, Kiefer Chang) * mgr/dashboard: Hide password notification when expiration date is far (`pr#35975 `_, Tiago Melo) * mgr/dashboard: Improve Summary's subscribe methods (`pr#35705 `_, Tiago Melo) * mgr/dashboard: Prometheus query error in the metrics of Pools, OSDs and RBD images (`pr#35885 `_, Avan Thakkar) * mgr/dashboard: Re-enable OSD's table autoReload (`pr#36226 `_, Kiefer Chang, Tiago Melo) * mgr/dashboard: Strange iSCSI discovery auth behavior (`pr#36782 `_, Volker Theile) * mgr/dashboard: The max. buckets field in RGW user form should be pre-filled (`pr#35795 `_, Volker Theile) * mgr/dashboard: Unable to edit iSCSI logged-in client (`pr#36611 `_, Ricardo Marques) * mgr/dashboard: Use right size in pool form (`pr#35925 `_, Stephan Müller) * mgr/dashboard: Use same required field message accross the UI (`pr#36277 `_, Volker Theile) * mgr/dashboard: add API team to CODEOWNERS (`pr#36143 `_, Ernesto Puerta) * mgr/dashboard: allow preserving OSD IDs when deleting OSDs (`pr#35766 `_, Kiefer Chang) * mgr/dashboard: cpu stats incorrectly displayed (`pr#36322 `_, Avan Thakkar) * mgr/dashboard: cropped actions menu in nested details (`pr#35620 `_, Avan Thakkar) * mgr/dashboard: fix Source column i18n issue in RBD configuration tables (`pr#35819 `_, Kiefer Chang) * mgr/dashboard: fix backporting issue #35926 (`pr#36073 `_, Ernesto Puerta) * mgr/dashboard: fix pool usage calculation (`pr#36137 `_, Ernesto Puerta) * mgr/dashboard: fix rbdmirroring dropdown menu (`pr#36382 `_, Avan Thakkar) * mgr/dashboard: fix regression in delete OSD modal (`pr#36419 `_, Kiefer Chang) * mgr/dashboard: fix tasks.mgr.dashboard.test_rbd.RbdTest.test_move_image_to_trash error (`pr#36563 `_, Kiefer Chang) * mgr/dashboard: fix ui api endpoints (`pr#36160 `_, Fabrizio D'Angelo) * mgr/dashboard: fix wal/db slots controls in the OSD form (`pr#35883 `_, Kiefer Chang) * mgr/dashboard: increase API test coverage in API controllers (`pr#36260 `_, Kefu Chai, Aashish Sharma) * mgr/dashboard: redirect to original URL after successful login (`pr#36831 `_, Avan Thakkar) * mgr/dashboard: remove "This week/month/year" and "Today" time stamps (`pr#36789 `_, Avan Thakkar) * mgr/dashboard: remove cdCopy2ClipboardButton `formatted` attribute (`pr#35889 `_, Tatjana Dehler) * mgr/dashboard: remove password field if login is using SSO and fix error message in confirm password (`pr#36689 `_, Ishan Rai) * mgr/dashboard: right-align dropdown menu of column filters (`pr#36369 `_, Kiefer Chang) * mgr/dashboard: telemetry activation notification (`pr#35772 `_, Tatjana Dehler) * mgr/dashboard: wait longer for health status to be cleared (`pr#36346 `_, Tatjana Dehler) * mgr/k8sevents: sanitise kubernetes events (`pr#35684 `_, Paul Cuzner) * mgr/prometheus: improve cache (`pr#35847 `_, Patrick Seidensal) * mgr: avoid false alarm of MGR_MODULE_ERROR (`pr#35995 `_, Kefu Chai) * mgr: mgr/DaemonServer.cc: make 'config show' on fsid work (`pr#35793 `_, Neha Ojha) * mgr: mgr/cephadm: Adapt Vagrantfile to use octopus instead of master repo on shaman (`pr#35988 `_, Volker Theile) * mgr: mgr/diskprediction_local: Fix array size error (`pr#36577 `_, Benoît Knecht) * mgr: mgr/progress: Skip pg_summary update if _events dict is empty (`pr#36076 `_, Manuel Lausch) * mgr: mgr/prometheus: log time it takes to collect metrics (`pr#36581 `_, Patrick Seidensal) * mgr: mgr: Add missing states to PG_STATES in mgr_module.py (`pr#36786 `_, Harley Gorrell) * mgr: mgr: fix race between module load and notify (`pr#35794 `_, Mykola Golub) * mgr: mon/PGMap: do not consider changing pg stuck (`pr#35958 `_, Kefu Chai) * monitoring: alert for pool fill up broken (`pr#35136 `_, Volker Theile) * msgr: New msgr2 crc and secure modes (msgr2.1) (`pr#35720 `_, Ilya Dryomov) * rbd,tests: tests/rbd_mirror: fix race on test shut down (`pr#36657 `_, Mykola Golub) * rbd: librbd: global and pool-level config overrides require image refresh to apply (`pr#36638 `_, Jason Dillaman) * rbd: librbd: new 'write_zeroes' API methods to suppliment the `discard` APIs (`pr#36247 `_, Jason Dillaman) * rbd: librbd: potential race conditions handling API IO completions (`pr#36331 `_, Jason Dillaman) * rbd: mgr/dashboard: work with v1 RBD images (`pr#35711 `_, Ernesto Puerta) * rbd: rbd: librbd: Align rbd_write_zeroes declarations (`pr#36717 `_, Corey Bryant) * rbd: rbd: librbd: don't resend async_complete if watcher is unregistered (`pr#36659 `_, Mykola Golub) * rbd: rbd: librbd: flush all queued object IO from simple scheduler (`pr#36658 `_, Jason Dillaman) * rbd: rbd: librbd: race when disabling object map with overlapping in-flight writes (`pr#36656 `_, Jason Dillaman) * rbd: rbd: recognize crush_location, read_from_replica and compression_hint map options (`pr#36061 `_, Ilya Dryomov) * rgw,tests: qa/tasks/ragweed: always set ragweed_repo (`pr#36651 `_, Kefu Chai) * rgw: rgw: lc: fix Segmentation Fault when the tag of the object was not found (`pr#36085 `_, yupeng chen, zhuo li) * rgw: Add subuser to OPA request (`pr#36023 `_, Seena Fallah) * rgw: Add support wildcard subuser for bucket policy (`pr#36022 `_, Seena Fallah) * rgw: Adding data cache and CDN capabilities (`pr#36646 `_, Mark Kogan, Or Friedmann) * rgw: Empty reqs_change_state queue before unregistered_reqs (`pr#36650 `_, Soumya Koduri) * rgw: add abort multipart date and rule-id header to init multipart upload response (`pr#36649 `_, zhang Shaowen, zhangshaowen) * rgw: add access log to the beast frontend (`pr#36024 `_, Mark Kogan) * rgw: add check for index entry's existing when adding bucket stats during bucket reshard (`pr#36025 `_, zhang Shaowen) * rgw: add negative cache to the system object (`pr#36648 `_, Or Friedmann) * rgw: add quota enforcement to CopyObj (`pr#36020 `_, Casey Bodley) * rgw: append obj: prevent tail from being GC'ed (`pr#36389 `_, Abhishek Lekshmanan) * rgw: bucket list/stats truncates for user w/ >1000 buckets (`pr#36019 `_, J. Eric Ivancich) * rgw: cls/rgw: preserve olh entry's name on last unlink (`pr#36652 `_, Casey Bodley) * rgw: cls/rgw_gc: Fixing the iterator used to access urgent data map (`pr#36017 `_, Pritha Srivastava) * rgw: fix boost::asio::async_write() does not return error (`pr#36647 `_, Mark Kogan) * rgw: fix bug where ordered bucket listing gets stuck (`pr#35877 `_, J. Eric Ivancich) * rgw: fix double slash (//) killing the gateway (`pr#36654 `_, Theofilos Mouratidis) * rgw: fix loop problem with swift stat on account (`pr#36021 `_, Marcus Watts) * rgw: fix shutdown crash in RGWAsyncReadMDLogEntries (`pr#36653 `_, Casey Bodley) * rgw: introduce safe user-reset-stats (`pr#36655 `_, Yuval Lifshitz, Matt Benjamin) * rgw: lc: add lifecycle perf counters (`pr#36018 `_, Mark Kogan, Matt Benjamin) * rgw: orphan list teuthology test & fully-qualified domain issue (`pr#36027 `_, J. Eric Ivancich) * rgw: orphan-list timestamp fix (`pr#35929 `_, J. Eric Ivancich) * rgw: policy: reuse eval_principal to evaluate the policy principal (`pr#36636 `_, Abhishek Lekshmanan) * rgw: radoslist incomplete multipart uploads fix marker progression (`pr#36028 `_, J. Eric Ivancich) * rgw: rgw/iam: correcting the result of get role policy (`pr#36645 `_, Pritha Srivastava) * rgw: selinux: allow ceph_t amqp_port_t:tcp_socket (`pr#36026 `_, Kaleb S. KEITHLEY, Thomas Serlin) * rgw: stop realm reloader before store shutdown (`pr#36644 `_, Kefu Chai, Casey Bodley) * tools: tools: Add statfs operation to ceph-objecstore-tool (`pr#35715 `_, David Zafman) v15.2.4 Octopus =============== This is the fourth release of the Ceph Octopus stable release series. In addition to a security fix in RGW, this release brings a range of fixes across all components. We recommend that all Octopus users upgrade to this release. Notable Changes --------------- * CVE-2020-10753: rgw: sanitize newlines in s3 CORSConfiguration's ExposeHeader (William Bowling, Adam Mohammed, Casey Bodley) * Cephadm: There were a lot of small usability improvements and bug fixes: * Grafana when deployed by Cephadm now binds to all network interfaces. * ``cephadm check-host`` now prints all detected problems at once. * Cephadm now calls ``ceph dashboard set-grafana-api-ssl-verify false`` when generating an SSL certificate for Grafana. * The Alertmanager is now correctly pointed to the Ceph Dashboard * ``cephadm adopt`` now supports adopting an Alertmanager * ``ceph orch ps`` now supports filtering by service name * ``ceph orch host ls`` now marks hosts as offline, if they are not accessible. * Cephadm can now deploy NFS Ganesha services. For example, to deploy NFS with a service id of mynfs, that will use the RADOS pool nfs-ganesha and namespace nfs-ns:: ceph orch apply nfs mynfs nfs-ganesha nfs-ns * Cephadm: ``ceph orch ls --export`` now returns all service specifications in yaml representation that is consumable by ``ceph orch apply``. In addition, the commands ``orch ps`` and ``orch ls`` now support ``--format yaml`` and ``--format json-pretty``. * Cephadm: ``ceph orch apply osd`` supports a ``--preview`` flag that prints a preview of the OSD specification before deploying OSDs. This makes it possible to verify that the specification is correct, before applying it. * RGW: The ``radosgw-admin`` sub-commands dealing with orphans -- ``radosgw-admin orphans find``, ``radosgw-admin orphans finish``, and ``radosgw-admin orphans list-jobs`` -- have been deprecated. They have not been actively maintained and they store intermediate results on the cluster, which could fill a nearly-full cluster. They have been replaced by a tool, currently considered experimental, ``rgw-orphan-list``. * RBD: The name of the rbd pool object that is used to store rbd trash purge schedule is changed from "rbd_trash_trash_purge_schedule" to "rbd_trash_purge_schedule". Users that have already started using ``rbd trash purge schedule`` functionality and have per pool or namespace schedules configured should copy "rbd_trash_trash_purge_schedule" object to "rbd_trash_purge_schedule" before the upgrade and remove "rbd_trash_purge_schedule" using the following commands in every RBD pool and namespace where a trash purge schedule was previously configured:: rados -p [-N namespace] cp rbd_trash_trash_purge_schedule rbd_trash_purge_schedule rados -p [-N namespace] rm rbd_trash_trash_purge_schedule or use any other convenient way to restore the schedule after the upgrade. Changelog --------- * build/ops: address SElinux denials observed in rgw/multisite test run (`pr#34538 `_, Kefu Chai, Kaleb S. Keithley) * ceph-volume: add and delete lvm tags in a single lvchange call (`pr#35452 `_, Jan Fajerski) * ceph-volume: add ceph.osdspec_affinity tag (`pr#35134 `_, Joshua Schmid) * cephadm: batch backport May (1) (`pr#34893 `_, Michael Fritch, Ricardo Marques, Matthew Oliver, Sebastian Wagner, Joshua Schmid, Zac Dover, Varsha Rao) * cephadm: batch backport May (2) (`pr#35188 `_, Michael Fritch, Sebastian Wagner, Kefu Chai, Georgios Kyratsas, Kiefer Chang, Joshua Schmid, Patrick Seidensal, Varsha Rao, Matthew Oliver, Zac Dover, Juan Miguel Olmo Martínez, Tim Serong, Alexey Miasoedov, Ricardo Marques, Satoru Takeuchi) * cephadm: batch backport June (1) (`pr#35347 `_, Sebastian Wagner, Zac Dover, Georgios Kyratsas, Kiefer Chang, Ricardo Marques, Patrick Seidensal, Patrick Donnelly, Joshua Schmid, Matthew Oliver, Varsha Rao, Juan Miguel Olmo Martínez, Michael Fritch) * cephadm: batch backport June (2) (`pr#35475 `_, Sebastian Wagner, Kiefer Chang, Joshua Schmid, Michael Fritch, shinhwagk, Kefu Chai, Juan Miguel Olmo Martínez, Daniel Pivonka) * cephfs: allow pool names with hyphen and period (`pr#35251 `_, Ramana Raja) * cephfs: bash_completion: Do not auto complete obsolete and hidden cmds (`pr#34996 `_, Kotresh HR) * cephfs: cephfs-shell: Change tox testenv name to py3 (`pr#34998 `_, Kefu Chai, Varsha Rao, Aditya Srivastava) * cephfs: client: expose Client::ll_register_callback via libcephfs (`pr#35150 `_, Jeff Layton) * cephfs: client: fix Finisher assert failure (`pr#34999 `_, Xiubo Li) * cephfs: client: only set MClientCaps::FLAG_SYNC when flushing dirty auth caps (`pr#34997 `_, Jeff Layton) * cephfs: fuse: add the '-d' option back for libfuse (`pr#35449 `_, Xiubo Li) * cephfs: mds: Handle blacklisted error in purge queue (`pr#35148 `_, Varsha Rao) * cephfs: mds: preserve ESlaveUpdate logevent until receiving OP_FINISH (`pr#35253 `_, songxinying) * cephfs: mds: take xlock in the order requests start locking (`pr#35252 `_, "Yan, Zheng") * cephfs: src/client/fuse_ll: compatible with libfuse3.5 or higher (`pr#35450 `_, Jeff Layton, Xiubo Li) * cephfs: vstart_runner: set mounted to True at the end of mount() (`pr#35447 `_, Rishabh Dave) * core: bluestore: fix large (>2GB) writes when bluefs_buffered_io = true (`pr#35446 `_, Igor Fedotov) * core: bluestore: introduce hybrid allocator (`pr#35498 `_, Igor Fedotov, Adam Kupczyk) * core: cls/queue: fix empty markers when listing entries (`pr#35241 `_, Pritha Srivastava, Yuval Lifshitz) * core: objecter: don't attempt to read from non-primary on EC pools (`pr#35444 `_, Ilya Dryomov) * core: osd: add --osdspec-affinity flag (`pr#35382 `_, Joshua Schmid) * core: osd: make "missing incremental map" a debug log message (`pr#35442 `_, Nathan Cutler) * core: osd: prevent ShardedOpWQ suicide_grace drop when waiting for work (`pr#34881 `_, Dan Hill) * core: rocksdb: Update to ceph-octopus-v5.8-1436 (`pr#35036 `_, Brad Hubbard) * doc: drop obsolete cache tier options (`pr#35105 `_, Nathan Cutler) * doc: mgr/dashboard: Add troubleshooting guide (`pr#34947 `_, Tatjana Dehler) * doc: rgw: document 'rgw gc max concurrent io' (`pr#34987 `_, Casey Bodley) * mds: cleanup uncommitted fragments before mds goes to active (`pr#35448 `_, "Yan, Zheng") * mds: don't assert empty io context list when shutting down (`pr#34509 `_, "Yan, Zheng") * mds: don't shallow copy when decoding xattr map (`pr#35147 `_, "Yan, Zheng") * mds: flag backtrace scrub failures for new files as okay (`pr#35555 `_, Milind Changire) * mgr/dashboard/grafana: Add rbd-image details dashboard (`pr#35247 `_, Enno Gotthold) * mgr/dashboard: Asynchronous unique username validation for User Component (`pr#34849 `_, Nizamudeen) * mgr/dashboard: ECP modal enhancement (`pr#35152 `_, Stephan Müller) * mgr/dashboard: Fix HomeTest setup (`pr#35085 `_, Tiago Melo) * mgr/dashboard: Fix e2e chromium binary validation (`pr#35679 `_, Tiago Melo) * mgr/dashboard: Fix random E2E error in mgr-modules (`pr#35706 `_, Tiago Melo) * mgr/dashboard: Fix redirect after changing password (`pr#35243 `_, Tiago Melo) * mgr/dashboard: Prevent dashboard breakdown on bad pool selection (`pr#35135 `_, Stephan Müller) * mgr/dashboard: Proposed About Modal box (`pr#35291 `_, Ngwa Sedrick Meh, Tiago Melo) * mgr/dashboard: Reduce requests in Mirroring page (`pr#34992 `_, Tiago Melo) * mgr/dashboard: Replace Protractor with Cypress (`pr#34910 `_, Tiago Melo) * mgr/dashboard: Show labels in hosts page (`pr#35517 `_, Volker Theile) * mgr/dashboard: Show table details inside the datatable (`pr#35270 `_, Sebastian Krah) * mgr/dashboard: add telemetry report component (`pr#34850 `_, Tatjana Dehler) * mgr/dashboard: displaying Service detail inside table (`pr#35269 `_, Kiefer Chang) * mgr/dashboard: fix autocomplete input backgrounds in chrome and firefox (`pr#35718 `_, Ishan Rai) * mgr/dashboard: grafana panels for rgw multisite sync performance (`pr#35693 `_, Alfonso Martínez) * mgr/dashboard: monitoring menu entry should indicate firing alerts (`pr#34822 `_, Tiago Melo, Volker Theile) * mgr/dashboard: redesign the login screen (`pr#35268 `_, Ishan Rai) * mgr/dashboard: remove space after service name in the Hosts List table (`pr#35531 `_, Kiefer Chang) * mgr/dashboard: replace hard coded telemetry URLs (`pr#35231 `_, Tatjana Dehler) * mgr/rbd_support: rename "rbd_trash_trash_purge_schedule" oid (`pr#35436 `_, Nathan Cutler, Mykola Golub) * mgr/status: Fix "ceph fs status" json format writing to stderr (`pr#34727 `_, Kotresh HR) * mgr/test_orchestrator: fix _get_ceph_daemons() (`pr#34979 `_, Alfonso Martínez) * mgr/volumes: Add snapshot info command (`pr#35670 `_, Kotresh HR) * mgr/volumes: Create subvolume with isolated rados namespace (`pr#35671 `_, Kotresh HR) * mgr/volumes: Fix subvolume create idempotency (`pr#35256 `_, Kotresh HR) * mgr: synchronize ClusterState's health and mon_status (`pr#34995 `_, Radoslaw Zarzynski) * monitoring: Fix "10% OSDs down" alert description (`pr#35151 `_, Benoît Knecht) * monitoring: fixing some issues in RBD detail dashboard (`pr#35463 `_, Kiefer Chang) * rbd: librbd: Watcher should not attempt to re-watch after detecting blacklisting (`pr#35439 `_, Jason Dillaman) * rbd: librbd: avoid completing mirror:DisableRequest while holding its lock (`pr#35126 `_, Jason Dillaman) * rbd: librbd: copy API should not inherit v1 image format by default (`pr#35255 `_, Jason Dillaman) * rbd: librbd: make rbd_read_from_replica_policy actually work (`pr#35438 `_, Ilya Dryomov) * rbd: pybind: RBD.create() method's 'old_format' parameter now defaults to False (`pr#35435 `_, Jason Dillaman) * rbd: rbd-mirror: don't hold (stale) copy of local image journal pointer (`pr#35430 `_, Jason Dillaman) * rbd: rbd-mirror: stop local journal replayer first during shut down (`pr#35440 `_, Jason Dillaman, Mykola Golub) * rbd: rbd-mirror: wait for in-flight start/stop/restart (`pr#35437 `_, Mykola Golub) * rgw: add "rgw-orphan-list" tool and "radosgw-admin bucket radoslist ..." (`pr#34991 `_, J. Eric Ivancich) * rgw: amqp: fix the "routable" delivery mode (`pr#35433 `_, Yuval Lifshitz) * rgw: anonomous swift to obj that dont exist should 401 (`pr#35120 `_, Matthew Oliver) * rgw: fix bug where bucket listing end marker not always set correctly (`pr#34993 `_, J. Eric Ivancich) * rgw: fix rgw tries to fetch anonymous user (`pr#34988 `_, Or Friedmann) * rgw: fix some list buckets handle leak (`pr#34985 `_, Tianshan Qu) * rgw: gc: Clearing off urgent data in bufferlist, before (`pr#35434 `_, Pritha Srivastava) * rgw: lc: enable thread-parallelism in RGWLC (`pr#35431 `_, Matt Benjamin) * rgw: notifications: fix zero size in notifications (`pr#34940 `_, J. Eric Ivancich, Yuval Lifshitz) * rgw: notifications: version id was not sent in versioned buckets (`pr#35254 `_, Yuval Lifshitz) * rgw: radosgw-admin: fix infinite loops in 'datalog list' (`pr#34989 `_, Casey Bodley) * rgw: url: fix amqp urls with vhosts (`pr#35432 `_, Yuval Lifshitz) * tests: migrate qa/ to Python3 (`pr#35364 `_, Kyr Shatskyy, Ilya Dryomov, Xiubo Li, Kefu Chai, Casey Bodley, Rishabh Dave, Patrick Donnelly, Sidharth Anupkrishnan, Michael Fritch) v15.2.3 Octopus =============== This is the third bug-fix release of the Ceph Octopus stable release series. This release mainly is a workaround for a potential OSD corruption in v15.2.2. We advise users to upgrade to v15.2.3 directly. For users running v15.2.2 please execute the following:: ceph config set osd bluefs_preextend_wal_files false Changelog --------- * bluestore: remove preextended WAL support (`issue#45613 `_, Igor Fedotov, Neha Ojha) v15.2.2 Octopus =============== This is the second bug-fix release of the Ceph Octopus stable release series. This release brings a range of fixes across all components, as well as patching a security flaw. We recommend that all Octopus users upgrade. Notable Changes --------------- * CVE-2020-10736: Fixed an authorization bypass in mons & mgrs (Olle SegerDahl, Josh Durgin) Changelog --------- * bluestore,core: common/options: Disable bluefs_buffered_io by default again (`pr#34353 `_, Mark Nelson) * bluestore: os/bluestore: Don't pollute old journal when add new device (`pr#34795 `_, Yang Honggang) * bluestore: os/bluestore: fix 'unused' calculation (`pr#34793 `_, Igor Fedotov, xie xingguo) * bluestore: os/bluestore: open DB in read-only when expanding DB/WAL (`pr#34610 `_, Adam Kupczyk, Igor Fedotov) * build/ops: rpm: add python3-saml as install dependency (`pr#34474 `_, Ernesto Puerta) * build/ops: rpm: drop "is_opensuse" conditional in SUSE-specific bcond block (`pr#34790 `_, Nathan Cutler) * build/ops: spec: address some warnings raised by RPM 4.15.1 (`pr#34526 `_, Nathan Cutler) * ceph-volume/batch: check lvs list before access (`pr#34480 `_, Jan Fajerski) * ceph-volume/batch: return success when all devices are filtered (`pr#34477 `_, Jan Fajerski) * ceph-volume: update functional testing deploy.yml playbook (`pr#34886 `_, Guillaume Abrioux) * cephadm: Fix check_ip_port to work with IPv6 (`pr#34350 `_, Ricardo Marques) * cephadm: Update images used (`pr#34686 `_, Sebastian Wagner) * cephadm: ceph-volume: disallow concurrent execution (`pr#34423 `_, Sage Weil) * cephadm: rm-cluster clean up /etc/ceph (`pr#34299 `_, Daniel-Pivonka) * cephfs,mgr: mgr/volumes: Add interface to get subvolume metadata (`pr#34681 `_, Kotresh HR) * cephfs,mgr: mgr: force purge normal ceph entities from service map (`issue#44677 `_, `pr#34800 `_, Venky Shankar) * cephfs,tools: cephfs-journal-tool: correctly parse --dry_run argument (`pr#34804 `_, Milind Changire) * cephfs,tools: tools/cephfs: add accounted_rstat/rstat when building file dentry (`pr#34803 `_, Xiubo Li) * cephfs: ceph-fuse: link to libfuse3 and pass `-o big_writes` to libfuse if libfuse < 3.0.0 (`pr#34769 `_, Xiubo Li, "Yan, Zheng", Kefu Chai) * cephfs: client: reset requested_max_size if file write is not wanted (`pr#34766 `_, "Yan, Zheng") * cephfs: mds: fix 'if there is lock cache on dir' check (`pr#34273 `_, "Yan, Zheng") * cephfs: mon/FSCommands: Fix 'add_data_pool' command and 'fs new' command (`pr#34775 `_, Ramana Raja) * cephfs: qa: install task runs twice with double unwind causing fatal errors (`pr#34912 `_, Patrick Donnelly) * core,mon: mon/OSDMonitor: allow trimming maps even if osds are down (`pr#34924 `_, Joao Eduardo Luis) * core: ceph-object-corpus: update to octopus (`pr#34797 `_, Josh Durgin) * core: mgr/DaemonServer: fetch metadata for new daemons (e.g., mons) (`pr#34416 `_, Sage Weil) * core: mon/OSDMonitor: Always tune priority cache manager memory on all mons (`pr#34917 `_, Sridhar Seshasayee) * core: mon: calculate min_size on osd pool set size (`pr#34528 `_, Deepika Upadhyay) * core: osd/PeeringState: do not trim pg log past last_update_ondisk (`pr#34807 `_, xie xingguo, Samuel Just) * core: osd/PrimaryLogPG: fix SPARSE_READ stat (`pr#34809 `_, Yan Jun) * devices/simple/scan: Fix string in log statement (`pr#34446 `_, Jan Fajerski) * doc: cephadm: Batch backport April (1) (`pr#34554 `_, Matthew Oliver, Sage Weil, Sebastian Wagner, Michael Fritch, Tim, Jeff Layton, Juan Miguel Olmo Martínez, Joshua Schmid) * doc: cephadm: Batch backport April (2) (`issue#45029 `_, `pr#34687 `_, Maran Hidskes, Kiefer Chang, Matthew Oliver, Sebastian Wagner, Andreas Haase, Tim Serong, Zac Dover, Michael Fritch, Joshua Schmid) * doc: cephadm: Batch backport April (3) (`pr#34742 `_, Sebastian Wagner, Dimitri Savineau, Michael Fritch) * doc: cephadm: batch backport March (`pr#34438 `_, Jan Fajerski, Sebastian Wagner, Daniel-Pivonka, Michael Fritch, Sage Weil) * doc: doc/releases/nautilus: restart OSDs to make them bind to v2 addr (`pr#34523 `_, Nathan Cutler) * mgr/dashboard: 'Prometheus / All Alerts' page shows progress bar (`pr#34631 `_, Volker Theile) * mgr/dashboard: Fix ServiceDetails and PoolDetails unit tests (`pr#34760 `_, Tiago Melo) * mgr/dashboard: Fix iSCSI's username and password validation (`pr#34547 `_, Tiago Melo) * mgr/dashboard: Improve iSCSI CHAP message (`pr#34630 `_, Ricardo Marques) * mgr/dashboard: Prevent iSCSI target recreation when editing controls (`pr#34548 `_, Tiago Melo) * mgr/dashboard: RGW auto refresh is not working (`pr#34739 `_, Avan Thakkar) * mgr/dashboard: Repair broken grafana panels (`pr#34495 `_, Kristoffer Grönlund) * mgr/dashboard: Update translations on octopus (`pr#34309 `_, Sebastian Krah) * mgr/dashboard: add crush rule test suite (`pr#34211 `_, Tatjana Dehler) * mgr/dashboard: fix API tests to be py3 compatible (`pr#34759 `_, Kefu Chai, Laura Paduano, Alfonso Martínez) * mgr/dashboard: fix errors related to frontend service subscriptions (`pr#34467 `_, Alfonso Martínez) * mgr/dashboard: fix tasks.mgr.dashboard.test_rgw.RgwBucketTest.test_all (`pr#34708 `_, Alfonso Martínez) * mgr/dashboard: lint error on plugins/debug.py (`pr#34625 `_, Volker Theile) * mgr/dashboard: shorten "Container ID" and "Container image ID" in Services page (`pr#34648 `_, Volker Theile) * mgr/dashboard: use FQDN for failover redirection (`pr#34498 `_, Ernesto Puerta) * mgr: mgr/PyModule: fix missing tracebacks in handle_pyerror() (`pr#34626 `_, Tim Serong) * mgr: mgr/telegraf: catch FileNotFoundError exception (`pr#34629 `_, Kefu Chai) * monitoring: Fix pool capacity incorrect (`pr#34449 `_, James Cheng) * monitoring: alert for prediction of disk and pool fill up broken (`pr#34395 `_, Patrick Seidensal) * monitoring: fix decimal precision in Grafana %percentages (`pr#34828 `_, Ernesto Puerta) * monitoring: root volume full alert fires false positives (`pr#34418 `_, Patrick Seidensal) * pybind,rbd: pybind/rbd: ensure image is open before permitting operations (`pr#34425 `_, Mykola Golub) * pybind,rbd: pybind/rbd: fix no lockers are obtained, ImageNotFound exception will be output (`pr#34387 `_, zhangdaolong) * qa/suites/rados/cephadm/upgrade: start from v15.2.0 (`pr#34440 `_, Sage Weil) * qa/tasks/cephadm: add 'roleless' mode (`pr#34407 `_, Sage Weil) * rbd,tests: tests: update unmap.t for table spacing changes (`pr#34819 `_, Ilya Dryomov) * rbd: rbd-mirror: improved replication statistics (`pr#34810 `_, Mykola Golub, Jason Dillaman) * rbd: rbd: ignore tx-only mirror peers when adding new peers (`pr#34638 `_, Jason Dillaman) * rgw: Disable prefetch of entire head object when GET request with range header (`pr#34826 `_, Or Friedmann) * rgw: pubsub sync module ignores ERR_USER_EXIST (`pr#34825 `_, Casey Bodley) * rgw: radosgw-admin: add support for --bucket-id in bucket stats command (`pr#34816 `_, Vikhyat Umrao) * rgw: reshard: skip stale bucket id entries from reshard queue (`pr#34734 `_, Abhishek Lekshmanan) * rgw: use DEFER_DROP_PRIVILEGES flag unconditionally (`pr#34731 `_, Casey Bodley) v15.2.1 Octopus =============== This is the first bugfix release of Ceph Octopus, we recommend all Octopus users upgrade. This release fixes an upgrade issue and also has 2 security fixes Notable Changes --------------- * issue#44759: Fixed luminous->nautilus->octopus upgrade asserts * CVE-2020-1759: Fixed nonce reuse in msgr V2 secure mode * CVE-2020-1760: Fixed XSS due to RGW GetObject header-splitting Changelog --------- * build/ops: fix ceph_release type to 'stable' (`pr#34194 `_, Sage Weil) * build/ops: vstart_runner.py: fix OSError when checking if non-existent path is mounted (`pr#34132 `_, Alfonso Martínez) * cephadm: Add alertmanager adopt (`pr#34157 `_, Eric Jackson) * cephadm: Add alertmanager sample (`pr#34158 `_, Eric Jackson) * cephadm: Fix truncated output of "ceph mgr dump" (`pr#34258 `_, Sebastian Wagner) * mgr/cephadm: Add example to run when debugging ssh failures (`pr#34153 `_, Sebastian Wagner) * mgr/cephadm: DriveGroupSpec needs to support/ignore _unmanaged_ (`pr#34185 `_, Joshua Schmid) * mgr/cephadm: bind grafana to all interfaces (`pr#34191 `_, Sage Weil) * mgr/cephadm: fix 'orch ps --refresh' (`pr#34190 `_, Sage Weil) * mgr/cephadm: fix 'upgrade start' message when specifying a version (`pr#34186 `_, Sage Weil) * mgr/cephadm: include alerts in prometheus deployment (`pr#34155 `_, Sage Weil) * mgr/cephadm: point alertmanager at all mgr/dashboard URLs (`pr#34154 `_, Sage Weil) * mgr/cephadm: provision nfs-ganesha via orchestrator (`pr#34192 `_, Michael Fritch) * mgr/dashboard: Check for missing npm resolutions (`pr#34202 `_, Tiago Melo) * mgr/dashboard: NoRebalance flag is added to the Dashboard (`pr#33939 `_, Nizamudeen) * mgr/dashboard: correct Orchestrator documentation link (`pr#34212 `_, Tatjana Dehler) * mgr/dashboard: do not fail on user creation (CLI) (`pr#34280 `_, Tatjana Dehler) * mgr/orch: allow list daemons by service_name (`pr#34160 `_, Kiefer Chang) * mgr/prometheus: ceph_pg\_\* metrics contains last value instead of sum across all reported states (`pr#34163 `_, Jacek Suchenia) * mgr/rook: Blinking lights (`pr#34199 `_, Juan Miguel Olmo Martínez) * osd/PeeringState: drop mimic assert (`pr#34204 `_, Sage Weil) * osd/PeeringState: fix pending want_acting vs osd offline race (`pr#34123 `_, xie xingguo) * pybind/mgr: fix config_notify handling of default values (`pr#34178 `_, Nathan Cutler) * rbd: librbd: fix client backwards compatibility issues (`issue#39450 `_, `issue#38834 `_, `pr#34323 `_, Jason Dillaman) * tools: ceph-backport.sh: add deprecation warning (`pr#34125 `_, Nathan Cutler) v15.2.0 Octopus =============== This is the first stable release of Ceph Octopus. Major Changes from Nautilus --------------------------- General ~~~~~~~ * A new deployment tool called **cephadm** has been introduced that integrates Ceph daemon deployment and management via containers into the orchestration layer. For more information see :ref:`cephadm`. * Health alerts can now be muted, either temporarily or permanently. * Health alerts are now raised for recent Ceph daemons crashes. * A simple 'alerts' module has been introduced to send email health alerts for clusters deployed without the benefit of an existing external monitoring infrastructure. * :ref:`Packages ` are built for the following distributions: - CentOS 8 - CentOS 7 (partial--see below) - Ubuntu 18.04 (Bionic) - Debian Buster - :ref:`Container image ` (based on CentOS 8) Note that the dashboard, prometheus, and restful manager modules will not work on the CentOS 7 build due to Python 3 module dependencies that are missing in CentOS 7. Besides this packages built by the community will also available for the following distros: - Fedora (33/rawhide) - openSUSE (15.2, Tumbleweed) Dashboard ~~~~~~~~~ The :ref:`mgr-dashboard` has gained a lot of new features and functionality: * UI Enhancements - New vertical navigation bar - New unified sidebar: better background task and events notification - Shows all progress mgr module notifications - Multi-select on tables to perform bulk operations * Dashboard user account security enhancements - Disabling/enabling existing user accounts - Clone an existing user role - Users can change their own password - Configurable password policies: Minimum password complexity/length requirements - Configurable password expiration - Change password after first login New and enhanced management of Ceph features/services: * OSD/device management - List all disks associated with an OSD - Add support for blinking enclosure LEDs via the orchestrator - List all hosts known by the orchestrator - List all disks and their properties attached to a node - Display disk health information (health prediction and SMART data) - Deploy new OSDs on new disks/hosts - Display and allow sorting by an OSD's default device class in the OSD table - Explicitly set/change the device class of an OSD, display and sort OSDs by device class * Pool management - Viewing and setting pool quotas - Define and change per-pool PG autoscaling mode * RGW management enhancements - Enable bucket versioning - Enable MFA support - Select placement target on bucket creation * CephFS management enhancements - CephFS client eviction - CephFS snapshot management - CephFS quota management - Browse CephFS directory * iSCSI management enhancements - Show iSCSI GW status on landing page - Prevent deletion of IQNs with open sessions - Display iSCSI "logged in" info * Prometheus alert management - List configured Prometheus alerts RADOS ~~~~~ * Objects can now be brought in sync during recovery by copying only the modified portion of the object, reducing tail latencies during recovery. * Ceph will allow recovery below *min_size* for Erasure coded pools, wherever possible. * The PG autoscaler feature introduced in Nautilus is enabled for new pools by default, allowing new clusters to autotune *pg num* without any user intervention. The default values for new pools and RGW/CephFS metadata pools have also been adjusted to perform well for most users. * BlueStore has received several improvements and performance updates, including improved accounting for "omap" (key/value) object data by pool, improved cache memory management, and a reduced allocation unit size for SSD devices. (Note that by default, the first time each OSD starts after upgrading to octopus it will trigger a conversion that may take from a few minutes to a few hours, depending on the amount of stored "omap" data.) * Snapshot trimming metadata is now managed in a more efficient and scalable fashion. RBD block storage ~~~~~~~~~~~~~~~~~ * Mirroring now supports a new snapshot-based mode that no longer requires the journaling feature and its related impacts in exchange for the loss of point-in-time consistency (it remains crash consistent). * Clone operations now preserve the sparseness of the underlying RBD image. * The trash feature has been improved to (optionally) automatically move old parent images to the trash when their children are all deleted or flattened. * The trash can be configured to automatically purge on a defined schedule. * Images can be online re-sparsified to reduce the usage of zeroed extents. * The ``rbd-nbd`` tool has been improved to use more modern kernel interfaces. * Caching has been improved to be more efficient and performant. * ``rbd-mirror`` automatically adjusts its per-image memory usage based upon its memory target. * A new persistent read-only caching daemon is available to offload reads from shared parent images. RGW object storage ~~~~~~~~~~~~~~~~~~ * New `Multisite Sync Policy`_ primitives for per-bucket replication. (EXPERIMENTAL) * S3 feature support: - Bucket Replication (EXPERIMENTAL) - `Bucket Notifications`_ via HTTP/S, AMQP and Kafka - Bucket Tagging - Object Lock - Public Access Block for buckets * Bucket sharding: - Significantly improved listing performance on buckets with many shards. - Dynamic resharding prefers prime shard counts for improved distribution. - Raised the default number of bucket shards to 11. * Added `HashiCorp Vault Integration`_ for SSE-KMS. * Added Keystone token cache for S3 requests. CephFS distributed file system ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * Inline data support in CephFS has been deprecated and will likely be removed in a future release. * MDS daemons can now be assigned to manage a particular file system via the new ``mds_join_fs`` option. * MDS now aggressively asks idle clients to trim caps which improves stability when file system load changes. * The mgr volumes plugin has received numerous improvements to support CephFS via CSI, including snapshots and cloning. * cephfs-shell has had numerous incremental improvements and bug fixes. Upgrading from Mimic or Nautilus -------------------------------- .. note:: You can monitor the progress of your upgrade at each stage with the ``ceph versions`` command, which will tell you what ceph version(s) are running for each type of daemon. Instructions ~~~~~~~~~~~~ .. highlight:: console #. Make sure your cluster is stable and healthy (no down or recovering OSDs). (Optional, but recommended.) #. Set the ``noout`` flag for the duration of the upgrade. (Optional, but recommended.):: # ceph osd set noout #. Upgrade monitors by installing the new packages and restarting the monitor daemons. For example, on each monitor host,:: # systemctl restart ceph-mon.target Once all monitors are up, verify that the monitor upgrade is complete by looking for the ``octopus`` string in the mon map. The command:: # ceph mon dump | grep min_mon_release should report:: min_mon_release 15 (octopus) If it doesn't, that implies that one or more monitors hasn't been upgraded and restarted and/or the quorum does not include all monitors. #. Upgrade ``ceph-mgr`` daemons by installing the new packages and restarting all manager daemons. For example, on each manager host,:: # systemctl restart ceph-mgr.target Verify the ``ceph-mgr`` daemons are running by checking ``ceph -s``:: # ceph -s ... services: mon: 3 daemons, quorum foo,bar,baz mgr: foo(active), standbys: bar, baz ... #. Upgrade all OSDs by installing the new packages and restarting the ceph-osd daemons on all OSD hosts:: # systemctl restart ceph-osd.target Note that the first time each OSD starts, it will do a format conversion to improve the accounting for "omap" data. This may take a few minutes to as much as a few hours (for an HDD with lots of omap data). You can disable this automatic conversion with:: # ceph config set osd bluestore_fsck_quick_fix_on_mount false You can monitor the progress of the OSD upgrades with the ``ceph versions`` or ``ceph osd versions`` commands:: # ceph osd versions { "ceph version 13.2.5 (...) mimic (stable)": 12, "ceph version 15.2.0 (...) octopus (stable)": 22, } #. Upgrade all CephFS MDS daemons. For each CephFS file system, #. Reduce the number of ranks to 1. (Make note of the original number of MDS daemons first if you plan to restore it later.):: # ceph status # ceph fs set max_mds 1 #. Wait for the cluster to deactivate any non-zero ranks by periodically checking the status:: # ceph status #. Take all standby MDS daemons offline on the appropriate hosts with:: # systemctl stop ceph-mds@ #. Confirm that only one MDS is online and is rank 0 for your FS:: # ceph status #. Upgrade the last remaining MDS daemon by installing the new packages and restarting the daemon:: # systemctl restart ceph-mds.target #. Restart all standby MDS daemons that were taken offline:: # systemctl start ceph-mds.target #. Restore the original value of ``max_mds`` for the volume:: # ceph fs set max_mds #. Upgrade all radosgw daemons by upgrading packages and restarting daemons on all hosts:: # systemctl restart ceph-radosgw.target #. Complete the upgrade by disallowing pre-Octopus OSDs and enabling all new Octopus-only functionality:: # ceph osd require-osd-release octopus #. If you set ``noout`` at the beginning, be sure to clear it with:: # ceph osd unset noout #. Verify the cluster is healthy with ``ceph health``. If your CRUSH tunables are older than Hammer, Ceph will now issue a health warning. If you see a health alert to that effect, you can revert this change with:: ceph config set mon mon_crush_min_required_version firefly If Ceph does not complain, however, then we recommend you also switch any existing CRUSH buckets to straw2, which was added back in the Hammer release. If you have any 'straw' buckets, this will result in a modest amount of data movement, but generally nothing too severe.:: ceph osd getcrushmap -o backup-crushmap ceph osd crush set-all-straw-buckets-to-straw2 If there are problems, you can easily revert with:: ceph osd setcrushmap -i backup-crushmap Moving to 'straw2' buckets will unlock a few recent features, like the `crush-compat` :ref:`balancer ` mode added back in Luminous. #. If you are upgrading from Mimic, or did not already do so when you upgraded to Nautlius, we recommended you enable the new :ref:`v2 network protocol `, issue the following command:: ceph mon enable-msgr2 This will instruct all monitors that bind to the old default port 6789 for the legacy v1 protocol to also bind to the new 3300 v2 protocol port. To see if all monitors have been updated,:: ceph mon dump and verify that each monitor has both a ``v2:`` and ``v1:`` address listed. #. Consider enabling the :ref:`telemetry module ` to send anonymized usage statistics and crash information to the Ceph upstream developers. To see what would be reported (without actually sending any information to anyone),:: ceph mgr module enable telemetry ceph telemetry show If you are comfortable with the data that is reported, you can opt-in to automatically report the high-level cluster metadata with:: ceph telemetry on For more information about the telemetry module, see :ref:`the documentation `. Upgrading from pre-Mimic releases (like Luminous) ------------------------------------------------- You *must* first upgrade to Mimic (13.2.z) or Nautilus (14.2.z) before upgrading to Octopus. Upgrade compatibility notes --------------------------- * Starting with Octopus, there is now a separate repository directory for each version on `download.ceph.com` (e.g., ``rpm-15.2.0`` and ``debian-15.2.0``). The traditional package directory that is named after the release (e.g., ``rpm-octopus`` and ``debian-octopus``) is now a symlink to the most recently bug fix version for that release. We no longer generate a single repository that combines all bug fix versions for a single named release. * The RGW "num_rados_handles" has been removed. If you were using a value of "num_rados_handles" greater than 1 multiply your current "objecter_inflight_ops" and "objecter_inflight_op_bytes" parameters by the old "num_rados_handles" to get the same throttle behavior. * Ceph now packages python bindings for python3.6 instead of python3.4, because python3 in EL7/EL8 is now using python3.6 as the native python3. see the `announcement`_ for more details on the background of this change. * librbd now uses a write-around cache policy be default, replacing the previous write-back cache policy default. This cache policy allows librbd to immediately complete write IOs while they are still in-flight to the OSDs. Subsequent flush requests will ensure all in-flight write IOs are completed prior to completing. The librbd cache policy can be controlled via a new "rbd_cache_policy" configuration option. * librbd now includes a simple IO scheduler which attempts to batch together multiple IOs against the same backing RBD data block object. The librbd IO scheduler policy can be controlled via a new "rbd_io_scheduler" configuration option. * RGW: radosgw-admin introduces two subcommands that allow the managing of expire-stale objects that might be left behind after a bucket reshard in earlier versions of RGW. One subcommand lists such objects and the other deletes them. Read the troubleshooting section of the dynamic resharding docs for details. * RGW: Bucket naming restrictions have changed and likely to cause InvalidBucketName errors. We recommend to set ``rgw_relaxed_s3_bucket_names`` option to true as a workaround. * In the Zabbix Mgr Module there was a typo in the key being send to Zabbix for PGs in backfill_wait state. The key that was sent was 'wait_backfill' and the correct name is 'backfill_wait'. Update your Zabbix template accordingly so that it accepts the new key being send to Zabbix. * zabbix plugin for ceph manager now includes osd and pool discovery. Update of zabbix_template.xml is needed to receive per-pool (read/write throughput, diskspace usage) and per-osd (latency, status, pgs) statistics * The format of all date + time stamps has been modified to fully conform to ISO 8601. The old format (``YYYY-MM-DD HH:MM:SS.ssssss``) excluded the ``T`` separator between the date and time and was rendered using the local time zone without any explicit indication. The new format includes the separator as well as a ``+nnnn`` or ``-nnnn`` suffix to indicate the time zone, or a ``Z`` suffix if the time is UTC. For example, ``2019-04-26T18:40:06.225953+0100``. Any code or scripts that was previously parsing date and/or time values from the JSON or XML structure CLI output should be checked to ensure it can handle ISO 8601 conformant values. Any code parsing date or time values from the unstructured human-readable output should be modified to parse the structured output instead, as the human-readable output may change without notice. * The ``bluestore_no_per_pool_stats_tolerance`` config option has been replaced with ``bluestore_fsck_error_on_no_per_pool_stats`` (default: false). The overall default behavior has not changed: fsck will warn but not fail on legacy stores, and repair will convert to per-pool stats. * The disaster-recovery related 'ceph mon sync force' command has been replaced with 'ceph daemon <...> sync_force'. * The ``osd_recovery_max_active`` option now has ``osd_recovery_max_active_hdd`` and ``osd_recovery_max_active_ssd`` variants, each with different default values for HDD and SSD-backed OSDs, respectively. By default ``osd_recovery_max_active`` now defaults to zero, which means that the OSD will conditionally use the HDD or SSD option values. Administrators who have customized this value may want to consider whether they have set this to a value similar to the new defaults (3 for HDDs and 10 for SSDs) and, if so, remove the option from their configuration entirely. * monitors now have a `ceph osd info` command that will provide information on all osds, or provided osds, thus simplifying the process of having to parse `osd dump` for the same information. * The structured output of ``ceph status`` or ``ceph -s`` is now more concise, particularly the `mgrmap` and `monmap` sections, and the structure of the `osdmap` section has been cleaned up. * A health warning is now generated if the average osd heartbeat ping time exceeds a configurable threshold for any of the intervals computed. The OSD computes 1 minute, 5 minute and 15 minute intervals with average, minimum and maximum values. New configuration option ``mon_warn_on_slow_ping_ratio`` specifies a percentage of ``osd_heartbeat_grace`` to determine the threshold. A value of zero disables the warning. New configuration option ``mon_warn_on_slow_ping_time`` specified in milliseconds over-rides the computed value, causes a warning when OSD heartbeat pings take longer than the specified amount. New admin command ``ceph daemon mgr.# dump_osd_network [threshold]`` command will list all connections with a ping time longer than the specified threshold or value determined by the config options, for the average for any of the 3 intervals. New admin command ``ceph daemon osd.# dump_osd_network [threshold]`` will do the same but only including heartbeats initiated by the specified OSD. * Inline data support for CephFS has been deprecated. When setting the flag, users will see a warning to that effect, and enabling it now requires the ``--yes-i-really-really-mean-it`` flag. If the MDS is started on a filesystem that has it enabled, a health warning is generated. Support for this feature will be removed in a future release. * ``ceph {set,unset} full`` is not supported anymore. We have been using ``full`` and ``nearfull`` flags in OSD map for tracking the fullness status of a cluster back since the Hammer release, if the OSD map is marked ``full`` all write operations will be blocked until this flag is removed. In the Infernalis release and Linux kernel 4.7 client, we introduced the per-pool full/nearfull flags to track the status for a finer-grained control, so the clients will hold the write operations if either the cluster-wide ``full`` flag or the per-pool ``full`` flag is set. This was a compromise, as we needed to support the cluster with and without per-pool ``full`` flags support. But this practically defeated the purpose of introducing the per-pool flags. So, in the Mimic release, the new flags finally took the place of their cluster-wide counterparts, as the monitor started removing these two flags from OSD map. So the clients of Infernalis and up can benefit from this change, as they won't be blocked by the full pools which they are not writing to. In this release, ``ceph {set,unset} full`` is now considered as an invalid command. And the clients will continue honoring both the cluster-wide and per-pool flags to be backward compatible with pre-infernalis clusters. * The telemetry module now reports more information. First, there is a new 'device' channel, enabled by default, that will report anonymized hard disk and SSD health metrics to telemetry.ceph.com in order to build and improve device failure prediction algorithms. If you are not comfortable sharing device metrics, you can disable that channel first before re-opting-in:: ceph config set mgr mgr/telemetry/channel_device false Second, we now report more information about CephFS file systems, including: - how many MDS daemons (in total and per file system) - which features are (or have been) enabled - how many data pools - approximate file system age (year + month of creation) - how many files, bytes, and snapshots - how much metadata is being cached We have also added: - which Ceph release the monitors are running - whether msgr v1 or v2 addresses are used for the monitors - whether IPv4 or IPv6 addresses are used for the monitors - whether RADOS cache tiering is enabled (and which mode) - whether pools are replicated or erasure coded, and which erasure code profile plugin and parameters are in use - how many hosts are in the cluster, and how many hosts have each type of daemon - whether a separate OSD cluster network is being used - how many RBD pools and images are in the cluster, and how many pools have RBD mirroring enabled - how many RGW daemons, zones, and zonegroups are present; which RGW frontends are in use - aggregate stats about the CRUSH map, like which algorithms are used, how big buckets are, how many rules are defined, and what tunables are in use If you had telemetry enabled, you will need to re-opt-in with:: ceph telemetry on You can view exactly what information will be reported first with:: $ ceph telemetry show # see everything $ ceph telemetry show basic # basic cluster info (including all of the new info) * Following invalid settings now are not tolerated anymore for the command `ceph osd erasure-code-profile set xxx`. * invalid `m` for "reed_sol_r6_op" erasure technique * invalid `m` and invalid `w` for "liber8tion" erasure technique * New OSD daemon command dump_recovery_reservations which reveals the recovery locks held (in_progress) and waiting in priority queues. * New OSD daemon command dump_scrub_reservations which reveals the scrub reservations that are held for local (primary) and remote (replica) PGs. * Previously, ``ceph tell mgr ...`` could be used to call commands implemented by mgr modules. This is no longer supported. Since Luminous, using ``tell`` has not been necessary: those same commands are also accessible without the ``tell mgr`` portion (e.g., ``ceph tell mgr influx foo`` is the same as ``ceph influx foo``. ``ceph tell mgr ...`` will now call admin commands--the same set of commands accessible via ``ceph daemon ...`` when you are logged into the appropriate host. * The ``ceph tell`` and ``ceph daemon`` commands have been unified, such that all such commands are accessible via either interface. Note that ceph-mgr tell commands are accessible via either ``ceph tell mgr ...`` or ``ceph tell mgr. ...``, and it is only possible to send tell commands to the active daemon (the standbys do not accept incoming connections over the network). * Ceph will now issue a health warning if a RADOS pool as a ``pg_num`` value that is not a power of two. This can be fixed by adjusting the pool to a nearby power of two:: ceph osd pool set pg_num Alternatively, the warning can be silenced with:: ceph config set global mon_warn_on_pool_pg_num_not_power_of_two false * The format of MDSs in ``ceph fs dump`` has changed. * The ``mds_cache_size`` config option is completely removed. Since Luminous, the ``mds_cache_memory_limit`` config option has been preferred to configure the MDS's cache limits. * The ``pg_autoscale_mode`` is now set to ``on`` by default for newly created pools, which means that Ceph will automatically manage the number of PGs. To change this behavior, or to learn more about PG autoscaling, see :ref:`pg-autoscaler`. Note that existing pools in upgraded clusters will still be set to ``warn`` by default. * The pool parameter ``target_size_ratio``, used by the pg autoscaler, has changed meaning. It is now normalized across pools, rather than specifying an absolute ratio. For details, see :ref:`pg-autoscaler`. If you have set target size ratios on any pools, you may want to set these pools to autoscale ``warn`` mode to avoid data movement during the upgrade:: ceph osd pool set pg_autoscale_mode warn * The ``upmap_max_iterations`` config option of mgr/balancer has been renamed to ``upmap_max_optimizations`` to better match its behaviour. * ``mClockClientQueue`` and ``mClockClassQueue`` OpQueue implementations have been removed in favor of of a single ``mClockScheduler`` implementation of a simpler OSD interface. Accordingly, the ``osd_op_queue_mclock*`` family of config options has been removed in favor of the ``osd_mclock_scheduler*`` family of options. * The config subsystem now searches dot ('.') delimited prefixes for options. That means for an entity like ``client.foo.bar``, its overall configuration will be a combination of the global options, ``client``, ``client.foo``, and ``client.foo.bar``. Previously, only global, ``client``, and ``client.foo.bar`` options would apply. This change may affect the configuration for clients that include a ``.`` in their name. * MDS default cache memory limit is now 4GB. * The behaviour of the ``-o`` argument to the rados tool has been reverted to its original behaviour of indicating an output file. This reverts it to a more consistent behaviour when compared to other tools. Specifying object size is now accomplished by using an upper-case O ``-O``. * In certain rare cases, OSDs would self-classify themselves as type 'nvme' instead of 'hdd' or 'ssd'. This appears to be limited to cases where BlueStore was deployed with older versions of ceph-disk, or manually without ceph-volume and LVM. Going forward, the OSD will limit itself to only 'hdd' and 'ssd' (or whatever device class the user manually specifies). * RGW: a mismatch between the bucket notification documentation and the actual message format was fixed. This means that any endpoints receiving bucket notification, will now receive the same notifications inside an JSON array named 'Records'. Note that this does not affect pulling bucket notification from a subscription in a 'pubsub' zone, as these are already wrapped inside that array. * The configuration value ``osd_calc_pg_upmaps_max_stddev`` used for upmap balancing has been removed. Instead use the mgr balancer config ``upmap_max_deviation`` which now is an integer number of PGs of deviation from the target PGs per OSD. This can be set with a command like ``ceph config set mgr mgr/balancer/upmap_max_deviation 2``. The default ``upmap_max_deviation`` is 1. There are situations where crush rules would not allow a pool to ever have completely balanced PGs. For example, if crush requires 1 replica on each of 3 racks, but there are fewer OSDs in one of the racks. In those cases, the configuration value can be increased. * MDS daemons can now be assigned to manage a particular file system via the new ``mds_join_fs`` option. The monitors will try to use only MDS for a file system with mds_join_fs equal to the file system name (strong affinity). Monitors may also deliberately failover an active MDS to a standby when the cluster is otherwise healthy if the standby has stronger affinity. * RGW Multisite: A new fine grained bucket-granularity policy configuration system has been introduced and it supersedes the previous coarse zone sync configuration (specifically the ``sync_from`` and ``sync_from_all`` fields in the zonegroup configuration. New configuration should only be configured after all relevant zones in the zonegroup have been upgraded. * RGW S3: Support has been added for BlockPublicAccess set of APIs at a bucket level, currently blocking/ignoring public acls & policies are supported. User/Account level APIs are planned to be added in the future * RGW: The default number of bucket index shards for new buckets was raised from 1 to 11 to increase the amount of write throughput for small buckets and delay the onset of dynamic resharding. This change only affects new deployments/zones. To change this default value on existing deployments, use ``radosgw-admin zonegroup modify --bucket-index-max-shards=11``. If the zonegroup is part of a realm, the change must be committed with ``radosgw-admin period update --commit`` - otherwise the change will take effect after radosgws are restarted. Changelog --------- * .gitignore: add more stuff (`pr#29568 `_, Volker Theile) * async/dpdk: fix compile errors from ceph::mutex update (`pr#30066 `_, yehu) * bluestore,build/ops,common,rgw: Enable _GLIBCXX_ASSERTIONS and fix unittest problems (`pr#32387 `_, Samuel Just) * bluestore,cephfs,common,core,mgr,mon,rbd,rgw: src/: s/Mutex/ceph::mutex/ (`pr#29113 `_, Kefu Chai) * bluestore,common,core,mgr,rbd: common/RefCountedObj: cleanup con/des (`pr#29672 `_, Patrick Donnelly) * bluestore,common,core,rgw: common, \\*: kill the bl::last_p member. Use iterator instead (`pr#32831 `_, Radoslaw Zarzynski) * bluestore,common: os/bluestore: s/align_down/p2align/ (`pr#29379 `_, Kefu Chai) * bluestore,core: common/options: Set bluestore min_alloc size to 4K (`pr#30698 `_, Mark Nelson) * bluestore,core: common/options: Set concurrent bluestore rocksdb compactions to 2 (`pr#29027 `_, Mark Nelson) * bluestore,core: mon,osd: only use new per-pool usage stats once \\*all\\* osds are reporting (`pr#28978 `_, Sage Weil) * bluestore,core: os/bluestore,mon: segregate omap keys by pool; report via df (`pr#29292 `_, Sage Weil) * bluestore,core: os/bluestore/BlueFS: explicit check for too-granular allocations (`pr#33027 `_, Sage Weil) * bluestore,core: os/bluestore/bluefs_types: consolidate contiguous extents (`pr#28821 `_, Sage Weil) * bluestore,core: os/bluestore/KernelDevice: fix RW_IO_MAX constant (`pr#29577 `_, Sage Weil) * bluestore,core: os/bluestore: do not set osd_memory_target default from cgroup limit (`pr#29581 `_, Sage Weil) * bluestore,core: os/bluestore: drop (semi-broken) nvme automatic class (`pr#31796 `_, Sage Weil) * bluestore,core: os/bluestore: expand lttng tracepoints, improve fio_ceph_objectstore backend (`pr#29674 `_, Samuel Just) * bluestore,core: os/bluestore: Keep separate onode cache pinned list (`pr#30964 `_, Mark Nelson) * bluestore,core: os/bluestore: prefix omap of temp objects by real pool (`pr#29717 `_, xie xingguo) * bluestore,core: os/bluestore: Unify on preadv for io_uring and future refactor (`pr#28025 `_, Mark Nelson) * bluestore,core: os/bluestore: v.2 framework for more intelligent DB space usage (`pr#29687 `_, Igor Fedotov) * bluestore,mgr,rgw: rgw,bluestore: fixes to address failures from check-generated.sh (`pr#29862 `_, Kefu Chai) * bluestore,mon: os/bluestore: create the tail when first set FLAG_OMAP (`pr#27627 `_, Tao Ning) * bluestore,tools: os/bluestore/bluestore-tool: minor fixes around migrate (`pr#28651 `_, Igor Fedotov) * bluestore,tools: tools/ceph-objectstore-tool: implement onode metadata dump (`pr#27869 `_, Igor Fedotov) * bluestore,tools: tools/ceph-objectstore-tool: introduce list-slow-omap command (`pr#27985 `_, Igor Fedotov) * bluestore: BlueFS: prevent BlueFS::dirty_files from being leaked when syncing metadata (`pr#30631 `_, Xuehan Xu) * bluestore: bluestore/allocator: Ageing test for bluestore allocators (`pr#22574 `_, Adam Kupczyk) * bluestore: bluestore/bdev: initialize size when creating object (`pr#29968 `_, Willem Jan Withagen) * bluestore: bluestore/bluefs: make accounting resiliant to unlock() (`pr#32584 `_, Adam Kupczyk) * bluestore: common/options.cc: change default value of bluestore_fsck_on_mount_deep to false (`pr#29408 `_, Neha Ojha) * bluestore: common/options: bluestore 64k min_alloc_size for HDD (`pr#32809 `_, Sage Weil) * bluestore: NVMEDevice: Remove the unnecessary aio_wait in sync read (`pr#33597 `_, Ziye Yang) * bluestore: NVMEDevice: Split the read I/O if the io size is large (`pr#32647 `_, Ziye Yang) * bluestore: os/bluestore/Blue(FS|Store): uint64_t alloc_size (`pr#32484 `_, Bernd Zeimetz) * bluestore: os/bluestore/BlueFS: clear newly allocated space for WAL logs (`pr#30549 `_, Adam Kupczyk) * bluestore: os/bluestore/BlueFS: fixed printing stats (`pr#33235 `_, Adam Kupczyk) * bluestore: os/bluestore/BlueFS: less verbose about alloc adjustments (`pr#33512 `_, Sage Weil) * bluestore: os/bluestore/BlueFS: Move bluefs alloc size initialization log message to log level 1 (`pr#29822 `_, Vikhyat Umrao) * bluestore: os/bluestore/BlueFS: replace flush_log with sync_metadata (`pr#32563 `_, Jianpeng Ma) * bluestore: os/bluestore/BlueFS: use 64K alloc_size on the shared device (`pr#29537 `_, Sage Weil, Neha Ojha) * bluestore: os/bluestore/BlueStore.cc: set priorities for compression stats (`pr#31959 `_, Neha Ojha) * bluestore: os/bluestore/spdk: Fix the overflow error of parsing spdk coremask (`pr#32440 `_, Hu Ye, Chunsong Feng, luo rixin) * bluestore: os/bluestore: Actually wait until completion in write_sync (`pr#26909 `_, Vitaliy Filippov) * bluestore: os/bluestore: add bluestore_bluefs_max_free; smooth space balancing a bit (`pr#30231 `_, xie xingguo) * bluestore: os/bluestore: add slow op detection for collection_listing (`issue#40741 `_, `pr#29085 `_, Igor Fedotov) * bluestore: os/bluestore: allocate Task on stack (`pr#33358 `_, Jun Su) * bluestore: os/bluestore: apply garbage collection against excessive blob count growth (`pr#28229 `_, Igor Fedotov) * bluestore: os/bluestore: AVL-tree & extent - based space allocator (`pr#30897 `_, Adam Kupczyk, xie xingguo, Kefu Chai) * bluestore: os/bluestore: avoid length overflow in extents returned by Stupid (`issue#40703 `_, `pr#28945 `_, Igor Fedotov) * bluestore: os/bluestore: avoid race between split_cache and get/put pin/unpin (`pr#32665 `_, Sage Weil) * bluestore: os/bluestore: avoid unnecessary notify (`pr#29345 `_, Jianpeng Ma) * bluestore: os/bluestore: be more verbose doing bluefs log replay (`pr#27615 `_, Igor Fedotov) * bluestore: os/bluestore: bluefs_preextend_wal_files=true (`pr#28322 `_, Sage Weil) * bluestore: os/bluestore: call fault_range prior to looking for blob to reuse (`pr#27444 `_, Igor Fedotov) * bluestore: os/bluestore: check bluefs allocations on log replay (`pr#31513 `_, Igor Fedotov) * bluestore: os/bluestore: check return value of func _open_db_and_around (`pr#27477 `_, Jianpeng Ma) * bluestore: os/bluestore: cleanup around allocator calls (`pr#29068 `_, Igor Fedotov) * bluestore: os/bluestore: cleanups (`pr#30737 `_, Kefu Chai) * bluestore: os/bluestore: consolidate extents from the same device only (`pr#31621 `_, Igor Fedotov) * bluestore: os/bluestore: correctly measure deferred writes into new blobs (`issue#38816 `_, `pr#27789 `_, Sage Weil) * bluestore: os/bluestore: deferred IO notify and locking optimization (`pr#29522 `_, Jianpeng Ma) * bluestore: os/bluestore: do not check osd_max_object_size in _open_path() (`pr#26176 `_, Igor Fedotov) * bluestore: os/bluestore: do not mark per_pool_omap updated unless we fixed it (`pr#31167 `_, Sage Weil) * bluestore: os/bluestore: dont round_up_to in apply_for_bitset_range (`pr#31903 `_, Jianpeng Ma) * bluestore: os/bluestore: dump onode before no available blob id abort (`pr#27911 `_, Igor Fedotov) * bluestore: os/bluestore: dump onode that has too many spanning blobs (`pr#28010 `_, Igor Fedotov) * bluestore: os/bluestore: fix >2GB writes (`pr#27871 `_, Sage Weil, kungf) * bluestore: os/bluestore: fix bitmap allocator issues (`pr#26939 `_, Igor Fedotov) * bluestore: os/bluestore: fix duplicate allocations in bmap allocator (`issue#40080 `_, `pr#28496 `_, Igor Fedotov) * bluestore: os/bluestore: fix duplicative and misleading debug in KernelDevice::open() (`pr#28630 `_, Radoslaw Zarzynski) * bluestore: os/bluestore: fix for FreeBSD iocb structure (`pr#27458 `_, Willem Jan Withagen) * bluestore: os/bluestore: fix invalid stray shared blob detection in fsck (`pr#30616 `_, Igor Fedotov) * bluestore: os/bluestore: fix missing discard in BlueStore::_kv_sync_thread (`pr#27843 `_, Junhui Tang) * bluestore: os/bluestore: fix origin reference in logging slow ops (`pr#27951 `_, Igor Fedotov) * bluestore: os/bluestore: fix out-of-bound access in bmap allocator (`pr#27691 `_, Igor Fedotov) * bluestore: os/bluestore: fix per-pool omap repair (`pr#32925 `_, Igor Fedotov) * bluestore: os/bluestore: fix space balancing overflow (`pr#30255 `_, xie xingguo) * bluestore: os/bluestore: fix wakeup bug (`pr#31931 `_, Jianpeng Ma) * bluestore: os/bluestore: introduce legacy statfs and dev size mismatch alerts (`pr#27519 `_, Sage Weil, Igor Fedotov) * bluestore: os/bluestore: introduce new io_uring IO engine (`pr#27392 `_, Roman Penyaev) * bluestore: os/bluestore: its better to erase spanning blob once (`pr#29238 `_, Xiangyang Yu) * bluestore: os/bluestore: load OSD all compression settings unconditionally (`issue#40480 `_, `pr#28688 `_, Igor Fedotov) * bluestore: os/bluestore: log allocation stats on a daily basis (`pr#33565 `_, Igor Fedotov) * bluestore: os/bluestore: memorize layout of BlueFS on management (`pr#30593 `_, Radoslaw Zarzynski) * bluestore: os/bluestore: Merge deferred_finisher and finisher (`pr#29623 `_, Jianpeng Ma) * bluestore: os/bluestore: minor improvements/cleanup around allocator (`pr#29738 `_, Igor Fedotov) * bluestore: os/bluestore: more aggressive deferred submit when onode trim skipping (`issue#21531 `_, `pr#25697 `_, Zengran Zhang) * bluestore: os/bluestore: more smart allocator dump when lacking space for bluefs (`issue#40623 `_, `pr#28845 `_, Igor Fedotov) * bluestore: os/bluestore: new bluestore_debug_enforce_settings option (`pr#27132 `_, Igor Fedotov) * bluestore: os/bluestore: no need protected by OpSequencer::qlock (`pr#29488 `_, Jianpeng Ma) * bluestore: os/bluestore: no need to add tail length (revert PR#29185) (`pr#29465 `_, Xiangyang Yu) * bluestore: os/bluestore: print correctly info (`pr#29939 `_, Jianpeng Ma) * bluestore: os/bluestore: print error if spdk_nvme_ns_cmd_writev() fails (`pr#31932 `_, NancySu05) * bluestore: os/bluestore: proper locking for BlueFS prefetching (`pr#29012 `_, Igor Fedotov) * bluestore: os/bluestore: reduce wakeups (`pr#29130 `_, Jianpeng Ma) * bluestore: os/bluestore: Refactor Bluestore Caches (`pr#28597 `_, Mark Nelson) * bluestore: os/bluestore: remove unused arg to _get_deferred_op() (`issue#40918 `_, `pr#29320 `_, Sage Weil) * bluestore: os/bluestore: remove unused _tune_cache_size() method declaration (`pr#29393 `_, Igor Fedotov) * bluestore: os/bluestore: restore and fix bug with onode cache pinning (`pr#31778 `_, Josh Durgin) * bluestore: os/bluestore: revert cache pinned list (`pr#31180 `_, Sage Weil) * bluestore: os/bluestore: set STATE_KV_SUBMITTED properly (`pr#30753 `_, Igor Fedotov) * bluestore: os/bluestore: show device name in osd metadata output (`pr#28107 `_, Igor Fedotov) * bluestore: os/bluestore: silence StupidAllocator reorder warning (`pr#29866 `_, Jos Collin) * bluestore: os/bluestore: simplify multithreaded shallow fsck (`pr#31473 `_, Igor Fedotov) * bluestore: os/bluestore: simplify per-pool-stat config options (`pr#30350 `_, Sage Weil, Igor Fedotov) * bluestore: os/bluestore: support RocksDB prefetch in buffered read mode (`issue#36482 `_, `pr#27782 `_, Igor Fedotov) * bluestore: os/bluestore: tiny tracepoints improvement (`pr#31669 `_, Adam Kupczyk) * bluestore: os/bluestore: upgrade legacy omap to per-pool format automatically (`pr#32758 `_, Igor Fedotov) * bluestore: os/bluestore: verify disk layout of BlueFS (`issue#25098 `_, `pr#30109 `_, Radoslaw Zarzynski) * bluestore: os/bluestore:fix two calculation bugs (`pr#29185 `_, Xiangyang Yu) * bluestore: os/ceph-bluestore-tool: bluefs-bdev-expand asserts if no WAL (`pr#27445 `_, Igor Fedotov) * bluestore: os/objectstore: add new op OP_CREATE for create a new object (`pr#26251 `_, Jianpeng Ma) * bluestore: Revert os/bluestore: add kv_drain_preceding_waiters indicate drain_preceding. (`pr#31503 `_, Sage Weil) * bluestore: test/fio: handle nullptr when parsing throttle params (`pr#31681 `_, Igor Fedotov) * bluestore: [bluestore][tools] Inspect allocations in bluestore (`pr#29425 `_, Adam Kupczyk) * build(deps): bump lodash from 4.17.11 to 4.17.13 in /src/pybind/mgr/dashboard/frontend (`pr#29192 `_, dependabot[bot]) * build/ops,cephfs,common,core,rbd: Fix big-endian handling (`pr#30079 `_, Ulrich Weigand) * build/ops,cephfs: mgr/ssh: make mds add work (`pr#31059 `_, Sage Weil) * build/ops,common,core: common, include: bump the version of ceph::buffers C++ API (`pr#33373 `_, Radoslaw Zarzynski) * build/ops,common,mgr: python-common: Python common package (`pr#28915 `_, Kefu Chai, Sebastian Wagner) * build/ops,common,rgw: rgw, common, build: drop NSS support (`pr#27834 `_, Radoslaw Zarzynski) * build/ops,core,rbd: Windows support [part 1] (`pr#31981 `_, Lucian Petrut, Alin Gabriel Serdean) * build/ops,core: ceph-crash: use client.crash[.host] to post, and provsion keys via mgr/ssh + ceph-daemon (`pr#30734 `_, Sage Weil) * build/ops,core: debian: fix ceph-mgr-modules-core files (`pr#33468 `_, Sage Weil) * build/ops,core: os/bluestore: fix pmem osd build problem (`pr#28761 `_, Peterson, Scott, Li, Xiaoyan) * build/ops,core: qa: stop testing on 16.04 xenial (`pr#28943 `_, Sage Weil) * build/ops,mgr: mgr/diskprediction_local: Replaced old models and updated predictor (`pr#29437 `_, Karanraj Chauhan) * build/ops,mgr: systemd: ceph-mgr: set MemoryDenyWriteExecute to false (`issue#39628 `_, `pr#28023 `_, Ricardo Dias) * build/ops,pybind: cmake, pybind: fix build on armhf (`pr#28843 `_, Kefu Chai) * build/ops,rbd: rpm,deb: fix python dateutil module dependency (`pr#33624 `_, Mykola Golub) * build/ops,rgw: build/rgw: unittest_rgw_dmclock_scheduler does not need Boost_LIBRARIES (`pr#27466 `_, Willem Jan Withagen) * build/ops,rgw: install-deps.sh, cmake: use boost 1.72 on bionic (`pr#32391 `_, Kefu Chai) * build/ops,tests: ceph-daemon: a few fixes; functional test (`pr#31094 `_, Sage Weil) * build/ops,tests: googletest: pick up change to suppress CMP0048 warning (`pr#29471 `_, Kefu Chai) * build/ops,tests: install-deps.sh,deb,rpm: move python-saml deps into debian/control an\xe2\x80\xa6 (`pr#29840 `_, Kefu Chai) * build/ops,tools: src/script/credits.sh - switch to bash (`pr#32736 `_, Kai Wagner) * build/ops,tools: vstart: Now all OSDs are starting in parallel. Use --no-parallel to revert to sequential (`pr#31732 `_, Adam Kupczyk) * build/ops: .github/stale.yml: warn at 60, close at 90; adjust message (`pr#24744 `_, Lenz Grimmer, Sage Weil) * build/ops: admin/build-doc: keep-going when finding warnings (`pr#27050 `_, Abhishek Lekshmanan) * build/ops: build-doc: allow building docs on fedora 30 (`pr#30136 `_, Yuval Lifshitz) * build/ops: build-integration-branch: s/prefix/postfix/ (`pr#32303 `_, Kefu Chai) * build/ops: build: add static analysis targets (`pr#31579 `_, Yuval Lifshitz) * build/ops: build: FreeBSD does not have /etc/os-release (`pr#26731 `_, Willem Jan Withagen) * build/ops: ceph-daemon: a couple fixes (`pr#31060 `_, Sage Weil) * build/ops: ceph-daemon: add a logrotate.d file for each cluster (`pr#30882 `_, Sage Weil) * build/ops: ceph-daemon: deploy ceph daemons with podman and systemd (`pr#30603 `_, Sage Weil) * build/ops: ceph-daemon: fix logrotate su line (`pr#31823 `_, Sage Weil) * build/ops: ceph-daemon: misc improvements (`pr#30826 `_, Sage Weil) * build/ops: ceph-daemon: use /usr/bin/python, not /usr/bin/env python (`pr#31318 `_, Sage Weil) * build/ops: ceph.spec.in: add missing python-yaml dependency for mgr-k8sevents (`pr#31178 `_, Kefu Chai) * build/ops: ceph.spec.in: add runtime deps for mgr-diskprediction-cloud (`pr#32232 `_, Kefu Chai) * build/ops: ceph.spec.in: always depends on python3.6-pyOpenSSL (`pr#32317 `_, Kefu Chai) * build/ops: ceph.spec.in: Drop systemd BuildRequires in case of building for SUSE (`pr#28884 `_, Dominique Leuenberger) * build/ops: ceph.spec.in: enable amqp_endpoint on RHEL8 by default (`pr#31143 `_, Brad Hubbard) * build/ops: ceph.spec.in: fix Cython package dependency for Fedora (`pr#30590 `_, Jeff Layton) * build/ops: ceph.spec.in: fix make check deps for centos8 (`pr#32798 `_, Alfonso Mart\xc3\xadnez) * build/ops: ceph.spec.in: fix python coverage dependency for non-rhel distros (`pr#33361 `_, Kiefer Chang) * build/ops: ceph.spec.in: fix python3 dependencies in centos7 (`pr#32775 `_, liushi) * build/ops: ceph.spec.in: grafana-dashboards package depends on grafana (`pr#28228 `_, Jan Fajerski) * build/ops: ceph.spec.in: move distro-conditional deps to dedicated section (`pr#32080 `_, Nathan Cutler) * build/ops: ceph.spec.in: package prometheus default alerts for SUSE (`pr#27996 `_, Jan Fajerski) * build/ops: ceph.spec.in: pin to gcc-c++-8.2.1 (`pr#28859 `_, Kefu Chai) * build/ops: ceph.spec.in: re-enable make check deps for el8 (`pr#32412 `_, Kefu Chai) * build/ops: ceph.spec.in: reserve more memory per build jo (`pr#30126 `_, Dan van der Ster) * build/ops: ceph.spec.in: s/pkgversion/version_nodots/ (`pr#30036 `_, Kefu Chai) * build/ops: ceph.spec.in: use g++ >= 8.3.1-3.1 (`pr#30088 `_, Kefu Chai) * build/ops: ceph.spec.in: Use pkgconfig() style BuildRequires for udev/libudev-devel (`pr#32933 `_, Dominique Leuenberger) * build/ops: ceph.spec.in: use python3 to bytecompile .py files (`pr#32608 `_, Kefu Chai) * build/ops: ceph.spec: Recommend (but do not require) podman (`pr#33221 `_, Sage Weil) * build/ops: ceph_release: octopus rc 15.1.0 (`pr#32623 `_, Sage Weil) * build/ops: cmake,crimson: pick up latest seastar (`pr#27088 `_, Kefu Chai) * build/ops: cmake,run-make-check.sh: disable SPDK by default (`pr#29728 `_, Kefu Chai) * build/ops: cmake/Boost: Fix python3 version (`pr#32344 `_, Kotresh HR) * build/ops: cmake/FindRocksDB: fix IMPORTED_LOCATION for ROCKSDB_LIBRARIES (`pr#26813 `_, dudengke) * build/ops: cmake/modules/GetGitRevisionDescription: update to work with git-worktree (`pr#30772 `_, Sage Weil) * build/ops: cmake/modules: replace ; with in compile flags (`pr#28339 `_, Kefu Chai) * build/ops: CMakeLists: add std::move warnings in gcc9 (`pr#27569 `_, Patrick Donnelly) * build/ops: crimson: clang related cleanups (`pr#33680 `_, Kefu Chai) * build/ops: crimson: fix build seastar with dpdk (`pr#31426 `_, Yingxin Cheng) * build/ops: deb,rpm,doc: s/plugin/module/ (`pr#33435 `_, Kefu Chai) * build/ops: debian/: use ceph-osd for packaging crimson-osd (`pr#28535 `_, Kefu Chai) * build/ops: debian/control: add python-routes dependency for dashboard (`pr#28835 `_, Paul Emmerich) * build/ops: debian/control: Build-Depends on g++ (`pr#30410 `_, Kefu Chai) * build/ops: debian/control: fix Build-Depends (`pr#29913 `_, Kefu Chai) * build/ops: debian/radosgw.install: correct path to libradosgw.so\\* (`pr#32539 `_, Kefu Chai) * build/ops: debian/rules: run dh_python2 with ceph-daemon (`pr#31313 `_, Kefu Chai) * build/ops: debian: modules-core replaces and breaks older ceph-mgr (`pr#33501 `_, Kefu Chai) * build/ops: debian: remove dup ceph-fuse line (`pr#28788 `_, huangjun) * build/ops: dmclock: pick up change to use specified C++ settings if any (`pr#30113 `_, Kefu Chai) * build/ops: do_cmake.sh: Add a heading to the minimal config (`pr#28776 `_, Brad Hubbard) * build/ops: do_cmake.sh: Add CEPH_GIT_DIR (`pr#30863 `_, Matthew Oliver) * build/ops: do_cmake.sh: bail out if something goes wrong (`pr#33016 `_, Kefu Chai) * build/ops: do_cmake.sh: enable amqp and rdma for EL8 (`pr#30974 `_, Kefu Chai) * build/ops: do_cmake.sh: optionally specify build dir with $BUILD_DIR env var (`pr#29786 `_, Yuval Lifshitz) * build/ops: do_cmake.sh: remove -DCMAKE_BUILD_TYPE=Debug from cmake options (`pr#30250 `_, Kefu Chai) * build/ops: do_cmake.sh: use bash (`issue#39981 `_, `pr#28181 `_, Nathan Cutler) * build/ops: do_cmake: Warn user about slow debug performance only for not set (`pr#31113 `_, Junyoung, Sung) * build/ops: do_freebsd.sh: update build scripts to resemble Jenkins scripts (`pr#29400 `_, Willem Jan Withagen) * build/ops: dpdk: drop dpdk submodule (`issue#24032 `_, `pr#33001 `_, Kefu Chai) * build/ops: fix build fail related to PYTHON_EXECUTABLE variable (`pr#30199 `_, Ilsoo Byun) * build/ops: github: display phrase for signed-off check (`pr#29890 `_, Ernesto Puerta) * build/ops: install-dep,rpm: use devtools-8 on amd64 (`issue#38892 `_, `pr#27134 `_, Kefu Chai) * build/ops: install-deps, rpm: use python_provide macro and cleanups (`pr#30830 `_, Kefu Chai) * build/ops: install-deps,rpm,do_cmake: build on RHEL/CentOS 8 (`pr#30630 `_, Kefu Chai) * build/ops: install-deps.sh,src: drop python2 support (`pr#31525 `_, Kefu Chai) * build/ops: install-deps.sh: Actually set gpgcheck to false (`pr#33591 `_, Brad Hubbard) * build/ops: install-deps.sh: add EPEL repo for non-x86_64 archs as well (`pr#30557 `_, Kefu Chai, Nathan Cutler) * build/ops: install-deps.sh: add kens copr repo for el8 build (`pr#32324 `_, Kefu Chai) * build/ops: install-deps.sh: add option to skip prebuilt boost-\\* pkgs installation (`pr#27776 `_, Jun He) * build/ops: install-deps.sh: add support for Ubuntu Disco Dingo (`pr#30405 `_, Patrick Seidensal) * build/ops: install-deps.sh: download wheel using pip wheel (`pr#29903 `_, Kefu Chai) * build/ops: install-deps.sh: enable PowerTool repo for EL8 (`pr#30656 `_, Kefu Chai) * build/ops: install-deps.sh: fix typo for krb5 on FreeBSD (`pr#28269 `_, Thomas Johnson) * build/ops: install-deps.sh: install binutils 2.28 for xenial (`pr#31601 `_, Kefu Chai) * build/ops: install-deps.sh: install libboost-test for seastar (`pr#28015 `_, Kefu Chai) * build/ops: install-deps.sh: install python2-{virtualenv,devel} on SUSE if needed (`pr#32153 `_, Nathan Cutler) * build/ops: install-deps.sh: install \\*rpm-macros (`issue#39164 `_, `pr#27524 `_, Kefu Chai) * build/ops: install-deps.sh: install `python\\*-devel` for python\\*rpm-macros (`pr#30190 `_, Kefu Chai) * build/ops: install-deps.sh: only prepare wheels for make check (`pr#29912 `_, Kefu Chai) * build/ops: install-deps.sh: use chacra for cmake repo (`pr#29475 `_, Kefu Chai) * build/ops: install-deps.sh: Use dnf for rhel/centos 8 (`pr#31144 `_, Brad Hubbard) * build/ops: install-deps.sh: use gcc-8 on xenial and trusty (`pr#28094 `_, Kefu Chai) * build/ops: install-deps.sh: use GCC-9 on bionic (`pr#28454 `_, Kefu Chai) * build/ops: install-deps.sh: use sepia/lab-extra/8 (`pr#31238 `_, Kefu Chai) * build/ops: install-deps: do not install if rpm already installed (`pr#30612 `_, Kefu Chai) * build/ops: install-deps: enable homebrew repos for RHEL8 (`pr#33905 `_, Kefu Chai, Dan Mick) * build/ops: install-deps: revert 47d4351d (`pr#30122 `_, Kefu Chai) * build/ops: make patch build dependency explicit (`issue#40175 `_, `pr#28414 `_, Nathan Cutler) * build/ops: make perf_async_msgr link jemalloc/tcmalloc (`pr#28039 `_, Jianpeng Ma) * build/ops: make-dist: Bump Node.js to v10.18.1 (`pr#33059 `_, Tiago Melo) * build/ops: make-dist: default to no dashboard frontend build parallelism (`pr#32037 `_, Nathan Cutler) * build/ops: make-dist: drop Python 2/3 autoselect (`pr#27792 `_, Nathan Cutler) * build/ops: make-dist: set version number only once (`pr#26281 `_, Nathan Cutler) * build/ops: mgr/dashboard: Prevent angular of getting stuck during installation (`pr#29929 `_, Tiago Melo) * build/ops: mgr/rook: Make use of rook-client-python when talking to Rook (`pr#29427 `_, Sebastian Wagner) * build/ops: pybind/mgr/CMakeLists: exclude tox.ini, requirements.txt from install (`pr#31577 `_, Sage Weil) * build/ops: pybind/mgr: Exclude tests/ (`pr#31671 `_, Sebastian Wagner) * build/ops: pybind/mgr: Rename orchestrator_cli to orchestrator (`pr#32817 `_, Sebastian Wagner) * build/ops: qa/tasks/ceph_deploy: do not rely on ceph-create-keys (`pr#29002 `_, Sage Weil) * build/ops: Revert dpdk: drop dpdk submodule (`pr#32992 `_, David Galloway) * build/ops: rpm,cmake: use specified python3 version if any (`pr#27358 `_, Kefu Chai) * build/ops: rpm,deb: package always-enabled plugins in a separated package (`pr#33422 `_, Kefu Chai) * build/ops: rpm,deb: python-requests is not needed for ceph-common (`pr#30420 `_, luo.runbing) * build/ops: rpm,debian,install-deps: package crimson-osd (`pr#28428 `_, Kefu Chai) * build/ops: rpm,etc/sysconfig: remove SuSEfirewall2 support (`issue#40738 `_, `pr#28957 `_, Matthias Gerstner) * build/ops: rpm/cephadm: move HOMEDIR to /var/lib and make scriptlets idempotent on SUSE (`pr#32212 `_, Nathan Cutler) * build/ops: rpm: add cmake_verbose_logging switch (`pr#32805 `_, Nathan Cutler) * build/ops: rpm: add Provides: python3-\\* for python packages and cleanup (`pr#27468 `_, Kefu Chai) * build/ops: rpm: add rpm-build to SUSE-specific make check deps (`pr#32083 `_, Nathan Cutler) * build/ops: rpm: always build ceph-test package (`pr#29685 `_, Nathan Cutler) * build/ops: rpm: define weak_deps for el8 (`pr#33229 `_, Kefu Chai) * build/ops: rpm: Disable LTO in spec when being used (`issue#39974 `_, `pr#28170 `_, Martin Li\xc5\xa1ka) * build/ops: rpm: drop vim-specific header (`pr#32331 `_, Nathan Cutler) * build/ops: rpm: enable devtoolset-8 on aarch64 also (`issue#38892 `_, `pr#27333 `_, Kefu Chai) * build/ops: rpm: fdupes in SUSE builds to conform with packaging guidelines (`issue#40973 `_, `pr#29346 `_, Nathan Cutler) * build/ops: rpm: fix rhel <= 7 conditional (`pr#27045 `_, Nathan Cutler) * build/ops: rpm: fix up a specfile syntax error (`pr#33066 `_, Greg Farnum) * build/ops: rpm: have pybind RPMs provide/obsolete their python2 predecessors (`issue#40099 `_, `pr#28352 `_, Nathan Cutler) * build/ops: rpm: immutable-object-cache related changes (`pr#27150 `_, Kefu Chai) * build/ops: rpm: improve ceph-mgr plugin package summaries (`issue#40974 `_, `pr#29347 `_, Nathan Cutler) * build/ops: rpm: make librados2, libcephfs2 own (create) /etc/ceph (`pr#30975 `_, Nathan Cutler) * build/ops: rpm: put librgw lttng SOs in the librgw-devel package (`issue#40975 `_, `pr#29349 `_, Nathan Cutler) * build/ops: rpm: refrain from building ceph-resource-agents on SLE (`pr#27046 `_, Nathan Cutler) * build/ops: rpm: Relax the selinux policy version for centos builds (`pr#32700 `_, Boris Ranto) * build/ops: rpm: s/devtoolset-7/devtoolset-8/ (`pr#27183 `_, Kefu Chai) * build/ops: rpm: use python 3.6 as the default python3 (`pr#27417 `_, Kefu Chai) * build/ops: rpm: use python3.4 on RHEL7 by default (`pr#27407 `_, Kefu Chai) * build/ops: rpm: use Recommends on fedora also (`pr#26819 `_, Kefu Chai) * build/ops: run npm ci with a one-hour timeout (`pr#28994 `_, Nathan Cutler) * build/ops: run-make-check.sh: extract run-make.sh (`pr#30184 `_, Kefu Chai) * build/ops: run-make-check.sh: run sudo with absolute path (`pr#29753 `_, Kefu Chai) * build/ops: run-make-check.sh: WITH_SEASTAR on demand (`pr#33723 `_, Kefu Chai) * build/ops: script,doc: add gen-corpus.sh (`pr#28950 `_, Kefu Chai) * build/ops: script/build-integration-branch: Add usage (`pr#32293 `_, Sebastian Wagner) * build/ops: script/run-make.sh: do not pass cmake options twice (`pr#30318 `_, Kefu Chai) * build/ops: script/run_tox.sh: Dont overwrite the build dir (`pr#29925 `_, Sebastian Wagner) * build/ops: script: remove dep-report.sh (`pr#29296 `_, Kefu Chai) * build/ops: scripts: ceph_dump_log.py (`pr#21729 `_, Brad Hubbard) * build/ops: seastar: pickup change to add pthread linkage (`pr#33453 `_, Kefu Chai) * build/ops: spec, debian: cephadm requires lvm2 (`pr#32323 `_, Sebastian Wagner) * build/ops: spec,debian: ceph-mgr-ssh depends on openssh{-client{s}} (`pr#31806 `_, Sebastian Wagner) * build/ops: spec: add missing python3-pyyaml (`pr#33387 `_, Sebastian Wagner) * build/ops: spec: Podman (temporarily) requires apparmor-abstractions on suse (`pr#33850 `_, Sebastian Wagner) * build/ops: src/CMakeLists: remove leading v from git describe version (`pr#31387 `_, Sage Weil) * build/ops: test/fio: bump to fio-3.15 (`pr#31544 `_, Igor Fedotov) * build/ops: test: only compile ceph_test_bmap_alloc_replay WITH_BLUESTORE (`pr#31306 `_, Willem Jan Withagen) * build/ops: vstart: Remove duplicate option -N (`pr#31917 `_, Kotresh HR) * ceph-crash: use ceph-crash as logger name (`pr#30989 `_, Kefu Chai) * ceph-daemon -> cephadm, mgr/ssh -> mgr/cephadm (`pr#32193 `_, Sage Weil) * ceph-daemon,mgr/ssh: add check-host (`pr#31795 `_, Sage Weil) * ceph-daemon: -v|--verbose, not -d|--debug (`pr#31583 `_, Sage Weil) * ceph-daemon: a few more py2 compatibility hacks (`pr#31264 `_, Sage Weil) * ceph-daemon: add additional debug logging (`pr#31837 `_, Michael Fritch) * ceph-daemon: Add basic mypy support (`pr#31609 `_, Thomas Bechtold) * ceph-daemon: add explicit pull at bootstrap start (`pr#31478 `_, Sage Weil) * ceph-daemon: Add more type hints (`pr#31631 `_, Thomas Bechtold) * ceph-daemon: add osd create test (`pr#31679 `_, Michael Fritch) * ceph-daemon: add standalone `adopt` tests (`pr#31486 `_, Michael Fritch) * ceph-daemon: add `--base-dir` arg to `adopt` command (`pr#31487 `_, Michael Fritch) * ceph-daemon: add `--legacy-dir` arg to `ls` command (`pr#31585 `_, Michael Fritch) * ceph-daemon: Allow env var for setting the used image (`pr#31913 `_, Thomas Bechtold) * ceph-daemon: append newline before public key string (`pr#31788 `_, Ricardo Dias) * ceph-daemon: behave on rm-cluster when legacy dirs exist and ceph isnt installed (`pr#31499 `_, Sage Weil) * ceph-daemon: bootstrap: make --output-\\* args optional (`pr#31695 `_, Sage Weil) * ceph-daemon: ceph/daemon-base:latest-master-devel (`pr#31507 `_, Sage Weil) * ceph-daemon: clean-up tempfiles on EXIT (`pr#32052 `_, Michael Fritch) * ceph-daemon: combine SUDO and ARGS into a single var (`pr#32138 `_, Michael Fritch) * ceph-daemon: configure firewalld for new daemons (`pr#31869 `_, Sage Weil) * ceph-daemon: consolidate NamedTemporaryFile logic (`pr#31908 `_, Michael Fritch) * ceph-daemon: create ~/.ssh if not exist (`pr#31315 `_, Kefu Chai) * ceph-daemon: customize the bash prompt for shell + enter (`pr#31498 `_, Sage Weil) * ceph-daemon: do not pass -it unless it is an interactive shell (`pr#31181 `_, Sage Weil) * ceph-daemon: do not relabel system directories (`pr#31321 `_, Sage Weil) * ceph-daemon: dont deref symlinks during chown (`pr#32137 `_, Michael Fritch) * ceph-daemon: enable dashboard during bootstrap (`pr#31464 `_, Sage Weil) * ceph-daemon: fix bootstrap ownership of tmp monmap file (`pr#32097 `_, Sage Weil) * ceph-daemon: fix extract_uid_gid (`pr#31832 `_, Sage Weil) * ceph-daemon: fix firewalld error case (`pr#32096 `_, Sage Weil) * ceph-daemon: Fix handling for symlinks on python2 (`pr#31838 `_, Michael Fritch) * ceph-daemon: fix os.mkdir call (`pr#31320 `_, Sage Weil) * ceph-daemon: fix pod stop (`pr#32157 `_, Sage Weil) * ceph-daemon: fix prompt (`pr#31603 `_, Sage Weil) * ceph-daemon: fix standalone `adopt` OSD test (`pr#31772 `_, Sage Weil, Michael Fritch) * ceph-daemon: fix traceback during `ls` command (`pr#31439 `_, Michael Fritch) * ceph-daemon: fix version field for legacy `ls` (`pr#31443 `_, Michael Fritch) * ceph-daemon: fix `systemctl is-enabled` bool (`pr#31870 `_, Michael Fritch) * ceph-daemon: infer fsid for some commands (`pr#31702 `_, Michael Fritch) * ceph-daemon: logs command (`pr#31575 `_, Sage Weil) * ceph-daemon: make /var/run/ceph behavior better (`pr#31141 `_, Sage Weil) * ceph-daemon: make infer_fsid behave when /var/lib/ceph dne (`pr#31831 `_, Sage Weil) * ceph-daemon: make ls log less noisy (`pr#31448 `_, Sage Weil) * ceph-daemon: make mon container privileged (`pr#31476 `_, Sage Weil) * ceph-daemon: make ps1 a raw string (`pr#31540 `_, Michael Fritch) * ceph-daemon: make rm-cluster faster (`pr#31538 `_, Sage Weil) * ceph-daemon: make rm-cluster handle failed unit cleanup (`pr#31365 `_, Sage Weil) * ceph-daemon: Move ceph-daemon executable to own directory (`pr#31467 `_, Thomas Bechtold) * ceph-daemon: nicer errors (`pr#31886 `_, Sage Weil, Michael Fritch) * ceph-daemon: Only run in the __main__ scope (`pr#31458 `_, Thomas Bechtold) * ceph-daemon: only set up /var/run/ceph/$fsid if it exists (`pr#31341 `_, Sage Weil) * ceph-daemon: only set up crash dir mount if it exists (`pr#31130 `_, Sage Weil) * ceph-daemon: py2 compatibility (`pr#31168 `_, Sage Weil) * ceph-daemon: py2: tolerate whitespace before config key name (`pr#32098 `_, Sage Weil) * ceph-daemon: raise RuntimeError when CephContainer.run() fails (`pr#31328 `_, Michael Fritch) * ceph-daemon: Remove data dir during adopt (`pr#31437 `_, Michael Fritch) * ceph-daemon: remove prepare-host (`pr#32108 `_, Sage Weil) * ceph-daemon: replace podman variables by container (`pr#31618 `_, Dimitri Savineau) * ceph-daemon: seek relative to the start of file (`pr#31892 `_, Michael Fritch) * ceph-daemon: set container_image during bootstrap (`pr#31445 `_, Sage Weil) * ceph-daemon: set ssh public identity (`pr#31500 `_, Sage Weil) * ceph-daemon: several fsid inference fixes (`pr#31798 `_, Sage Weil) * ceph-daemon: switch default image (`pr#31463 `_, Sage Weil) * ceph-daemon: unmount osd data dir during `adopt` (`pr#31477 `_, Michael Fritch) * ceph-daemon: use client.admin keyring during bootstrap (`pr#31270 `_, Sage Weil) * ceph-daemon: use `-e` instead of `--env` (`pr#31614 `_, Michael Fritch) * ceph-daemon: Use `shutil.move` to move log files (`pr#31331 `_, Michael Fritch) * ceph-daemon: `imp` module DeprecationWarning (`pr#32161 `_, Michael Fritch) * ceph-mon: keep v1 address type when explicitly set (`pr#31765 `_, Ricardo Dias) * ceph-object-corpus: forward_incompat pg_missing_item and pg_missing_t (`pr#28034 `_, lishuhao) * ceph-volume simple: better detection when type file is not present (`pr#29386 `_, Alfredo Deza) * ceph-volume zap always skips block.db, leaves them around (`issue#40664 `_, `pr#28998 `_, Alfredo Deza) * ceph-volume broken assertion errors after pytest changes (`issue#40665 `_, `pr#28866 `_, Alfredo Deza) * ceph-volume lvm.zap fix cleanup for db partitions (`issue#40664 `_, `pr#28267 `_, Dominik Csapak) * ceph-volume tests add a sleep in tox for slow OSDs after booting (`issue#40619 `_, `pr#28836 `_, Alfredo Deza) * ceph-volume tests remove xenial from functional testing (`pr#31159 `_, Alfredo Deza) * ceph-volume tests set the noninteractive flag for Debian (`pr#29804 `_, Alfredo Deza) * ceph-volume-zfs: add the inventory command (`pr#30995 `_, Willem Jan Withagen) * ceph-volume/batch: fail on filtered devices when non-interactive (`pr#31978 `_, Jan Fajerski) * ceph-volume/lvm/activate.py: clarify error message: fsid refers to osd_fsid (`pr#32351 `_, Yaniv Kaul) * ceph-volume/test: patch VolumeGroups (`pr#31979 `_, Jan Fajerski) * ceph-volume: add Cephs device id to inventory (`pr#31072 `_, Sebastian Wagner) * ceph-volume: add db and wal support to raw mode (`pr#32828 `_, S\xc3\xa9bastien Han) * ceph-volume: add methods to pass filters to pvs, vgs and lvs commands (`pr#32242 `_, Rishabh Dave) * ceph-volume: add proper size attribute to partitions (`pr#31492 `_, Jan Fajerski) * ceph-volume: add raw (--bluestore) mode (`pr#32095 `_, Sage Weil) * ceph-volume: add sizing arguments to prepare (`pr#32235 `_, Jan Fajerski) * ceph-volume: add utility functions (`pr#27282 `_, Mohamad Gebai) * ceph-volume: allow raw block devices everywhere (`pr#31410 `_, Jan Fajerski) * ceph-volume: allow to skip restorecon calls (`pr#31421 `_, Alfredo Deza) * ceph-volume: api/lvm: check if list of LVs is empty (`pr#30101 `_, Rishabh Dave) * ceph-volume: assume msgrV1 for all branches containing mimic (`pr#31592 `_, Jan Fajerski) * ceph-volume: avoid calling zap_lv with a LV-less VG (`pr#33283 `_, Jan Fajerski) * ceph-volume: batch bluestore fix create_lvs call (`pr#32929 `_, Jan Fajerski) * ceph-volume: batch ensure device lists are disjoint (`pr#27754 `_, Jan Fajerski) * ceph-volume: check if we run in an selinux environment (`pr#31809 `_, Jan Fajerski) * ceph-volume: check if we run in an selinux environment, now also in py2 (`pr#31814 `_, Jan Fajerski) * ceph-volume: Dereference symlink in lvm list (`pr#32525 `_, Beno\xc3\xaet Knecht) * ceph-volume: detect ceph-disk osd if PARTLABEL is missing (`issue#40917 `_, `pr#29401 `_, Jan Fajerski) * ceph-volume: do not fail when trying to remove crypt mapper (`pr#30490 `_, Guillaume Abrioux) * ceph-volume: dont keep device lists as sets (`pr#29683 `_, Jan Fajerski) * ceph-volume: dont remove vg twice when zapping filestore (`pr#33332 `_, Jan Fajerski) * ceph-volume: dont try to test lvm zap on simple tests (`pr#29659 `_, Jan Fajerski) * ceph-volume: finer grained availability notion in inventory (`pr#32634 `_, Jan Fajerski) * ceph-volume: fix batch functional tests, idempotent test must check s\xe2\x80\xa6 (`pr#29684 `_, Jan Fajerski) * ceph-volume: fix device unittest, mock has_bluestore_label (`pr#32655 `_, Jan Fajerski) * ceph-volume: fix has_bluestore_label() function (`pr#33074 `_, Guillaume Abrioux) * ceph-volume: fix is_ceph_device for lvm batch (`pr#33223 `_, Jan Fajerski, Dimitri Savineau) * ceph-volume: fix lvm list (`pr#33077 `_, Guillaume Abrioux) * ceph-volume: fix regression and improve output in lvm list (`pr#33112 `_, Jan Fajerski) * ceph-volume: fix stderr failure to decode/encode when redirected (`pr#30274 `_, Alfredo Deza) * ceph-volume: fix the integer overflow (`pr#32106 `_, dongdong tao) * ceph-volume: fix warnings raised by pytest (`pr#30422 `_, Rishabh Dave) * ceph-volume: import mock.mock instead of unittest.mock (py2) (`pr#31816 `_, Jan Fajerski) * ceph-volume: look for rotational data in lsblk (`pr#26957 `_, Andrew Schoen) * ceph-volume: lvm: get_device_vgs() filter by provided prefix (`pr#33478 `_, Jan Fajerski, Yehuda Sadeh) * ceph-volume: make get_devices fs location independent (`pr#31574 `_, Jan Fajerski) * ceph-volume: minor clean-up of `simple scan` subcommand help (`pr#31821 `_, Michael Fritch) * ceph-volume: minor optimizations related to class Volumess use (`pr#29665 `_, Rishabh Dave) * ceph-volume: mokeypatch calls to lvm related binaries (`pr#31197 `_, Jan Fajerski) * ceph-volume: never log to stdout, use stderr instead (`pr#29547 `_, Jan Fajerski) * ceph-volume: pass --ssh-config to pytest to resolve hosts when connecting (`issue#40063 `_, `pr#28294 `_, Alfredo Deza) * ceph-volume: pass journal_size as Size not string (`pr#33320 `_, Jan Fajerski) * ceph-volume: pre-install python-apt and its variants before test runs (`pr#30115 `_, Alfredo Deza) * ceph-volume: print most logging messages to stderr (`issue#38548 `_, `pr#27675 `_, Jan Fajerski) * ceph-volume: PVolumes.filter shouldnt purge itself (`pr#30703 `_, Rishabh Dave) * ceph-volume: rearrange api/lvm.py (`pr#30867 `_, Rishabh Dave) * ceph-volume: refactor listing.py (`pr#31700 `_, Rishabh Dave) * ceph-volume: reject disks smaller then 5GB in inventory (`issue#40776 `_, `pr#29041 `_, Jan Fajerski) * ceph-volume: revert --no-tmpfs change (`pr#30788 `_, Sage Weil) * ceph-volume: silence ceph-bluestore-tool failures (`pr#33371 `_, S\xc3\xa9bastien Han) * ceph-volume: skip osd creation when already done (`pr#33086 `_, Guillaume Abrioux) * ceph-volume: strip _dmcrypt suffix in simple scan json output (`pr#33079 `_, Jan Fajerski) * ceph-volume: systemd fix typo in log message (`pr#30497 `_, Manu Zurm\xc3\xbchl) * ceph-volume: terminal: encode unicode when writing to stdout (`pr#27148 `_, Alfredo Deza, Kefu Chai) * ceph-volume: use centos8 for functional testing (`pr#33174 `_, Jan Fajerski) * ceph-volume: use correct extents if using db-devices and >1 osds_per_device (`pr#32177 `_, Fabian Niepelt) * ceph-volume: use fsync for dd command (`pr#31479 `_, Rishabh Dave) * ceph-volume: use get_device_vgs in has_common_vg (`pr#33246 `_, Jan Fajerski) * ceph-volume: use python3 compatible print (`pr#30790 `_, Kyr Shatskyy) * ceph-volume: use the Device.rotational property instead of sys_api (`pr#28060 `_, Andrew Schoen) * ceph-volume: use the OSD identifier when reporting success (`pr#29762 `_, Alfredo Deza) * ceph-volume: util: look for executable in $PATH (`pr#31787 `_, Shyukri Shyukriev) * ceph-volume: util: Use proper param substition (`pr#28448 `_, Shyukri Shyukriev) * ceph-volume: VolumeGroups.filter shouldnt purge itself (`pr#30707 `_, Rishabh Dave) * ceph-volume: when testing disable the dashboard (`pr#29387 `_, Andrew Schoen) * ceph.in: disable ASAN if libasan is not found (`pr#28247 `_, Kefu Chai) * ceph.in: do not preload asan even if not needed (`pr#28703 `_, Kefu Chai) * ceph.in: do not preload libasan if it is found (`pr#28275 `_, Kefu Chai) * ceph.in: print decoded output in interactive mode (`pr#33099 `_, Jun Su) * cephadm: --cap-add=SYS_PTRACE (`pr#33442 `_, Sage Weil) * cephadm: Add ability to deploy grafana container (`pr#32491 `_, Paul Cuzner) * cephadm: add ability to specify a timeout (`pr#32049 `_, Michael Fritch) * cephadm: add alertmanager deployment feature (`pr#32949 `_, Sage Weil, Paul Cuzner) * cephadm: add assert foo is not None for mypy check (`pr#33876 `_, Kefu Chai) * cephadm: add grafana adopt (`pr#33746 `_, Eric Jackson) * cephadm: add locking (`pr#32334 `_, Sage Weil) * cephadm: add nfs-ganesha deployment (`pr#33064 `_, Michael Fritch) * cephadm: add prepare-host (`pr#33374 `_, Sage Weil) * cephadm: add prometheus adopt (`pr#33438 `_, Eric Jackson) * cephadm: add reconfig service action (`pr#32281 `_, Sage Weil) * cephadm: add start/stop hooks and c-v activate on container start (`pr#32158 `_, Sage Weil) * cephadm: Add Zypper packager (openSUSE/SLES) (`pr#33461 `_, Kristoffer Gr\xc3\xb6nlund) * cephadm: add `--retry` arg (`pr#33342 `_, Michael Fritch) * cephadm: add {add,rm}-repo commands (`pr#33062 `_, Sage Weil) * cephadm: add-repo: add --version (`pr#33961 `_, Sage Weil) * cephadm: adopt fixes (`pr#32995 `_, Sage Weil) * cephadm: allow multiple get_parm() calls (`pr#33437 `_, Sage Weil) * cephadm: allow skipping prepare_host in bootstrap step (`pr#33504 `_, Kiefer Chang) * cephadm: allow users to provide their dashboard cert during bootstrap (`pr#33472 `_, Daniel-Pivonka) * cephadm: also return JSON decode error (`pr#33433 `_, Sebastian Wagner) * cephadm: bootstrap: avoid repeat chars in generated password (`pr#32332 `_, Sage Weil) * cephadm: bootstrap: deploy monitoring stack by default (`pr#33936 `_, Sage Weil) * cephadm: bootstrap: nag about telemetry (`pr#33517 `_, Sage Weil) * cephadm: bootstrap: wait for mgr to restart after enabling a module (`pr#33857 `_, Sage Weil) * cephadm: bootstrap: warn on fqdn hostname (`pr#33042 `_, Sage Weil) * cephadm: check for both chrony service names (`pr#33369 `_, Sage Weil) * cephadm: check for both ntp.service and ntpd.service (`pr#32302 `_, Sage Weil) * cephadm: clean up the systemd unit and ceph-crash shutdown behavior (`pr#32685 `_, Sage Weil) * cephadm: correct ipv6 support in port open detection (`pr#32286 `_, Paul Cuzner) * cephadm: create /var/run/ceph/$fsid as needed (`pr#32390 `_, Sage Weil) * cephadm: disable node-exporter cpu/memory limits for the time being (`pr#33133 `_, Sage Weil) * cephadm: drop sha256: prefix on container id (`pr#32300 `_, Sage Weil) * cephadm: error out on filestore OSDs (`pr#33395 `_, Sage Weil) * cephadm: fix adoption safety check (`pr#33445 `_, Sage Weil) * cephadm: fix ceph version probe (`pr#33136 `_, Sage Weil) * cephadm: fix container cleanup (`pr#32282 `_, Sage Weil) * cephadm: fix datetime regexp to capture at most 6 digits (`pr#33932 `_, Michael Fritch) * cephadm: fix deploy crash when no `args.fsid` (`pr#33248 `_, Michael Fritch) * cephadm: fix error handing in `command_check_host()` (`pr#33048 `_, Guillaume Abrioux) * cephadm: fix failure when getting keyring for deploying daemons (`pr#33679 `_, Kiefer Chang) * cephadm: fix help message for bootstrap --mgr-id (`pr#32640 `_, Sage Weil) * cephadm: fix inspect-image (`pr#33109 `_, Sage Weil) * cephadm: fix logging defaults (`pr#32641 `_, Sage Weil) * cephadm: fix name argument parsing during image check for non-ceph components (`pr#33114 `_, Daniel-Pivonka) * cephadm: Fix Py3 ConfigParser deprecation warnings (`pr#32218 `_, Michael Fritch) * cephadm: fix tox DeprecationWarning (`pr#32753 `_, Michael Fritch) * cephadm: fix v1/v2 ip/addrv handling; explicitly check bind to ip:port (`pr#32392 `_, Sage Weil) * cephadm: fix `alertmanager not implemented yet` (`pr#33694 `_, Patrick Seidensal) * cephadm: flag dashboard user to change password (`pr#32990 `_, Daniel-Pivonka) * cephadm: further simplify mon setup (`pr#33952 `_, Sage Weil) * cephadm: implement install command (`pr#33979 `_, Sage Weil) * cephadm: improve handling of crash agent container (`pr#33189 `_, Sage Weil) * cephadm: include daemon/unit id in unit name (`pr#32970 `_, Sage Weil) * cephadm: Infer ceph image (`pr#33829 `_, Sage Weil, Ricardo Marques) * cephadm: infer the fsid by name (`pr#32795 `_, Michael Fritch) * cephadm: KillMode=none in unit file (`pr#33162 `_, Sage Weil) * cephadm: leave backup when removing stateful daemons (`pr#33973 `_, Sage Weil) * cephadm: make add-repo --release and --version independent (`pr#34034 `_, Sage Weil) * cephadm: merge `--config-and-keyring` and `--config-json` args (`pr#33870 `_, Michael Fritch) * cephadm: misc upgrade fixes (`pr#32794 `_, Sage Weil) * cephadm: no --no-systemd arg to ceph-volume deactivate (`pr#32886 `_, Sage Weil) * cephadm: only infer image for shell, run, inspect-image, pull, ceph-volume (`pr#34030 `_, Sage Weil) * cephadm: podman inspect: image field was called `ImageID` (`pr#32616 `_, Sebastian Wagner) * cephadm: prepare-host: do not create Packager unless we need it (`pr#33443 `_, Sage Weil) * cephadm: pull: strip newline from version string (`pr#33446 `_, Sage Weil) * cephadm: python3 shebang (`pr#32378 `_, Sage Weil) * cephadm: re-introduce the `podman logs` command (`pr#33089 `_, Michael Fritch) * cephadm: Read ceph version from io.ceph.version label if set (`pr#32982 `_, Kristoffer Gr\xc3\xb6nlund) * cephadm: Refactor, prepare for other adoptions (`pr#33672 `_, Eric Jackson) * cephadm: relabel /etc/ganesha mount (`pr#34098 `_, Sage Weil) * cephadm: remove orphan daemons (`pr#33830 `_, Sage Weil) * cephadm: remove `logs` command (`pr#32752 `_, Michael Fritch) * cephadm: Rename tox tests ceph-daemon -> cephadm (`pr#32353 `_, Michael Fritch) * cephadm: report image name for stopped daemons (`pr#33190 `_, Sage Weil) * cephadm: report version for grafana prom etc (`pr#33804 `_, Sage Weil) * cephadm: shell: allow -e (`pr#33191 `_, Sage Weil) * cephadm: shell: default to config and keyring in /etc/ceph, if present (`pr#33793 `_, Sage Weil) * cephadm: shell: do not bind ceph.conf twice (`pr#32425 `_, Sage Weil) * cephadm: shell: keep .bash_history in /var/log/ceph/$fsid (`pr#33519 `_, Sage Weil) * cephadm: show contextual message when port is in use (`pr#32560 `_, Michael Fritch) * cephadm: simplify Monitoring.components structure (`pr#32977 `_, Michael Fritch) * cephadm: SO_REUSEADDR when doing bind check (`pr#32712 `_, Sage Weil) * cephadm: streamline bootstrap a bit (`pr#33980 `_, Sage Weil) * cephadm: support deployment of node-exporter (`pr#32340 `_, Paul Cuzner) * cephadm: support deployment of prometheus container (`pr#32198 `_, Sebastian Wagner, Paul Cuzner) * cephadm: switch grafana image to the ceph repo (`pr#34082 `_, Paul Cuzner) * cephadm: update unit.\\* atomically (`pr#33895 `_, Sage Weil) * cephadm: use appropriate default image for non-ceph components (`pr#33069 `_, Sage Weil) * cephadm: use spec to deploy crash on every host (`pr#33658 `_, Sage Weil) * cephadm: use `sh` instead of `bash` during enter (`pr#33822 `_, Michael Fritch) * cephadm: wait longer for things to come up (`pr#33216 `_, Sage Weil) * cephfs,common,core: global: disable THP for Ceph daemons (`pr#31582 `_, Patrick Donnelly, Mark Nelson) * cephfs,common,rbd: common/config_proxy: hold lock while accessing mutable container (`pr#29809 `_, Jason Dillaman) * cephfs,common: common/secret.c: fix key parsing when doing a remount (`pr#28148 `_, Luis Henriques) * cephfs,common: osdc: should release the rwlock before waiting (`pr#29686 `_, Kefu Chai) * cephfs,core: mds/MDSDaemon: fix asok exit and respawn commands (`pr#32251 `_, Sage Weil) * cephfs,core: msg/async: perform the v2 resets in proper EventCenter (`pr#30717 `_, Radoslaw Zarzynski) * cephfs,core: qa/suites/rados/mgr/tasks/module_selftest: whitelist mgr client getting backlisted (`issue#40867 `_, `pr#29169 `_, Sage Weil) * cephfs,core: qa/suites/upgrade: a few more octopus fixes (`pr#32853 `_, Sage Weil) * cephfs,core: qa: log warning on scrub error (`pr#32739 `_, Patrick Donnelly) * cephfs,core: src/: define ceph_release_t and use it (`pr#27855 `_, Kefu Chai) * cephfs,mgr,mon: mon/MDSMonitor: enforce mds_join_fs cluster affinity (`pr#33194 `_, Patrick Donnelly) * cephfs,mgr,mon: mon/MgrMonitor: blacklist previous instance of ceph-mgr during failover (`pr#31797 `_, Patrick Donnelly) * cephfs,mgr,pybind: mgr/prometheus: export standby mds metadata (`pr#29996 `_, lei01.liu) * cephfs,mgr,pybind: mgr/volumes: minor enhancements and fixes (`issue#40429 `_, `pr#28706 `_, Ramana Raja) * cephfs,mgr: mds/MDSRank: report state to mgr as mds id, not rank (`pr#31231 `_, Patrick Donnelly, Sage Weil) * cephfs,mgr: mgr/volume: ceph cephfs metadata pool pg_num_min and bias (`pr#27374 `_, Sage Weil) * cephfs,mgr: mgr/volumes: cleanup libcephfs handles on plugin shutdown (`issue#42299 `_, `pr#30890 `_, Venky Shankar) * cephfs,mgr: pybind/mgr/volumes: use py3 items iterator (`pr#31986 `_, Patrick Donnelly) * cephfs,mgr: qa: use skipTest method instead of exception (`pr#27761 `_, Patrick Donnelly) * cephfs,mon: mon/MDSMonitor: cleanup check_subs (`pr#32308 `_, Patrick Donnelly) * cephfs,mon: mon/MDSMonitor: handle standby already without fscid (`pr#32585 `_, Patrick Donnelly) * cephfs,pybind: libcephfs: add missing declaration of ceph_getaddrs() (`pr#32629 `_, Kefu Chai) * cephfs,pybind: mgr/volumes: add `ceph fs subvolumegroup getpath` command (`issue#40617 `_, `pr#29103 `_, Ramana Raja) * cephfs,pybind: mgr/volumes: set uid/gid of FS clients mount as 0/0 (`issue#40927 `_, `pr#29355 `_, Ramana Raja) * cephfs,pybind: pybind/cephfs: add cephfs python API removexattr() (`pr#30641 `_, bingyi zhang) * cephfs,pybind: pybind/cephfs: Add listxattr (`pr#32804 `_, Varsha Rao) * cephfs,rbd,tests: qa/tasks: drop object inherit (`pr#29843 `_, Jos Collin) * cephfs,rbd: osdc: using decltype(auto) instead of trailing return type (`pr#29931 `_, Yao Zongyou) * cephfs,tests: cephfs-shell: teuthology tests (`issue#39526 `_, `pr#27872 `_, Milind Changire) * cephfs,tests: mgr/volumes: fs subvolume resize command (`pr#30054 `_, Jos Collin) * cephfs,tests: qa/cephfs: add test for ACLs (`pr#29421 `_, Rishabh Dave) * cephfs,tests: qa/cephfs: change deps for xfstests-dev on centos8 (`pr#32524 `_, Rishabh Dave) * cephfs,tests: qa/cephfs: dont test kclient on RHEL 7 (`pr#32582 `_, Rishabh Dave) * cephfs,tests: qa/cephfs: update xfstests-dev deps for RHEL 8 (`pr#33427 `_, Rishabh Dave) * cephfs,tests: qa/suites/powercycle: install build deps for building xfstest (`pr#33874 `_, Kefu Chai) * cephfs,tests: qa/tasks/cephfs/fuse_mount: use python3 (`pr#32339 `_, Sage Weil) * cephfs,tests: qa/tasks: add exception in do_thrash() (`pr#29067 `_, Jos Collin) * cephfs,tests: qa/tasks: DaemonWatchdog Expansion (`issue#10369 `_, `issue#11314 `_, `pr#28378 `_, Jos Collin) * cephfs,tests: qa/tasks: Fix raises that doesnt re-raise (`pr#30201 `_, Jos Collin) * cephfs,tests: qa/tasks: fixed typo in the comment (`pr#29759 `_, Jos Collin) * cephfs,tests: qa/tasks: improvements in vstart_runner.py and mount.py (`pr#27481 `_, Rishabh Dave) * cephfs,tests: qa/tasks: upgrade command arguments checks in vstart_runner.py (`pr#28198 `_, Rishabh Dave) * cephfs,tests: qa/tests: reduce number of jobs for `kcephfs` (`pr#27328 `_, Yuri Weinstein) * cephfs,tests: qa/tests: reduced number of jobs for `kcephfs` (`pr#27165 `_, Yuri Weinstein) * cephfs,tests: qa/vstart_runner.py: make run()s interface same as teuthologys run (`pr#33263 `_, Rishabh Dave) * cephfs,tests: qa: note timeout in debug message (`pr#32162 `_, Patrick Donnelly) * cephfs,tests: qa: stop DaemonWatchdog for each cluster in daemon roles (`pr#29821 `_, Patrick Donnelly) * cephfs,tests: qa: test fs:upgrade when running upgrade suite (`pr#31206 `_, Patrick Donnelly) * cephfs,tests: test: define ALLPERMS if not yet (`pr#30726 `_, Kefu Chai) * cephfs,tests: test_cephfs_shell: fix test_du_works_for_hardlinks (`pr#32168 `_, Rishabh Dave) * cephfs,tests: test_cephfs_shell: initialize stderr for run_cephfs_shell_cmd() (`pr#31626 `_, Rishabh Dave) * cephfs,tests: test_sessionmap: use sudo_write_file() from teuthology.misc (`pr#29123 `_, Rishabh Dave) * cephfs,tools: cephfs-journal-tool: fix crash and usage (`pr#32452 `_, Xiubo Li) * cephfs,tools: mount.ceph: fix incorrect options parsing (`pr#33197 `_, Xiubo Li) * cephfs,tools: vstart.sh: highlight presence of stray conf (`pr#31403 `_, Milind Changire) * cephfs: client: more precise CEPH_CLIENT_CAPS_PENDING_CAPSNAP (`pr#28685 `_, Yan, Zheng) * cephfs: mds: change how mds revoke stale caps (`issue#17854 `_, `pr#26737 `_, Yan, Zheng, Rishabh Dave) * cephfs: mds: fix corner case of replaying open sessions (`pr#28456 `_, Yan, Zheng) * cephfs: Add doc for deploying cephfs-nfs cluster using rook (`pr#30914 `_, Varsha Rao) * cephfs: Allow mount.ceph to get mount info from ceph configs and keyrings (`pr#29817 `_, Jeff Layton) * cephfs: avoid map client_caps been inserted by mistake (`pr#29304 `_, XiaoGuoDong2019) * cephfs: ceph-mds: dump all info of ceph_file_layout, InodeStoreBase, frag_inf\xe2\x80\xa6 (`pr#28874 `_, simon gao) * cephfs: ceph-mds: set ceph_mds cpu affinity (`pr#31712 `_, qilianghong) * cephfs: cephfs pybind: added lseek() function to cephfs pybind (`pr#27688 `_, Xiaowei Chu) * cephfs: cephfs-shell: Add command for setxattr, getxattr and listxattr (`pr#32570 `_, Varsha Rao) * cephfs: cephfs-shell: Add error message for invalid ls commands (`pr#28652 `_, Varsha Rao) * cephfs: cephfs-shell: add quota management (`issue#39165 `_, `pr#27483 `_, Milind Changire) * cephfs: cephfs-shell: add snapshot management (`issue#38681 `_, `pr#27467 `_, Milind Changire) * cephfs: cephfs-shell: Add stat command (`pr#27753 `_, Varsha Rao) * cephfs: cephfs-shell: Add tox for testing with flake8 (`pr#28239 `_, Varsha Rao) * cephfs: cephfs-shell: better complain info, when deleting non-empty directory (`issue#40864 `_, `pr#30341 `_, Shen Hang) * cephfs: cephfs-shell: Catch OSError exceptions in lcd (`issue#40243 `_, `pr#28473 `_, Varsha Rao) * cephfs: cephfs-shell: cd with no args must change CWD to root (`issue#40476 `_, `pr#28793 `_, Rishabh Dave) * cephfs: cephfs-shell: changes related to read_ceph_conf() (`pr#32347 `_, Rishabh Dave) * cephfs: cephfs-shell: changes to stderr and stdout messages (`pr#30365 `_, Rishabh Dave) * cephfs: cephfs-shell: Convert paths type from string to bytes (`pr#29552 `_, Varsha Rao) * cephfs: cephfs-shell: du should ignore non-directory files (`issue#40371 `_, `pr#28560 `_, Rishabh Dave, Varsha Rao) * cephfs: cephfs-shell: Fix df command errors (`pr#27894 `_, Varsha Rao) * cephfs: cephfs-shell: Fix flake8 blank line and indentation error (`pr#29149 `_, Varsha Rao) * cephfs: cephfs-shell: Fix hidden files and directories list by ls command (`pr#27266 `_, Varsha Rao) * cephfs: cephfs-shell: Fix lls command errors (`issue#40244 `_, `pr#28475 `_, Varsha Rao) * cephfs: cephfs-shell: Fix ls -l (`pr#32801 `_, Kotresh HR) * cephfs: cephfs-shell: Fix mkdir relative path error (`pr#27822 `_, Varsha Rao) * cephfs: cephfs-shell: Fix multiple flake8 errors (`pr#28080 `_, Varsha Rao) * cephfs: cephfs-shell: Fix multiple flake8 errors (`pr#28433 `_, Varsha Rao) * cephfs: cephfs-shell: Fix multiple flake8 errors (`pr#29374 `_, Varsha Rao) * cephfs: cephfs-shell: Fix onecmd TypeError (`pr#29554 `_, Varsha Rao) * cephfs: cephfs-shell: Fix print of error messages to stdout (`pr#28447 `_, Varsha Rao) * cephfs: cephfs-shell: Fix rmdir -p issues and add tests for rmdir (`pr#31633 `_, Varsha Rao) * cephfs: cephfs-shell: fix string decoding for ls command (`issue#39404 `_, `pr#27716 `_, Milind Changire) * cephfs: cephfs-shell: Fix TypeError in poutput() (`pr#28906 `_, Varsha Rao) * cephfs: cephfs-shell: Fix typo for mounting (`pr#28718 `_, Varsha Rao) * cephfs: cephfs-shell: fix unecessary usage of to_bytes for file paths (`issue#40455 `_, `pr#28663 `_, Patrick Donnelly) * cephfs: cephfs-shell: fix various tracebacks (`issue#38743 `_, `issue#38739 `_, `issue#38741 `_, `issue#38740 `_, `pr#27235 `_, Milind Changire) * cephfs: cephfs-shell: make compatible with cmd2 versions after 0.9.13 (`pr#30585 `_, Rishabh Dave) * cephfs: cephfs-shell: make every command set a return value on failure (`pr#32213 `_, Rishabh Dave) * cephfs: cephfs-shell: print helpful message when conf file is not found (`pr#31460 `_, Rishabh Dave) * cephfs: cephfs-shell: py version fixes (`issue#40418 `_, `pr#28638 `_, Patrick Donnelly) * cephfs: cephfs-shell: read options from ceph.conf (`pr#29964 `_, Rishabh Dave) * cephfs: cephfs-shell: rearrange code for convenience (`pr#31629 `_, Rishabh Dave) * cephfs: cephfs-shell: Remove extra length argument passed to setxattr() (`pr#30802 `_, Varsha Rao) * cephfs: cephfs-shell: Remove str object references to attribute decode (`pr#27345 `_, Varsha Rao) * cephfs: cephfs-shell: Remove undefined variable files in do_rm() (`pr#28710 `_, Varsha Rao) * cephfs: cephfs-shell: return non-zero value on error (`pr#30657 `_, Rishabh Dave) * cephfs: cephfs-shell: rewrite help text for put and get commands (`pr#30297 `_, Rishabh Dave) * cephfs: cephfs-shell: Use colorama module instead of colorize (`pr#27427 `_, Varsha Rao) * cephfs: ceph_volume_client: convert string to bytes object (`issue#40369 `_, `issue#40800 `_, `pr#28557 `_, Rishabh Dave) * cephfs: ceph_volume_client: decode d_name before using it (`issue#39406 `_, `pr#28196 `_, Rishabh Dave) * cephfs: client: add client_fs mount option support (`pr#33506 `_, Xiubo Li) * cephfs: client: Add is_dir() check before changing directory (`pr#32637 `_, Varsha Rao) * cephfs: client: add procession of SEEK_HOLE and SEEK_DATA in lseek (`pr#30416 `_, Shen Hang) * cephfs: client: add stx_btime and stx_version in cephfs.pyx (`pr#30206 `_, huanwen ren) * cephfs: client: add warning when cap != in->auth_cap (`pr#30402 `_, Shen Hang) * cephfs: client: avoid length overflow by calling the lseek function (`pr#29626 `_, wenpengLi) * cephfs: Client: bump ll_ref from int32 to uint64_t (`pr#29136 `_, Xiaoxi CHEN) * cephfs: client: directory size always is zero lead to is_quota_bytes_approaching lose efficacy (`pr#26104 `_, guoyong) * cephfs: client: disallow changing fuse_default_permissions option at runtime (`pr#32315 `_, Zhi Zhang) * cephfs: client: dont report any vxattrs to listxattr (`pr#29339 `_, Jeff Layton) * cephfs: client: fix bad error handling in ll_lookup_inode (`issue#40085 `_, `pr#28324 `_, Jeff Layton) * cephfs: client: fix bad error handling in lseek SEEK_HOLE / SEEK_DATA (`pr#33480 `_, Jeff Layton) * cephfs: client: fix dir.rctime and snap.btime vxattr values (`pr#28116 `_, David Disseldorp) * cephfs: client: fix fuse client hang because its bad session PipeConnection to mds (`issue#39305 `_, `pr#27482 `_, Guan yunfei) * cephfs: client: fix lazyio_synchronize() to update file size (`pr#29705 `_, Sidharth Anupkrishnan) * cephfs: client: Fixes for missing consts SEEK_DATA and SEEK_HOLE on alpine linux (`pr#33104 `_, Stefan Bischoff) * cephfs: client: nfs-ganesha with cephfs client, removing dir reports not empty (`issue#40746 `_, `pr#29005 `_, Peng Xie) * cephfs: client: optimize rename operation under different quota root (`issue#39715 `_, `pr#28077 `_, Zhi Zhang) * cephfs: client: remove Inode.dir_contacts field and handle bad whence value to llseek gracefully (`pr#30580 `_, Jeff Layton) * cephfs: client: remove unused variable (`pr#31509 `_, su_nan@inspur.com) * cephfs: client: return -EIO when sync file which unsafe reqs have been dropped (`issue#40877 `_, `pr#29167 `_, simon gao) * cephfs: client: set snapdirs link count to 1 (`pr#28545 `_, Yan, Zheng) * cephfs: client: support the fallocate() when fuse version >= 2.9 (`issue#40615 `_, `pr#28831 `_, huanwen ren) * cephfs: Client: unlink dentry for inode with llref=0 (`issue#40960 `_, `pr#29321 `_, Xiaoxi CHEN) * cephfs: client: _readdir_cache_cb() may use the readdir_cache already clear (`issue#41148 `_, `pr#29526 `_, huanwen ren) * cephfs: client\xef\xbc\x9aEINVAL may be returned when offset is 0 (`pr#30312 `_, wenpengLi) * cephfs: Deploy ganesha daemons with vstart (`pr#31527 `_, Varsha Rao) * cephfs: expose snapshot creation time as new ceph.snap.btime vxattr (`pr#27077 `_, David Disseldorp) * cephfs: include: fix interval_set const_iterator call operator type (`pr#32185 `_, Patrick Donnelly) * cephfs: libcephfs: Add Tests for LazyIO (`issue#40283 `_, `pr#28834 `_, Sidharth Anupkrishnan) * cephfs: mds : clean up data written to unsafe inodes (`pr#30969 `_, simon gao) * cephfs: mds : optimization functions,get_dirfrags_under, to speed up processing directories with tens of millions of files (`pr#31123 `_, simon gao) * cephfs: mds,mon: deprecate CephFS inline_data support (`pr#29824 `_, Jeff Layton) * cephfs: mds/client: inode number delegation (`pr#31817 `_, Jeff Layton) * cephfs: mds/FSMap: fix adjust_standby_fscid (`pr#32709 `_, Sage Weil) * cephfs: mds/OpenFileTable: match MAX_ITEMS_PER_OBJ to osd_deep_scrub_large_omap_object_key_threshold (`pr#31232 `_, Vikhyat Umrao) * cephfs: mds/server:mds: drop reconnect message from non-existent session (`issue#39026 `_, `pr#27256 `_, Shen Hang) * cephfs: messages: make CephFS messages safe (`pr#31330 `_, Patrick Donnelly) * cephfs: mgr / volume: refactor [sub]volume (`issue#39969 `_, `pr#28082 `_, Venky Shankar) * cephfs: mgr / volumes: background purge queue for subvolumes (`issue#40036 `_, `pr#28003 `_, Patrick Donnelly, Venky Shankar) * cephfs: mgr/dashboard: CephFS class issues with strings (`pr#29353 `_, Volker Theile) * cephfs: mgr/volume: adapt arg passing to ServiceSpec (`pr#33687 `_, Joshua Schmid) * cephfs: mgr/volumes: add `mypy` support (`pr#33674 `_, Michael Fritch) * cephfs: mgr/volumes: check for string values in uid/gid (`pr#31961 `_, Jos Collin) * cephfs: mgr/volumes: cleanup leftovers from earlier purge job implementation (`pr#30886 `_, Venky Shankar) * cephfs: mgr/volumes: cleanup on fs create error (`pr#32459 `_, Jos Collin) * cephfs: mgr/volumes: clone from snapshot (`issue#24880 `_, `pr#32030 `_, Venky Shankar) * cephfs: mgr/volumes: convert string to bytes object (`issue#39750 `_, `pr#28380 `_, Rishabh Dave) * cephfs: mgr/volumes: drop unused size (`pr#30185 `_, Jos Collin) * cephfs: mgr/volumes: drop unused variable vol_name (`pr#31780 `_, Joshua Schmid) * cephfs: mgr/volumes: fail removing subvolume with snapshots (`issue#43645 `_, `pr#32696 `_, Venky Shankar) * cephfs: mgr/volumes: fetch trash and clone entries without blocking volume access (`issue#44207 `_, `pr#33413 `_, Venky Shankar) * cephfs: mgr/volumes: fix error message (`issue#40014 `_, `pr#28407 `_, Ramana Raja) * cephfs: mgr/volumes: fix incorrect snapshot path creation (`pr#30654 `_, Ramana Raja) * cephfs: mgr/volumes: fix placement default value (`pr#33476 `_, Sage Weil) * cephfs: mgr/volumes: fix subvolume creation with quota (`issue#40152 `_, `pr#28384 `_, Ramana Raja) * cephfs: mgr/volumes: fs subvolume resize inf command (`pr#31157 `_, Jos Collin) * cephfs: mgr/volumes: handle exceptions in purge thread with retry (`issue#41218 `_, `issue#41219 `_, `pr#29735 `_, Venky Shankar) * cephfs: mgr/volumes: improve volume deletion process (`pr#31762 `_, Joshua Schmid) * cephfs: mgr/volumes: list FS subvolumes, subvolume groups, and their snapshots (`pr#30476 `_, Jos Collin) * cephfs: mgr/volumes: minor fixes (`pr#29760 `_, Ramana Raja) * cephfs: mgr/volumes: prevent negative subvolume size (`pr#30058 `_, Jos Collin) * cephfs: mgr/volumes: protection for `fs volume rm` command (`pr#30407 `_, Jos Collin) * cephfs: mgr/volumes: refactor dir handle cleanup (`pr#30887 `_, Jos Collin) * cephfs: mgr/volumes: remove stale subvolume module (`pr#32645 `_, Venky Shankar) * cephfs: mgr/volumes: return string type to ceph-manager (`pr#30451 `_, Venky Shankar) * cephfs: mgr/volumes: sync inode attributes for cloned subvolumes (`issue#43965 `_, `pr#33120 `_, Venky Shankar) * cephfs: mgr/volumes: uid, gid for subvolume create and subvolumegroup create commands (`pr#30336 `_, Jos Collin) * cephfs: mgr/volumes: unregister job upon async threads exception (`issue#44293 `_, `pr#33547 `_, Venky Shankar) * cephfs: mgr/volumes: versioned subvolume provisioning (`pr#31763 `_, Venky Shankar) * cephfs: mon,mds: map mds daemons to a particular fs (`pr#32015 `_, Sage Weil) * cephfs: mon/MDSMonitor: use stringstream instead of dout for mds repaired (`issue#40472 `_, `pr#28683 `_, Zhi Zhang) * cephfs: mon/MDSMonitor: warn when creating fs with default EC data pool (`pr#31494 `_, Patrick Donnelly) * cephfs: mount.ceph.c: do not pass nofail to the kernel (`pr#26992 `_, Kenneth Waegeman) * cephfs: mount.ceph: give a hint message when no mds is up or cluster is laggy (`pr#32164 `_, Xiubo Li) * cephfs: mount.ceph: new mount option alias -- translate fs= option to mds_namespace= (`pr#33491 `_, Xiubo Li) * cephfs: mount.ceph: properly handle -o strictatime (`pr#29518 `_, Jeff Layton) * cephfs: mount.ceph: remove arbitrary limit on size of name= option (`pr#32706 `_, Jeff Layton) * cephfs: mount: fix the debug log when keyring getting secret failed (`pr#33499 `_, Xiubo Li) * cephfs: octopus: Add FS subvolume clone cancel (`issue#44208 `_, `pr#34018 `_, Venky Shankar) * cephfs: osdc/objecter: Fix last_sent in scientific format and add age to ops (`pr#29818 `_, Varsha Rao) * cephfs: propagate ll_releasedir errors (`pr#32548 `_, David Disseldorp) * cephfs: pybind / cephfs: remove static typing in LibCephFS.chown (`issue#42923 `_, `pr#31756 `_, Venky Shankar) * cephfs: pybind/cephfs: Modification to error message (`pr#28628 `_, Varsha Rao) * cephfs: pybind/mgr: add cephfs subvolumes module (`issue#39610 `_, `pr#27594 `_, Ramana Raja) * cephfs: pybind/test_volume_client: print python version correctly (`issue#40184 `_, `pr#28221 `_, Lianne) * cephfs: qa/cephfs: fix test_evict_client (`pr#28411 `_, Yan, Zheng) * cephfs: qa/cephfs: make filelock_interrupt.py work with python3 (`pr#32741 `_, Yan, Zheng) * cephfs: qa/cephfs: test case for auto reconnect after blacklisted (`pr#31200 `_, Yan, Zheng) * cephfs: qa/suites/fs/multifs/tasks/failover.yaml: disable RECENT_CRASH (`pr#29363 `_, Sage Weil) * cephfs: qa/suites/fs: mon_thrash test for fs (`issue#17309 `_, `pr#27073 `_, Jos Collin) * cephfs: qa/tasks/cephfs: os.write takes bytes, not str (`pr#32359 `_, Sage Weil) * cephfs: qa/tasks: add remaining tests for fs volume (`pr#31884 `_, Jos Collin) * cephfs: qa/tasks: Better handling of thrasher names and __init__ calls (`pr#31207 `_, Jos Collin) * cephfs: qa/tasks: check if fs mounted in umount_wait (`pr#30553 `_, Jos Collin) * cephfs: qa/tasks: Fix AttributeError: cant set attribute (`pr#31428 `_, Jos Collin) * cephfs: qa/tasks: upgrade the check for -c sudo option in vstart_runner.py (`issue#39385 `_, `pr#28199 `_, Rishabh Dave) * cephfs: qa/vstart_runner.py: add more options (`pr#29906 `_, Rishabh Dave) * cephfs: qa: add debugging failed osd-release setting (`pr#29715 `_, Patrick Donnelly) * cephfs: qa: add upgrade test for volume upgrade from legacy (`pr#33636 `_, Patrick Donnelly) * cephfs: qa: allow client mount to reset fully (`issue#42213 `_, `pr#30986 `_, Venky Shankar) * cephfs: qa: avoid subtree rep in test_version_splitting (`pr#33078 `_, Patrick Donnelly) * cephfs: qa: build v5.4 kernel (`pr#32763 `_, Patrick Donnelly) * cephfs: qa: decouple session map test from simple msgr (`issue#38803 `_, `pr#27415 `_, Patrick Donnelly) * cephfs: qa: define centos version for fs:verify (`pr#32535 `_, Patrick Donnelly) * cephfs: qa: detect RHEL8 for yum package installation (`pr#32507 `_, Patrick Donnelly) * cephfs: qa: do not check pg count for new data_isolated volume (`pr#31095 `_, Patrick Donnelly) * cephfs: qa: fix malformed suite config (`pr#29431 `_, Patrick Donnelly) * cephfs: qa: fix output check to not be sensitive to debugging (`pr#32163 `_, Patrick Donnelly) * cephfs: qa: fix testing kernel branch link (`pr#32854 `_, Patrick Donnelly) * cephfs: qa: fix various py3 cephfs qa bugs (`pr#32467 `_, Patrick Donnelly) * cephfs: qa: fix various py3 cephfs qa bugs x2 (`pr#32533 `_, Patrick Donnelly) * cephfs: qa: fs Ignore ceph.dir.pin: No such attribute errors in getfattr tests for old kernel client (`pr#27377 `_, Sidharth Anupkrishnan) * cephfs: qa: fs/upgrade test fixes and cephfs feature bit updates for Octopus/Nautilus (`issue#39078 `_, `issue#39077 `_, `issue#39020 `_, `pr#27303 `_, Patrick Donnelly) * cephfs: qa: have kclient tests use new mount.ceph functionality (`pr#30462 `_, Jeff Layton) * cephfs: qa: ignore expected MDS_CLIENT_LATE_RELEASE warning (`issue#40968 `_, `pr#29338 `_, Patrick Donnelly) * cephfs: qa: ignore RECENT_CRASH for multimds snapshot testing (`pr#29911 `_, Patrick Donnelly) * cephfs: qa: ignore slow ops for ffsb workunit (`pr#32668 `_, Patrick Donnelly) * cephfs: qa: ignore trimmed cache items for dead cache drop (`pr#32644 `_, Patrick Donnelly) * cephfs: qa: install some dependencies for xfstests (`pr#32478 `_, Patrick Donnelly) * cephfs: qa: only restart MDS between tests (`pr#32532 `_, Patrick Donnelly) * cephfs: qa: remove requirement on simple msgr (`issue#39079 `_, `pr#27301 `_, Patrick Donnelly) * cephfs: qa: rename kcephfs distro overrides (`pr#32639 `_, Patrick Donnelly) * cephfs: qa: save MDS epoch barrier (`pr#32642 `_, Patrick Donnelly) * cephfs: qa: sleep briefly after resetting kclient (`pr#29388 `_, Patrick Donnelly) * cephfs: qa: specify random distros in multimds (`pr#33080 `_, Patrick Donnelly) * cephfs: qa: tolerate ECONNRESET errcode during logrotate (`issue#41800 `_, `pr#30809 `_, Venky Shankar) * cephfs: qa: update kclient testing to RHEL 7.6 (`pr#26662 `_, Patrick Donnelly) * cephfs: qa: use -D_GNU_SOURCE when compiling fsync-tester.c (`pr#32480 `_, Patrick Donnelly) * cephfs: qa: use hard_reset to reboot kclient (`issue#37681 `_, `pr#28825 `_, Patrick Donnelly) * cephfs: qa: use mimic-O upgrade process (`pr#27731 `_, Patrick Donnelly) * cephfs: qa: use small default pg count for CephFS pools (`pr#30816 `_, Patrick Donnelly) * cephfs: qa: wait for MDS to come back after removing it (`issue#40967 `_, `pr#29336 `_, Patrick Donnelly) * cephfs: qa: whitelist Error recovering journal for cephfs-data-scan (`pr#30971 `_, Yan, Zheng) * cephfs: qa: whitelist TOO_FEW_PGS during Mimic deploy (`pr#31063 `_, Patrick Donnelly) * cephfs: Resolve a memory leak in cephfs/Resetter.cc (`pr#29302 `_, XiaoGuoDong2019) * cephfs: src/common: fix help text for echo option of cephfs-shell (`pr#33285 `_, Rishabh Dave) * cephfs: stop: Cleanly umount cephFS volumes (`pr#32024 `_, Kotresh HR) * cephfs: test/{fs,cephfs}: Get libcephfs and cephfs to compile with FreeBSD (`pr#30505 `_, Willem Jan Withagen) * cephfs: test: extend `fs subvolume` test to cover new interfaces (`issue#39949 `_, `pr#27856 `_, Venky Shankar) * cephfs: test: use distinct subvolume/group/snapshot names (`issue#42646 `_, `pr#31418 `_, Venky Shankar) * cephfs: test_volumes: fix _verify_clone_attrs call (`pr#33788 `_, Ramana Raja) * cephfs: test_volume_client: declare only one default for python version (`issue#40460 `_, `pr#28194 `_, Rishabh Dave) * cephfs: test_volume_client: fix test_put_object_versioned() (`issue#39405 `_, `issue#39510 `_, `pr#28692 `_, Rishabh Dave) * cephfs: test_volume_client: simplify test_get_authorized_ids() (`pr#28171 `_, Rishabh Dave) * cephfs: tools/cephfs: make cephfs-data-scan scan_links fix dentrys first (`pr#31680 `_, Yan, Zheng) * cephfs: Trivial comment and cleanup fixes for cephfs (`pr#27199 `_, Jeff Layton) * cephfs: vstart: add an alias for cephfs-shell to vstart_environment.sh (`pr#27437 `_, Jeff Layton) * cephfs: vstart: generate environment script suitable for sourcing (`pr#27198 `_, Jeff Layton) * cephfs: vstart_runner: allow the use of it with kernel mounts (`pr#30463 `_, Jeff Layton) * ceph_argparse: increment matchcnt on kwargs (`pr#33004 `_, Matthew Oliver) * check rdma configuration and fix some logic problem (`pr#28344 `_, Changcheng Liu) * client/Client : Fix sign compare compiler warning (`pr#30719 `_, Prashant D) * cls/queue: fix data corruption in urgent data (`pr#33686 `_, Yuval Lifshitz) * cmake: support parallel build for rocksd (`pr#31781 `_, Deepika Upadhyay) * cmake: add add_tox_test() (`pr#29446 `_, Kefu Chai) * cmake: add cython_cephfs to vstart target (`pr#28876 `_, Kefu Chai) * cmake: Add dpdk numa support (`pr#31841 `_, Chunsong Feng, Hu Ye) * cmake: Allow cephfs and ceph-mds to be build when building on FreeBSD (`pr#30494 `_, Willem Jan Withagen) * cmake: avoid rebuilding extensions, and using python-config (`pr#28920 `_, Kefu Chai) * cmake: boost fixes for ARM 32 bit (`pr#25729 `_, Daniel Glaser) * cmake: bump libceph-common SO version for compliance (`pr#30976 `_, Nathan Cutler) * cmake: check for MAJOR.MINOR version of python3 (`pr#27383 `_, Kefu Chai, Boris Ranto) * cmake: check for unaligned access (`pr#28936 `_, Kefu Chai) * cmake: check version of librdkafka (`pr#32237 `_, Kefu Chai) * cmake: cleanups (`pr#28252 `_, Kefu Chai) * cmake: cleanups (`pr#33500 `_, Kefu Chai) * cmake: compile crimson-auth with crimson::cflags (`pr#33296 `_, Kefu Chai) * cmake: dashboard: enable frontend on arm64 (`pr#30958 `_, Kefu Chai) * cmake: define mgr_cap_obj library when WITH_MGR=OFF (`pr#31326 `_, Casey Bodley) * cmake: detect librt for POSIX time functions (`pr#31543 `_, Kefu Chai) * cmake: detect linker support (`pr#30781 `_, Kefu Chai) * cmake: Do a debug build by default (`pr#30799 `_, Brad Hubbard) * cmake: do not assume ${CMAKE_GENERATOR} == make (`pr#27089 `_, Kefu Chai) * cmake: do not include ${CMAKE_SOURCE_DIR}/src/fmt/include (`pr#31761 `_, Kefu Chai) * cmake: do not include global_context.cc multiple times (`pr#32607 `_, Kefu Chai) * cmake: do not link against unused libs (`pr#33247 `_, Kefu Chai) * cmake: do not use CMP0074 unless it is supported (`pr#31958 `_, Kefu Chai) * cmake: do not use CMP0093 unless it is supported (`pr#31960 `_, Kefu Chai) * cmake: exclude unittest_alloc_aging from all (`pr#33466 `_, Kefu Chai) * cmake: Fix build against ncurses with separate libtinfo (`pr#27443 `_, Lars Wendler) * cmake: Fix unaligned check on big-endian systems (`pr#30362 `_, Ulrich Weigand) * cmake: fix WITH_UBSAN (`pr#28725 `_, Casey Bodley) * cmake: Improve test for 16-byte atomic support on IBM Z (`pr#32802 `_, Ulrich Weigand) * cmake: let vstart depend on radosgwd (`pr#32564 `_, Kefu Chai) * cmake: link ceph-fuse against librt (`pr#31531 `_, Yong Wang) * cmake: move crimson-crush to crimson/ (`pr#33481 `_, Kefu Chai) * cmake: one run_tox.sh to rule them all (`pr#29457 `_, Kefu Chai) * cmake: pass arguments to crimson tests (`pr#30655 `_, Kefu Chai) * cmake: pmem/pmdk changes to cmake (`pr#28802 `_, Scott Peterson, Xiaoyan Li) * cmake: remove cython 0.29s subinterpreter check during install (`pr#27067 `_, Tim Serong) * cmake: Removed unittest_alloc_aging from make check (`pr#33397 `_, Adam Kupczyk) * cmake: require CMake v3.10.2 (`pr#29291 `_, Kefu Chai) * cmake: require RocksDB 5.14 or higher (`pr#29930 `_, Ilsoo Byun) * cmake: revert librados_tp.so version from 3 to 2 (`issue#39291 `_, `pr#27593 `_, Nathan Cutler) * cmake: rewrite Findgenl to support components argument (`pr#28460 `_, Kefu Chai) * cmake: s/bortli_libs/brotli_libs/ (`pr#30374 `_, Kefu Chai) * cmake: selectively rewrite install rpath (`pr#30028 `_, Kefu Chai) * cmake: set empty INSTALL_RPATH on crypto shared libs (`issue#40398 `_, `pr#28593 `_, Nathan Cutler) * cmake: set empty RPATH for some test executables (`pr#29922 `_, Nathan Cutler) * cmake: set empty-string RPATH for ceph-osd (`issue#40295 `_, `pr#28508 `_, Nathan Cutler) * cmake: should expose ${C-ARES_BINARY_DIR} from c-ares (`pr#33256 `_, Kefu Chai) * cmake: silence messages when cppcheck/IWYU is not found (`pr#32140 `_, Kefu Chai) * cmake: support `Seastar_DPDK=ON` option (`pr#31110 `_, Kefu Chai) * cmake: Test for 16-byte atomic support on IBM Z (`pr#30638 `_, Ulrich Weigand) * cmake: update FindBoost.cmake (`pr#29396 `_, Willem Jan Withagen) * cmake: update FindBoost.cmake for 1.71 (`pr#31317 `_, Willem Jan Withagen) * cmake: Update pmdk version to 1.7 (`pr#32693 `_, Yin, Congmin) * cmake: update SPDK to build with GCC-9 (`pr#28507 `_, Kefu Chai) * cmake: use BUILD_ALWAYS for rebuilding external project (`pr#28984 `_, Kefu Chai) * cmake: use GNU linker on FreeBSD (`pr#30621 `_, Willem Jan Withagen) * cmake: use latest FindPython\\*.cmake (`pr#29100 `_, Kefu Chai) * cmake: use python2 by default (`pr#29148 `_, Kefu Chai) * cmake: use StdFilesystem::filesystem instead of stdc++fs (`pr#27149 `_, Willem Jan Withagen) * cmake: workaround of false alarm from ubsan (`pr#27094 `_, Kefu Chai) * CMakeLists.txt: fix typo in error message (`pr#28795 `_, Kefu Chai) * codeowners: Add ceph2.py to @ceph/orchestrators (`pr#32131 `_, Sebastian Wagner) * common,core,mon: src/: drop cct from cmd_getval() (`pr#33010 `_, Kefu Chai) * common,core: common, auth: use boost::spirit to parse ceph.conf, escape quotes in exported auths (`issue#22227 `_, `pr#28634 `_, Kefu Chai, Gu Zhongyan) * common,core: common,mgr,osd: pass string_view as name (`pr#33167 `_, Kefu Chai) * common,core: common,osd: add hash algorithms for dedup fingerprint (`pr#28254 `_, Myoungwon Oh) * common,core: include/cpp-btree: use the same type when allocate/deallocate (`pr#33638 `_, Kefu Chai) * common,core: message,mgr: drop MessageFactory and friends and use ref_t<> in mgr (`pr#27592 `_, Patrick Donnelly, Kefu Chai) * common,core: Remove dependence on `using namespace`: Build of common through osdc/Objecter.cc (`pr#27255 `_, Adam C. Emerson) * common,mgr: vstart.sh: set prometheus port for each mgr (`pr#33698 `_, Alfonso Mart\xc3\xadnez) * common,mon: common/options: make mon_clean_pg_upmaps_per_chunk unsigned (`pr#28509 `_, Kefu Chai) * common,rbd: common/ceph_context: avoid unnecessary wait during service thread shutdown (`pr#30947 `_, Jason Dillaman) * common,rgw: common/Formatter: escape printed buffer in XMLFormatter::dump_format_va() (`issue#38121 `_, `pr#26220 `_, ashitakasam) * common,rgw: rgw/OutputDataSocket: actually discard data on full buffer (`issue#40178 `_, `pr#28415 `_, Matt Benjamin) * common,tests: python-common: Add mypy testing (`pr#31071 `_, Sebastian Wagner) * common,tests: test/test_mempool: test accounting for btree_map (`pr#33621 `_, Adam Kupczyk) * common,tools: src/common: add rabin chunking for dedup (`pr#26730 `_, Myoungwon Oh, Hsuan-Heng, Wu) * common,tools: vstart.sh: enable creating multiple OSDs backed by spdk backend (`pr#27841 `_, Richael Zhuang) * common,tools: vstart.sh: enable nfs-ganesha mgmt. in dashboard (`pr#33691 `_, Alfonso Mart\xc3\xadnez) * common/config_values: set seastar logging level per that of ceph (`pr#28792 `_, Kefu Chai) * common/options: remove unused ms_msgr2\\_{sign,encrypt}_messages (`pr#31818 `_, Ilya Dryomov) * common: crimson/osd: add --mkkey support (`pr#28534 `_, Kefu Chai) * common: .gitignore: ignore /src/python-common/build (`pr#32967 `_, Alfonso Mart\xc3\xadnez) * common: add --log-early command line option (`pr#27419 `_, Sage Weil) * common: add bool log_to_file option (`pr#27044 `_, Sage Weil) * common: add comment about pod memory requests/limits (`pr#29331 `_, Patrick Donnelly) * common: add iterator-based string splitter (`pr#33696 `_, Casey Bodley) * common: add ref header (`pr#29119 `_, Patrick Donnelly) * common: auth/cephx: always initialize local variables (`pr#31154 `_, Kefu Chai) * common: auth/krb: fix Kerberos compile error (`issue#39948 `_, `pr#28113 `_, huangjun) * common: avoid use of size_t in options (`pr#28277 `_, James Page) * common: blobhash.h: remove extra [[fallthrough]] (`pr#28270 `_, Thomas Johnson) * common: blobhash: do not use cast for unaligned access (`pr#28099 `_, Kefu Chai) * common: buffer, denc: more constness (`pr#27767 `_, Kefu Chai) * common: buffer,crypto,tools: extract digest methods out of bufferlist (`pr#28486 `_, Kefu Chai) * common: buffer.h: remove list::iterator_impl::advance(size_t) (`pr#28278 `_, Kefu Chai) * common: ceph.in: use sys._exit when we dont shut down (`pr#33950 `_, Sage Weil) * common: ceph_argparse: put args from env before existing ones (`pr#33243 `_, Kefu Chai) * common: Clang requires a default constructor, but it can be empty (`issue#39561 `_, `pr#27844 `_, Willem Jan Withagen) * common: clean up CLUSTER_CREATE and CREATE options (`pr#31584 `_, Sage Weil) * common: common,crimson: fixes to compile with clang and libc++ (`pr#32485 `_, Kefu Chai) * common: common,crimson: supporting admin-socket commands (`pr#32174 `_, Ronen Friedman, Kefu Chai) * common: common,log: use ISO 8601 datetime format (`pr#27799 `_, Sage Weil, Casey Bodley) * common: common,os: address string truncated warnings from GCC-9 (`pr#28289 `_, Kefu Chai) * common: common/admin_socket: Added printing of error message (`pr#33380 `_, Adam Kupczyk) * common: common/bl: carry the bufferlist::_carriage over std::moves (`pr#32937 `_, Radoslaw Zarzynski) * common: common/bl: fix memory corruption in bufferlist::claim_append() (`pr#32823 `_, Radoslaw Zarzynski) * common: common/bl: fix the dangling last_p issue (`pr#32702 `_, Radoslaw Zarzynski) * common: common/bloom_filter: Fix endian issues (`pr#30527 `_, Ulrich Weigand) * common: common/ceph_time: tolerate mono time going backwards (`pr#33699 `_, Sage Weil) * common: common/config: cleanups (`pr#33362 `_, Jianpeng Ma) * common: common/config: fix lack of normalize_key_name() apply (`pr#33558 `_, Igor Fedotov) * common: common/config: Remove unused code (`pr#28940 `_, Jianpeng Ma) * common: common/Finisher: remove some lock acquisitions (`pr#29495 `_, Igor Fedotov) * common: common/options: change default erasure-code-profile to k=2 m=2 (`pr#27656 `_, Sage Weil) * common: common/pick_address.cc: silence GCC warning (`pr#32025 `_, Kefu Chai) * common: common/secret.c: dont pass uninitialized stack data to the kernel (`pr#30675 `_, Ilya Dryomov) * common: common/thread: Fix race condition in make_named_thread (`pr#31057 `_, Adam C. Emerson) * common: common/util: use ifstream to read from /proc files (`pr#32630 `_, Kefu Chai) * common: common/WorkQueue: narrow ThreadPool::_lock in func worker (`pr#22411 `_, Jianpeng Ma) * common: crimson, common: introduce ceph::atomic and apply it on bufferlist (`pr#32766 `_, Radoslaw Zarzynski) * common: crimson, common: RefCountedObj doesnt use atomics in Seastar builds (`pr#28085 `_, Radoslaw Zarzynski) * common: crimson/osd: implement readable/lease related methods (`pr#30639 `_, Kefu Chai) * common: crimson/osd: Message has non-null ref to SocketConnection now (`pr#30124 `_, Radoslaw Zarzynski) * common: crimson: cleanups (`pr#33797 `_, Kefu Chai) * common: crimson: cleanups for clang build (`pr#32605 `_, Kefu Chai) * common: Cycles: Add support for IBM Z (`pr#30874 `_, Ulrich Weigand) * common: default pg_autoscale_mode=on for new pools (`pr#30112 `_, Sage Weil) * common: default pg_autoscale_mode=on for new pools (`pr#30475 `_, Sage Weil) * common: denc: fix build error by calling global snprintf (`pr#27572 `_, Changcheng Liu) * common: denc: slightly optimize container_base::bound_encode (`pr#24636 `_, Radoslaw Zarzynski, Kefu Chai) * common: denc: support enums wider than 8 bits (`pr#33673 `_, Casey Bodley) * common: dmclock: pick up fix to replace uint (`pr#28829 `_, Kefu Chai) * common: drop sharing of buffer::raw outside bufferlist (`pr#32806 `_, Radoslaw Zarzynski) * common: encode for std::list doesnt use bl::copy_in() anymore (`pr#32785 `_, Radoslaw Zarzynski) * common: FIPS: audit and switch some memset & bzero users (`pr#31692 `_, Radoslaw Zarzynski) * common: Fix 44373 and make a couple cleanups in ceph::timer (`pr#33771 `_, Adam C. Emerson) * common: fix clang build failures, and clean up warnings (`pr#26701 `_, Adam C. Emerson) * common: fix clang compile errors from cython_modules (`pr#33056 `_, Mark Kogan) * common: fix compat of strerror_r (`pr#30279 `_, luo.runbing) * common: fix deadlocky inflight op visiting in OpTracker (`pr#32364 `_, Radoslaw Zarzynski) * common: fix missing include (`pr#31209 `_, Willem Jan Withagen) * common: fix parse_env nullptr deref (`pr#28159 `_, Patrick Donnelly) * common: Fix the error handling logic in get_device_id (`pr#30636 `_, Difan Zhang) * common: fix typo in rgw_user_max_buckets option long description (`pr#31571 `_, Alfonso Mart\xc3\xadnez) * common: give lockdeps group name to OpenSSLs mutexes (`issue#40698 `_, `pr#28987 `_, Radoslaw Zarzynski) * common: global/global_context: always add \\0 after strncpy() (`pr#28365 `_, Kefu Chai) * common: global/global_init: do first transport connection after setuid() (`pr#28012 `_, Roman Penyaev) * common: global/pidfile: pass string_view instead of ConfigProxy to pidfile_wr\xe2\x80\xa6 (`pr#27975 `_, Kefu Chai) * common: handle return value from read(2) (`pr#32192 `_, Patrick Donnelly) * common: include, common: make ceph::bufferlist 32 bytes long on x86 (`pr#32934 `_, Radoslaw Zarzynski) * common: include/buffer: add operator+=() for list::iterator (`pr#33003 `_, Kefu Chai) * common: include/cpp-btree: drop btree::dump() (`pr#32692 `_, Kefu Chai) * common: include/interval_set: rename some types (`pr#32415 `_, Kefu Chai) * common: include: switch mempool.h to ceph::atomic (`pr#33034 `_, Radoslaw Zarzynski) * common: json: JSONDecoder::err inherits from std::runtime_error (`pr#27957 `_, Casey Bodley) * common: make cluster_network work (`pr#27811 `_, Jianpeng Ma) * common: messages: MOSDPGCreate2 doesnt assume using namespace std (`pr#28342 `_, Radoslaw Zarzynski) * common: messages: remove MNop (`pr#27585 `_, Kefu Chai) * common: mgr/test_orchestrator: Add dummy data (`pr#32182 `_, Sebastian Wagner, Volker Theile) * common: move gen_rand_alphanumeric() helpers into common (`pr#31567 `_, Casey Bodley) * common: move xattr -> os/filestore/os_xattr (`pr#32219 `_, David Disseldorp) * common: msg/Message: remove unused local variables (`pr#29155 `_, Kefu Chai) * common: msg/msg_types: use inet_ntop(3) to render IP addresses (`pr#26987 `_, Sage Weil) * common: no need to include ceph_assert.h (`pr#28255 `_, Kefu Chai) * common: octopus (`pr#27009 `_, Sage Weil) * common: optimize check_utf8 (`pr#27628 `_, Yibo Cai) * common: optimize encode_utf8 (`pr#27807 `_, Yibo Cai) * common: OutputDataSocket retakes mutex on error path (`issue#40188 `_, `pr#28431 `_, Casey Bodley) * common: preforker: remove useless code (`pr#31714 `_, Xiubo Li) * common: python-common: Add drive selection (`pr#31021 `_, Sebastian Wagner) * common: python-common: add py.typed (PEP 561) (`pr#33236 `_, Sebastian Wagner) * common: python-common: Add small Readme (`pr#30587 `_, Sebastian Wagner) * common: python-common: avoid using setup_requires in setup.py (`pr#31222 `_, Sebastian Wagner) * common: python-common: enable lint in tox tests (`pr#31068 `_, Kiefer Chang) * common: python-common: Fix typo in device type (`pr#31758 `_, Volker Theile) * common: python-common: Make Drive Group filter by AND, instead of OR (`pr#33625 `_, Sage Weil, Sebastian Wagner) * common: python-common: Make DriveGroupSpec a sub type of ServiceSpec (`pr#33817 `_, Sebastian Wagner) * common: random: added a deduction guide to make using the function ob\xe2\x80\xa6 (`pr#30224 `_, Jesse Williamson) * common: remove dead code in {safe,mutable}_item_history (`pr#32698 `_, Radoslaw Zarzynski) * common: remove unused _STR and STRINGIFY macro (`pr#29605 `_, Yao Zongyou) * common: rename image to container_image (`pr#30800 `_, Sage Weil) * common: Revert Merge pull request #33673 from cbodley/wip-denc-enum (`pr#33832 `_, Sage Weil) * common: selinux: Allow ceph to setsched (`pr#33404 `_, Brad Hubbard) * common: skip interfaces starting with lo in find_ipv{4,6}_in_subnet() (`pr#32420 `_, Jiawei Li) * common: sort best-matched commond by req argument count (`issue#40292 `_, `pr#28510 `_, Chang Liu) * common: src/: remove execute permissions on nine source files (`pr#28781 `_, J. Eric Ivancich) * common: start logging for non-global_init users (`pr#27352 `_, Sage Weil) * common: systemd: Wait 5 seconds before attempting a restart of an OSD (`pr#31550 `_, Wido den Hollander) * common: use of malloc.h is deprecated (`pr#29397 `_, Willem Jan Withagen) * common: zstd: upgrade to v1.4.0 (`pr#28656 `_, Dan van der Ster) * core,mgr,tools: osd,tools: Balancer fixes without all of the calc_pg_upmaps() rewrites (`pr#31774 `_, David Zafman) * core,mgr: mgr/ActivePyModules: drop GIL to register/unregister clients (`pr#33464 `_, Sage Weil) * core,mgr: mgr/alerts: simple module to send health alerts (`pr#30738 `_, Sage Weil) * core,mgr: mgr/DaemonServer: warn when we reject reports (`pr#31471 `_, Sage Weil) * core,mgr: mgr/pg_autoscaler: add pg_autoscale_bias pool property and apply it to pg_num selection (`pr#27154 `_, Sage Weil) * core,mgr: mgr/prometheus: report per-pool pg states (`pr#32370 `_, Aleksei Zakharov) * core,mgr: mgr/telemetry: add report_timestamp to sent reports (`pr#27571 `_, Dan Mick) * core,mgr: mgr/telemetry: catch exception during requests.put (`pr#33070 `_, Sage Weil) * core,mgr: mgr/telemetry: obscure entity_name with a salt (`pr#29330 `_, Sage Weil) * core,mgr: osd,mon,mgr: report /dev/disk/by-path paths for devices (`pr#32261 `_, Sage Weil) * core,mon: mon,osd: use get_req<> instead of static_cast<>(get_req()) (`pr#30023 `_, Kefu Chai) * core,mon: mon/AuthMonitor: fix initial creation of rotating keys (`issue#40634 `_, `pr#28850 `_, Sage Weil) * core,mon: mon/MonClient: add proper SRV priority support (`pr#27126 `_, Kefu Chai) * core,mon: mon/Monitor.cc: fix condition that checks for unrecognized auth mode (`pr#30015 `_, Neha Ojha) * core,mon: mon/Monitor.cc: print min_mon_release correctly (`pr#27107 `_, Neha Ojha) * core,mon: mon/OSDMonitor: clean up removed_snap keys (`pr#30518 `_, Sage Weil) * core,mon: mon/OSDMonitor: expand iec_options for osd pool set (`pr#31196 `_, Sage Weil) * core,mon: mon/OSDMonitor: Use generic priority cache tuner for mon caches (`issue#40870 `_, `pr#28227 `_, Sridhar Seshasayee) * core,pybind: pybind/ceph_argparse: avoid int overflow (`pr#33101 `_, Kefu Chai) * core,pybind: pybind/rados: fix set_omap() crash on py3 (`pr#29096 `_, Sage Weil) * core,pybind: pybind/rados: fixed Python3 string conversion issue on get_fsid (`issue#38381 `_, `pr#26514 `_, Jason Dillaman) * core,rbd: common/config: use string_view for keys (`pr#27097 `_, Kefu Chai) * core,rbd: osd/OSDCap: rbd profile permits use of rbd_info (`issue#39973 `_, `pr#28253 `_, songweibin) * core,rbd: osd/PrimaryLogPG: do not append outdata to TMAPUP ops (`pr#30457 `_, Jason Dillaman) * core,rgw,tests: librados,test,rgw: cleanups to deprecate safe_cb related functions (`pr#31045 `_, Kefu Chai) * core,tests: ceph_test_cls_hello: set RETURNVEC on the expected EINVAL request (`pr#33708 `_, Sage Weil) * core,tests: ceph_test_rados_api\\_{watch_notify,misc}: tolerate some timeouts (`pr#34011 `_, Sage Weil) * core,tests: Improvements to standalone tests (`pr#27279 `_, David Zafman) * core,tests: kv_store_bench: fix teuthology_tests() return value (`pr#30293 `_, luo rixin) * core,tests: mon.test: improve validation and add a test for osd pool create (`pr#30538 `_, Kefu Chai) * core,tests: qa/objectstore: test with reduced value of osd_memory_target (`pr#27083 `_, Neha Ojha) * core,tests: qa/standalone/ceph-helpers: more osd debug (`issue#40666 `_, `pr#28867 `_, Sage Weil) * core,tests: qa/standalone/misc/ok-to-stop: improve test (`pr#32738 `_, Sage Weil) * core,tests: qa/standalone/mon/health-mute.sh: misc fixes (`pr#29744 `_, Sage Weil) * core,tests: qa/standalone/osd/osd-backfill-recovery-log.sh: fix TEST_backfill_log\\_[1, 2] (`pr#32851 `_, Neha Ojha) * core,tests: qa/standalone/scrub/osd-scrub-snaps: snapmapper omap is now m (`pr#29774 `_, Sage Weil) * core,tests: qa/standalone/scrub/osd-scrub-test: wait longer for update (`pr#33809 `_, Sage Weil) * core,tests: qa/suites/rados/multimon: whitelist SLOW_OPS while thrashing mons (`pr#29121 `_, Sage Weil) * core,tests: qa/suites/rados/perf: run on ubuntu (`pr#32355 `_, Sage Weil) * core,tests: qa/suites/rados/rest: run restful test on el8 (`pr#32920 `_, Sage Weil) * core,tests: qa/suites/rados/singleton-bluestore/cephtool: whitelist MON_DOWN (`pr#33645 `_, Sage Weil) * core,tests: qa/suites/rados/singleton/all/lost-unfound\\*: whitelist SLOW_OPS (`pr#32958 `_, Sage Weil) * core,tests: qa/suites/rados/singleton/all/recovery-preemption: fix pg log length (`pr#32898 `_, Sage Weil) * core,tests: qa/suites/rados/singleton/all/thrash-eio: whitelist slow request (`pr#33497 `_, Sage Weil, Sridhar Seshasayee) * core,tests: qa/suites/rados/thrash-old-clients: exclude ceph-daemon on nautilus installs (`pr#30817 `_, Sage Weil) * core,tests: qa/suites/rados/thrash-old-clients: rejigger v1 vs v2 settings (`pr#27249 `_, Sage Weil) * core,tests: qa/suites/rados/thrash-old-clients: tolerate MON_DOWN (`pr#30577 `_, Sage Weil) * core,tests: qa/suites/rados/thrash-old-clients: use cephadm (`pr#32377 `_, Sage Weil) * core,tests: qa/suites/rados/thrash: force normal pg log length with cache tiering (`issue#38358 `_, `issue#24320 `_, `pr#28658 `_, Sage Weil) * core,tests: qa/suites/rados/thrash: increase async and partial recovery test coverage (`pr#30699 `_, Neha Ojha) * core,tests: qa/suites/rados/valgrind-leaks: independently verify we detect leaks on mon, osd, mgr (`pr#32946 `_, Sage Weil) * core,tests: qa/suites/rados/verify/tasks/mon_recovery: whitelist SLOW_OPS (`pr#33644 `_, Sage Weil) * core,tests: qa/suites/rados/verify: debug monc = 20 (`pr#32968 `_, Sage Weil) * core,tests: qa/suites/rados/verify: debug_ms = 1 (`pr#33871 `_, Sage Weil) * core,tests: qa/suites/rados: move cephadm_orchestrator to el8 (`pr#32407 `_, Sage Weil) * core,tests: qa/suites/upgrade/mimic-x-singleton: suppress TOO_FEW_PGS warning (`pr#31054 `_, Sage Weil) * core,tests: qa/suites/upgrade: fix mimic-x-singleton (`pr#32719 `_, Sage Weil) * core,tests: qa/suites/upgrade: misc fixes for octopus (`pr#32750 `_, Sage Weil, Josh Durgin) * core,tests: qa/tasks/cbt: run stop-all.sh while shutting down (`pr#31171 `_, Sage Weil) * core,tests: qa/tasks/ceph: restart: stop osd, mark down, then start (`pr#30196 `_, Sage Weil) * core,tests: qa/tasks/ceph_manager: add --log-early to raw_cluster_cmd (`pr#32989 `_, Sage Weil) * core,tests: qa/tasks/ceph_manager: enable ceph-objectstore-tool via cephadm (`pr#32411 `_, Sage Weil) * core,tests: qa/tasks/ceph_manager: fix ceph-objectstore-tool incantations (`pr#32701 `_, Sage Weil) * core,tests: qa/tasks/ceph_manager: fix chmod on log dir during pg export copy (`pr#32943 `_, Sage Weil) * core,tests: qa/tasks/ceph_manager: fix post-osd-kill pg peered check (`pr#32737 `_, Sage Weil) * core,tests: qa/tasks/ceph_manager: make is\\_{clean,recovered,active_or_down} less racy (`pr#28969 `_, Sage Weil) * core,tests: qa/tasks/mon_thrash: sync force requires some force flags (`pr#30361 `_, Sage Weil) * core,tests: qa/tasks/radosbench: fix usage of -O (`pr#33744 `_, Sage Weil) * core,tests: qa/tasks/thrashosds-health: disable osd_max_markdown behavior (`pr#33601 `_, Sage Weil) * core,tests: qa/workunits/cephtool/test.sh: delete test_erasure pool (`pr#33188 `_, Sage Weil) * core,tests: qa/workunits/rados/test_crash.sh: suppress core files (`pr#32724 `_, Sage Weil) * core,tests: qa: add basic omap testing capability (`pr#29120 `_, Neha Ojha) * core,tests: remove ceph_test_rados_watch_notify (`pr#34044 `_, Sage Weil) * core,tests: test/CMakeLists: disable memstore make check test (`pr#33473 `_, Sage Weil) * core,tests: test/librados: dont release handler if set_pg_num failed (`pr#32112 `_, huangjun) * core,tests: test/osd/safe-to-destroy.sh: fix typo (`pr#27651 `_, Sage Weil) * core,tests: test/pybind/test_rados.py: test test_aio_remove (`pr#31003 `_, Zhang Jiao) * core,tests: test/unittest_lockdep: do not start extra threads (`pr#32772 `_, Kefu Chai) * core,tests: test: Bump sleep time for slower machines (`pr#29494 `_, David Zafman) * core,tests: test: Make sure that extra scheduled scrubs dont confuse test (`issue#40078 `_, `pr#28302 `_, David Zafman) * core,tests: tests/osd: fix typo in unittest_osdmap (`pr#29790 `_, huangjun) * core,tests: tools/rados: use num ops instead of num objs for tracking outstanding IO (`pr#29734 `_, Albert H Chen) * core,tests: unittest_lockdep: avoid any threads for death test (`pr#32765 `_, Sage Weil) * core,tools: ceph-objectstore-tool cant remove head with bad snapset (`pr#29919 `_, David Zafman) * core,tools: ceph.in: check ceph-conf returncode (`pr#30695 `_, Dimitri Savineau) * core,tools: src/tools/ceph-dedup-tool: Fix chunk scru (`pr#28765 `_, Myoungwon Oh) * core: ceph.in: only preload asan library for Debug build (`pr#27190 `_, Kefu Chai) * core: osd/ClassHandler: cleanups (`pr#28363 `_, Kefu Chai) * core: osd: add hdd, ssd and hybrid variants for osd_snap_trim_sleep (`pr#28772 `_, Neha Ojha) * core: osdc/Objecter: use unique_ptr for Objecter::osdmap (`issue#38403 `_, `pr#28397 `_, Kefu Chai) * core: Add structures for tracking in progress operations (`pr#28395 `_, Samuel Just) * core: auth: treat mgr the same as mon when selecting auth mode (`pr#33226 `_, Yehuda Sadeh) * core: backfill_toofull seen on cluster where the most full OSD is at 1% (`pr#29857 `_, David Zafman) * core: ceph,pybind/mgr: a few py3 fixes (`pr#32187 `_, Sage Weil) * core: ceph-objectstore-tool: better error message if pgid and object do not match (`pr#30501 `_, Sage Weil) * core: ceph.in: Fix name retval is not defined error (`pr#33516 `_, Varsha Rao) * core: ceph.in: improve control-c handling (`pr#33352 `_, Sage Weil) * core: ceph.in: only shut down rados on clean exit (`pr#33825 `_, Sage Weil) * core: client: fix FTBFS due to bl::iterator::advance() (`pr#33085 `_, Radoslaw Zarzynski) * core: cls_hello: fix typo (`pr#32976 `_, Sage Weil) * core: common,mon,osd: unify ceph tell and ceph daemon command sets (`pr#30217 `_, Sage Weil) * core: common,tools,crush,test: misc converity & klocwork fixes (`pr#29316 `_, songweibin) * core: common/admin_socket: Increase socket timeouts (`pr#31623 `_, Brad Hubbard) * core: common/assert: include ceph_abort_msg(arg) arg in log output (`pr#27732 `_, Sage Weil) * core: common/blkdev: fix some problems with smart scraping (`pr#28848 `_, Sage Weil) * core: common/blkdev: get_device_id: behave if model is lvm and id_model_enc isnt there (`pr#27156 `_, Sage Weil) * core: common/blkdev: handle devices with ID_MODEL as LVM PV ... but valid ID_MODEL_ENC (`pr#27020 `_, Sage Weil) * core: common/condition_variable_debug: do not assert() if sloppy (`pr#29854 `_, Kefu Chai) * core: common/config: behave when both POD_MEMORY_REQUEST and POD_MEMORY_LIMIT are set (`pr#29511 `_, Sage Weil) * core: common/config: less noise about configs from mon we cant apply (`pr#31988 `_, Sage Weil) * core: common/config: parse --default-$option as a default value (`pr#27169 `_, Sage Weil) * core: common/config: update values when they are removed via mon (`pr#32091 `_, Sage Weil) * core: common/kv/rocksdb: Fixed async compations (`pr#26786 `_, Adam Kupczyk) * core: common/options.cc: Lower the default value of osd_deep_scrub_large_omap_object_key_threshold (`pr#28782 `_, Neha Ojha) * core: common/options.cc: make rocksdb_delete_range_threshold very high (`pr#33439 `_, Neha Ojha) * core: common/options: allow osd_pool_default_pg_autoscale_mode to update a runtime (`pr#27821 `_, Sage Weil) * core: common/options: annotate some options; enable some runtime updates (`pr#27655 `_, Sage Weil) * core: common/options: decrease the default max_omap_entries_per_request (`pr#31506 `_, Yan Jun) * core: common/options: make secure mode non-experimental, and prefer/require it for mons (`pr#27012 `_, Sage Weil) * core: common/options: update mon_crush_min_required_version=hammer (`pr#27568 `_, Sage Weil) * core: common/PriorityCache: fix over-aggressive assert when mem limited (`pr#27763 `_, Mark Nelson) * core: common/PriorityCache: Implement a Cache Manager (`pr#27381 `_, Mark Nelson) * core: common/TextTable,mgr: standardize on 2 spaces between table columns (`pr#33138 `_, Sage Weil) * core: common/util: handle long lines in /proc/cpuinfo (`issue#38296 `_, `pr#27707 `_, Sage Weil) * core: compressor/lz4: work around bug in liblz4 versions <1.8.2 (`pr#33584 `_, Sage Weil, Dan van der Ster) * core: crimson, osd: add support for Ceph Classes, part 1 (`pr#29651 `_, Radoslaw Zarzynski) * core: crimson/osd: add osd to crush when it boots (`pr#28689 `_, Kefu Chai) * core: crush/CrushCompiler: Fix __replacement_assert (`issue#39174 `_, `pr#27506 `_, Brad Hubbard) * core: crush/CrushWrapper.cc: Fix sign compare compiler warning (`pr#31184 `_, Prashant D) * core: crush/CrushWrapper: behave with empty weight vector (`pr#32673 `_, Kefu Chai) * core: dencoder: include some missed types (`pr#27804 `_, Greg Farnum) * core: dmclock server side refactor (`pr#30650 `_, Samuel Just) * core: examples/librados: fix bufferlist::copy() in hello_world.cc (`pr#33075 `_, Radoslaw Zarzynski) * core: Extract peering logic into a module for use in crimson (`pr#27874 `_, Samuel Just, sjust@redhat.com) * core: feature: Health warnings on long network ping times, add dump_osd_network to get a report (`issue#40640 `_, `pr#28755 `_, David Zafman) * core: Feature: Improvements to auto repair (`issue#38616 `_, `pr#26942 `_, David Zafman) * core: global: ensure CEPH_ARGS is decoded before early arg processing (`pr#32830 `_, Jason Dillaman) * core: global: explicitly call out EIO events in crash dumps (`pr#27386 `_, Sage Weil) * core: include,os: Make ceph_le member private (`pr#30526 `_, Ulrich Weigand) * core: include/ceph_features: fix typo (`pr#27353 `_, Sage Weil) * core: include/cpp-btree: cleanups (`pr#32443 `_, Kefu Chai) * core: init-ceph: wait longer before resending $signal (`pr#27308 `_, Kefu Chai) * core: kv/KeyValueDB: fix estimate_prefix_size() (`pr#29842 `_, Adam Kupczyk) * core: kv/RocksDBStore: Add minimum key limit before invoking DeleteRange (`pr#31442 `_, Mark Nelson) * core: kv/RocksDBStore: make option: compaction_threads/disableWAL/flusher_t\xe2\x80\xa6 (`pr#32453 `_, Jianpeng Ma) * core: kv/RocksDBStore: tell rocksdb to set mode to 0600, not 0644 (`pr#30679 `_, Sage Weil) * core: kv: fix shutdown vs async compaction (`pr#32619 `_, Sage Weil) * core: kv: make delete range optional on number of keys (`pr#27317 `_, Zengran Zhang) * core: librados,osd,mon: remove traces of CEPH_OSDMAP_FULL (`pr#30614 `_, Kefu Chai) * core: Make dumping of reservation info congruent between scrub and recovery (`pr#30192 `_, David Zafman) * core: messages,osd: remove MPGStats::had_map_for (`pr#27026 `_, Kefu Chai) * core: messages: #include necessary header (`pr#27590 `_, Kefu Chai) * core: mgr/balancer: sort pool names in balancer ls output (`pr#32424 `_, Sage Weil) * core: mgr/balancer: tolerate pgs outside of target weight map (`pr#34014 `_, Sage Weil) * core: mgr/cephadm: health alert for stray services or hosts (`pr#32754 `_, Sage Weil) * core: mgr/crash: behave when posted crash has no backtrace (`pr#31643 `_, Sage Weil) * core: mgr/crash: raise warning about recent crashes and other improvements (`pr#29034 `_, Sage Weil) * core: mgr/DaemonServer: fix osd ok-to-stop for EC pools (`pr#32046 `_, Sage Weil) * core: mgr/DaemonServer: fix pg merge checks (`pr#34067 `_, Sage Weil) * core: mgr/DaemonServer: prevent pgp_num reductions from outpacing pg_num merges (`issue#38786 `_, `pr#27473 `_, Sage Weil) * core: mgr/devicehealth: fix telemetry stops sending device reports after 48\xe2\x80\xa6 (`pr#32903 `_, Yaarit Hatuka) * core: mgr/diskprediction_cloud: Service unavailable (`issue#40478 `_, `pr#28687 `_, Rick Chen) * core: mgr/diskprediction_local: import scipy early to fix self-test deadlock (`pr#32102 `_, Sage Weil) * core: mgr/diskprediction_local: some debug output during predict (and self-test) (`pr#31572 `_, Sage Weil) * core: mgr/MgrClient: fix open condition (`pr#31256 `_, Sage Weil) * core: mgr/MgrClient: fix open condition fix (`pr#31422 `_, Sage Weil) * core: mgr/MgrClient: fix tell mgr.x ... (`pr#31989 `_, Sage Weil) * core: mgr/pg_autoscaler: complete event if pool disappears (`pr#30819 `_, Sage Weil) * core: mgr/pg_autoscaler: default to pg_num[_min] = 16 (`pr#31636 `_, Sage Weil) * core: mgr/pg_autoscaler: default to pg_num[_min] = 32 (`pr#32788 `_, Neha Ojha) * core: mgr/pg_autoscaler: fix division by zero (`pr#33402 `_, Sage Weil) * core: mgr/pg_autoscaler: only generate target\\_\\* health warnings if targets set (`pr#31638 `_, Sage Weil) * core: mgr/progress: behave if pgs disappear (due to a racing pg merge) (`issue#38157 `_, `pr#27546 `_, Sage Weil) * core: mgr/progress: fix duration strings (`pr#34045 `_, Sage Weil) * core: mgr/progress: progress clear command should clear events in ceph -s (`pr#33400 `_, Sage Weil) * core: mgr/telemetry: add some more telemetry (`pr#31226 `_, Sage Weil) * core: mgr/telemetry: include pg_autoscaler and balancer status (`pr#30871 `_, Sage Weil) * core: mgr/telemetry: send device telemetry via per-host POST to device endpoint (`pr#31225 `_, Sage Weil) * core: mgr/telemetry: split entity_name only once (handle ids with dots) (`pr#33094 `_, Dan Mick) * core: Miscellaneous lost fixes (`pr#27599 `_, Xinze Chi, Greg Farnum, linbing, shangfufei) * core: mon, osd: parallel clean_pg_upmaps (`issue#40104 `_, `pr#28373 `_, xie xingguo) * core: mon,msg/async: fix mon to mon authentication (`pr#27823 `_, Sage Weil) * core: mon,osd: add dead_epoch, --dead flag to osd down (`pr#29221 `_, Sage Weil) * core: mon,osd: add no{out,down,in,out} flags on CRUSH nodes (`pr#27563 `_, Sage Weil) * core: mon,osd: deprecate forward and readforward cache modes (`pr#28944 `_, Sage Weil) * core: mon,osd: track history and past_intervals for creating pgs (`pr#27696 `_, Sage Weil) * core: mon,osd: various octopus feature bits (`pr#27141 `_, Sage Weil) * core: mon/ConfigMap: search nested sections (`pr#31327 `_, Sage Weil) * core: mon/ConfigMonitor: fix handling of NO_MON_UPDATE settings (`pr#32726 `_, Sage Weil) * core: mon/ConfigMonitor: only propose if leader (`pr#32975 `_, Sage Weil) * core: mon/ConfigMonitor: prefix all global config options with global/ (`pr#32786 `_, Sage Weil) * core: mon/LogMonitor: add mon_cluster_log_to_file bool option (`pr#27343 `_, Sage Weil) * core: mon/MgrMonitor: fix null deref when invalid formatter is specified (`pr#29089 `_, Sage Weil) * core: mon/MgrMonitor: make mgr fail work with no arguments (`pr#33997 `_, Sage Weil) * core: mon/MgrStatMonitor: ensure only one copy of initial service map (`issue#38839 `_, `pr#27101 `_, Sage Weil) * core: mon/MonClient: do not dereference auth_supported.end() (`pr#27196 `_, Kefu Chai) * core: mon/MonClient: ENXIO when sending command to down mon (`pr#29090 `_, Sage Weil, Greg Farnum) * core: mon/MonClient: send logs to mon on separate schedule than pings (`pr#33732 `_, Sage Weil) * core: mon/MonClient: skip CEPHX_V2 challenge if client doesnt support it (`pr#30523 `_, Sage Weil) * core: mon/Monitor: fail forwarded tell commands (`pr#33542 `_, Sage Weil) * core: mon/MonMap: encode (more) valid compat monmap when we have v2-only addrs (`pr#31472 `_, Sage Weil) * core: mon/MonmapMonitor: clean up empty created stamp in monmap (`issue#39085 `_, `pr#27327 `_, Sage Weil) * core: mon/OSDMonitor.cc: Add current numbers of objects and bytes (`pr#18694 `_, Shinobu Kinjo) * core: mon/OSDMonitor.cc: better error message about min_size (`pr#29184 `_, Neha Ojha) * core: mon/OSDMonitor: accept autoscale_mode argument to osd pool create (`pr#33092 `_, Sage Weil) * core: mon/OSDMonitor: add check for crush rule size in pool set size command (`pr#30723 `_, Vikhyat Umrao) * core: mon/OSDMonitor: allow osd pool set pgp_num_actual (`pr#27010 `_, Sage Weil) * core: mon/OSDMonitor: allow pg_num to increase when require_osd_release < N (`issue#39570 `_, `pr#27928 `_, Sage Weil) * core: mon/OSDMonitor: Dont update mon cache settings if rocksdb is not used (`pr#32473 `_, Sridhar Seshasayee) * core: mon/OSDMonitor: fix format error ceph osd stat --format json (`pr#31399 `_, Zheng Yin) * core: mon/OSDMonitor: make memory autotune disable itself if no rocksd (`pr#32044 `_, Sage Weil) * core: mon/OSDMonitor: tolerate duplicate MRemoveSnaps messages (`issue#40774 `_, `pr#29051 `_, Sage Weil) * core: mon/PGMap.h: disable network stats in dump_osd_stats (`pr#32406 `_, Neha Ojha, David Zafman) * core: mon/PGMap: drop indentation on df human output (`pr#30848 `_, Sage Weil) * core: mon/PGMap: fix summary display of >32bit pg states (`pr#33137 `_, Sage Weil) * core: mon/PGMap: use NONE for pg ls[-\\*] output too (`pr#32048 `_, Sage Weil) * core: mon/Session: only index osd ids >= 0 (`pr#32764 `_, Sage Weil) * core: More PeeringState and related cleanups to ease use in crimson (`pr#28048 `_, Samuel Just) * core: msg,auth: migrate msg/async V1 implementation to new Auth{Server,Client} interfaces (`pr#27566 `_, Sage Weil) * core: msg/async/frames_v2.h: fix warning (`pr#27464 `_, Sage Weil) * core: msg/async/ProtocolV2: fix typo in register_lossy_clients fix (`pr#33559 `_, Sage Weil) * core: msg/async/ProtocolV[12]: add ms_learn_addr_from_peer (`pr#27341 `_, Sage Weil) * core: msg/async: clear_payload when requeue_sent (`pr#30211 `_, Jianpeng Ma) * core: msg/async: optimizations (`pr#26531 `_, Jianpeng Ma) * core: msg/auth: handle decode errors instead of throwing exceptions (`pr#31052 `_, Sage Weil) * core: msg/DispatchQueue: Set throttle stamp for local_delivery (`pr#31137 `_, Brad Hubbard) * core: msg/Policy: limit unregistered anon connections to mon (`pr#33163 `_, Sage Weil) * core: msg/Policy: make stateless_server default to anon (again) (`pr#33633 `_, Sage Weil) * core: objclass, osd: clean up the cls-host interface. Turn ClassHandler into singleton (`pr#29322 `_, Radoslaw Zarzynski) * core: object_stat_sum_t decode broken if given older version (`issue#39284 `_, `issue#39281 `_, `pr#27564 `_, David Zafman) * core: os, osd: readv (`pr#30061 `_, xie xingguo) * core: os/bluestore: Add config observer for osd memory specific options (`pr#29606 `_, Sridhar Seshasayee) * core: os/filestore: assure sufficient leaves in pre-split (`issue#39390 `_, `pr#27689 `_, Jeegn Chen) * core: os/Transaction: dump alloc hint flags in op (`pr#28881 `_, Zengran Zhang) * core: os: remove KineticStore (`pr#30653 `_, Kefu Chai) * core: osd,crimson: use make_message for creating message (`pr#30412 `_, Kefu Chai) * core: osd,messages: changes for preparing for crimson-osd (`pr#27003 `_, Kefu Chai) * core: osd,mon: remove pg_pool_t::removed_snaps (`pr#28330 `_, Sage Weil) * core: osd/ECTransaction,ReplicatedBackend: create op is new in octopus (`pr#29092 `_, Sage Weil) * core: osd/MissingLoc, PeeringState: remove osd from missing loc in purge_strays() (`pr#30119 `_, Neha Ojha) * core: osd/MissingLoc.cc: do not rely on missing_loc_sources only (`pr#30226 `_, Neha Ojha) * core: osd/OSD.cc: make osd bench description consistent with parameters (`issue#39006 `_, `pr#27600 `_, Neha Ojha) * core: osd/osd: add an err log to set_numa_affinty (`pr#30870 `_, luo rixin) * core: osd/OSD: auto mark heartbeat sessions as stale and tear them down (`issue#40586 `_, `pr#28752 `_, xie xingguo) * core: osd/OSD: choose more heartbeat peers from different subtrees (`pr#33037 `_, xie xingguo) * core: osd/OSD: enhance osd numa affinity compatibility (`pr#31274 `_, Dai zhiwei) * core: osd/OSD: keep synchronizing with mon if stuck at booting (`pr#28404 `_, xie xingguo) * core: osd/OSD: Log slow ops/types to cluster logs (`pr#33328 `_, Sridhar Seshasayee) * core: osd/OSD: only wake up empty pqueue (`pr#28832 `_, Jianpeng Ma) * core: osd/OSD: prevent down osds from immediately rejoining the culster (`pr#33039 `_, xie xingguo) * core: osd/osd: Refactor get_iface_numa_node (`pr#31965 `_, Dai zhiwei, luo rixin) * core: osd/OSD: remove unused func enqueue_peering_evt_front (`pr#32496 `_, Jianpeng Ma) * core: osd/OSD: remove unused parameter osdmap_lock_name (`pr#32514 `_, Jianpeng Ma) * core: osd/OSDCap: Check for empty namespace (`issue#40835 `_, `pr#29146 `_, Brad Hubbard) * core: osd/OSDMap.cc: add more info in json output of osd stat (`pr#30344 `_, Shen Hang) * core: osd/OSDMap.cc: dont output over/underfull messages to lderr (`pr#31542 `_, Neha Ojha) * core: osd/OSDMap: add zone to default crush map (`pr#27070 `_, Sage Weil) * core: osd/OSDMap: calc_pg_upmaps - restrict optimization to origin pools only (`issue#38897 `_, `pr#27142 `_, xie xingguo) * core: osd/OSDMap: consider overfull osds only when trying to do upmap (`pr#32368 `_, xie xingguo) * core: osd/OSDMap: do not trust partially simplified pg_upmap_item (`pr#30576 `_, xie xingguo) * core: osd/OSDMap: fix calc_pg_role (`pr#32132 `_, Sage Weil) * core: osd/OSDMap: health alert for non-power-of-two pg_num (`pr#30525 `_, Sage Weil) * core: osd/OSDMap: Replace get_out_osds with get_out_existing_osds (`issue#39154 `_, `pr#27663 `_, Brad Hubbard) * core: osd/OSDMap: Show health warning if a pool is configured with size 1 (`pr#31416 `_, Sridhar Seshasayee) * core: osd/OSDMap: stop encoding osd_state with >8 bits wide states only for old client (`pr#33814 `_, xie xingguo) * core: osd/osd_types: bump up some encoding versions (`pr#29923 `_, xie xingguo) * core: osd/osd_types: drop last_backfill_bitwise member (`pr#28766 `_, Sage Weil) * core: osd/osd_types: fix {omap,hitset_bytes}_stats_invalid handling on split/merge (`pr#30479 `_, Sage Weil) * core: osd/osd_types: inc-recovery - add special handler for lost_revert (`pr#29893 `_, xie xingguo) * core: osd/osd_types: pool_stat_t::dump - fix num_store_stats field (`issue#39340 `_, `pr#27633 `_, xie xingguo) * core: osd/PeeringState.cc: dont let num_objects become negative (`pr#32305 `_, Neha Ojha) * core: osd/PeeringState.cc: skip peer_purged when discovering all missing (`pr#32195 `_, Neha Ojha) * core: osd/PeeringState.h: Fix pg stuck in WaitActingChange (`pr#29669 `_, chen qiuzhang) * core: osd/PeeringState.h: get_num_missing() should report num_missing() (`pr#30414 `_, Neha Ojha) * core: osd/PeeringState.h: ignore RemoteBackfillReserved in WaitLocalBackfillReserved (`pr#33525 `_, Neha Ojha) * core: osd/PeeringState: base lease support checks on features, not require_osd_release (`pr#30721 `_, Sage Weil) * core: osd/PeeringState: clear LAGGY and WAIT states on exiting Started (`pr#31864 `_, Sage Weil) * core: osd/PeeringState: disable read lease until require_osd_release >= octopus (`pr#30692 `_, Sage Weil) * core: osd/PeeringState: do not complain about past_intervals constrained by oldest epoch (`pr#29747 `_, Sage Weil) * core: osd/PeeringState: do not exclude up from acting_recovery_backfill (`pr#31703 `_, xie xingguo) * core: osd/PeeringState: do not start renewing leases until PG is activated (`pr#33129 `_, Sage Weil) * core: osd/PeeringState: fix wrong history of merge target (`pr#29835 `_, xie xingguo) * core: osd/PeeringState: on_new_interval on child PG after split (`pr#29780 `_, Sage Weil) * core: osd/PeeringState: recover_got - add special handler for empty log (`pr#30503 `_, xie xingguo) * core: osd/PeeringState: require SERVER_OCTOPUS to respond to RenewLease (`pr#33339 `_, Neha Ojha) * core: osd/PeeringState: send pg_info2 if release >= octopus (`pr#30836 `_, Kefu Chai) * core: osd/PeeringState: transit async_recovery_targets back into acting before backfilling (`pr#32202 `_, xie xingguo) * core: osd/PG: Add PG to large omap log message (`pr#30682 `_, Brad Hubbard) * core: osd/PG: adjust pg history on fabricated merge target if necessary (`issue#38623 `_, `pr#26822 `_, Sage Weil) * core: osd/PG: clean up fastinfo key when last_update does not increase (`pr#32615 `_, Sage Weil, Kefu Chai) * core: osd/PG: discover missing objects when an OSD peers and PG is degraded (`pr#27288 `_, Jonas Jelten) * core: osd/PG: do not leak cluster message when theres no con (`pr#32897 `_, Sage Weil) * core: osd/PG: do not queue scrub if PG is not active when unblock (`issue#40451 `_, `pr#28660 `_, Sage Weil) * core: osd/PG: do not use approx_missing_objects pre-nautilus (`pr#27798 `_, Neha Ojha) * core: osd/PG: fix cleanup of pgmeta-like objects on PG deletion; disallow empty object names (`pr#27929 `_, Sage Weil) * core: osd/PG: fix last_complete re-calculation on splitting (`issue#26958 `_, `pr#27702 `_, xie xingguo) * core: osd/PG: fix _finish_recovery vs repair race (`pr#30059 `_, xie xingguo) * core: osd/PG: introduce all_missing_unfound helper (`issue#38784 `_, `issue#38931 `_, `pr#27205 `_, xie xingguo) * core: osd/PG: move down peers out from peer_purged (`issue#38931 `_, `pr#27182 `_, xie xingguo) * core: osd/PG: move } to the proper place (`pr#27204 `_, xie xingguo) * core: osd/PG: remove unused code (`pr#30930 `_, Jianpeng Ma) * core: osd/PG: restart peering for undersized PG on any down stray peer coming back (`pr#33106 `_, xie xingguo, Yan Jun) * core: osd/PG: skip rollforward when !transaction_applied during append_log() (`issue#36739 `_, `pr#26996 `_, Neha Ojha) * core: osd/PG: the warning seems more serious than what it wanna transmit (`pr#27509 `_, Zengran Zhang) * core: osd/PG: use emplace() to construct new element in-place (`pr#27124 `_, Zengran Zhang) * core: osd/PGLog.h: print olog_can_rollback_to before deciding to rollback (`issue#38894 `_, `issue#21174 `_, `pr#27105 `_, Neha Ojha) * core: osd/PGLog: persist num_objects_missing for replicas when peering is done (`pr#30466 `_, xie xingguo) * core: osd/PGLog: preserve original_crt to check rollbackability (`issue#36739 `_, `pr#27200 `_, Neha Ojha) * core: osd/PGLog: reset log.complete_to when recover obect failed (`pr#30533 `_, Tao Ning) * core: osd/PGStateUtils: initialize NamedState::enter_time (`pr#33813 `_, Jianpeng Ma) * core: osd/PrimaryLogPG: always use strict priority ordering for kicked recovery ops (`pr#30632 `_, xie xingguo) * core: osd/PrimaryLogPG: Avoid accessing destroyed references in finish_degr\xe2\x80\xa6 (`pr#29663 `_, Tao Ning) * core: osd/PrimaryLogPG: cancel in-flight manifest ops on interval changing; fix race with scru (`pr#29985 `_, xie xingguo) * core: osd/PrimaryLogPG: do_op - do not create head object twice (`pr#28785 `_, xie xingguo) * core: osd/PrimaryLogPG: finish_copyfrom - dirty omap if necessary (`pr#29729 `_, xie xingguo) * core: osd/PrimaryLogPG: fix dirty range of write_full (`pr#29726 `_, xie xingguo) * core: osd/PrimaryLogPG: fix warning (`pr#30716 `_, Sage Weil) * core: osd/PrimaryLogPG: include op_returns in dup replies (`pr#30640 `_, Sage Weil) * core: osd/PrimaryLogPG: kill obsolete ondisk\\_{read,write}_lock comments (`pr#29719 `_, xie xingguo) * core: osd/PrimaryLogPG: more constness (`pr#28786 `_, Kefu Chai) * core: osd/PrimaryLogPG: remove unused parent pgls-filter (`pr#29675 `_, Radoslaw Zarzynski, Kefu Chai) * core: osd/PrimaryLogPG: simple debug message (`pr#32444 `_, Jianpeng Ma) * core: osd/PrimaryLogPG: skip obcs that dont exist during backfill scan_range (`pr#30715 `_, Sage Weil) * core: osd/PrimaryLogPG: update oi.size on write op implicitly truncating object up (`pr#30085 `_, xie xingguo) * core: osd/PrimaryLogPG: use legacy timestamp rendering for hit_set objects (`pr#33117 `_, Sage Weil) * core: osd/ReplicatedBackend: check against empty data_included before enabling crc (`pr#29621 `_, xie xingguo) * core: osd/scheduler/OpSchedulerItem: schedule backoffs as client ops (`pr#32382 `_, Samuel Just) * core: osd/SnapMapper: remove pre-octopus snapmapper keys after conversion (`pr#30368 `_, Sage Weil) * core: osd/SnapMirror: no need to record purged_snaps every epoch (`pr#31866 `_, Sage Weil) * core: OSD: modify n.cookie to op.notify.cookie (`pr#29418 `_, yangjun) * core: osdc/Objecter: always add `\\0 after strncpy() (`pr#27286 `_, Kefu Chai) * core: osdc/Objecter: Boost.Asio (I object!) (`pr#16715 `_, Adam C. Emerson) * core: osdc/Objecter: debug pause/unpause transition (`pr#32850 `_, Sage Weil) * core: osdc/Objecter: fix OSDMap leak in handle_osd_map (`issue#20491 `_, `pr#28242 `_, Sage Weil) * core: osdc/Objecter: only pause if respects_full() (`pr#33020 `_, Sage Weil) * core: osdc/Objecter: pg-mapping cache (`pr#28487 `_, xie xingguo) * core: osdc/Objecter: _calc_target - inline spgid (`pr#28570 `_, xie xingguo) * core: osdc: Fix a missing : for the correct namespace (`pr#29472 `_, Willem Jan Withagen) * core: pybind/ceph_argparse: improve ceph -h syntax (`pr#30431 `_, Sage Weil) * core: pybind/mgr/mgr_module: fix standby module logging options (`pr#33639 `_, Sage Weil) * core: pybind/mgr/mgr_util: fix pretty time delta (`pr#33794 `_, Sage Weil) * core: pybind/mgr/\\*: fix config_notify handling of default values (`pr#32755 `_, Sage Weil) * core: qa/distros: add rhel/centos 8.1 (`pr#33026 `_, Sage Weil) * core: qa/distros: centos 7.6; update centos and ubuntu latest symlinks (`pr#27349 `_, Sage Weil) * core: qa/standalone/mon/osd-create-pool: fix utf-8 grep LANG (`pr#32711 `_, Sage Weil) * core: qa/standalone/osd/divergent-priors: add reproducer for bug 41816 (`pr#30506 `_, Sage Weil) * core: qa/standalone/osd/osd-bench: debug bluestore (`pr#32961 `_, Sage Weil) * core: qa/standalone/osd/osd-markdown: fix dup command disabling (`issue#38359 `_, `pr#27499 `_, Sage Weil) * core: qa/standalone/scrub/osd-scrub-snaps: misc fixes for removed_snaps change (`issue#40725 `_, `pr#29003 `_, Sage Weil) * core: qa/standalone: python -> python3 (`pr#32383 `_, Sage Weil) * core: qa/suites/rados/multimon/tasks/mon_clock_with_skews: disable ntpd etc (`pr#33184 `_, Sage Weil) * core: qa/suites/rados/multimon: fix failures (`issue#40112 `_, `pr#28353 `_, Sage Weil) * core: qa/suites/rados/singleton-nomsgr/all/balancer: whitelist PG_AVAILABILITY (`pr#31747 `_, Sage Weil) * core: qa/suites/rados/singleton/all/ec-lost-unfound: no rbd pool (`pr#30596 `_, Sage Weil) * core: qa/suites/rados/thrash-old-clients: centos -> ubuntu (`pr#32356 `_, Sage Weil) * core: qa/suites/rados/thrash-old-clients: skip TestClsRbd.mirror test (`pr#31745 `_, Sage Weil) * core: qa/suites/rados/thrash: debug monc (`pr#32885 `_, Sage Weil) * core: qa/suites/upgrade/nautilus-x: misc updates (`pr#27138 `_, Sage Weil) * core: qa/suites/upgrade/\\*-x-singleton: enable bluestore debugging settings (`pr#27786 `_, Sage Weil) * core: qa/suites/upgrade: all upgrades to octopus on ubuntu only (`pr#32275 `_, Sage Weil) * core: qa/suits/rados/basic/tasks/rados_api_tests: pgs can go degraded (`pr#30627 `_, Sage Weil) * core: qa/tasks/ceph2: teuthology task to bring up a ceph-daemon+ssh cluster (`pr#31502 `_, Sage Weil) * core: qa/tasks/ceph: only re-request scrub on unscrubbed pgs (`pr#32988 `_, Sage Weil) * core: qa/tasks/ceph_manager: fix thrash_pg_upmap_items when no pools (`pr#29144 `_, Sage Weil) * core: qa/tasks/ceph_manager: make upmap thrasher behave when no pools/pgs (`pr#29069 `_, Sage Weil) * core: qa/tasks/ceph_manager: remove race from all_active_or_peered() (`pr#29498 `_, Sage Weil) * core: qa/tasks/ceph_manager: wait for clean before asserting clean on minsize test (`pr#29109 `_, Sage Weil) * core: qa/workunits/rados/test_large_omap_detection: py3-ify (`pr#32405 `_, Sage Weil) * core: qa: increase mon tell retries when injecting msgr failures (`pr#30872 `_, Sage Weil) * core: qa: more fixes for the removed_snaps changeset (`issue#40674 `_, `pr#28901 `_, Sage Weil) * core: qa: run various tests on ubuntu (`pr#32278 `_, Sage Weil) * core: rados bench: fix the delayed checking of completed ops (`pr#32928 `_, Jianshen Liu) * core: Revert common: default pg_autoscale_mode=on for new pools (`pr#30440 `_, David Zafman) * core: Revert crush: remove invalid upmap items (`pr#32017 `_, David Zafman) * core: Revert Merge pull request #16715 from adamemerson/wip-I-Object! (`pr#31790 `_, Sage Weil) * core: Revert test: librados startup/shutdown racer test (`pr#31092 `_, Sage Weil) * core: rgw/rgw_tools: fix osd pool set json syntax (`pr#27967 `_, Sage Weil) * core: rocksdb: enable rocksdb_rmrange=true by default (`pr#29323 `_, Sage Weil) * core: rocksdb: Updated to v6.1.2 (`pr#29026 `_, Mark Nelson) * core: sample.ceph.conf: correct the default value of filestore merge threshold (`pr#28653 `_, zhang Shaowen) * core: selinux: Allow ceph to read udev d (`pr#29071 `_, Boris Ranto) * core: src/: Clean up endian handling (`pr#30409 `_, Ulrich Weigand) * core: src/dmclock: bring in fixes for indirect_intrusive_heap (`pr#32380 `_, Samuel Just) * core: src/osd: add tier-flush op (`pr#28778 `_, Myoungwon Oh) * core: test: add librados-based startup/shutdown racer test (`pr#30552 `_, Jeff Layton) * core: tools/rados: call pool_lookup() after rados is connected (`pr#30413 `_, Vikhyat Umrao) * core: tools/rados: prevent put operation from recreating object when --offset=0 (`pr#31230 `_, Adam Kupczyk) * core: tools/rados: Unmask -o to restore original behaviour (`pr#31310 `_, Brad Hubbard) * core: Wip lazy omap test (`pr#28070 `_, Brad Hubbard) * crimon/osd: serve read requests (`pr#26697 `_, Kefu Chai) * Crimson build fixes (`pr#33345 `_, Samuel Just) * crimson, common: Add ephemeral ObjectContext state to crimson (`pr#31202 `_, Samuel Just) * crimson,auth: fix FTBFS of crimson-osd and fix v1/v2 auth (`pr#27809 `_, Kefu Chai, Yingxin Cheng) * crimson,osd: performance fixes (`pr#28071 `_, Kefu Chai, Radoslaw Zarzynski) * crimson/common/errorator.h: add handle_error() method (`pr#31856 `_, Radoslaw Zarzynski) * crimson/common/errorator.h: simplify the compound safe_then() variant (`pr#31918 `_, Radoslaw Zarzynski) * crimson/common: more friendly to seastar::do_with() (`pr#33199 `_, Kefu Chai) * crimson/common: remove unused file .#log.cc (`pr#28828 `_, Changcheng Liu) * crimson/mon: fix the v1 auth (`pr#28041 `_, Kefu Chai) * crimson/mon: use shared_future for waiting MauthReply (`pr#30366 `_, chunmei Liu) * crimson/net: bug fixes from v2 failover tests (`pr#29882 `_, Yingxin Cheng) * crimson/net: clean-up and fixes of messenger (`pr#29057 `_, Yingxin Cheng) * crimson/net: extract do_write_dispatch_sweep() (`pr#27428 `_, Yingxin Cheng) * crimson/net: implement preemptive shutdown/close (`pr#28682 `_, Yingxin Cheng) * crimson/net: improve batching in the write path (`pr#27788 `_, Yingxin Cheng) * crimson/net: lossless policy for v2 protocol (`pr#29378 `_, Yingxin Cheng) * crimson/net: lossy connection for ProtocolV2 (`pr#26710 `_, Yingxin Cheng) * crimson/net: misc fixes in v1 read path (`pr#27837 `_, Yingxin Cheng) * crimson/net: prefer over (`pr#27831 `_, Kefu Chai) * crimson/net: prevent reusing the sent messages (`pr#28890 `_, Yingxin Cheng) * crimson/net: print tx/rx messages using logger().info() (`pr#28798 `_, Kefu Chai) * crimson/net: remove redundant std::move() (`pr#28317 `_, Kefu Chai) * crimson/net: v2 racing tests, stall tests and bug fixes (`pr#30313 `_, Yingxin Cheng) * crimson/os: do not fail if fsid file exists when mkfs (`pr#27006 `_, chunmei Liu, Kefu Chai) * crimson/os: init PG with pg coll not meta coll (`pr#33084 `_, Kefu Chai) * crimson/os: Object::read() returns bufferlist instead of never used errcode (`pr#30380 `_, Radoslaw Zarzynski) * crimson/osd/osd_operation.h: clean up duplicative check (`pr#31859 `_, Radoslaw Zarzynski) * crimson/osd/pg: start_operation for read_state, schedule_event_on_commit (`pr#28771 `_, Samuel Just) * crimson/osd/pg_meta: use initializer list for passing set<> (`pr#28461 `_, Kefu Chai) * crimson/osd: abort on unsupported objectstore type (`pr#28790 `_, Kefu Chai) * crimson/osd: add --help-seastar command line option (`pr#28794 `_, Kefu Chai) * crimson/osd: add minimal state machine for PG peering (`pr#27071 `_, Kefu Chai) * crimson/osd: add pgls support (`pr#30433 `_, Kefu Chai) * crimson/osd: cache object_info and snapset in PGBackend (`pr#27310 `_, Kefu Chai) * crimson/osd: call at_exit() before stopping the engine (`pr#27177 `_, Kefu Chai) * crimson/osd: call engine().exit(0) after mkfs (`pr#27061 `_, Kefu Chai) * crimson/osd: capture watcher when calling its member function (`pr#33425 `_, Kefu Chai) * crimson/osd: cleanups (`pr#30736 `_, Kefu Chai) * crimson/osd: consolidate the code to initialize msgrs (`pr#27426 `_, Kefu Chai) * crimson/osd: create msgrs in main.cc (`pr#27066 `_, Kefu Chai) * crimson/osd: crimson/osd: do not load fullmap.0 (`pr#27004 `_, chunmei Liu, Kefu Chai) * crimson/osd: differentiate write from writefull (`pr#28959 `_, Kefu Chai) * crimson/osd: do not add whoami as hb peer and cleanups (`pr#27307 `_, Kefu Chai) * crimson/osd: extend OpsExecuter to carry about op effects (`pr#30310 `_, Radoslaw Zarzynski) * crimson/osd: fix the build broken by df771861 (`pr#28053 `_, chunmei Liu) * crimson/osd: fix the Clang build in create_watch_info() (`pr#33350 `_, Radoslaw Zarzynski) * crimson/osd: implement replicated write (`pr#29076 `_, Kefu Chai) * crimson/osd: init PG with more info (`pr#27064 `_, Kefu Chai) * crimson/osd: lower debug level on i/o path (`pr#27338 `_, Kefu Chai) * crimson/osd: misc fixes and cleanup (`pr#33528 `_, Yingxin Cheng) * crimson/osd: misc fixes for OSD reboot-ability (`pr#33595 `_, Yingxin Cheng) * crimson/osd: partition args the right way (`pr#27211 `_, Kefu Chai) * crimson/osd: pass unknown args to ConfigProxy::parse_args() (`pr#27062 `_, Kefu Chai) * crimson/osd: remove unneeded captures - pg.cc (`pr#33349 `_, Ronen Friedman) * crimson/osd: report pg_stats to mgr (`pr#27065 `_, Kefu Chai) * crimson/osd: should handle pg_lease messages (`pr#30834 `_, Kefu Chai) * crimson/osd: shutdown services in the right order (`pr#27987 `_, Kefu Chai) * crimson/osd: some cleanups (`pr#28402 `_, Kefu Chai) * crimson/osd: support write pid_file when osd start (`pr#27413 `_, chunmei Liu) * crimson/osd: update peering_state in PG::on_activate_complete() (`pr#28747 `_, Kefu Chai) * crimson/osd: use single-pg peering ops (`pr#30372 `_, Kefu Chai) * crimson/thread: generalize Task so it works w/ func returns void (`pr#32742 `_, Kefu Chai) * crimson/{net,mon,osd}: misc logging changes (`pr#27099 `_, Kefu Chai) * crimson/{osd,heartbeat}: allow heartbeat to have access to authorizer (`pr#27059 `_, Kefu Chai) * crimson/{osd,mon}: lower log level when sending a replicated op (`pr#30957 `_, Kefu Chai) * crimson: add editor properties header (`pr#33408 `_, Kefu Chai) * crimson: add FuturizedStore to encapsulate CyanStore (`pr#28358 `_, chunmei Liu) * crimson: add missing include in common/errorator.h (`pr#32490 `_, Radoslaw Zarzynski) * crimson: add support for basic write path (`pr#27873 `_, Radoslaw Zarzynski) * crimson: add support for watch / notify, part 1 (`pr#32679 `_, Radoslaw Zarzynski) * crimson: bring ceph::errorator with its first appliances (`pr#30387 `_, Radoslaw Zarzynski) * crimson: CLANG-related fixes to errorator.h (`pr#32488 `_, Ronen Friedman, Radoslaw Zarzynski) * crimson: clean up and refactor asok (`pr#33357 `_, Kefu Chai) * crimson: enable cephx for v2 msgr (`pr#27514 `_, Kefu Chai) * crimson: fix build with GCC-10 (`pr#33233 `_, Kefu Chai) * crimson: fix crimson pg coll usage error (`pr#33076 `_, Chunmei Liu) * crimson: fix lambda captures of non-variables (`pr#32494 `_, Ronen Friedman) * crimson: futurized CyanStores member functions and Collection (`pr#29470 `_, Kefu Chai, chunmei Liu) * crimson: handle MOSDPGQuery2 properly (`pr#30399 `_, Kefu Chai) * crimson: make seastar::do_with() a friend of errorated futures (`pr#32175 `_, Radoslaw Zarzynski) * crimson: move dummy impl of AuthServer to DummyAuth (`pr#27452 `_, Kefu Chai) * crimson: move os/cyan\\_\\* down to os/cyanstore/\\* (`pr#31874 `_, Kefu Chai) * crimson: pass `Connection\\*` to Dispatch::ms_dispatch() (`pr#27690 `_, Yingxin Cheng, Kefu Chai) * crimson: pickup change to fix --cpuset support and cleanups (`pr#33250 `_, Kefu Chai) * crimson: remove some attributes from lambda (`pr#32604 `_, Ronen Friedman) * crimson: run in foreground if possible, silence warnings (`pr#30474 `_, Samuel Just, Kefu Chai) * crimson: s/ceph/crimson/ in namespace names (`pr#31069 `_, Kefu Chai) * crimson: serve basic RBD traffic coming from fio (`pr#30339 `_, Radoslaw Zarzynski) * crimson: solve the problem that crimson-osd\s created pgs stuck in unknown state (`pr#33780 `_, Xuehan Xu) * crimson: stop osd before stopping messengers (`pr#31904 `_, Kefu Chai) * crimson: support pgnls and delete op (`pr#28079 `_, Kefu Chai) * crimson: update osd when peer gets authenticated (`pr#27416 `_, Kefu Chai) * crimson: use given osd_fsid when mkfs (`pr#28800 `_, Kefu Chai) * crimson:: add alien blue store (`pr#31041 `_, Samuel Just, Chunmei Liu, Kefu Chai) * crush: add root_bucket to identify underfull buckets (`issue#38826 `_, `pr#27068 `_, huangjun) * crush: remove invalid upmap items (`pr#31131 `_, huangjun) * crush: remove invalid upmap items (`pr#32099 `_, huangjun) * crush: various fixes for weight-sets, the osd_crush_update_weight_set option, and tests (`pr#26955 `_, Sage Weil) * dashboard/services: fix lint error (`pr#30289 `_, Willem Jan Withagen) * deb,rpm: switch to python 3 (`pr#32252 `_, Sage Weil, Alfredo Deza) * debian: add python3-jsonpatch as dependency (`pr#33298 `_, Sebastian Wagner) * denc: allow DencDumper to dump OOB buffer (`pr#27704 `_, Kefu Chai) * doc/bootstrap: fixed default --keyring target (`pr#32643 `_, Yaarit Hatuka) * doc/foundation: fix amihan (`pr#32999 `_, Sage Weil) * doc: .organizationmap: Wido 42on -> 42on (`pr#32260 `_, Sage Weil) * doc: add a deduplication document (`pr#28462 `_, Myoungwon Oh) * doc: add a doc for vstart_runner.py (`pr#29907 `_, Rishabh Dave) * doc: add a new document on distributed cephfs metadata cache (`pr#30265 `_, Jeff Layton) * doc: Add a new document on Dynamic Metadata Management in CephFS (`pr#30348 `_, Sidharth Anupkrishnan) * doc: Add a RGW swift auth note (`pr#31309 `_, Matthew Oliver) * doc: add ceph fs volumes and subvolumes documentation (`pr#30381 `_, Ramana Raja) * doc: add CephFS Octopus release notes (`pr#33450 `_, Patrick Donnelly) * doc: add changelog for nautilus (`pr#27048 `_, Abhishek Lekshmanan) * doc: add chrony to preflight checklist for Ubuntu 18.04 (`pr#31948 `_, Zac Dover) * doc: add config help/get/set section for runtime client configuration (`issue#41688 `_, `pr#32117 `_, Venky Shankar) * doc: Add Dashboard Octopus release notes (`pr#33555 `_, Lenz Grimmer) * doc: add description for fuse_disable_pagecache (`pr#31902 `_, Yan, Zheng) * doc: add doc for blacklisting older CephFS clients (`issue#39130 `_, `pr#27412 `_, Patrick Donnelly) * doc: add doc for cephfs lazyio (`issue#38729 `_, `pr#26976 `_, Yan, Zheng) * doc: add guide for running tests with teuthology (`pr#32114 `_, Rishabh Dave) * doc: add mds map to list of ceph monitor assets (`pr#32631 `_, Zac Dover) * doc: add missed word than in doc/man/8/rbd.rst (`pr#31022 `_, Drunkard Zhang) * doc: Add missing mgr cap for the bootstrap keyring (`pr#27201 `_, Bryan Stillwell) * doc: add missing virtualenv for build-doc (`pr#31896 `_, Rodrigo Severo) * doc: Add note to execute cephfs-shell (`pr#27369 `_, Varsha Rao) * doc: add package for Golang (`issue#38730 `_, `pr#26937 `_, Irek Fasikhov) * doc: add Python 2 to Ubuntu 18.04 installations (`pr#31947 `_, Zac Dover) * doc: add release notes for 13.2.5 mimic (`pr#26913 `_, Abhishek Lekshmanan) * doc: add release notes for v13.2.6 mimic (`pr#28385 `_, Abhishek Lekshmanan) * doc: Add sphinx_autodoc_typehints extension (`pr#33577 `_, Sebastian Wagner) * doc: Add stat command usage in cephfs-shell (`pr#28236 `_, Varsha Rao) * doc: Add usage for shortcuts command in cephfs-shell (`pr#27373 `_, Varsha Rao) * doc: Add warning that the root directory cannot be fragmented (`pr#28354 `_, Nathan Fish) * doc: Added a link to Ceph Community Calendar (`pr#31475 `_, Zac Dover) * doc: added a remark to always use powers of two for pg_num (`pr#31541 `_, Thomas Schneider) * doc: added an is where it was needed (`pr#32374 `_, Zac Dover) * doc: Added dashboard features, improved wording (`pr#27997 `_, Lenz Grimmer) * doc: added section on creating RESTful API user (`pr#26016 `_, James McClune) * doc: Added the crisp getting started guide to index.rst (`pr#32531 `_, Zac Dover) * doc: Adding US-Mid-West Mirror to docs (`pr#25099 `_, Mike Perez) * doc: Adds cmake build options for optionally skipping few components (`pr#31066 `_, Deepika Upadhyay) * doc: adjust for mon_status changes in octopus (`pr#33703 `_, Nathan Cutler) * doc: admin,doc/_ext/ceph_releases.py: use yaml.safe_load() (`pr#28463 `_, Kefu Chai) * doc: admin/build-doc: always install python3-\\* for build deps (`pr#32481 `_, Kefu Chai) * doc: admin/build-doc: do not use system site-packages (`pr#32285 `_, Sage Weil) * doc: admin/build-doc: Fix doxygen typo (`pr#32572 `_, Varsha Rao) * doc: admin/build-doc: use python3 (`pr#29528 `_, Kefu Chai) * doc: admin/doc-requirements.txt: bump up Sphinx and breathe (`pr#32301 `_, Kefu Chai) * doc: admin/serve-doc: Switch to python3 only (`pr#33596 `_, Brad Hubbard) * doc: always load resources via HTTPS (`pr#29544 `_, Tiago Melo) * doc: ceph-monstore-tool: correct the key for storing mgr_command_descs (`pr#33172 `_, Kefu Chai) * doc: cephfs: add section on fsync error reporting to posix.rst (`issue#24641 `_, `pr#28300 `_, Jeff Layton) * doc: change case from `apis` to `APIs` (`pr#33664 `_, Deepika Upadhyay) * doc: clarify difference between fs and kcephfs suite (`pr#32144 `_, Rishabh Dave) * doc: clarify priority use (`pr#32191 `_, Yuri Weinstein) * doc: clarify support for rbd fancy striping (`pr#32176 `_, Ilya Dryomov) * doc: cleanup CephFS Landing Page (`pr#30542 `_, Milind Changire) * doc: coding-style: update a link and fix typos (`pr#33128 `_, Ponnuvel Palaniyappan) * doc: common/admin_socket: Add doxygen for call and call_async (`pr#32547 `_, Adam Kupczyk) * doc: common/hobject: Error invocation of formula in documentation (`pr#28366 `_, Albert) * doc: config-ref: add a note on current scheduler settings (`pr#27243 `_, Abhishek Lekshmanan) * doc: correct example to use vstart to run up cluster (`pr#26816 `_, Changcheng Liu) * doc: cover more cache modes in rados/operations/cache-tiering.rst (`issue#14153 `_, `pr#17614 `_, Nathan Cutler) * doc: default values for mon_health_to_clog\\_\\* were flipped (`pr#29867 `_, James McClune) * doc: describe metadata_heap cleanup (`issue#18174 `_, `pr#26915 `_, Dan van der Ster) * doc: Describe recovery and backfill prioritizations (`issue#39011 `_, `pr#27941 `_, David Zafman) * doc: doc : fixed capitalization (`pr#27379 `_, Servesha Dudhgaonkar) * doc: doc, qa: remove invalid option mon_pg_warn_max_per_osd (`pr#30787 `_, zhang daolong) * doc: doc,admin: fix the builtin search (`pr#33592 `_, Kefu Chai) * doc: doc/architecture.rst: fix a typo in EC section (`pr#33241 `_, Nag Pavan Chilakam) * doc: doc/bootstrap.rst: fix githus url (`pr#31086 `_, Alexandre Bruyelles) * doc: doc/bootstrap: add mds and rgw steps to bootstrap (`pr#33088 `_, Sage Weil) * doc: doc/ceph-fuse: describe -n option (`pr#30911 `_, Rishabh Dave) * doc: doc/ceph-fuse: mention -k option in ceph-fuse man page (`pr#30561 `_, Rishabh Dave) * doc: doc/ceph-kvstore-tool: add description for stats command (`pr#29990 `_, Josh Durgin, Adam Kupczyk) * doc: doc/ceph-volume: initial docs for zfs/inventory and zfs/api (`pr#31252 `_, Willem Jan Withagen) * doc: doc/cephadm/administration: clarify log gathering (`pr#33627 `_, Nathan Cutler) * doc: doc/cephadm: adjust syntax for config set (`pr#33600 `_, Joshua Schmid) * doc: doc/cephadm: big cleanup of cephadm docs (`pr#33981 `_, Sage Weil) * doc: doc/cephadm: Troubleshooting (`pr#33460 `_, Sebastian Wagner) * doc: doc/cephfs/client-auth: description and example are inconsistent (`pr#32762 `_, Ilya Dryomov) * doc: doc/cephfs/disaster-recovery-experts: Add link for scrub and note for scrub_path (`pr#32124 `_, Varsha Rao) * doc: doc/cephfs: add doc for cephfs io path (`pr#30369 `_, Yan, Zheng) * doc: doc/cephfs: correct a description mistake about mds states (`issue#41893 `_, `pr#30427 `_, Xiao Guodong) * doc: doc/cephfs: improve add/remove MDS section (`issue#39620 `_, `pr#28700 `_, Patrick Donnelly) * doc: doc/cephfs: migrate best practices recommendations to relevant docs (`pr#32522 `_, Rishabh Dave) * doc: doc/cleanup: drop repo-access.rst (`pr#32276 `_, Nathan Cutler) * doc: doc/corpus: update to adapt the change from autotools to cmake (`pr#27552 `_, Kefu Chai) * doc: doc/dev/corpus.rst: correct instructions (`pr#27741 `_, Kefu Chai) * doc: doc/dev/corpus.rst: minor tweaks (`pr#28877 `_, Kefu Chai) * doc: doc/dev/crimson.rst: document CBT testing (`pr#30290 `_, Kefu Chai) * doc: doc/dev/crimson: transpose options of compare.py (`pr#30453 `_, Kefu Chai) * doc: doc/dev/developer_guide/index.rst: add youtube reference for Getting Started (`pr#29712 `_, Neha Ojha) * doc: doc/dev/developer_guide/index.rst: add youtube references (`pr#29033 `_, Neha Ojha) * doc: doc/dev/developer_guide: fix heading level (`pr#30428 `_, Nathan Cutler) * doc: doc/dev/developer_guide: remove web address (`pr#29183 `_, gabriellasroman) * doc: doc/dev/kubernetes: Update (`pr#28081 `_, Sebastian Wagner) * doc: doc/dev/osd_internals/async_recovery: update cost calculation (`pr#28036 `_, Neha Ojha) * doc: doc/dev: add crimson.rst (`pr#28674 `_, Kefu Chai) * doc: doc/dev: add teuthology priority recommendations (`pr#30308 `_, Patrick Donnelly) * doc: doc/developer: fix dev mailing list address (`pr#32442 `_, Willem Jan Withagen) * doc: doc/drivegroups: add docs for DriveGroups with excessive examples (`pr#33044 `_, Joshua Schmid) * doc: doc/foundation: add ceph foundation info here (`pr#31955 `_, Sage Weil) * doc: doc/foundation: add cloudbase and vexxhost (`pr#32013 `_, Sage Weil) * doc: doc/foundation: add Samsung Electronics (`pr#33518 `_, Sage Weil) * doc: doc/governance: add cbodey (`pr#27708 `_, Sage Weil) * doc: doc/index: remove quick start from front page for now (`pr#33207 `_, Sage Weil) * doc: doc/install/containers: add summary of containers and branches (`pr#31465 `_, Sage Weil) * doc: doc/install/containers: note vX.Y.Z[-YYYYMMDD] tags (`pr#31975 `_, Sage Weil) * doc: doc/install/manual-deployment: Change owner to ceph for the keyring file (`pr#31452 `_, Jeffrey Chu) * doc: doc/install/upgrading-ceph: systemctl in Ubuntu instructions (`pr#32595 `_, Rodrigo Severo) * doc: doc/install: rethink install doc installation methods order (`pr#33890 `_, Zac Dover, Sebastian Wagner) * doc: doc/man/ceph: document ceph config (`pr#30645 `_, Kefu Chai) * doc: doc/man: improve bluefs-bdev-expand option (`pr#32590 `_, Kefu Chai) * doc: doc/mgr/ansible.rst: fix typo (`pr#28827 `_, Lan Liu) * doc: doc/mgr/cephadm: document adoption process (`pr#33459 `_, Sage Weil) * doc: doc/mgr/orchestrator.rst: updated current implementation status (`pr#33410 `_, Kai Wagner) * doc: doc/mgr/orchestrator: Add Cephfs (`pr#33574 `_, Sebastian Wagner) * doc: doc/mgr/orchestrator_cli: Rook orch supports mon update (`issue#39137 `_, `pr#27431 `_, Sebastian Wagner) * doc: doc/mgr/telemetry: added device channel details (`pr#33113 `_, Yaarit Hatuka) * doc: doc/mgr/telemetry: update default interval (`pr#31008 `_, Tim Serong) * doc: doc/mgr: Enhance placement specs (`pr#33924 `_, Sebastian Wagner) * doc: doc/orchestrator: Fix broken bullet points (`issue#39094 `_, `pr#27121 `_, Sebastian Wagner) * doc: doc/orchestrator: Fix various issues in Orchestrator CLI documentation (`pr#31353 `_, Volker Theile) * doc: doc/orchestrator: Sync status with reality (`pr#30281 `_, Sebastian Wagner) * doc: doc/orchestrator: update rgw creation (`pr#33540 `_, Yehuda Sadeh) * doc: doc/rados/api/python: Add documentation for mon_command (`pr#26934 `_, Sebastian Wagner) * doc: doc/rados/configuration/osd-config-ref.rst: document osd_delete_sleep (`pr#28775 `_, Neha Ojha) * doc: doc/rados/configuration: fix typo in mon-lookup-dns (`pr#27362 `_, Vanush Misha Paturyan) * doc: doc/rados/configuration: fix typos in osd-config-ref.rst (`pr#28805 `_, Lan Liu) * doc: doc/rados/configuration: update to be in sync with ConfUtils changes (`pr#28753 `_, Kefu Chai) * doc: doc/rados/deployment/ceph-deploy-mon: fix typo (`pr#31164 `_, Kefu Chai) * doc: doc/rados/operations/crush-map-edits: recompile and set instructions (`pr#32451 `_, Rodrigo Severo) * doc: doc/rados/operations/devices: document device failure prediction (`pr#27472 `_, Sage Weil) * doc: doc/rados/operations/erasure-code.rst: allow recovery below min_size (`pr#28750 `_, Greg Farnum, Neha Ojha) * doc: doc/rados/operations: add safe-to-destroy check to OSD replacement workflow (`pr#28491 `_, Sage Weil) * doc: doc/rados/operations: crush_rule is a name (`pr#29367 `_, Kefu Chai) * doc: doc/rados/operations: document BLUEFS_SPILLOVER (`pr#27316 `_, Sage Weil) * doc: doc/rados/operations: min_size is applicable to EC (`pr#33543 `_, Brad Hubbard) * doc: doc/rados/operations: OSD_OUT_OF_ORDER_FULL fullness order is wrong (`pr#31588 `_, Tsung-Ju Lii) * doc: doc/rados: Better block.db size recommendations for bluestore (`pr#32226 `_, Neha Ojha) * doc: doc/rados: Correcting some typos in the clay code documentation (`pr#29889 `_, Myna) * doc: doc/rados: update osd_min_pg_log_entries and add osd_max_pg_log_entries (`pr#32790 `_, Neha Ojha) * doc: doc/radosgw/admin:fix how to modify subuser info (`pr#29839 `_, Feng Hualong) * doc: doc/radosgw/compression.rst: fix typo (`pr#28749 `_, hydro-) * doc: doc/radosgw/config-ref: paragraph to explain the gc settings (`pr#32367 `_, Kai Wagner) * doc: doc/radosgw/multisite-sync-policy.rst: fix typo (`pr#33230 `_, Liu Lan) * doc: doc/radosgw: fix typos (`pr#30642 `_, Liu Lan) * doc: doc/radosgw: update documentation examples with the current S3 PHP client (`pr#25985 `_, Laurent VOULLEMIER) * doc: doc/rbd/rbd-cloudstack: update disk offering URL to new docs (`pr#27713 `_, Kefu Chai) * doc: doc/rbd: document the new snapshot-based mirroring feature (`pr#33561 `_, Jason Dillaman) * doc: doc/rbd: fix small typos (`pr#33689 `_, songweibin) * doc: doc/rbd: initial kubernetes / ceph-csi integration documentation (`pr#29429 `_, Jason Dillaman) * doc: doc/rbd: re-organize top-level and add live-migration docs (`issue#40486 `_, `pr#29135 `_, Jason Dillaman) * doc: doc/rbd: refine rbd/libvirt usage (`pr#32273 `_, Changcheng Liu) * doc: doc/rbd: s/guess/xml/ for codeblock lexer (`pr#30953 `_, Kefu Chai) * doc: doc/rbd: simplify libvirt usage (`pr#32142 `_, Changcheng Liu) * doc: doc/rbd: update krbd version support for RBD features (`issue#40802 `_, `pr#29083 `_, Jason Dillaman) * doc: doc/release/nautilus: 14.2.2 changes redone (`pr#29145 `_, Sage Weil) * doc: doc/release/octopus: note about upgrade times (`pr#33401 `_, Sage Weil) * doc: doc/releases/nautilus,PendingReleaseNotes: consolidate telemetry note (`pr#32160 `_, Sage Weil) * doc: doc/releases/nautilus.rst: fix command to check min_compat_client (`pr#28526 `_, Osama Elswah) * doc: doc/releases/nautilus.rst: remove a redundant \\* (`pr#32577 `_, Servesha Dudhgaonkar) * doc: doc/releases/nautilus: Correct a systemctl command in an upgrade guide (`pr#27773 `_, Teeranai Kormongkolkul) * doc: doc/releases/nautilus: final notes for v14.2.0 (`pr#27019 `_, Sage Weil) * doc: doc/releases/nautilus: fix config update step (`pr#27495 `_, Sage Weil) * doc: doc/releases/nautilus: fix release notes (crash->device) (`pr#32148 `_, Sage Weil) * doc: doc/releases/octopus.rst: add note about ec recovery below min_size (`pr#34092 `_, Neha Ojha) * doc: doc/releases/octopus.rst: format tweaks (`pr#33971 `_, Kefu Chai) * doc: doc/releases/octopus.rst: formatting tweaks (`pr#33987 `_, Kefu Chai) * doc: doc/releases/octopus: add additional RBD improvements (`pr#34032 `_, Jason Dillaman) * doc: doc/releases/schedule.rst: add 14.2.3, 14.2.4, 15.0.0 and drop dumpling (`pr#30430 `_, Nathan Cutler) * doc: doc/releases: access main releases page from top-level TOC (`pr#30598 `_, Nathan Cutler) * doc: doc/releases: add 14.2.8 to release timeline (`pr#33721 `_, Nathan Cutler) * doc: doc/releases: add mimic v13.2.7 to releases timeline (`pr#31872 `_, Nathan Cutler) * doc: doc/releases: add release notes for mimic v13.2.7 (`pr#31777 `_, Nathan Cutler) * doc: doc/releases: add release notes for mimic v13.2.8 (`pr#32040 `_, Nathan Cutler) * doc: doc/releases: add release notes for nautilus v14.2.5 (`pr#31970 `_, Nathan Cutler) * doc: doc/releases: Ceph Nautilus v14.2.4 Release Notes (`pr#30429 `_, Nathan Cutler) * doc: doc/releases: octopus draft notes (`pr#33043 `_, Sage Weil) * doc: doc/releases: Octopus is not stable yet (`pr#33729 `_, Nathan Cutler) * doc: doc/releases: update for 12 month cycle (`pr#28864 `_, Sage Weil) * doc: doc/rgw: add design doc for multisite resharding (`pr#33539 `_, Casey Bodley) * doc: doc/rgw: document CreateBucketConfiguration for s3 PUT Bucket api (`issue#39597 `_, `pr#27977 `_, Casey Bodley) * doc: doc/rgw: document use of realm pull instead of period pull (`issue#39655 `_, `pr#28052 `_, Casey Bodley) * doc: doc/rgw: fix broken link to boto s3 extensions document (`pr#32740 `_, Casey Bodley) * doc: doc/rgw: update civetweb rgw_frontends config example (`pr#27054 `_, Casey Bodley) * doc: doc/start/documenting-ceph.rst: make better doc recommendations (`pr#30273 `_, Neha Ojha) * doc: doc/start/hardware-recommendations.rst: minor tweaks (`pr#30837 `_, Amrita Sakthivel) * doc: doc/_templates/page.html: redirect to etherpad (`pr#32197 `_, Neha Ojha) * doc: Doc: Add Nautilus 14.2.2 to schedule and releases (`issue#40988 `_, `pr#29362 `_, JuanJose Galvez) * doc: Doc: update release schedule (`pr#28466 `_, Torben H\xc3\xb8rup) * doc: docs: fix rgw_ldap_dnattr username token (`pr#27964 `_, Thomas Kriechbaumer) * doc: docs: improve rgw ldap auth options (`pr#28157 `_, Thomas Kriechbaumer) * doc: docs: rgw: fix bucket operation spelling: ListBucketMultipartUploads (`pr#28885 `_, Thomas Kriechbaumer) * doc: docs: Update au.ceph.com maintainers, update README.md (`pr#32814 `_, Matthew Taylor) * doc: Document Export Process during Subtree Migrations (`pr#30751 `_, Sidharth Anupkrishnan) * doc: document mds journal event types (`issue#42190 `_, `pr#30749 `_, Venky Shankar) * doc: document mds journaling (`issue#41783 `_, `pr#30396 `_, Venky Shankar) * doc: document mode param for rbd mirror image enable command (`pr#32735 `_, Mykola Golub) * doc: document rank option for journal reset (`pr#31201 `_, Patrick Donnelly) * doc: document the new --addv argument (`issue#40568 `_, `pr#28819 `_, Luca Castoro) * doc: Documentation: Add missing ceph-volume lvm batch argument to ceph-volume.rst (`pr#29081 `_, Andreas Krebs) * doc: Documentation: Centos ceph-deploys python dependencies (`pr#32591 `_, Cl\xc3\xa9ment Hampa\xc3\xaf) * doc: documentation: Updated Dashboard Features, improved flow (`pr#33919 `_, Lenz Grimmer) * doc: drop and update troubleshooting (`pr#28900 `_, Jos Collin) * doc: emphasize the importance of require-osd-release nautilus (`pr#32587 `_, Zac Dover) * doc: fix a typo in a command (`pr#32230 `_, taeuk_kim) * doc: Fix a typo in balancer documentation (`pr#30210 `_, Francois Deppierraz) * doc: fix boot transition in mds state diagram (`pr#27685 `_, Patrick Donnelly) * doc: fix errors in search page and use relative address for releases.json (`pr#33423 `_, Kefu Chai) * doc: Fix for new ceph-devel mailing list (`pr#29492 `_, David Zafman) * doc: Fix FUSE expansion (`pr#30473 `_, Sidharth Anupkrishnan) * doc: fix Getting Started with CephFS (`pr#32457 `_, Jos Collin) * doc: fix links in developer_guide (`pr#32728 `_, Rishabh Dave) * doc: fix LRC documentation (`pr#27106 `_, Danny Al-Gaaf) * doc: fix parameter to set pg autoscale mode (`pr#27422 `_, Changcheng Liu) * doc: Fix rbd namespace documentation (`pr#29445 `_, Ricardo Marques) * doc: Fix the pg states and auto repair config options (`issue#38896 `_, `pr#27143 `_, David Zafman) * doc: fix typo (`pr#28888 `_, Jos Collin) * doc: fix typo in doc/radosgw/layout.rst (`pr#29932 `_, ypdai) * doc: fix typo to auto scale pg number (`pr#31065 `_, Changcheng Liu) * doc: fix typos (`pr#30583 `_, Michael Prokop) * doc: fix urls (`pr#29300 `_, Jos Collin) * doc: fixed --read-only argument value in multisite doc (`pr#28655 `_, Chenjiong Deng) * doc: fixed broken link in Swift Settings section (`pr#28774 `_, James McClune) * doc: fixed broken links in nautilus release page (`pr#28074 `_, James McClune) * doc: fixed broken reference link for Graphviz (`pr#32021 `_, James McClune) * doc: fixed caps (`pr#27397 `_, Servesha Dudhgaonkar) * doc: fixed telemetry module reference link (`pr#27624 `_, James McClune) * doc: fixed typo in leadership names (`pr#27396 `_, Servesha Dudhgaonkar) * doc: Fixes OSD node labels which based on the osd_devices name (`pr#23312 `_, Siyu Sun) * doc: Fixes typo for ceph dashboard command (`pr#30292 `_, Fabian Bonk) * doc: hide page contents for Ceph Internals (`pr#31046 `_, Milind Changire) * doc: improve ceph-backport.sh comment block (`pr#28042 `_, Nathan Cutler) * doc: improve developer guide doc (`pr#30435 `_, Rishabh Dave) * doc: improve in mount.ceph man page (`pr#31024 `_, Rishabh Dave) * doc: Improved the dashboard proxy config section (`pr#27581 `_, Lenz Grimmer) * doc: indicate imperative mood for commit titles (`pr#29509 `_, Patrick Donnelly) * doc: Make ceph-dashboard require grafana dashboards (`pr#28997 `_, Boris Ranto) * doc: mds-config-ref: update mds_log_max_segments value (`pr#29412 `_, Konstantin Shalygin) * doc: mention --namespace option in rados manpage (`pr#31871 `_, Nathan Cutler) * doc: mgr/dashboard: Add frontend code documentation (`issue#36243 `_, `pr#27433 `_, Ernesto Puerta) * doc: mgr/dashboard: Document UiApiController with ApiController usage (`pr#29819 `_, Stephan M\xc3\xbcller) * doc: mgr/dashboard: Extend Writing End-to-End Tests section (describe vs it) (`pr#29707 `_, Adam King, Rafael Quintero) * doc: mgr/dashboard: fix hacking.rst (`pr#27222 `_, Ernesto Puerta) * doc: mgr/dashboard: Fix link format to HACKING.rst (`pr#28897 `_, Ernesto Puerta) * doc: mgr/dashboard: fix typos in HACKING.rst (`pr#30847 `_, Ernesto Puerta) * doc: mgr/orchestrator: Add error handling to interface (`pr#26404 `_, Sebastian Wagner) * doc: mgr/orchestrator: Fix disabling the orchestrator (`issue#40779 `_, `pr#29042 `_, Sebastian Wagner) * doc: mgr/orchestrator_cli: Update doc link in README (`pr#31731 `_, Varsha Rao) * doc: mgr/ssh: HACKING.rst: Add Understanding `AsyncCompletion` (`pr#31967 `_, Sebastian Wagner) * doc: mgr/ssh: update ssh-orch bootstrap guide (Vagrantfile & docs) (`pr#31457 `_, Joshua Schmid) * doc: mgr/telemetry: force --license when sending while opted-out (`pr#33747 `_, Yaarit Hatuka) * doc: minor fix in mount.ceph (`pr#32748 `_, Rishabh Dave) * doc: Miscellaneous spelling fixes (`pr#27202 `_, Bryan Stillwell) * doc: Modify nature theme (`pr#32312 `_, Brad Hubbard) * doc: mon/OSDMonitor: Fix pool set target_size_bytes (etc) with unit suffix (`pr#30701 `_, Prashant D) * doc: mounting CephFS subdirectory and Persistent Mounts cleanup (`pr#32498 `_, Jos Collin) * doc: Move ceph-deploy docs to doc/install/ceph-deploy (`pr#33953 `_, Sebastian Wagner) * doc: move cephadm files to its own directory (`pr#33551 `_, Alexandra Settle, Sebastian Wagner) * doc: move Developer Guide to its own subdirectory (`pr#27159 `_, Nathan Cutler) * doc: nautilus 14.2.2 release notes, take three (`pr#29171 `_, Nathan Cutler) * doc: Nautilus mailmaps (`pr#27092 `_, Abhishek Lekshmanan) * doc: note explicitly that profile rbd allows blacklisting (`pr#28296 `_, Matthew Vernon) * doc: obsolete entries for allow_standby_replay (`pr#31897 `_, Rodrigo Severo) * doc: operations: correct comma-delimited (`pr#29644 `_, Anthony DAtri) * doc: operations: improve reweight-by-utilization (`pr#27657 `_, Anthony DAtri) * doc: PendingReleaseNotes: 14.2.1 note on crush required version (`pr#27649 `_, Sage Weil) * doc: PendingReleaseNotes: fix typo (`pr#31853 `_, Sage Weil) * doc: PendingReleaseNotes: note on python3.6 changes (`issue#39164 `_, `pr#27490 `_, Kefu Chai) * doc: pg_num should always be a power of two (`pr#29364 `_, Lars Marowsky-Bree, Kai Wagner) * doc: QAT Acceleration for Encryption and Compression (`pr#26967 `_, Qiaowei Ren) * doc: quick-rbd.rst de-duplicate (`pr#32965 `_, Tim) * doc: RBD exclusive locks (`pr#31893 `_, Florian Haas) * doc: README.md: remove stale cmake prerequisite (`pr#32751 `_, Kefu Chai) * doc: release note: Add pending release notes for already merged code (`pr#32041 `_, David Zafman) * doc: release notes for 14.2.1 (`pr#27793 `_, Abhishek Lekshmanan) * doc: release notes for Luminous v12.2.13 (`pr#33030 `_, Nathan Cutler) * doc: release notes for nautilus 14.2.2 (`pr#29011 `_, Sage Weil, Nathan Cutler) * doc: release notes for Nautilus 14.2.7 (`pr#33031 `_, Nathan Cutler) * doc: release notes for v14.2.3 nautilus (`pr#29973 `_, Abhishek Lekshmanan) * doc: release notes for v14.2.6 (`pr#32551 `_, Abhishek Lekshmanan) * doc: releases/luminous: release notes for 12.2.12 (`pr#27553 `_, Abhishek Lekshmanan) * doc: releases: 14.2.3 dashboard note (`pr#30145 `_, Abhishek Lekshmanan) * doc: releases: v14.2.8 release notes (`pr#33670 `_, Abhishek Lekshmanan) * doc: relicense LGPL-2.1 code as LGPL-2.1 or LGPL-3.0 (`pr#22446 `_, Sage Weil) * doc: remove prod cluster examples from hardware recs (`pr#32670 `_, Zac Dover) * doc: remove recommendation for kernel.pid_max (`pr#27965 `_, Ben England) * doc: remove reference to obsolete scrub command (`pr#32508 `_, Patrick Donnelly) * doc: remove the CephFS-Hadoop instructions (`pr#32980 `_, Greg Farnum) * doc: removed OpenStack Kilo references in Keystone docs (`pr#27203 `_, James McClune) * doc: removes kube-helm installation instructions (`pr#32009 `_, Zac Dover) * doc: reorganize CephFS landing page and ToC (`pr#32038 `_, Patrick Donnelly) * doc: Revert doc: do not add suffix for search result links (`pr#33562 `_, Jason Dillaman) * doc: rgw/pubsub: add S3 compliant API to master zone (`pr#28971 `_, Yuval Lifshitz) * doc: rgw/pubsub: clarify pubsub zone configuration (`pr#27493 `_, Yuval Lifshitz) * doc: rgw/pubsub: fix topic arn. tenant support to multisite tests (`pr#27671 `_, Yuval Lifshitz) * doc: rgw: Fixed bug on wrong name for user_id for OPA (`pr#31972 `_, Seena Fallah) * doc: s/achieve/achieves/ (Fixed a verb disagreement) (`pr#32036 `_, Zac Dover) * doc: script/ceph-backport.sh: add Troubleshooting notes (`pr#29948 `_, Nathan Cutler) * doc: set ceph_perf_msgr_server arguments (`pr#29847 `_, Changcheng Liu) * doc: show how to count jobs before triggering them (`pr#32145 `_, Rishabh Dave) * doc: Show Jenkins commands (`pr#29423 `_, Ernesto Puerta) * doc: Small update of SubmittingPatches-backports (`pr#31163 `_, Laura Paduano) * doc: split up SubmittingPatches.rst (`issue#20953 `_, `pr#30705 `_, Nathan Cutler) * doc: Switch spelling of utilization (`pr#32537 `_, Bryan Stillwell) * doc: tools/rados: add --pgid in help (`pr#30383 `_, Vikhyat Umrao) * doc: typo fix in doc/dev/dev_cluster_deployement.rst: s/hostanme/hostname/ (`pr#31515 `_, Drunkard Zhang) * doc: update --force flag to be precise (`pr#32343 `_, Jos Collin) * doc: update adding an MDS (`pr#32291 `_, Jos Collin) * doc: update and improve mounting with fuse/kernel docs (`pr#30754 `_, Rishabh Dave) * doc: update bluestore cache settings and clarify data fraction (`issue#39522 `_, `pr#27859 `_, Jan Fajerski) * doc: update ceph ansible iscsi info (`pr#28665 `_, Mike Christie) * doc: Update ceph-deploy docs from dumpling to nautilus (`pr#30269 `_, Danny Abukalam) * doc: Update ceph-iscsi min version (`pr#29195 `_, Ricardo Marques) * doc: update CephFS overview in introductory page (`pr#30014 `_, Patrick Donnelly) * doc: update CephFS Quick Start doc (`pr#30406 `_, Rishabh Dave) * doc: Update commands in bootstrap.rst (`pr#31800 `_, Zac Dover) * doc: update default container images (`pr#33974 `_, Sage Weil) * doc: Update documentation for LazyIO methods lazyio_synchronize() and lazyio_propagate() (`pr#29711 `_, Sidharth Anupkrishnan) * doc: update documentation for the MANY_OBJECTS_PER_PG warning (`pr#27403 `_, Vangelis Tasoulas) * doc: update documents on using kcephfs (`pr#30626 `_, Jeff Layton) * doc: update erasure-code-profile.rst (`pr#33707 `_, Guillaume Abrioux) * doc: Update link to Red Hat documentation (`pr#27976 `_, Yaniv Kaul) * doc: update list of formats for --format flag for ceph pg dump (`pr#32373 `_, Zac Dover) * doc: Update mailing lists (`pr#31666 `_, hrchu) * doc: update mondb recovery script (`pr#28515 `_, Hannes von Haugwitz) * doc: Update mount CephFS index (`pr#28955 `_, Jos Collin) * doc: Update python-rtsli and tcmu-runner min versions (`pr#28494 `_, Ricardo Marques) * doc: Update requirements for using CephFS (`pr#30251 `_, Varsha Rao) * doc: update with osd addition (`pr#31244 `_, Changcheng Liu) * doc: update with zone bucket and straw2 addition (`pr#31177 `_, Changcheng Liu) * doc: update Zabbix template reference (`pr#33661 `_, Mathijs Smit) * doc: updated ceph monitor config options (`pr#29982 `_, James McClune) * doc: Updated dashboard iSCSI configuration, added labels (`pr#27074 `_, Lenz Grimmer) * doc: updated OpenStack rbd documentation (`pr#28979 `_, James McClune) * doc: updated OS recommendations and distro list (`pr#28643 `_, Kai Wagner) * doc: Updates link to Sepia la (`pr#28780 `_, Varsha Rao) * doc: use subsection for representing components in release notes (`pr#33940 `_, Kefu Chai) * doc: use the console lexer for rendering command line sessions (`pr#32141 `_, Kefu Chai) * do_cmake.sh: fedora-32 (rawhide) build with python-3.8 (`pr#32474 `_, Kaleb S. Keithley) * errorator: improve general error handlers (`pr#33344 `_, Samuel Just) * github/codeowners: Add orchestrator team (`pr#31441 `_, Sebastian Wagner) * github: Add ceph-volume to list of jenkins commands (`pr#31191 `_, Sebastian Wagner) * include/config-h.in.cmake: remove HAVE_XIO (`pr#28465 `_, Kefu Chai) * include/utime: do not cast sec to time_t (`pr#27861 `_, Kefu Chai) * include: buffer_raw.h: Copyright time fix (`pr#28481 `_, Changcheng Liu) * install-deps.sh: remove failing error catching (`pr#29403 `_, Ernesto Puerta) * Integrate PeeringState into crimson, fix related bugs (`pr#28180 `_, Samuel Just) * krbd: do away with explicit memory management and other cleanups (`pr#31919 `_, Ilya Dryomov) * librados: allow passing flags to operate sync APIs (`pr#33536 `_, Yuval Lifshitz) * librados: fix leak in getxattr and getxattrs (`pr#32183 `_, Adam Kupczyk) * librados: move buffer free functions to inline namespace (`issue#39972 `_, `pr#28167 `_, Jason Dillaman) * librados: prefer reinterpret_cast over c-style cast (`pr#33038 `_, Kefu Chai) * librbd: add reference counting (`pr#30397 `_, Mahati Chamarthy, Venky Shankar) * librbd: add snap_get_name and snap_get_id method API (`pr#31280 `_, Zheng Yin) * librbd: added missing include to PoolMetadata header (`pr#32614 `_, Kaleb S. Keithley) * librbd: adjust the else-if conditions in validate_striping() (`pr#30053 `_, mxdInspur) * librbd: always initialize local variables (`pr#31311 `_, Kefu Chai) * librbd: always try to acquire exclusive lock when removing image (`pr#29775 `_, Mykola Golub) * librbd: async open/close should free ImageCtx before issuing callback (`issue#39031 `_, `pr#27682 `_, Jason Dillaman) * librbd: avoid dereferencing an empty container during deep-copy (`issue#40368 `_, `pr#28559 `_, Jason Dillaman) * librbd: behave more gracefully when data pool removed (`pr#29613 `_, Mykola Golub) * librbd: bump minor version to match octopus (`pr#32402 `_, Jason Dillaman) * librbd: clean up unused variable (`pr#30019 `_, mxdInspur) * librbd: clone copy-on-write operations should preserve sparseness (`pr#27999 `_, Mykola Golub) * librbd: copyup read stats were incorrectly tied to child (`pr#27757 `_, Jason Dillaman) * librbd: defer event socket completion until after callback issued (`pr#33994 `_, Jason Dillaman) * librbd: diff iterate with fast-diff now correctly includes parent (`pr#32403 `_, Jason Dillaman) * librbd: disable zero-copy writes by default (`pr#31794 `_, Jason Dillaman) * librbd: dispatch delayed requests only if read intersects (`pr#27446 `_, Mykola Golub) * librbd: do not allow to deep copy migrating image (`pr#27194 `_, Mykola Golub) * librbd: do not unblock IO prior to growing object map during resize (`issue#39952 `_, `pr#28295 `_, Jason Dillaman) * librbd: dont call refresh from mirror::GetInfoRequest state machine (`pr#32734 `_, Mykola Golub) * librbd: dont use complete_external_callback if ImageCtx destroyed (`pr#29263 `_, Mykola Golub) * librbd: explicitly specify mode on mirror image enable (`pr#32217 `_, Mykola Golub) * librbd: features converting bitmask and string API (`pr#31188 `_, Zheng Yin) * librbd: finish write request early (`pr#32113 `_, Li, Xiaoyan) * librbd: fix broken group snapshot handling (`pr#33448 `_, Jason Dillaman) * librbd: fix build on freebsd (`pr#32938 `_, Mykola Golub) * librbd: fix issues with object-map/fast-diff feature interlock (`issue#39521 `_, `pr#28051 `_, Jason Dillaman) * librbd: fix potential race conditions (`pr#33563 `_, Mahati Chamarthy) * librbd: fix potential snapshot remove failure due to duplicate RPC messages (`pr#32760 `_, Mykola Golub) * librbd: fix rbd_features_to_string output (`pr#31006 `_, Zheng Yin) * librbd: fix rbd_open_by_id, rbd_open_by_id_read_only (`pr#32105 `_, yangjun) * librbd: fix some edge cases for snapshot mirror mode promote (`pr#32567 `_, Mykola Golub) * librbd: fix typo in deep_copy::ObjectCopyRequest::compute_read_ops (`pr#27049 `_, Mykola Golub) * librbd: fixed several race conditions related to copyup (`issue#39021 `_, `pr#27357 `_, Jason Dillaman) * librbd: force reacquire lock if blacklist is disabled (`pr#30955 `_, luo.runbing) * librbd: implement ordering for overlapping IOs (`pr#28952 `_, Mahati Chamarthy) * librbd: improve journal performance to match expected degradation (`issue#40072 `_, `pr#28539 `_, Jason Dillaman) * librbd: improved support for balanced and localized reads (`pr#33493 `_, Zheng Yin) * librbd: initial consolidation of internal locks (`pr#27756 `_, Jason Dillaman) * librbd: introduce new default write-around cache policy (`pr#27229 `_, Jason Dillaman) * librbd: leak on canceling simple io scheduler timer task (`pr#27755 `_, Mykola Golub) * librbd: look for mirror peers in default namespace (`pr#32338 `_, Mykola Golub) * librbd: look for pool metadata in default namespace (`pr#27151 `_, Mykola Golub) * librbd: make flush be queued by QOS throttler (`pr#26931 `_, Mykola Golub) * librbd: mirror image enable/disable should enable/disable journaling (`pr#28553 `_, Mykola Golub) * librbd: optimize image copy state machine to use fast-diff (`pr#33867 `_, Jason Dillaman) * librbd: optionally move parent image to trash on remove (`pr#27521 `_, Mykola Golub) * librbd: prevent concurrent AIO callbacks to external clients (`issue#40417 `_, `pr#28743 `_, Jason Dillaman) * librbd: Remove duplicated AsyncOpTracker in librbd/Utils.h (`pr#29653 `_, Xiaoyan Li) * librbd: remove pool objects when removing a namespace (`pr#32401 `_, Jason Dillaman) * librbd: shared read-only cache hook (`pr#27285 `_, Dehao Shang, Yuan Zhou) * librbd: silence -Wunused-variable warnings (`pr#27513 `_, David Disseldorp) * librbd: simple scheduler plugin for object dispatcher layer (`pr#26675 `_, Mykola Golub) * librbd: snapshot object maps can go inconsistent during copyup (`issue#39435 `_, `pr#27724 `_, Ilya Dryomov) * librbd: support compression allocation hints to the OSD (`pr#32687 `_, Jason Dillaman) * librbd: support EC data pool images sparsify (`pr#27268 `_, Mykola Golub) * librbd: support zero-copy writes via the C API (`pr#27895 `_, Jason Dillaman) * librbd: trash move return EBUSY instead of EINVAL for migrating image (`pr#27136 `_, Mykola Golub) * librbd: tweak deep-copy to avoid creating last snapshot until sync is complete (`pr#33097 `_, Jason Dillaman) * librbd: tweaks to increase IOPS and reduce CPU usage (`pr#28044 `_, Jason Dillaman) * librbd: use custom allocator for aligned boost::lockfree::queue (`issue#39703 `_, `pr#28093 `_, Jason Dillaman) * librbd: v1 clones are restricted to the same namespace (`pr#30711 `_, Jason Dillaman) * librbd: when unlinking peer from mirror snaps do it in all namespaces (`pr#32463 `_, Mykola Golub) * librbd:move all snapshot API functions in internal.cc over to api/Snapshot.cc (`pr#31589 `_, Zheng Yin) * log: avoid logging anything when log_to_file=false (`pr#27133 `_, Sage Weil) * log: fix store_statfs log line (`pr#28564 `_, Mohamad Gebai) * log: just return if t is empty (`pr#31243 `_, Xiubo Li) * log: print pthread ID / name mapping in recent events dump (`pr#32354 `_, Radoslaw Zarzynski) * lvm deactivate command (`pr#32179 `_, Jan Fajerski) * mds: add command that config individual client session (`issue#40811 `_, `pr#29104 `_, Yan, Zheng) * mds: add config to require forward to auth MDS (`pr#29995 `_, simon gao) * mds: add configurable snapshot limit (`pr#30710 `_, Milind Changire) * mds: add perf counter for finisher of MDSRank (`pr#29377 `_, simon gao) * mds: add perf counters for openfiletable (`pr#33363 `_, Milind Changire) * mds: add scrub_info_t into mempool (`pr#33180 `_, Jun Su) * mds: answering all pending getattr/lookups targeting the same inode in one go (`issue#36608 `_, `pr#24794 `_, Patrick Donnelly, Xuehan Xu) * mds: apply configuration changes through MDSRank (`pr#28951 `_, Patrick Donnelly) * mds: async dir operation support (`pr#27866 `_, Yan, Zheng) * mds: async dirop support (`pr#32816 `_, Yan, Zheng) * mds: avoid check session connections features when issuing caps (`pr#26881 `_, Yan, Zheng) * mds: avoid revoking Fsx from loner during directory fragmentation (`pr#26817 `_, Yan, Zheng) * mds: avoid sending too many osd requests at once after mds restarts (`issue#40028 `_, `pr#27436 `_, simon gao) * mds: better output of ceph health detail when some client is failing to advance oldest client/flush tid (`issue#39266 `_, `pr#27537 `_, Shen Hang) * mds: check dir fragment to split dir if mkdir makes it oversized (`pr#27480 `_, Erqi Chen) * mds: check directory split after rename (`issue#38994 `_, `pr#27214 `_, Shen Hang) * mds: clarify comment (`pr#31401 `_, Patrick Donnelly) * mds: cleanup truncating inodes when standby replay mds trim log segments (`pr#28686 `_, Yan, Zheng) * mds: cleanup unneeded client_snap_caps when splitting snap inode (`issue#39987 `_, `pr#28190 `_, Yan, Zheng) * mds: complete all the replay op when mds is restarted (`issue#40784 `_, `pr#29059 `_, Shen Hang) * mds: convert unnecessary usage of std::list to std::vector (`pr#26895 `_, Patrick Donnelly) * mds: count purge queue items left in journal (`issue#40121 `_, `pr#28376 `_, Zhi Zhang) * mds: delay exporting directory whose pin value exceeds max rank id (`issue#40603 `_, `pr#28804 `_, Zhi Zhang) * mds: display scrub status in ceph status (`pr#28855 `_, Venky Shankar) * mds: do not include metric_spec in MClientSession from MDS (`pr#32659 `_, Patrick Donnelly) * mds: dont add metadata to session close message (`pr#32318 `_, Yan, Zheng) * mds: dont mark cap NEEDSNAPFLUSH if client has no pending capsnap (`pr#28551 `_, Yan, Zheng) * mds: dont print subtrees if they are too big or too many (`pr#26056 `_, Rishabh Dave) * mds: dont respond getattr with -EROFS when mds is readonly (`pr#32676 `_, Yan, Zheng) * mds: drive cap recall while dropping cache (`pr#30389 `_, Patrick Donnelly) * mds: evict an unresponsive client only when another client wants its caps (`issue#17854 `_, `pr#22645 `_, Rishabh Dave) * mds: execute PurgeQueue on_error handler in finisher (`pr#29064 `_, Yan, Zheng) * mds: fix assert(omap_num_objs <= MAX_OBJECTS) of OpenFileTable (`pr#32020 `_, Yan, Zheng) * mds: fix bug of batch getattr/lookup (`pr#32268 `_, Yan, Zheng) * mds: fix can wrlock check in Locker::acquire_locks() (`pr#33005 `_, Yan, Zheng) * mds: fix infinite loop in Locker::file_update_finish (`pr#29902 `_, Yan, Zheng) * mds: fix InoTable::force_consume_to() (`pr#29411 `_, Yan, Zheng) * mds: fix invalid access of mdr->dn[0].back() (`pr#31534 `_, Yan, Zheng) * mds: fix is session in blacklist check in Server::apply_blacklist() (`issue#40061 `_, `pr#28293 `_, Yan, Zheng) * mds: Fix MDCache.h reorder compiler warnings (`pr#31409 `_, Varsha Rao) * mds: fix null pointer dereference in Server::handle_client_link() (`pr#32722 `_, Yan, Zheng) * mds: fix revoking caps after after stale->resume circle (`pr#31662 `_, Yan, Zheng) * mds: fix SnapRealm::resolve_snapname for long name (`pr#27511 `_, Yan, Zheng) * mds: fix use-after-free in Migrater (`pr#33291 `_, Yan, Zheng) * mds: handle bad purge queue item encoding (`pr#33449 `_, Yan, Zheng) * mds: handle ceph_assert on blacklisting (`pr#33662 `_, Milind Changire) * mds: increase default cache memory limit to 4G (`pr#32042 `_, Patrick Donnelly) * mds: initialize cap_revoke_eviction_timeout with conf (`issue#38844 `_, `pr#26970 `_, simon gao) * mds: initialize the monc later in init() (`pr#31715 `_, Xiubo Li) * mds: just delete MDSIOContextBase during shutdown (`pr#33538 `_, Patrick Donnelly) * mds: maintain client provided metric flags in client metadata (`pr#32201 `_, Venky Shankar) * mds: make mds-mds per-message versioned (`issue#12107 `_, `pr#20160 `_, dongdong tao) * mds: make MDSIOContextBase delete itself when shutting down (`pr#29752 `_, Xuehan Xu) * mds: mds returns -5(EIO) error when the deleted file does not exist (`pr#30403 `_, huanwen ren) * mds: move some MDCache member init to header (`pr#29543 `_, Patrick Donnelly) * mds: no assert on frozen dir when scrub path (`pr#30835 `_, Zhi Zhang) * mds: note client features when rejecting client (`pr#32505 `_, Patrick Donnelly) * mds: obsoleting mds_cache_size (`pr#31729 `_, Patrick Donnelly, Ramana Raja) * mds: optimize function, fragset_t::simplify, to improve the efficiency of merging fragment (`pr#31595 `_, simon gao) * mds: output lock state in format dump (`issue#39645 `_, `pr#27717 `_, Zhi Zhang) * mds: pass proper MutationImpl::LockOp to Locker::wrlock_start() (`pr#33719 `_, Yan, Zheng) * mds: preparation for async dir operation support (`pr#30972 `_, Yan, Zheng) * mds: properly evaluate unstable locks when evicting client (`pr#31548 `_, Yan, Zheng) * mds: recall caps from quiescent sessions (`pr#28702 `_, Patrick Donnelly) * mds: register with mgr only after added to FSMap (`pr#31400 `_, Patrick Donnelly) * mds: reject sessionless messages (`pr#29594 `_, Xiao Guodong) * mds: release free heap pages after trim (`pr#31793 `_, Patrick Donnelly) * mds: relevel debug message levels for balancer/migrator (`pr#33471 `_, Patrick Donnelly) * mds: remove dead get_commands code (`pr#33390 `_, Patrick Donnelly) * mds: remove duplicated check on balance amount (`pr#27087 `_, Zhi Zhang) * mds: remove superfluous error in StrayManager::advance_delayed() (`issue#38679 `_, `pr#27051 `_, Yan, Zheng) * mds: remove the code that skip evicting the only client (`pr#28642 `_, Yan, Zheng) * mds: remove the incorrect comments (`pr#31775 `_, Xiubo Li) * mds: remove unnecessary debug warning (`pr#31898 `_, Patrick Donnelly) * mds: remove unused CDir members (`pr#33227 `_, Jun Su) * mds: Reorganize class members in Anchor header (`pr#30090 `_, Varsha Rao) * mds: Reorganize class members in Capability header (`pr#29166 `_, Varsha Rao) * mds: Reorganize class members in CDir header (`pr#28860 `_, Varsha Rao) * mds: Reorganize class members in CInode header (`pr#29066 `_, Varsha Rao) * mds: Reorganize class members in DamageTable header (`pr#29569 `_, Varsha Rao) * mds: Reorganize class members in FSMap header (`pr#29572 `_, Varsha Rao) * mds: Reorganize class members in FSMapUser header (`pr#29574 `_, Varsha Rao) * mds: Reorganize class members in InoTable header (`pr#29883 `_, Varsha Rao) * mds: Reorganize class members in JournalPointer header (`pr#29888 `_, Varsha Rao) * mds: Reorganize class members in LocalLock header (`pr#30143 `_, Varsha Rao) * mds: Reorganize class members in Locker header (`pr#30164 `_, Varsha Rao) * mds: Reorganize class members in LogEvent header (`pr#30205 `_, Varsha Rao) * mds: Reorganize class members in LogSegment header (`pr#30202 `_, Varsha Rao) * mds: Reorganize class members in MDBalancer header (`pr#30559 `_, Varsha Rao) * mds: Reorganize class members in MDCache header (`pr#30745 `_, Varsha Rao) * mds: Reorganize class members in MDLog header (`pr#30744 `_, Varsha Rao) * mds: Reorganize class members in MDSAuthCaps header (`pr#30915 `_, Varsha Rao) * mds: Reorganize class members in MDSCacheObject header (`pr#30938 `_, Varsha Rao) * mds: Reorganize class members in MDSDaemon header (`pr#30990 `_, Varsha Rao) * mds: Reorganize class members in MDSMap header (`pr#31118 `_, Varsha Rao) * mds: Reorganize class members in MDSRank header (`pr#31120 `_, Varsha Rao) * mds: Reorganize class members in MDSTable header (`pr#31122 `_, Varsha Rao) * mds: Reorganize class members in MDSTableClient header (`pr#31115 `_, Varsha Rao) * mds: Reorganize class members in MDSTableServer header (`pr#31250 `_, Varsha Rao) * mds: Reorganize class members in Migrator header (`pr#31253 `_, Varsha Rao) * mds: Reorganize class members in OpenFileTable header (`pr#31597 `_, Varsha Rao) * mds: Reorganize class members in PurgeQueue header (`pr#31596 `_, Varsha Rao) * mds: Reorganize class members in RecoveryQueue header (`pr#31635 `_, Varsha Rao) * mds: Reorganize class members in ScatterLock header (`pr#31716 `_, Varsha Rao) * mds: Reorganize class members in ScrubHeader header (`pr#31717 `_, Varsha Rao) * mds: Reorganize class members in ScrubStack header (`pr#31718 `_, Varsha Rao) * mds: Reorganize class members in Server header (`pr#31719 `_, Varsha Rao) * mds: Reorganize class members in SessionMap header (`pr#32320 `_, Varsha Rao) * mds: Reorganize class members in SimpleLock header (`pr#32322 `_, Varsha Rao) * mds: Reorganize class members in SnapClient header (`pr#32326 `_, Varsha Rao) * mds: Reorganize class members in SnapServer header (`pr#32350 `_, Varsha Rao) * mds: Reorganize struct members in Mutation header (`pr#31481 `_, Varsha Rao) * mds: Reorganize structure and class members in mdstypes header (`pr#32435 `_, Varsha Rao) * mds: Reorganize structure members in flock header (`pr#32416 `_, Varsha Rao) * mds: Reorganize structure members in inode_backtrace header (`pr#32431 `_, Varsha Rao) * mds: Reorganize structure members in snap header (`pr#32432 `_, Varsha Rao) * mds: Reorganize structure members in SnapRealm header (`pr#32348 `_, Varsha Rao) * mds: Reorganize structure members in StrayManager header (`pr#32397 `_, Varsha Rao) * mds: reset heartbeat inside big loop (`pr#28406 `_, Yan, Zheng) * mds: split the dir if the op makes it oversized, because some ops maybe in flight (`pr#29921 `_, simon gao) * mds: there is an assertion when calling Beacon::shutdown() (`issue#38822 `_, `pr#27063 `_, huanwen ren) * mds: throttle scrub start for multiple active MDS (`pr#32521 `_, Patrick Donnelly, Milind Changire) * mds: tolerate no snaprealm encoded in on-disk root inode (`pr#31455 `_, Yan, Zheng) * mds: track high water mark for purges (`pr#32667 `_, Patrick Donnelly) * mds: trim cache during standby-replay (`issue#40213 `_, `pr#28212 `_, simon gao) * mds: trim cache on regular schedule (`pr#29542 `_, Patrick Donnelly) * mds: unify daemon and tell commands (`pr#31255 `_, Sage Weil) * mds: update projected_version when upgrading snaptable (`issue#38835 `_, `pr#27238 `_, Yan, Zheng) * mds: use set to store to evict client (`pr#30029 `_, Erqi Chen) * mds: use vector::empty in feature_bitset_t (`pr#32541 `_, Jos Collin) * mds: wake up lock waiters after forcibly changing lock state (`issue#39987 `_, `pr#28459 `_, Yan, Zheng) * mgr,mon,rbd: mon/mgr: add rbd_support to list of always-on mgr modules (`issue#40790 `_, `pr#29073 `_, Jason Dillaman) * mgr,mon: mon,mgr: pass MessageRef to monc.send_mon_message() \xe2\x80\xa6 (`pr#30449 `_, Kefu Chai) * mgr,mon: mon/MgrMonitor.cc: add always_on_modules to the output of ceph mgr module ls (`pr#32939 `_, Neha Ojha) * mgr,mon: mon/MgrMonitor.cc: warn about missing mgr in a cluster with osds (`pr#33025 `_, Neha Ojha) * mgr,pybind: pybind/mgr/prometheus: remove scrape_duration metric (`pr#27034 `_, Jan Fajerski) * mgr,rbd: mgr/dashboard: block mirroring page results in internal server error (`pr#31907 `_, Jason Dillaman) * mgr,rbd: mgr/rbd_support: dont scan pools that dont have schedules (`pr#33840 `_, Mykola Golub) * mgr,rbd: mgr/rbd_support: implement mirror snapshot scheduler (`pr#32434 `_, Mykola Golub) * mgr,rbd: mgr/rbd_support: support scheduling long-running background operations (`issue#40621 `_, `pr#29054 `_, Jason Dillaman) * mgr,rbd: pybind/mgr: fix format for rbd-mirror prometheus metrics (`pr#28200 `_, Mykola Golub) * mgr,rgw: mgr/ansible: RGW service (`pr#28468 `_, Juan Miguel Olmo Mart\xc3\xadnez) * mgr,tests: install-deps.sh: preload wheel for all mgr requirements.txt files (`pr#32151 `_, Sage Weil) * mgr,tests: mgr/orchestrator_cli: remove tox and move test to parent dir (`pr#31561 `_, Sebastian Wagner) * mgr,tests: mgr/progress: Created first unit test for progress module (`pr#28758 `_, Kamoltat (Junior) Sirivadhna) * mgr,tests: pybind/mgr: Add ceph_module.pyi to improve type checking (`pr#32502 `_, Sebastian Wagner) * mgr,tests: pybind/mgr: install setuptools >= 12 (`pr#29414 `_, Kefu Chai) * mgr,tests: pybind/tox: handle possible WITH_PYTHON3 values other than 3 (`pr#28002 `_, Nathan Cutler) * mgr,tests: qa/mgr/balancer: Add cram based test for altering target_max_misplaced_ratio setting (`pr#30646 `_, Shyukri Shyukriev) * mgr,tests: qa/mgr/progress: update the test suite for progress module (`issue#40618 `_, `pr#29111 `_, Kamoltat (Junior) Sirivadhna) * mgr,tools: Remove use of rules batching for upmap balancer and default for upmap_max_deviation to 5 (`pr#32247 `_, David Zafman) * mgr/ansible: Host ls implementation (`pr#26185 `_, Juan Miguel Olmo Mart\xc3\xadnez) * mgr/ansible: Integrate mgr/ansible/tox into mgr/tox (`pr#32149 `_, Sebastian Wagner) * mgr/ansible: TLS Mutual Authentication (`pr#27512 `_, Juan Miguel Olmo Mart\xc3\xadnez) * mgr/cephadm: a few fixes around daemon and device caches (`pr#33495 `_, Sage Weil) * mgr/cephadm: adapt osd deployment to service_apply (`pr#33922 `_, Sage Weil, Joshua Schmid) * mgr/cephadm: add drivegroup support; workaround c-v batch shortcoming (`pr#32972 `_, Sage Weil, Joshua Schmid) * mgr/cephadm: add HostAssignment.validate() (`pr#34005 `_, Sebastian Wagner) * mgr/cephadm: Add progress to update_mgr() (`pr#32372 `_, Sebastian Wagner) * mgr/cephadm: Add unittest for osd removal (`pr#33602 `_, Sage Weil, Sebastian Wagner) * mgr/cephadm: Add unittest for service_action (`pr#32209 `_, Sebastian Wagner) * mgr/cephadm: allow osd replacement/removal in the background (`pr#32983 `_, Joshua Schmid) * mgr/cephadm: auto-select python version to use remotely (`pr#32327 `_, Sage Weil) * mgr/cephadm: cache device inventory; zap (`pr#33394 `_, Sage Weil) * mgr/cephadm: catch exceptions when scraping ceph-volume inventory (`pr#33484 `_, Sage Weil) * mgr/cephadm: catch excpetions in serve() thread (`pr#33139 `_, Sage Weil) * mgr/cephadm: check-host on host add (`pr#32385 `_, Sage Weil) * mgr/cephadm: clean up client.crash.\\* container_image settings after upgrade (`pr#34068 `_, Sage Weil) * mgr/cephadm: consolidate/refactor all add\\_ and apply\\_ methods (`pr#33496 `_, Sage Weil) * mgr/cephadm: Convert HostNotFound to OrchestratorError (`pr#33310 `_, Sebastian Wagner) * mgr/cephadm: deploy Grafana (`pr#33515 `_, Patrick Seidensal) * mgr/cephadm: do not include osd service in orch ls output (`pr#33968 `_, Sage Weil) * mgr/cephadm: do not reconfig orphan daemons; fix test to not remote orphans (`pr#34027 `_, Sage Weil) * mgr/cephadm: do not refresh daemon and device inventory as often (`pr#33734 `_, Sage Weil) * mgr/cephadm: drop mixin parent (`pr#33514 `_, Sage Weil) * mgr/cephadm: Enable provisioning alertmanager via orchestrator (`pr#33554 `_, Kristoffer Gr\xc3\xb6nlund) * mgr/cephadm: fix dump output by formatting to yaml first (`pr#33891 `_, Joshua Schmid) * mgr/cephadm: fix listing services by host (`pr#32314 `_, Kiefer Chang) * mgr/cephadm: fix orch rm and upgrade (`pr#33772 `_, Sage Weil) * mgr/cephadm: fix osd reconfig/redeploy (`pr#32812 `_, Sage Weil) * mgr/cephadm: Fix placement for new services (`pr#33205 `_, Sebastian Wagner) * mgr/cephadm: fix placement when existing + specified dont overlap (`pr#33766 `_, Sage Weil) * mgr/cephadm: fix prom config generation when hosts have no labels or addrs (`pr#33800 `_, Sage Weil) * mgr/cephadm: Fix remove_osds() (`pr#32146 `_, Sebastian Wagner) * mgr/cephadm: fix section name for mon options in ceph.conf (`pr#32681 `_, Sage Weil) * mgr/cephadm: fix service list filtering (`pr#33838 `_, Kiefer Chang) * mgr/cephadm: fix type of timeout options (`pr#32316 `_, Kiefer Chang) * mgr/cephadm: fix upgrade ok-to-stop condition check (`pr#33469 `_, Sage Weil) * mgr/cephadm: fix upgrade order (`pr#33811 `_, Sage Weil) * mgr/cephadm: fix upgrade wait loop (`pr#33447 `_, Sage Weil) * mgr/cephadm: fix upgrade when daemon is stopped (`pr#33678 `_, Sage Weil) * mgr/cephadm: if we had no record of deps, and deps are [], do not reconfig (`pr#33733 `_, Sage Weil) * mgr/cephadm: implement apply mon, mon removal checks (`pr#33792 `_, Sage Weil) * mgr/cephadm: implement pause/resume to suspect non-monitoring background work (`pr#33930 `_, Sage Weil) * mgr/cephadm: improve pull behavior for upgrade (`pr#32878 `_, Sage Weil) * mgr/cephadm: init attrs created by settattr() (`pr#32957 `_, Kefu Chai) * mgr/cephadm: leverage service specs (`pr#33553 `_, Sage Weil, Joshua Schmid) * mgr/cephadm: limit number of times check host is performed in the serve loop (`pr#33866 `_, Daniel-Pivonka) * mgr/cephadm: log information to cluster log (`pr#33488 `_, Sage Weil) * mgr/cephadm: make apply move daemons, do its work synchronously (`pr#33704 `_, Sage Weil) * mgr/cephadm: make NodeAssignment return a simple host list (`pr#33669 `_, Sage Weil) * mgr/cephadm: make osd create on an existing LV idempotent (`pr#33755 `_, Sage Weil) * mgr/cephadm: make prometheus scrape all mgrs, node-exporters (`pr#33444 `_, Sage Weil) * mgr/cephadm: Make sure we dont co-locate the same daemon (`pr#33853 `_, Sebastian Wagner) * mgr/cephadm: misc fixes (`pr#33119 `_, Sage Weil) * mgr/cephadm: misc fixes + smoke test (`pr#33730 `_, Sage Weil) * mgr/cephadm: mon: Dont show traceback for user errors (`pr#33333 `_, Sebastian Wagner) * mgr/cephadm: nicer error from cephadm check-host (`pr#33935 `_, Sage Weil) * mgr/cephadm: point dashboard at cephadms grafana automatically (`pr#33700 `_, Sage Weil) * mgr/cephadm: prefix daemon ids with hostname (`pr#33012 `_, Sage Weil) * mgr/cephadm: progress for upgrade (`pr#33415 `_, Sage Weil) * mgr/cephadm: provision node-exporter (`pr#33123 `_, Sage Weil, Patrick Seidensal) * mgr/cephadm: provision prometheus (`pr#33073 `_, Sage Weil) * mgr/cephadm: reduce boilerplate for unittests (`pr#33663 `_, Joshua Schmid) * mgr/cephadm: refresh ceph.conf when mons change (`pr#33855 `_, Sage Weil) * mgr/cephadm: refresh configs when dependencies change (`pr#33671 `_, Sage Weil) * mgr/cephadm: refresh service state in the background (`pr#32859 `_, Sebastian Wagner, Sage Weil) * mgr/cephadm: remove item from cache when removing (`pr#33071 `_, Sage Weil) * mgr/cephadm: remove redundant /dev when blinking device light (`pr#32246 `_, Sage Weil) * mgr/cephadm: revamp scheduling (`pr#33523 `_, Sage Weil) * mgr/cephadm: set thread pool size to 10 (`pr#33463 `_, Sebastian Wagner) * mgr/cephadm: show age of service ls (`pr#32686 `_, Sage Weil) * mgr/cephadm: simplify and improve placement (`pr#33808 `_, Sage Weil) * mgr/cephadm: simplify tracking of daemon inventory (`pr#33249 `_, Sage Weil) * mgr/cephadm: two minor fixes (`pr#33736 `_, Sage Weil) * mgr/cephadm: update osd removal report immediately (`pr#33713 `_, Kiefer Chang) * mgr/cephadm: update type annotation (`pr#33784 `_, Kefu Chai) * mgr/cephadm: upgrade requires root mode for now (`pr#33802 `_, Sage Weil) * mgr/cephadm: upgrade: fix daemons missing image_id (`pr#33745 `_, Sage Weil) * mgr/cephadm: upgrade: handle stopped daemons (`pr#33487 `_, Sage Weil) * mgr/cephadm: verify hosts hostname matches cephadm host (`pr#33058 `_, Sage Weil) * mgr/dashbaord: Fix E2E pools page failure (`pr#32635 `_, Stephan M\xc3\xbcller) * mgr/dashboad: Improve iSCSI overview page (`pr#27254 `_, Ricardo Marques) * mgr/dashboard Displays progress bar in notification tray for background tasks (`pr#27420 `_, Pooja) * mgr/dashboard/qa: Improve tasks.mgr.test_dashboard.TestDashboard.test_standby (`pr#26925 `_, Volker Theile) * mgr/dashboard/qa: Increase timeout for test_disable (tasks.mgr.dashboard.test_mgr_module.MgrModuleTelemetryTest) (`pr#27187 `_, Volker Theile) * mgr/dashboard: 1 osds exist in the crush map but not in the osdmap breaks OSD page (`issue#36086 `_, `pr#26836 `_, Patrick Nawracay) * mgr/dashboard: A block-manager can not access the pool page (`pr#30001 `_, Volker Theile) * mgr/dashboard: accept expected exception when SSL handshaking (`pr#31014 `_, Kefu Chai) * mgr/dashboard: Access control database does not restore disabled users correctly (`pr#29614 `_, Volker Theile) * mgr/dashboard: adapt bucket tenant API tests to new behaviour (`pr#29570 `_, alfonsomthd) * mgr/dashboard: adapt create_osds interface change (`pr#34000 `_, Kiefer Chang) * mgr/dashboard: Add Always-on column to mgr module list (`pr#33429 `_, Volker Theile) * mgr/dashboard: Add date range and log search functionality (`issue#37387 `_, `pr#26562 `_, guodan1) * mgr/dashboard: add debug mode (`pr#30522 `_, Ernesto Puerta) * mgr/dashboard: add feature toggle for NFS and fix feature toggles regression (`pr#32419 `_, Ernesto Puerta) * mgr/dashboard: Add invalid pattern message for Pool name (`pr#31607 `_, Tiago Melo) * mgr/dashboard: Add missing text translation (`pr#29934 `_, Volker Theile) * mgr/dashboard: Add polish translation (`pr#27247 `_, Sebastian Krah) * mgr/dashboard: Add protractor-screenshoter-plugin (`pr#27166 `_, Alfonso Mart\xc3\xadnez) * mgr/dashboard: Add refresh interval to the dashboard landing page (`issue#26872 `_, `pr#26396 `_, guodan1) * mgr/dashboard: Add separate option to config SSL port (`pr#26914 `_, Volker Theile) * mgr/dashboard: Add support for blinking enclosure LEDs (`pr#31851 `_, Volker Theile) * mgr/dashboard: Add time-diff unittest and docs (`pr#31357 `_, Volker Theile) * mgr/dashboard: Add vertical menu (`pr#31923 `_, Tiago Melo) * mgr/dashboard: Add whitelist to guard (`pr#27406 `_, Ernesto Puerta) * mgr/dashboard: Allow deletion of RBD with snapshots (`pr#33067 `_, Tiago Melo) * mgr/dashboard: Allow disabling redirection on standby Dashboards (`pr#29088 `_, Volker Theile) * mgr/dashboard: allow refreshing inventory page (`pr#32423 `_, Kiefer Chang) * mgr/dashboard: Allow users to change their password on the UI (`pr#28935 `_, Volker Theile) * mgr/dashboard: auth ttl expired error (`pr#27098 `_, ming416) * mgr/dashboard: Back button component (`pr#27164 `_, Stephan M\xc3\xbcller) * mgr/dashboard: behave when pwdUpdateRequired key is missing (`pr#33513 `_, Sage Weil) * mgr/dashboard: Bucket names cannot be formatted as IP address (`pr#30620 `_, Volker Theile) * mgr/dashboard: ceph dashboard i18ntool (`pr#26953 `_, Sebastian Krah) * mgr/dashboard: CephFS client tab switch (`pr#29556 `_, Stephan M\xc3\xbcller) * mgr/dashboard: CephFS tab component (`pr#29800 `_, Stephan M\xc3\xbcller) * mgr/dashboard: Change the provider of services to root (`issue#39996 `_, `pr#28211 `_, Tiago Melo) * mgr/dashboard: change warn_explicit to warn (`pr#30075 `_, Ernesto Puerta) * mgr/dashboard: Check if gateway is in use before deletion (`pr#27262 `_, Ricardo Marques) * mgr/dashboard: Check if `num_sessions` is available (`pr#30270 `_, Ricardo Marques) * mgr/dashboard: cheroot moved into a separate project (`pr#31431 `_, Joshua Schmid) * mgr/dashboard: Cleanup code (`pr#33107 `_, Volker Theile) * mgr/dashboard: Cleanup feature toggle status output (`pr#32569 `_, Volker Theile) * mgr/dashboard: Cleanup Python code (`pr#29604 `_, Volker Theile) * mgr/dashboard: Clone an existing user role (`pr#32653 `_, Volker Theile) * mgr/dashboard: commands to set SSL certificate and key (`pr#27463 `_, Ricardo Dias) * mgr/dashboard: Configuring an URL prefix does not work as expected (`pr#30599 `_, Volker Theile) * mgr/dashboard: consider mon_allow_pool_delete flag (`pr#28260 `_, Tatjana Dehler) * mgr/dashboard: Controls UI inputs based on type (`pr#30208 `_, Ricardo Marques) * mgr/dashboard: coverage venv python version same as mgr (`pr#33407 `_, Alfonso Mart\xc3\xadnez) * mgr/dashboard: Create bucket with x-amz-bucket-object-lock-enabled (`pr#33821 `_, Volker Theile) * mgr/dashboard: Crush rule modal (`pr#33620 `_, Stephan M\xc3\xbcller) * mgr/dashboard: decouple backend unit tests from build (`pr#32565 `_, Alfonso Mart\xc3\xadnez) * mgr/dashboard: destroyed view in CRUSH map viewer (`pr#33405 `_, Avan Thakkar) * mgr/dashboard: Disable event propagation in the helper icon (`issue#40715 `_, `pr#29105 `_, Tiago Melo) * mgr/dashboard: Display correct dialog title (`pr#28168 `_, Volker Theile) * mgr/dashboard: Display iSCSI logged in info (`pr#28265 `_, Ricardo Marques) * mgr/dashboard: Display legend for CephFS standbys (`pr#29927 `_, Volker Theile) * mgr/dashboard: display OSD IDs on inventory page (`pr#31189 `_, Kiefer Chang) * mgr/dashboard: Display the number of iSCSI active sessions (`pr#27248 `_, Ricardo Marques) * mgr/dashboard: Display WWN and LUN number in iSCSI target details (`pr#30288 `_, Ricardo Marques) * mgr/dashboard: do not log tokens (`pr#30445 `_, Kefu Chai) * mgr/dashboard: do not show RGW API keys if only read-only privileges (`pr#33178 `_, Alfonso Mart\xc3\xadnez) * mgr/dashboard: Editing RGW bucket fails because of name is already in use (`pr#29767 `_, Volker Theile) * mgr/dashboard: Enable compiler options used by Angular --strict flag (`pr#32553 `_, Tiago Melo) * mgr/dashboard: Enable read only users to read again (`pr#27348 `_, Stephan M\xc3\xbcller) * mgr/dashboard: enable/disable versioning on RGW bucket (`pr#29460 `_, Alfonso Mart\xc3\xadnez) * mgr/dashboard: Enforce password change upon first login (`pr#32680 `_, Volker Theile, Tatjana Dehler) * mgr/dashboard: Enhance user create CLI command to force password change (`pr#33552 `_, Volker Theile) * mgr/dashboard: Evict a CephFS client (`pr#28898 `_, Ricardo Marques) * mgr/dashboard: Explicitly set/change the device class of an OSD (`pr#32150 `_, Ricardo Marques) * mgr/dashboard: Extend E2E test section (`pr#28858 `_, Laura Paduano) * mgr/dashboard: extend types of `smart` response (`pr#30595 `_, Patrick Seidensal) * mgr/dashboard: fix adding/removing host errors (`pr#34023 `_, Kiefer Chang) * mgr/dashboard: fix backend error when updating RBD interlocked features (`issue#39933 `_, `pr#28147 `_, Kiefer Chang) * mgr/dashboard: fix cdEncode decorator is not working on class (`pr#30064 `_, Kiefer Chang) * mgr/dashboard: Fix CephFS chart (`pr#29557 `_, Stephan M\xc3\xbcller) * mgr/dashboard: Fix dashboard health test failure (`pr#29172 `_, Ricardo Marques) * mgr/dashboard: Fix deletion of NFS protocol properties (`issue#38997 `_, `pr#27244 `_, Tiago Melo) * mgr/dashboard: Fix deletion of NFS transports properties (`issue#39090 `_, `pr#27350 `_, Tiago Melo) * mgr/dashboard: Fix e2e chromedriver problem (`pr#32224 `_, Tiago Melo) * mgr/dashboard: Fix env vars of `run-tox.sh` (`issue#38798 `_, `pr#26977 `_, Patrick Nawracay) * mgr/dashboard: Fix error in unit test caused by timezone (`pr#31632 `_, Tiago Melo) * mgr/dashboard: fix failing user test (`pr#32461 `_, Tatjana Dehler) * mgr/dashboard: fix improper URL checking (`pr#32652 `_, Ernesto Puerta) * mgr/dashboard: Fix iSCSI + Rook issues (`issue#39586 `_, `pr#26341 `_, Sebastian Wagner) * mgr/dashboard: Fix iSCSI Discovery user permissions (`issue#39328 `_, `pr#27678 `_, Tiago Melo) * mgr/dashboard: Fix iSCSI disk diff calculation (`pr#27378 `_, Ricardo Marques) * mgr/dashboard: Fix iSCSI form when using IPv6 (`pr#27946 `_, Ricardo Marques) * mgr/dashboard: Fix iSCSI target form warning (`issue#39324 `_, `pr#27609 `_, Tiago Melo) * mgr/dashboard: Fix iSCSI target submission (`pr#27380 `_, Ricardo Marques) * mgr/dashboard: Fix issues in user form (`pr#28863 `_, Volker Theile) * mgr/dashboard: fix LazyUUID4 not serializable (`pr#31266 `_, Ernesto Puerta) * mgr/dashboard: fix MDS counter chart is not displayed (`pr#29371 `_, Kiefer Chang) * mgr/dashboard: fix mgr module API tests (`pr#29634 `_, alfonsomthd, Kefu Chai) * mgr/dashboard: fix missing constraints file in backend API tests (`pr#30720 `_, Alfonso Mart\xc3\xadnez) * mgr/dashboard: Fix missing i18n (`pr#32650 `_, Volker Theile) * mgr/dashboard: Fix mypy issues and enable it by default (`pr#33454 `_, Volker Theile) * mgr/dashboard: Fix NFS pseudo validation (`issue#39063 `_, `pr#27293 `_, Tiago Melo) * mgr/dashboard: Fix NFS squash default value (`issue#39064 `_, `pr#27294 `_, Tiago Melo) * mgr/dashboard: Fix npm vulnerabilities (`pr#32699 `_, Tiago Melo) * mgr/dashboard: Fix OSD IDs are not displayed when using cephadm backend (`pr#32207 `_, Kiefer Chang) * mgr/dashboard: Fix pool deletion e2e (`pr#29993 `_, Volker Theile) * mgr/dashboard: Fix pool renaming functionality (`pr#31617 `_, Stephan M\xc3\xbcller) * mgr/dashboard: fix python2 failure in home controller (`pr#30937 `_, Ricardo Dias) * mgr/dashboard: fix RGW subuser auto-generate key (`pr#32186 `_, Alfonso Mart\xc3\xadnez) * mgr/dashboard: Fix RGW user/bucket quota issues (`pr#28174 `_, Volker Theile) * mgr/dashboard: fix SAML input argument handling (`pr#29848 `_, Ernesto Puerta) * mgr/dashboard: fix small typos in description message (`pr#30647 `_, Tatjana Dehler) * mgr/dashboard: fix some performance data are not displayed (`issue#39971 `_, `pr#28169 `_, Kiefer Chang) * mgr/dashboard: fix sparkline component (`pr#26985 `_, Alfonso Mart\xc3\xadnez) * mgr/dashboard: fix tasks.mgr.dashboard.test_rgw suite (`pr#33718 `_, Alfonso Mart\xc3\xadnez) * mgr/dashboard: Fix the table mouseenter event handling test (`pr#28879 `_, Stephan M\xc3\xbcller) * mgr/dashboard: fix tox test failure (`pr#29125 `_, Kiefer Chang) * mgr/dashboard: Fix translation of variables (`pr#30671 `_, Tiago Melo) * mgr/dashboard: Fix typo in NFS form (`issue#39067 `_, `pr#27245 `_, Tiago Melo) * mgr/dashboard: fix visibility of pwdExpirationDate field (`pr#32703 `_, Tatjana Dehler) * mgr/dashboard: Fix zsh support in run-backend-api-tests.sh (`pr#31070 `_, Sebastian Wagner) * mgr/dashboard: Fix `npm run fixmod` command (`pr#28176 `_, Patrick Nawracay) * mgr/dashboard: Fixes defaultBuilder is not a function (`pr#29420 `_, Ricardo Marques) * mgr/dashboard: Fixes random cephfs tab test failure (`pr#30814 `_, Stephan M\xc3\xbcller) * mgr/dashboard: Fixes rbd image purge trash button & modal text (`pr#33321 `_, anurag) * mgr/dashboard: Fixes tooltip behavior (`pr#27153 `_, Stephan M\xc3\xbcller) * mgr/dashboard: FixtureHelper (`pr#27157 `_, Stephan M\xc3\xbcller) * mgr/dashboard: Form fields do not show error messages/hints (`pr#29043 `_, Volker Theile) * mgr/dashboard: ganesha: Specify the name of the filesystem (create_path) (`pr#29182 `_, David Casier) * mgr/dashboard: hide daemon table when orchestrator is disabled (`pr#33941 `_, Kiefer Chang) * mgr/dashboard: hide in-use devices when creating OSDs (`pr#31927 `_, Kiefer Chang) * mgr/dashboard: improve device selection modal for creating OSDs (`pr#33081 `_, Kiefer Chang) * mgr/dashboard: Improve hints shown when message.xlf is invalid (`issue#40064 `_, `pr#28377 `_, Patrick Nawracay) * mgr/dashboard: Improve NFS Pseudo pattern message (`issue#39327 `_, `pr#27653 `_, Tiago Melo) * mgr/dashboard: Improve Notification sidebar (`pr#32895 `_, Tiago Melo) * mgr/dashboard: Improve RestClient error logging (`pr#29794 `_, Volker Theile) * mgr/dashboard: Increase column size on mgr module form (`pr#29107 `_, Ricardo Marques) * mgr/dashboard: install teuthology using pip (`pr#31815 `_, Kefu Chai) * mgr/dashboard: internationalization support with AOT enabled (`pr#30694 `_, Tiago Melo, Ricardo Dias) * mgr/dashboard: Invalid SSO configuration when certificate path does not exist (`pr#31920 `_, Ricardo Marques) * mgr/dashboard: iSCSI GET requests should not be logged (`pr#27813 `_, Ricardo Marques) * mgr/dashboard: iSCSI targets not available if any gateway is down (`pr#31819 `_, Ricardo Marques) * mgr/dashboard: Isolate each RBD component (`pr#33520 `_, Tiago Melo) * mgr/dashboard: KeyError on dashboard reload (`pr#31469 `_, Patrick Seidensal) * mgr/dashboard: KV-table transforms dates through pipe (`pr#27612 `_, Stephan M\xc3\xbcller) * mgr/dashboard: Left align badge datatable columns (`pr#32053 `_, Volker Theile) * mgr/dashboard: list services and daemons (`pr#33531 `_, Sage Weil, Kiefer Chang) * mgr/dashboard: Localization for date picker module (`pr#27275 `_, Stephan M\xc3\xbcller) * mgr/dashboard: Make all columns sortable (`pr#27784 `_, Stephan M\xc3\xbcller) * mgr/dashboard: make check mypy failure (`pr#33573 `_, Volker Theile) * mgr/dashboard: Make password policy check configurable (`pr#32546 `_, Volker Theile) * mgr/dashboard: Make preventDefault work with 400 errors (`pr#26561 `_, Stephan M\xc3\xbcller) * mgr/dashboard: monitoring: improve generic Could not reach external API message (`pr#32648 `_, Patrick Seidensal) * mgr/dashboard: Not able to restrict bucket creation for new user (`pr#33612 `_, Volker Theile) * mgr/dashboard: Optimize portal IPs calculation (`pr#28084 `_, Ricardo Marques) * mgr/dashboard: orchestrator integration initial works (`pr#29127 `_, Kiefer Chang) * mgr/dashboard: OSD custom action button removal (`pr#28095 `_, Stephan M\xc3\xbcller) * mgr/dashboard: OSD improvements (`pr#30493 `_, Patrick Seidensal) * mgr/dashboard: pass a list of drive_group to create_osds (`pr#33014 `_, Kefu Chai) * mgr/dashboard: Pool form uses different loading spinner (`pr#28649 `_, Volker Theile) * mgr/dashboard: Prevent deletion of iSCSI IQNs with open sessions (`pr#29133 `_, Ricardo Marques) * mgr/dashboard: Prevent KeyError when requesting always_on_modules (`pr#30426 `_, Volker Theile) * mgr/dashboard: Process password complexity checks immediately (`pr#32032 `_, Volker Theile, Tatjana Dehler) * mgr/dashboard: Provide the name of the object being deleted (`pr#30658 `_, Ricardo Marques) * mgr/dashboard: Provide user enable/disable capability (`issue#25229 `_, `pr#29046 `_, Ricardo Dias, Patrick Nawracay) * mgr/dashboard: Push Grafana dashboards on startup (`pr#26415 `_, Zack Cerza) * mgr/dashboard: qa: fix RBD test when matching error strings (`pr#29264 `_, Ricardo Dias) * mgr/dashboard: qa: whitelist client eviction warning (`pr#29114 `_, Ricardo Dias) * mgr/dashboard: RBD snapshot name suggestion with local time suffix (`pr#27613 `_, Stephan M\xc3\xbcller) * mgr/dashboard: Reduce the number of renders on the tables (`issue#39944 `_, `pr#28118 `_, Tiago Melo) * mgr/dashboard: Refactor and cleanup tasks.mgr.dashboard.test_user (`pr#33743 `_, Volker Theile) * mgr/dashboard: Refactor Python unittests and controller (`pr#31165 `_, Volker Theile) * mgr/dashboard: Reload all CephFS directories (`pr#32552 `_, Stephan M\xc3\xbcller) * mgr/dashboard: remove config-opt: read perm. from system roles (`pr#33690 `_, Alfonso Mart\xc3\xadnez) * mgr/dashboard: Remove ngx-store (`pr#33756 `_, Tiago Melo) * mgr/dashboard: remove traceback/version assertions (`pr#31720 `_, Ernesto Puerta) * mgr/dashboard: Remove unused RBD configuration endpoint (`pr#30815 `_, Ricardo Marques) * mgr/dashboard: Remove unused variable (`pr#31785 `_, Volker Theile) * mgr/dashboard: Removes distracting search behavior (`pr#27438 `_, Stephan M\xc3\xbcller) * mgr/dashboard: Rename pipe list -> join (`pr#31843 `_, Volker Theile) * mgr/dashboard: Replace IP address validation with Python standard library functions (`pr#26184 `_, Ashish Singh) * mgr/dashboard: Replace ng2-tree with angular-tree-component (`pr#33758 `_, Tiago Melo) * mgr/dashboard: RGW bucket creation when no placement target received (`pr#29280 `_, alfonsomthd) * mgr/dashboard: RGW port autodetection does not support Beast RGW frontend (`pr#33060 `_, Volker Theile) * mgr/dashboard: RGW User quota validation is not working correctly (`pr#29132 `_, Volker Theile) * mgr/dashboard: run e2e tests against prod build (jenkins job) (`pr#29198 `_, alfonsomthd) * mgr/dashboard: run-frontend-e2e-tests.sh: allow user defined BASE_URL\xe2\x80\xa6 (`pr#32211 `_, Alfonso Mart\xc3\xadnez) * mgr/dashboard: select placement target on RGW bucket creation (`pr#28764 `_, alfonsomthd) * mgr/dashboard: Set RO as the default access_type for RGW NFS exports (`pr#30111 `_, Tiago Melo) * mgr/dashboard: show checkboxes for booleans (`pr#32836 `_, Tatjana Dehler) * mgr/dashboard: show correct RGW user system info (`pr#33206 `_, Alfonso Mart\xc3\xadnez) * mgr/dashboard: Show iSCSI gateways status in the health page (`pr#29112 `_, Ricardo Marques) * mgr/dashboard: smart: smart data read out on down osd causes error popup (`pr#32953 `_, Volker Theile) * mgr/dashboard: Standby Dashboards dont handle all requests properly (`pr#30478 `_, Volker Theile) * mgr/dashboard: Support ceph-iscsi config v9 (`pr#27448 `_, Ricardo Marques) * mgr/dashboard: support multiple DriveGroups when creating OSDs (`pr#32678 `_, Kiefer Chang) * mgr/dashboard: support removing OSDs in OSDs page (`pr#31997 `_, Kiefer Chang) * mgr/dashboard: support setting password hashes (`pr#29138 `_, Fabian Bonk) * mgr/dashboard: tasks: only unblock controller thread after TaskManager thread (`pr#30747 `_, Ricardo Dias) * mgr/dashboard: Throw a more meaningful exception (`pr#32234 `_, Volker Theile) * mgr/dashboard: tox.ini fixes (`pr#30779 `_, Alfonso Mart\xc3\xadnez) * mgr/dashboard: UI fixes (`pr#33171 `_, Avan Thakkar) * mgr/dashboard: Unable to set boolean values to false when default is true (`pr#31738 `_, Ricardo Marques) * mgr/dashboard: unify button/URL actions naming (`issue#37337 `_, `pr#26572 `_, Ernesto Puerta) * mgr/dashboard: Unify the look of dashboard charts (`issue#39384 `_, `pr#27681 `_, Tiago Melo) * mgr/dashboard: update dashboard CODEOWNERShip (`pr#31193 `_, Ernesto Puerta) * mgr/dashboard: Update tar to v4.4.8 (`pr#28092 `_, Kefu Chai) * mgr/dashboard: update vstart to use new ssl port (`issue#26914 `_, `pr#27269 `_, Ernesto Puerta) * mgr/dashboard: Updated octopus image on 404 page (`pr#33920 `_, Lenz Grimmer) * mgr/dashboard: Use booleanText pipe (`pr#26733 `_, Volker Theile) * mgr/dashboard: Use default language when running npm run build (`pr#31563 `_, Tiago Melo) * mgr/dashboard: Use ModalComponent in all modals (`pr#33858 `_, Tiago Melo) * mgr/dashboard: Use Observable in auth.service (`pr#32084 `_, Volker Theile) * mgr/dashboard: Use onCancel on any modal event (`pr#29402 `_, Stephan M\xc3\xbcller) * mgr/dashboard: Validate iSCSI controls min/max value (`pr#28942 `_, Ricardo Marques) * mgr/dashboard: Validate iSCSI images features (`pr#27135 `_, Ricardo Marques) * mgr/dashboard: Validate `ceph-iscsi` config version (`pr#26835 `_, Ricardo Marques) * mgr/dashboard: Various UI issues related to CephFS (`pr#29272 `_, Volker Theile) * mgr/dashboard: Vertically align the Refresh label (`pr#29737 `_, Tiago Melo) * mgr/dashboard: vstart: Fix /dev/tty No such device or address (`pr#31195 `_, Volker Theile) * mgr/dashboard: wait for PG unknown state to be cleared (`pr#33013 `_, Tatjana Dehler) * mgr/dashboard: Watch for pool pgs increase and decrease (`pr#28006 `_, Ricardo Dias, Stephan M\xc3\xbcller) * mgr/modules: outsource SSL certificate creation (`pr#33550 `_, Patrick Seidensal) * mgr/orch,cephadm: add timestamps to daemons and services (`pr#33728 `_, Sage Weil) * mgr/orch: add --all-available-devices to orch apply osd (`pr#33990 `_, Sage Weil) * mgr/orch: add missing CLI commands for grafana, alertmanager (`pr#33695 `_, Sage Weil) * mgr/orch: associate addresses with hosts (`pr#33098 `_, Sage Weil) * mgr/orch: ceph orchestrator ... -> ceph orch ... (`pr#33131 `_, Sage Weil) * mgr/orch: ceph upgrade ... -> ceph orch upgrade ... (`pr#34046 `_, Sage Weil) * mgr/orch: collapse SPEC and PLACEMENT columns in orch ls (`pr#33795 `_, Sage Weil) * mgr/orch: dump service spec by name (`pr#33951 `_, Michael Fritch) * mgr/orch: first phase of new cli (`pr#33212 `_, Sage Weil) * mgr/orch: fix host ls (`pr#33486 `_, Sage Weil) * mgr/orch: fix orch ls table spacing (`pr#33586 `_, Sage Weil) * mgr/orch: fix ServiceSpec deserialization error (`pr#33779 `_, Kiefer Chang) * mgr/orch: improve commandline parsing for update\\_\\* (`pr#31672 `_, Joshua Schmid) * mgr/orch: include spec ref in ServiceDescription (`pr#33667 `_, Sage Weil) * mgr/orch: make arg hostname, not host (`pr#33474 `_, Sage Weil) * mgr/orch: new cli, phase 2 (`pr#33244 `_, Sage Weil) * mgr/orch: pass unicode string to ipaddress.ip_network() (`pr#31755 `_, Kefu Chai) * mgr/orch: PlacementSpec: add all_hosts property (`pr#33465 `_, Sage Weil) * mgr/orch: Properly handle NotImplementedError (`pr#33914 `_, Sebastian Wagner) * mgr/orch: remove ansible and deepsea (`pr#33126 `_, Sage Weil) * mgr/orch: resurrect ServiceDescription, orch ls (`pr#33359 `_, Sage Weil) * mgr/orch: take a single placement argument (`pr#33706 `_, Sage Weil) * mgr/orchestrator,mgr/ssh: add host labels (`pr#31854 `_, Sage Weil) * mgr/orchestrator: Add doc about how to use OrchestratorClientMixin (`pr#32893 `_, Sebastian Wagner) * mgr/orchestrator: Add mypy static type checking (`pr#32010 `_, Sebastian Wagner) * mgr/orchestrator: add optional format param for orchestrator host ls (`pr#31930 `_, Kefu Chai) * mgr/orchestrator: add progress events to all orchestrators (`pr#26654 `_, Sebastian Wagner) * mgr/orchestrator: Add simple scheduler (`pr#32003 `_, Joshua Schmid) * mgr/orchestrator: addr is optional for constructing InventoryNode (`pr#33347 `_, Kefu Chai) * mgr/orchestrator: device lights (`pr#26768 `_, Sebastian Wagner, Sage Weil) * mgr/orchestrator: do not try to iterate through None (`pr#31705 `_, Kefu Chai) * mgr/orchestrator: Document OSD replacement (`pr#29792 `_, Sebastian Wagner) * mgr/orchestrator: fix orch host label rm help text (`pr#33585 `_, Sage Weil) * mgr/orchestrator: Fix raise_if_exception for Python 3 (`pr#31015 `_, Sebastian Wagner) * mgr/orchestrator: fix refs property of progresses (`pr#30197 `_, Kiefer Chang) * mgr/orchestrator: fix `ceph orch apply -i` + yaml cleanup + Completion cleanup (`pr#34001 `_, Sebastian Wagner) * mgr/orchestrator: functools.partial doesnt work for methods (`pr#33432 `_, Sebastian Wagner) * mgr/orchestrator: get_hosts return `HostSpec` instead of `InventoryDevice` (`pr#33258 `_, Sebastian Wagner) * mgr/orchestrator: Make Completions composable (`pr#30262 `_, Sebastian Wagner, Tim Serong) * mgr/orchestrator: make hosts and label args consistent (`pr#32253 `_, Sage Weil) * mgr/orchestrator: Raise more expressive Error, if completion already \xe2\x80\xa6 (`pr#32270 `_, Sebastian Wagner) * mgr/orchestrator: raise_if_exception: Add exception type to message (`pr#32574 `_, Sebastian Wagner) * mgr/orchestrator: Remove `(add|test|remove)_stateful_service_rule` (`pr#26772 `_, Sebastian Wagner) * mgr/orchestrator: set node labels to empty list if none specified (`pr#31914 `_, Tim Serong) * mgr/orchestrator: Split \\*_stateless_service and add get_feature_set (`pr#29063 `_, Sebastian Wagner) * mgr/orchestrator: Substitute `hostname` for `nodename`, globally (`pr#33467 `_, Sebastian Wagner) * mgr/orchestrator: unify StatelessServiceSpec and StatefulServiceSpec (`pr#33175 `_, Sebastian Wagner) * mgr/orchestrator: use deepcopy for copying exceptions (`pr#32881 `_, Kefu Chai) * mgr/orchestrator: Use `pickle` to pass exceptions across sub-interpreters (`pr#33179 `_, Sebastian Wagner) * mgr/orchestrator_cli: clean up device ls table (`pr#32279 `_, Sage Weil) * mgr/orchestrator_cli: Fix NFS (`pr#32272 `_, Sebastian Wagner) * mgr/orchestrator_cli: improve service ls output, sorting (`pr#31539 `_, Sage Weil) * mgr/orchestrator_cli: set type for orchestrator option (`pr#32189 `_, Sage Weil) * mgr/orchestrator_cli: sort host list (`pr#33370 `_, Sage Weil) * mgr/orchestrator_cli: _update_mons require host spec only (`pr#32499 `_, Sebastian Wagner) * mgr/progress/module.py: s/events/_events/ (`pr#29625 `_, Kamoltat (Junior) Sirivadhna) * mgr/rook: Add caching for the Dashboard (`pr#29131 `_, Sebastian Wagner, Paul Cuzner) * mgr/rook: Added missing `rgw` daemons in `service ls` (`issue#39171 `_, `pr#27491 `_, Sebastian Wagner) * mgr/rook: Added Mypy static type checking (`pr#32127 `_, Sebastian Wagner) * mgr/rook: Fix creation of bluestore OSDs (`issue#39062 `_, `pr#27289 `_, Sebastian Wagner) * mgr/rook: Fix error creating OSDs (`pr#33176 `_, Juan Miguel Olmo Mart\xc3\xadnez) * mgr/rook: Fix Python 2 regression (`issue#39250 `_, `pr#27516 `_, Sebastian Wagner) * mgr/rook: Fix RGW creation (`issue#39158 `_, `pr#27462 `_, Sebastian Wagner) * mgr/rook: misc fixes for orch ps (`pr#33868 `_, Sage Weil) * mgr/rook: provide full path for devices names in inventory (`pr#32654 `_, Sage Weil) * mgr/rook: Remove support for Rook older than v0.9 (`issue#39278 `_, `pr#27556 `_, Sebastian Wagner) * mgr/rook: Support other system namespaces (`issue#38799 `_, `pr#27290 `_, Sebastian Wagner) * mgr/ssh/tests: fix RGWSpec test (`pr#31983 `_, Sage Weil) * mgr/ssh: add per-service operations: start, stop, restart, redeploy (`pr#31292 `_, Sage Weil) * mgr/ssh: add TemporaryDirectory impl for py2 compat (`pr#31835 `_, Sage Weil) * mgr/ssh: allow passing LV to orchestrator osd create (`pr#31512 `_, Sage Weil) * mgr/ssh: annotate object representation (`pr#31602 `_, Joshua Schmid) * mgr/ssh: cache service inventory (`pr#31385 `_, Sage Weil) * mgr/ssh: deploy and remove rgw daemons (`pr#31303 `_, Sage Weil) * mgr/ssh: deploy rbd-mirror daemons (`pr#31493 `_, Sage Weil) * mgr/ssh: fix redeploy (`pr#31613 `_, Sage Weil) * mgr/ssh: fix service_action, remove_osds (`pr#31952 `_, Sage Weil) * mgr/ssh: Fix various Python issues (`pr#31524 `_, Volker Theile) * mgr/ssh: Ignore ssh-config file (`pr#31710 `_, Volker Theile) * mgr/ssh: implement blink_device_light (`pr#31438 `_, Sage Weil) * mgr/ssh: implement service ls (`pr#31169 `_, Sage Weil) * mgr/ssh: improve service ls (`pr#31828 `_, Sage Weil) * mgr/ssh: Install SSH public key in Vagrantfile box fails (`pr#31519 `_, Volker Theile) * mgr/ssh: optionally specify service names (`pr#31537 `_, Sage Weil) * mgr/ssh: packaged-ceph-daemon mode; ssh key mgmt (`pr#31698 `_, Sage Weil) * mgr/ssh: Port raising exceptions from completion handlers to Py2 (`pr#31940 `_, Sebastian Wagner) * mgr/ssh: raise RuntimeError when ceph-daemon invocation fails (`pr#31420 `_, Sage Weil) * mgr/ssh: remove superfluous parameters (`pr#31462 `_, Joshua Schmid) * mgr/ssh: set up dummy known_hosts file (`pr#31721 `_, Sage Weil) * mgr/ssh: take IP, CIDR, or addrvec for new mon(s) (`pr#31505 `_, Sage Weil) * mgr/ssh: upgrade check command (`pr#31827 `_, Sage Weil) * mgr/ssh: `test_mon_update` needs to set a mon name (`pr#31933 `_, Sebastian Wagner) * mgr/telemetry: anonymizing smartctl report itself (`pr#33029 `_, Yaarit Hatuka) * mgr/telemetry: dict.pop() errs on nonexistent key (`pr#30854 `_, Dan Mick) * mgr/telemetry: fix log typo (`pr#31984 `_, Sage Weil) * mgr/test_orchestrator: Allow initializing dummy data (`pr#29595 `_, Kiefer Chang) * mgr/test_orchestrator: fix tests (`pr#33541 `_, Sage Weil) * mgr/test_orchestrator: Fix TestWriteCompletion object has no attribute id (`pr#27607 `_, Sebastian Wagner) * mgr/test_orchestrator: fix update_mgrs assert (`pr#32417 `_, Sage Weil) * mgr/volumes: add arg to fs volume create for mds daemons placement (`pr#33441 `_, Daniel-Pivonka) * mgr: Add get_rates_from_data to mgr_util.py (`pr#28603 `_, Stephan M\xc3\xbcller) * mgr: add rbd profiles to support rbd_support module commands (`pr#30912 `_, Jason Dillaman) * mgr: better error handling when reading option (`pr#32730 `_, Kefu Chai) * mgr: ceph fs status support json format (`pr#30985 `_, Erqi Chen) * mgr: change perf-counter precision to float (`pr#30400 `_, Ernesto Puerta) * mgr: check for unicode passed to set_health_checks() (`pr#29117 `_, Kefu Chai) * mgr: cleanup idle debug log at level 4 (`pr#29164 `_, Sebastian Wagner) * mgr: close restful socket after exec (`pr#32396 `_, liushi) * mgr: Configure Py root logger for Mgr modules (`pr#27069 `_, Volker Theile) * mgr: do not reset reported if a new metric is not collected (`pr#30285 `_, Ilsoo Byun) * mgr: drop session with Ceph daemon when not ready (`pr#31899 `_, Patrick Donnelly) * mgr: fix a few bugs with teh pgp_num adjustments (`pr#27875 `_, Sage Weil) * mgr: fix ceph native option value types (`pr#29855 `_, Sage Weil) * mgr: fix debug typo (`pr#31900 `_, Patrick Donnelly) * mgr: fix errors on using a reference in a Lambda function (`pr#31786 `_, Willem Jan Withagen) * mgr: fix reporting of per-module logging options to mon (`pr#33897 `_, Sage Weil) * mgr: fix weird health-alert daemon key (`pr#30617 `_, xie xingguo) * mgr: handle race with finisher after shutdown (`pr#31620 `_, Patrick Donnelly) * mgr: Improve internal python to c++ interface (`pr#32554 `_, David Zafman) * mgr: install tox deps from wheelhouse (`pr#30034 `_, Kefu Chai) * mgr: mgr, osd: osd df by pool (`pr#28629 `_, xie xingguo) * mgr: mgr/ActivePyModules: behave if a module queries a devid that does not exist (`pr#31291 `_, Sage Weil) * mgr: mgr/ActivePyModules: drop GIL while we wait for mon reply in set_store, set_config (`issue#39335 `_, `pr#27619 `_, Sage Weil) * mgr: mgr/ActivePyModules: handle_command - fix broken lock (`issue#39235 `_, `pr#27485 `_, xie xingguo) * mgr: mgr/balancer: avoid pulling pg_dump twice (`pr#32266 `_, xie xingguo) * mgr: mgr/balancer: eliminate usage of MS infrastructure for upmap mode (`pr#32289 `_, xie xingguo) * mgr: mgr/balancer: enable pg_upmap cli for future use (`pr#30560 `_, xie xingguo) * mgr: mgr/balancer: fix fudge (`pr#27994 `_, xie xingguo) * mgr: mgr/balancer: fix initial weight-set value for newly created osds (`pr#28251 `_, xie xingguo) * mgr: mgr/balancer: Python 3 compatibility fix (`issue#38831 `_, `pr#27076 `_, Marius Schiffer) * mgr: mgr/balancer: python3 compatibility issue (`pr#30987 `_, Mykola Golub) * mgr: mgr/balancer: upmap_max_iterations -> upmap_max_optimizations; behave as it is per pool (`pr#30591 `_, xie xingguo) * mgr: mgr/BaseMgrModule: tolerate Int or Long for health count (`pr#29806 `_, Sage Weil) * mgr: mgr/BaseMgrModule: use PyInt_Check() to compatible with py2 (`pr#29831 `_, Kefu Chai) * mgr: mgr/BaseMgrStandbyModule: drop GIL in ceph_get_module_option() (`pr#30625 `_, Kefu Chai) * mgr: mgr/cephadm: custom certificates for Grafana deployment (`pr#33614 `_, Patrick Seidensal) * mgr: mgr/cephadm: support (point release) upgrades (`pr#32006 `_, Sage Weil) * mgr: mgr/crash: Calculate and add stack_sig to metadata (`pr#31394 `_, Dan Mick) * mgr: mgr/crash: fix crash ls[-new] sorting (`pr#31973 `_, Sage Weil) * mgr: mgr/DaemonServer: handle caps more carefully (`pr#26903 `_, xie xingguo) * mgr: mgr/DaemonServer: handle_conf_change - fix broken locking (`issue#38899 `_, `pr#27184 `_, xie xingguo) * mgr: mgr/DaemonServer: refactor pgp_num changes throttling (`pr#27891 `_, Kefu Chai) * mgr: mgr/DaemonServer: safe-to-destroy - do not consider irrelevant pgs (`pr#27962 `_, xie xingguo) * mgr: mgr/DaemonServer: skip adjusting pgp_num when merging is in-progress (`pr#30139 `_, xie xingguo) * mgr: mgr/dashboard: Do not default to admin as Admin Resource (`issue#39338 `_, `pr#27626 `_, Wido den Hollander) * mgr: mgr/dashboard: Handle always-on Ceph Manager modules correctly (`pr#30142 `_, Volker Theile) * mgr: mgr/dashboard: integrate progress mgr module events into dashboard tasks list (`pr#29048 `_, Ricardo Dias) * mgr: mgr/dashboard: Manager should complain about wrong dashboard certificate (`pr#27036 `_, Volker Theile) * mgr: mgr/deepsea: return ganesha and iscsi endpoint URLs (`pr#27336 `_, Tim Serong) * mgr: mgr/deepsea: use ceph_volume output in get_inventory() (`pr#26966 `_, Tim Serong) * mgr: mgr/devicehealth: ensure we dont store empty objects (`pr#31474 `_, Sage Weil) * mgr: mgr/devicehealth: Fix python 3 incompatiblity (`issue#38939 `_, `pr#27172 `_, Marius Schiffer) * mgr: mgr/devicehealth: set default monitoring to on (`pr#33091 `_, Sage Weil, Yaarit Hatuka) * mgr: mgr/diskprediction: Add diskprediction local plugin dependencies (`pr#25530 `_, Rick Chen) * mgr: mgr/diskprediction_cloud: Correct base64 encode translate table (`issue#38848 `_, `pr#27113 `_, Rick Chen) * mgr: mgr/diskprediction_cloud: refactor timeout() decorator (`pr#31176 `_, Kefu Chai) * mgr: mgr/hello: some clean up and modernization (`pr#29514 `_, Sage Weil) * mgr: mgr/influx: try to call close() (`issue#40174 `_, `pr#28427 `_, Kefu Chai) * mgr: mgr/insights: fix prune-health-history (`pr#32973 `_, Sage Weil) * mgr: mgr/k8sevents: Add mgr module for kubernetes event integration (`pr#29520 `_, Paul Cuzner) * mgr: mgr/k8sevents: Add support for remote kubernetes (`pr#30482 `_, Paul Cuzner) * mgr: mgr/Mgr: kill redundant sub_unwant call (`pr#26950 `_, xie xingguo) * mgr: mgr/MgrMonitor: print pending.always_on_modules before updating it (`pr#29917 `_, Kefu Chai) * mgr: mgr/orch: logging - handle lists output (`pr#32879 `_, Shyukri Shyukriev) * mgr: mgr/orchestrator: Add cache for Inventory and Services (`pr#28213 `_, Tim Serong, Sebastian Wagner) * mgr: mgr/orchestrator_cli: pass default value to req=False params (`pr#31314 `_, Kefu Chai) * mgr: mgr/osd_support: new module for osd utility (`pr#32677 `_, Joshua Schmid) * mgr: mgr/pg_autoscaler: calculate pool_pg_target using pool size (`pr#32592 `_, Dan van der Ster) * mgr: mgr/pg_autoscaler: fix pool_logical_used (`pr#29986 `_, Ansgar Jazdzewski) * mgr: mgr/pg_autoscaler: Fix python3 incompatibility (`issue#38626 `_, `pr#27079 `_, Marius Schiffer) * mgr: mgr/pg_autoscaler: fix race with pool deletion (`pr#29807 `_, Sage Weil) * mgr: mgr/pg_autoscaler: treat target ratios as weights (`pr#33035 `_, Josh Durgin) * mgr: mgr/progress & mgr/pg_autoscaler: Added Pg Autoscaler Event (`pr#29035 `_, Kamoltat (Junior) Sirivadhna) * mgr: mgr/progress: Add integration to pybind/mgr/tox.ini (`pr#32985 `_, Sebastian Wagner) * mgr: mgr/progress: Add recovery event when OSD marked in (`pr#28498 `_, Kamoltat (Junior) Sirivadhna) * mgr: mgr/progress: added the time an event has been in progress (`pr#28907 `_, Kamoltat (Junior) Sirivadhna) * mgr: mgr/progress: Bug fix complete event when OSD marked in (`pr#28695 `_, Kamoltat (Junior) Sirivadhna) * mgr: mgr/progress: clamp pg recovery ratio to 0 (`pr#29126 `_, xie xingguo) * mgr: mgr/progress: estimated remaining time for events (`pr#30615 `_, xie xingguo) * mgr: mgr/progress: Look at PG state when PG epoch >= OSDMap epoch (`pr#28368 `_, Kamoltat (Junior) Sirivadhna) * mgr: mgr/progress: remove since from duration string (`pr#31007 `_, Kefu Chai) * mgr: mgr/prometheus: Add mgr metdata to prometheus exporter module (`pr#28372 `_, Paul Cuzner) * mgr: mgr/prometheus: assign a value to osd_dev_node when obj_store is not filestore or bluestore (`pr#30534 `_, jiahuizeng) * mgr: mgr/prometheus: Cast collect_timeout (scrape_interval) to float (`pr#29382 `_, Ben Meekhof) * mgr: mgr/prometheus: Fix KeyError in get_mgr_status (`pr#30421 `_, Sebastian Wagner) * mgr: mgr/prometheus: replace whitespaces in metrics names (`pr#27722 `_, Alfonso Mart\xc3\xadnez) * mgr: mgr/PyModule: correctly remove config options (`pr#31807 `_, Tim Serong) * mgr: mgr/PyModuleRegistry: log error if we cant find any modules to load (`pr#28055 `_, Tim Serong) * mgr: mgr/restful: allow shutdown before weve fully started up (`pr#32004 `_, Sage Weil) * mgr: mgr/restful: do not use filter() for list (`pr#27925 `_, Kefu Chai) * mgr: mgr/restful: jsonify lists instead of maps (`pr#32421 `_, Kefu Chai) * mgr: mgr/restful: requests api adds support multiple commands (`pr#31152 `_, Duncan Chiang) * mgr: mgr/status: fix ceph osd status ZeroDivisionError (`pr#28797 `_, simon gao) * mgr: mgr/telemetry: add last_upload to status (`pr#33125 `_, Yaarit Hatuka) * mgr: mgr/telemetry: change crash dict to a list (`pr#27631 `_, Dan Mick) * mgr: mgr/telemetry: channels (`pr#28847 `_, Sage Weil) * mgr: mgr/telemetry: check get_metadata return val (`pr#33051 `_, Yaarit Hatuka) * mgr: mgr/telemetry: clear the event after being awaken by it (`pr#29546 `_, Kefu Chai) * mgr: mgr/telemetry: exclude hostname field in crash reports (`pr#27693 `_, Sage Weil) * mgr: mgr/telemetry: fix and document proxy usage (`pr#33575 `_, Lars Marowsky-Bree) * mgr: mgr/telemetry: fix device serial number anonymization (`pr#32492 `_, Yaarit Hatuka) * mgr: mgr/telemetry: include any config options that are customized (`pr#29334 `_, Sage Weil) * mgr: mgr/telemetry: include device health telemetry (`pr#30724 `_, Sage Weil) * mgr: mgr/telemetry: re-opt-in when telemetry content changes; nag on major releases (`pr#29337 `_, Sage Weil) * mgr: mgr/telemetry: salt osd ids too (`pr#29358 `_, Sage Weil) * mgr: mgr/telemetry: specify license when opting in (`pr#29340 `_, Sage Weil) * mgr: mgr/volumes: do not import unused module (`pr#28875 `_, Kefu Chai) * mgr: mgr/zabbix Added pools discovery and per-pool statistics (`pr#26152 `_, Dmitriy Rabotjagov) * mgr: mgr/zabbix: Adds possibility to send data to multiple zabbix servers (`issue#38409 `_, `pr#26547 `_, slivik, Jakub Sliva) * mgr: mgr/zabbix: encode string for Python 3 compatibility (`pr#28624 `_, Nathan Cutler) * mgr: mgr/zabbix: Fix raw_bytes_used key name (`pr#28058 `_, Dmitriy Rabotjagov) * mgr: mgr/zabbix: Fix typo in key name for PGs in backfill_wait state (`issue#39666 `_, `pr#28057 `_, Wido den Hollander) * mgr: missing lock release in DaemonServer::handle_report() (`issue#42169 `_, `pr#30706 `_, Venky Shankar) * mgr: module logging infrastructure (`pr#30961 `_, Ricardo Dias) * mgr: more GIL fixes (`issue#39040 `_, `pr#27280 `_, xie xingguo) * mgr: pybind/mgr/balancer/module.py: add max/min info in stats_by_root (`pr#30432 `_, Yang Honggang) * mgr: pybind/mgr/pg_autoscaler: implement shutdown method (`pr#31398 `_, Patrick Donnelly) * mgr: pybind/mgr/restful: use dict.items() for py3 compatible (`pr#29356 `_, Kefu Chai) * mgr: pybind/mgr: Cancel output color control (`pr#31427 `_, Zheng Yin) * mgr: pybind/mgr: convert str to int using int() (`pr#27926 `_, Kefu Chai) * mgr: pybind/mgr: Make it easier to create a Module instance without the mgr (`pr#31969 `_, Sebastian Wagner) * mgr: pybind/mgr: Remove code duplication (`issue#40698 `_, `pr#28986 `_, Sebastian Wagner) * mgr: pyind/mgr: add mgr_module.py and mgr_util.py to mypy (`pr#32597 `_, Sebastian Wagner) * mgr: Python cleanup and type check (`pr#31559 `_, Volker Theile) * mgr: qa/mgr/progress: fix timeout error when waiting for osd in event (`pr#30095 `_, Ricardo Dias) * mgr: re-enable mds `scrub status` info in ceph status (`issue#42835 `_, `pr#32657 `_, Venky Shankar) * mgr: Reduce logging noise when handling commands (`pr#29305 `_, Sebastian Wagner) * mgr: Release GIL before calling OSDMap::calc_pg_upmaps() (`pr#31064 `_, David Zafman) * mgr: remove unused variable pool_name (`pr#28340 `_, Alex Wu) * mgr: restful: Expose perf counters (`pr#27885 `_, Boris Ranto) * mgr: restful: Query nodes_by_id for items (`pr#31153 `_, Boris Ranto) * mgr: return perf_counters data timestamps in nanosecs (`pr#28882 `_, Ricardo Dias) * mgr: Revert mgr/DaemonServer: safe-to-destroy - do not consider irrelevant pgs (`pr#32203 `_, xie xingguo) * mgr: set hostname in DeviceState::set_metadata() (`pr#30448 `_, Kefu Chai) * mgr: simply exit on SIGINT or SIGTERM (`pr#32051 `_, Sage Weil) * mgr: telemetry/server: misc fixes (`pr#29365 `_, user.email, Sage Weil) * mgr: telemetry: misc scripts (`pr#29781 `_, sage@newdream.net, Sage Weil) * mgr: templatize metrics collection interface (`pr#29214 `_, Venky Shankar) * mgr: update hostname when we already have the daemon state from the same entity (`pr#33752 `_, Kefu Chai) * mgr: use a struct for DaemonKey (`pr#30635 `_, Kefu Chai) * mgr: use ipv4 default when ipv6 was disabled (`pr#28246 `_, kungf) * mgr: use new MMgrCommand for CLI commands sent to mgr (`pr#30155 `_, Sage Weil) * mgr: zabbix triggers never triggered due to wrong trigger function (`pr#26146 `_, Sebastiaan Nijhuis) * mgr: _exit(0) from signal handler even if we are standby (`pr#31685 `_, Sage Weil) * mon,rbd,tests: mon,test: silence warnings from GCC and test (`pr#28250 `_, Kefu Chai) * mon,tests: qa/tasks: Fix ambiguous store_thrash, thrash_store (`issue#39159 `_, `pr#27542 `_, Jos Collin) * mon,tools: monmaptool: added --addv option to usage description (`pr#29307 `_, Ricardo Dias) * mon/MonClient: fix mon tell to older mons (`pr#31121 `_, Sage Weil) * mon/OSDMonitor.cc: Allow pool set target_max\\_(objects/bytes) with SI/IEC units (`pr#31010 `_, Prashant D) * mon/OSDMonitor: osd add-no{up,down,in,out} - remove state checker (`pr#27605 `_, xie xingguo) * mon/pgmap: fix bluestore alerts output (`pr#30342 `_, Igor Fedotov) * mon: add ability to mute health alerts (`pr#29422 `_, Sage Weil) * mon: add mon, osd, mds ok-to-stop and related commands (`pr#27146 `_, Sage Weil) * mon: add `ceph osd info` to obtain info on osds rather than parsing `osd dump` (`pr#26724 `_, Joao Eduardo Luis) * mon: allow running without a config file (`pr#30498 `_, Joao Eduardo Luis) * mon: always enable pg_autoscaler (`pr#29072 `_, Sage Weil) * mon: disable min pg per osd warning (`pr#30352 `_, Sage Weil) * mon: Dont put session during feature change (`pr#32365 `_, Brad Hubbard) * mon: dump json from sessions asok/tell command (`pr#32974 `_, Sage Weil) * mon: elector: return after triggering a new election (`pr#32981 `_, Greg Farnum) * mon: ensure prepare_failure() marks no_reply on op (`pr#28177 `_, Joao Eduardo Luis) * mon: fix INCOMPAT_OCTOPUS feature number (`pr#27622 `_, Sage Weil) * mon: fix misc asok commands (`pr#30859 `_, Sage Weil, Patrick Donnelly) * mon: fix off-by-one rendering progress bar (`pr#28268 `_, Sage Weil) * mon: fix tell command description (and ceph CLI help behavior) (`pr#33135 `_, Sage Weil) * mon: fix tell to hybrid octopus/pre-octopus mons (`pr#31138 `_, Sage Weil) * mon: fix/improve mon sync over small keys (`pr#31581 `_, Sage Weil) * mon: Get session_map_lock before remove_session (`pr#33682 `_, Xiaofei Cui) * mon: Improve health status for backfill_toofull and recovery_toofull (`pr#28204 `_, David Zafman) * mon: Improvements to slow heartbeat health messages (`pr#32342 `_, David Zafman) * mon: make ceph -s much more concise (`pr#29493 `_, Sage Weil) * mon: make compact tell command, and add deprecate/obsolete check for tell commands (`pr#31722 `_, Kefu Chai) * mon: make mon_osd_down_out_subtree_limit update at runtime (`pr#27517 `_, Sage Weil) * mon: mon/ConfigMonitor: make config reset idempotent (`pr#27155 `_, xie xingguo) * mon: mon/ConfigMonitor: make num of config reset optional; allow target version 0 (`pr#27090 `_, xie xingguo) * mon: mon/HealthMonitor: remove unused label (`pr#29749 `_, Kefu Chai) * mon: mon/MonClient: weight-based mon selection (`pr#26940 `_, xie xingguo) * mon: mon/Monitor: no need to create a local variable for capturing it (`pr#28744 `_, Kefu Chai) * mon: mon/MonMap: always set mon priority; add it to dump (`pr#26975 `_, xie xingguo) * mon: mon/OSDMonitor: crush node flags - two fixes; add tests (`pr#27719 `_, xie xingguo) * mon: mon/OSDMonitor: fix off-by-one when updating new_last_in_change (`pr#28568 `_, xie xingguo) * mon: mon/OSDMonitor: report pg[pgp]_num_target instead of pg[pgp]_num (`issue#40193 `_, `pr#28490 `_, xie xingguo) * mon: mon/OSDMonitor: trim not-longer-exist failure reporters (`pr#30200 `_, NancySu05) * mon: mon/OSDMonitor: use initializer_list<> for {si,iec}_options (`pr#31175 `_, Kefu Chai) * mon: mon/PGMap: fix incorrect pg_pool_sum when delete pool (`pr#31560 `_, luo rixin) * mon: optionally bind to public_addrv (instead of public_addr or public_network) (`pr#31501 `_, Sage Weil) * mon: paxos: empty pending_finishers before retrying any of committing\xe2\x80\xa6 (`issue#39484 `_, `pr#27877 `_, Greg Farnum) * mon: print FSMap regardless of file system count (`pr#32307 `_, Patrick Donnelly) * mon: quiet devname noise (`pr#27313 `_, Sage Weil) * mon: remove the restriction of address type in init_with_hosts (`pr#31691 `_, Hao Xiong) * mon: Revert mon/OSDMonitor: report pg[pgp]_num_target instead of pg[pgp]_\xe2\x80\xa6 (`pr#28567 `_, xie xingguo) * mon: set recovery_priority, pg_num_min, pg_autoscale_bias via fs new command (`pr#29180 `_, Sage Weil) * mon: should not take non-tell commands as tell ones (`pr#32517 `_, Kefu Chai) * mon: show no[deep-]scrub flags per pool in the status (`issue#38029 `_, `pr#26488 `_, Mohamad Gebai) * mon: show pool id in pool ls command (`issue#40287 `_, `pr#28488 `_, Chang Liu) * mon: Split Elector into message-passing and logic/state components (`pr#28727 `_, Greg Farnum) * mon: stash newer map on bootstrap when addr doesnt match (`pr#33418 `_, Sage Weil) * mon: take the mon lock in handle_conf_change (`issue#39625 `_, `pr#28018 `_, huangjun) * mon: use non-obsolete mon scrub cmd (`pr#32510 `_, Patrick Donnelly) * mon:C_AckMarkedDown has not handled the Callback Arguments (`pr#29624 `_, NancySu05) * monitoring: fix prometheus alert for full pools (`pr#32325 `_, Thomas Kriechbaumer) * monitoring: fix RGW grafana chart Average GET/PUT Latencies (`pr#33839 `_, Alfonso Mart\xc3\xadnez) * monitoring: restore lost fix for `pool full` alert (`pr#33655 `_, Patrick Seidensal) * monitoring: SNMP OID per every Prometheus alert rule (`pr#27978 `_, Volker Theile) * monitoring: wait before firing osd full alert (`pr#31711 `_, Patrick Seidensal) * msg/async, v2: make the reset_recv_state() unconditional (`issue#40115 `_, `pr#28453 `_, Sage Weil, Radoslaw Zarzynski) * msg/async/AsyncConnection: optimize check loopback connection (`pr#26923 `_, Jianpeng Ma) * msg/async/dpdk: destroy fd in do_request (`pr#32690 `_, Chunsong Feng, luo rixin) * msg/async/dpdk: Fix build when DPDK enabled (`pr#33203 `_, Jun Su) * msg/async/dpdk: fix compilation errors when WITH_DPDK=on (`pr#31840 `_, Chunsong Feng) * msg/async/dpdk: fix complie errors from fix FTBFS (`pr#30086 `_, yehu) * msg/async/dpdk: fix FTBFS (`pr#28763 `_, Kefu Chai) * msg/async/dpdk: Fix infinite loop when sending packets (`pr#32691 `_, Chunsong Feng, luo rixin) * msg/async/dpdk: fix SEGV caused by zero length packet (`pr#31876 `_, Chunsong Feng) * msg/async/dpdk: Fix the overflow while parsing dpdk coremask (`pr#32173 `_, Hu Ye, Chunsong Feng, luo rixin) * msg/async/DPDK: refactor set_rss_table to support DPDK 19.05 (`pr#32170 `_, Chunsong Feng, luo rixin) * msg/async/EventEpoll: set EPOLLET flag on del_event() (`pr#26926 `_, Roman Penyaev) * msg/async/ProtocolV1: avoid unnecessary bufferlist::swap (`pr#30125 `_, Jianpeng Ma) * msg/async/ProtocolV2: make v2 work on rdma (`pr#27022 `_, Jianpeng Ma) * msg/async/ProtocolV2: optimize check state by replace (`pr#26812 `_, Jianpeng Ma) * msg/async/rdma: add an option for choosing different RoCE protocol (`pr#31517 `_, Changcheng Liu) * msg/async/rdma: do not init mutex before lockdeps is ready (`pr#31532 `_, Kefu Chai) * msg/async/rdma: fix memory leak (`pr#27574 `_, Changcheng Liu) * msg/async/rdma: set/get silence warning (`pr#26581 `_, Kefu Chai) * msg/async/rdma: unblock event center if the peer is down when connecting (`pr#31109 `_, Peng Liu) * msg/async: add comments for commit 294c41f18adada6a (`pr#28667 `_, Jianpeng Ma) * msg/async: add timeout for connections which are not ready (`issue#38493 `_, `issue#37499 `_, `pr#27337 `_, xie xingguo) * msg/async: avoid creating unnecessary AsyncConnectionRef (`pr#27323 `_, Patrick Donnelly) * msg/async: Dont dec(msgr_active_connections) if conn still in accept\xe2\x80\xa6 (`pr#29836 `_, Jianpeng Ma) * msg/async: Don\t miss record l_msgr_running_recv_time if pendingRead\xe2\x80\xa6 (`pr#27734 `_, Jianpeng Ma) * msg/async: drop zero_copy_read() & co from ConnectedSocket (`pr#28921 `_, Radoslaw Zarzynski) * msg/async: fix typo in Errormessage (`pr#31825 `_, Willem Jan Withagen) * msg/async: mark down local_connection before draining the stack (`pr#32732 `_, Radoslaw Zarzynski) * msg/async: move submit_message() into send_to() (`pr#30883 `_, Jianpeng Ma) * msg/async: narrow scope of AsyncMessenger::lock in fun connect_to (`pr#30840 `_, Jianpeng Ma) * msg/async: No need lock for func _filter_addrs (`pr#31995 `_, Jianpeng Ma) * msg/async: no-need set connection for Message (`pr#27766 `_, Jianpeng Ma) * msg/async: open() should be called with connection locked (`pr#33015 `_, Roman Penyaev) * msg/async: perform recv reset immediately if called inside EC (`pr#33742 `_, Radoslaw Zarzynski) * msg/async: remove unsued code (`pr#30833 `_, Jianpeng Ma) * msg/async: rename outcoming_bl -> outgoing_bl in AsyncConnection (`pr#30709 `_, Radoslaw Zarzynski) * msg/async: reset the V1s session_security in proper EventCenter (`pr#32352 `_, Radoslaw Zarzynski) * msg/async: resolve gcc warning (`pr#27414 `_, Patrick Donnelly) * msg/async: skip repeat calc crc header in Message::encode (`pr#26534 `_, Jianpeng Ma) * msg/async: update refcount and perf counter properly (`pr#31929 `_, Jianpeng Ma) * msg/async: use faster clear method to delete containers (`pr#27324 `_, Patrick Donnelly) * msg/Message: Remove used code about XioMessenger (`pr#28719 `_, Jianpeng Ma) * msg: add func is_blackhole to reduce duplicated code (`pr#30356 `_, Jianpeng Ma) * msg: add some anonymous connection infrastructure (`pr#30223 `_, Sage Weil) * msg: default to debug_ms=0 (`pr#26936 `_, Sage Weil) * msg: fix addr2 encoding for sockaddrs (`issue#40114 `_, `pr#28379 `_, Jeff Layton) * msg: fix comments in Messenger.h after the set -> std::set switch (`pr#30693 `_, Radoslaw Zarzynski) * msg: output peer address when detecting bad CRCs (`issue#39367 `_, `pr#27658 `_, Greg Farnum) * msg: remove unused header file in Messenger.h (`pr#27086 `_, Jianpeng Ma) * msg: remove xiomessenger (`pr#27021 `_, Sage Weil) * msg: set_require_authorizer on messenger, not dispatcher (`pr#27832 `_, Sage Weil) * orchestrator: usability fixes (`pr#33118 `_, Yehuda Sadeh) * os/bluestore,comon,erasure-code: chmod -x source files (`pr#31179 `_, Sage Weil) * os/bluestore: default bluestore_block_size 1T -> 100G (`pr#32043 `_, Sage Weil) * os/kstore: do not cache in-fight stripes on read ops to avoid leaks (`issue#39665 `_, `pr#32538 `_, Chang Liu) * os/memstore, crimson/os: introduce memstore_debug_omit_block_device_write (`pr#28601 `_, Radoslaw Zarzynski) * osd: a few fixes for the removed_snaps changes (`pr#28865 `_, Sage Weil) * osd: accident of rollforward may need to mark pglog dirty (`issue#40403 `_, `pr#28621 `_, Zengran Zhang) * osd: add a copy-from2 operation that includes truncate\\_{seq,size} parameters (`pr#31728 `_, Luis Henriques) * osd: add ceph osd stop command (`pr#27595 `_, xie xingguo) * osd: add cls_cxx_map_remove_range() (`issue#19975 `_, `pr#15183 `_, Casey Bodley) * osd: add common smartctl output to JSON output (`pr#30408 `_, Patrick Seidensal) * osd: add device_id to list_devices to help get smart info easily (`pr#29548 `_, Song Shun) * osd: add duration field to dump_historic_ops method (`pr#28801 `_, Deepika Upadhyay) * osd: add flag to prevent truncate_seq copy in copy-from operation (`pr#25374 `_, Luis Henriques) * osd: add hdd and ssd variants for osd_recovery_max_active (`pr#28677 `_, Sage Weil) * osd: add log information to record the cause of do_osd_ops failure (`issue#41210 `_, `pr#29787 `_, NancySu05) * osd: add osd_fast_shutdown option (default true) (`pr#31677 `_, Sage Weil) * osd: Again remove deprecated full/nearfull from osdmap (`pr#32506 `_, David Zafman) * osd: Allow 64-char hostname to be added as the host in CRUSH (`pr#32947 `_, Michal Skalski) * osd: allow EC PGs to do recovery below min_size (`issue#18749 `_, `pr#17619 `_, Chang Liu, Greg Farnum) * osd: allow rados write ops to return data and error codes (`pr#30581 `_, Sage Weil) * osd: always initialize local variable (`pr#29757 `_, Kefu Chai) * osd: assert that write ops have result==0 and no payload (`pr#30191 `_, Sage Weil) * osd: automatically repair replicated replica on pulling error (`issue#39101 `_, `pr#26806 `_, xie xingguo, David Zafman) * osd: avoid prep_object_replica_pushes() on clone object when head missing (`issue#39286 `_, `pr#27575 `_, Zengran Zhang) * osd: Better error message when OSD count is less than osd_pool_default_size (`issue#38617 `_, `pr#27806 `_, Sage Weil, zjh) * osd: Change osd op queue cut off default to high (`pr#30441 `_, Anthony DAtri) * osd: clean up osdmap sharing (`pr#27932 `_, Sage Weil) * osd: clear osd op reply output only when writes success (`issue#38492 `_, `pr#26652 `_, huangjun) * osd: clear PG_STATE_CLEAN when repair object (`pr#29756 `_, Zengran Zhang) * osd: copy (dont move) pg list when sending beacon (`issue#40377 `_, `pr#28566 `_, Sage Weil) * osd: copy ObjectOperation::BufferUpdate::Write::fadvise_flag to ceph::os::Transaction (`pr#29944 `_, Xuehan Xu) * osd: copyfrom omitted to set mtime (`pr#28581 `_, Zengran Zhang) * osd: correct a local variable type (`pr#26672 `_, Kefu Chai) * osd: Diagnostic logging for upmap cleaning (`pr#32663 `_, David Zafman) * osd: dispatch peering messages as messages, inside the PG lock (`pr#29820 `_, Sage Weil) * osd: dispatch_context and queue split finish on early bail-out (`pr#32942 `_, Sage Weil) * osd: do not hold osd_lock while requeuing snaps to purge (`pr#28941 `_, Sage Weil) * osd: do not invalidate clear_regions of missing item at boot (`pr#29755 `_, xie xingguo) * osd: dont carry PGLSFilter between multiple ops in MOSDOp (`pr#29575 `_, Radoslaw Zarzynski) * osd: Dont evict after a flush if intersecting scrub range (`issue#38840 `_, `pr#27209 `_, David Zafman) * osd: Dont include user changeable flag in snaptrim related assert (`issue#38124 `_, `pr#27830 `_, David Zafman) * osd: Dont randomize deep scrubs when noscrub set (`issue#40198 `_, `pr#28443 `_, David Zafman) * osd: drop unnecessary includes of messages/MOSDPGTrim.h (`pr#33660 `_, Radoslaw Zarzynski) * osd: Fix assert in the case that snapset is missing (`pr#29941 `_, David Zafman) * osd: fix possible crash on sending dynamic perf stats report (`pr#30454 `_, Mykola Golub) * osd: fix racy accesses to OSD::osdmap (`pr#33336 `_, Radoslaw Zarzynski) * osd: fix the missing default value m=2 of reed_sol_r6_op in profile (`pr#29892 `_, Yan Jun) * osd: Fix the way that auto repair triggers after regular scru (`issue#40073 `_, `issue#40530 `_, `pr#28334 `_, David Zafman) * osd: fix wrong arguments when dropping refcount (`pr#29348 `_, Myoungwon Oh) * osd: Give recovery for inactive PGs a higher priority (`issue#38195 `_, `pr#27503 `_, David Zafman) * osd: give recovery ops initialized by client op a higher priority (`pr#28418 `_, xie xingguo) * osd: implement per-pg leases to avoid stale reads (`pr#29236 `_, Sage Weil) * osd: Improve dump_pgstate_history json output (`issue#38846 `_, `pr#27665 `_, Brad Hubbard) * osd: Include dups in copy_after() and copy_up_to() (`issue#39304 `_, `pr#27914 `_, David Zafman) * osd: Increase log level of messages which unnecessarily fill up logs (`pr#27686 `_, David Zafman) * osd: make osd recover more smoothly by avoiding failure peer info to resent (`pr#30404 `_, \xe5\xae\x8b\xe9\xa1\xba10180185) * osd: make PastIntervals a member of pg_notify_t (`pr#29517 `_, Sage Weil) * osd: merge replica log on primary need according to replica logs crt (`pr#29590 `_, Zengran Zhang) * osd: misc cleanups (`pr#30022 `_, Yan Jun) * osd: misc inc-recovery compat fixes (`pr#29754 `_, xie xingguo) * osd: optimize send_message to peers (`pr#30968 `_, Jianpeng Ma) * osd: OSDMapRef access by multiple threads is unsafe (`pr#26874 `_, Kefu Chai, Zengran Zhang) * osd: Output Base64 encoding of CRC header if binary data present (`pr#27961 `_, David Zafman) * osd: partial recovery strategy based on PGLog (`pr#21722 `_, lishuhao, Ning Yao) * osd: peering updates peer_last_complete_ondisk via setter (`pr#33659 `_, Radoslaw Zarzynski) * osd: pg as a mutex (`pr#29477 `_, Kefu Chai) * osd: prime splits/merges for any potential fabricated split/merge participant (`issue#38483 `_, `pr#30018 `_, xie xingguo) * osd: process_copy_chunk remove obc ref before pg unlock (`issue#38842 `_, `pr#27084 `_, Zengran Zhang) * osd: propagate mlcod to replicas and fix problems with read from replica (`pr#32381 `_, Samuel Just, Sage Weil) * osd: release backoffs during merge (`pr#31657 `_, Sage Weil) * osd: remove orphan include after PGLSParentFilter (`pr#29709 `_, Radoslaw Zarzynski) * osd: remove unused function (`pr#30644 `_, Jianpeng Ma) * osd: remove unused functions (`pr#32515 `_, Jianpeng Ma) * osd: Remove unused osdmap flags full, nearfull from output (`pr#30530 `_, David Zafman) * osd: remove useless ceph_assert (`pr#31915 `_, Jianpeng Ma) * osd: revamp {noup,nodown,noin,noout} related commands (`pr#27735 `_, xie xingguo) * osd: rollforward may need to mark pglog dirty (`issue#36739 `_, `pr#27015 `_, Zengran Zhang) * osd: scrub error on big objects; make bluestore refuse to start on big objects (`pr#29579 `_, David Zafman, Sage Weil) * osd: send smart asok result to stdout, not stderr (`pr#31412 `_, Sage Weil) * osd: set affinity for \\*all\\* threads (`pr#30712 `_, Sage Weil) * osd: set collection pool opts on collection create, pg load (`pr#29093 `_, Sage Weil) * osd: share curmap in handle_osd_ping (`pr#28662 `_, Sage Weil) * osd: shutdown recovery_request_timer earlier (`pr#27206 `_, Zengran Zhang) * osd: some prelim changes (`pr#29052 `_, Sage Weil) * osd: support osd_repair_during_recovery (`issue#40620 `_, `pr#28839 `_, Jeegn Chen) * osd: support osd_scrub_extended_sleep (`issue#40955 `_, `pr#29342 `_, Jeegn Chen) * osd: take heartbeat_lock when calling heartbeat() (`issue#39439 `_, `pr#27729 `_, Sage Weil) * osd: tiny clean-ups around the backfill (`pr#33583 `_, Radoslaw Zarzynski) * osd: track monotonic clock deltas between osds who ping each other (`pr#29116 `_, Sage Weil, Samuel Just) * osd: transpose two wait lists in comment (`pr#27017 `_, Kefu Chai) * osd: trim pg logs based on a per-osd budget (`pr#32683 `_, Sage Weil, Kefu Chai) * osd: Turn off repair pg state when leaving recovery (`pr#30852 `_, David Zafman) * osd: unify sources of no{up,down,in,out} flags into singleton helpers (`pr#28403 `_, xie xingguo) * osd: update comment as sub_op_scrub_map has been removed (`pr#28338 `_, Jing Wenjun) * osd: Use physical ratio for nearfull (doesnt include backfill resserve) (`pr#31954 `_, David Zafman) * osd: use steady clock in prepare_to_stop() (`pr#26457 `_, Mohamad Gebai) * osd: use unique_ptr for managing life cycles (`pr#32007 `_, Kefu Chai) * osdc/Striper: specialize std::min<> (`pr#28732 `_, Kefu Chai) * osd_types: add ec profile to plain text osd pool ls detail output (`issue#40009 `_, `pr#28224 `_, Jan Fajerski) * pybind,rbd: Add RBD_FEATURE_MIGRATING to rbd.pyx (`issue#39609 `_, `pr#28009 `_, Ricardo Marques) * pybind,rbd: pybind/rbd: add config_set/get/remove api in rbd.pyx (`pr#29459 `_, Zheng Yin) * pybind,rbd: pybind/rbd: add pool config_set/get/remove api in rbd.pyx (`pr#30865 `_, Zheng Yin) * pybind,rbd: pybind/rbd: parent_info should return pool namespace (`pr#30793 `_, Ricardo Marques) * pybind,rbd: rbd/pybind: fix unsupported format character of %lx (`pr#30314 `_, songweibin) * pybind,tests: pybind/rados: do not slice zip() (`pr#31044 `_, Kefu Chai) * pybind,tests: test/pybind/test_rados.py: test test_operate_aio_write_op() (`pr#31158 `_, Zhang Jiao) * pybind/mgr: Add test_orchestrator to mypy (`pr#32500 `_, Sebastian Wagner) * pybind/mgr: add_tox_test: Add mypy to TOX_ENVS (`pr#32236 `_, Sebastian Wagner) * pybind/mgr: bump six to 1.14 (`pr#33185 `_, Kefu Chai) * pybind/tox: pass additional command line arguments through to tox (`pr#27947 `_, Nathan Cutler) * pybind: .gitignore: Add .mypy_cache to .gitignore (`pr#33510 `_, Kristoffer Gr\xc3\xb6nlund) * pybind: add verbose error message (`pr#28054 `_, Daniel Badea, Changcheng Liu, Ovidiu Poncea) * pybind: add WriteOp::set_xattr() & rm_xattr() (`pr#31829 `_, Zhang Jiao) * pybind: add writesame API (`pr#31489 `_, Zhang Jiao) * pybind: check CEPH_LIBDIR not MAKEFLAGS (`pr#29080 `_, Kefu Chai) * pybind: customize compiler before checking cflags (`pr#33177 `_, Kefu Chai) * pybind: fix use of WriteOpCtx and ReadOpCtx (`issue#38946 `_, `pr#27213 `_, Ramana Raja) * pybind: pybind/rados/rados.pyx: improve Rados.create_pool() (`pr#31241 `_, Zhang Jiao) * pybind: pybind/rados: add application_metadata_get (`pr#30504 `_, songweibin) * pybind: pybind/rados: add Ioctx.get_pool_id() and Ioctx.get_pool_name() (`pr#29646 `_, Zheng Yin) * pybind: pybind/rados: add WriteOp::execute() (`pr#31546 `_, Zhang Jiao) * pybind: pybind/rados: should pass name to cstr() (`pr#27111 `_, Kefu Chai) * pybind: refactor monkey_with_compiler() (`pr#33061 `_, Kefu Chai) * pybind: set language_level for cythonize explicitly (`pr#26607 `_, Kefu Chai) * python-common, mgr/orchestrator, mgr/dashboard: Use common Devices (`pr#30662 `_, Kiefer Chang, Sebastian Wagner) * python-common: add unmanaged property to PlacementSpec (`pr#33955 `_, Sage Weil) * python-common: all:true -> \\* (`pr#33970 `_, Sage Weil) * python-common: move pytest integration from setup.py to tox.ini (`pr#31943 `_, Sebastian Wagner) * python-common: remove `all_hosts` from `PlacementSpec` (`pr#33948 `_, Sebastian Wagner) * qa/distros: rhel and centos: whitelist cephadm logrotate selinux denial (`pr#33110 `_, Sage Weil) * qa/standalone/test_ceph_daemon.sh: disable adoption for the moment (`pr#32178 `_, Sage Weil) * qa/standalone/test_ceph_daemon.sh: fix overwrites of temp files (`pr#31748 `_, Sage Weil) * qa/standalone/test_ceph_daemon: fix multi-version python test (`pr#31342 `_, Sage Weil) * qa/suites/cephadm: move orchestrator_cli test into rados/cephadm (`pr#33648 `_, Sage Weil) * qa/suites/rados/ceph: drop opensuse for now (`pr#33801 `_, Sage Weil) * qa/suites/rados/cephadm/smoke: disable rgw role for now (`pr#33360 `_, Sage Weil) * qa/suites/rados/cephadm/upgrade: change start version (`pr#33475 `_, Sage Weil) * qa/suites/rados/cephadm/upgrade: fix initial version (`pr#33396 `_, Sage Weil) * qa/suites/rados/cephadm: explicitly test many distros (`pr#32969 `_, Sage Weil) * qa/suites/rados/cephadm: fix conflicts, missing .qa link (`pr#33132 `_, Sage Weil) * qa/suites/rados/cephadm[-smoke]: test podman on ubuntu 18.04 (`pr#33111 `_, Sage Weil) * qa/tasks/cephadm: ceph.git branches are now pushed to quay.io (`pr#32375 `_, Sage Weil) * qa/tasks/cephadm: deploy rgw daemons too (`pr#33289 `_, Sage Weil) * qa/tasks/cephadm: learn to pull cephadm from githu (`pr#32787 `_, Sage Weil) * qa/tasks/cephadm: misc fixes (`pr#32713 `_, Sage Weil) * qa/tasks/ceph_manager.py: always use self.logger (`pr#29239 `_, Kefu Chai) * qa/tasks/ceph_manager: 5s -> 15s for osd out to be visible (`pr#29013 `_, Sage Weil) * qa/tasks/ceph_manager: fix movement of cot exports with cephadm (`pr#32986 `_, Sage Weil) * qa/tasks/ceph_manager: fix shell osd for ceph-objectstore-tool commands (`pr#32725 `_, Sage Weil) * qa/tasks/ceph_manager: make fix_pgp_num behave when no pool is found (`pr#32987 `_, Sage Weil) * qa/tasks/mgr/dashboard/test_health: update schema (`pr#30507 `_, Kefu Chai) * qa/tasks/mgr/dashboard/test_orchestrator: support addr attribute in inventory (`pr#33211 `_, Kiefer Chang) * qa/tasks/mgr/test_orchestrator_cli: fix device ls test (`pr#32384 `_, Sage Weil) * qa/tasks/mgr/test_orchestrator_cli: fix rgw add test (`pr#32101 `_, Sage Weil) * qa/tasks/mgr/test_orchestrator_cli: support multiple DriveGroups (`pr#33055 `_, Kiefer Chang) * qa/test: reduce over all number of runs (`pr#27979 `_, Yuri Weinstein) * qa/tests - cleaned up distro settings (`pr#27956 `_, Yuri Weinstein) * qa/tests - upped priority for upgrades on master, otherwise they neve\xe2\x80\xa6 (`pr#29666 `_, Yuri Weinstein) * qa/tests: added nautilus-x-singleton suite to rados as symlink (`pr#27291 `_, Sage Weil) * qa/tests: added rados on master, reduced fs, rbd, multimds (`pr#27535 `_, Yuri Weinstein) * qa/tests: added the subset clause for nautilus branch (`pr#27129 `_, Yuri Weinstein) * qa/tests: changed the TO email to ceph-qa@ceph.io (`pr#28721 `_, Yuri Weinstein) * qa/tests: moved some runs from ovh, removed ceph-disk/nautilus (`pr#27616 `_, Yuri Weinstein) * qa/tests: reduced runs for nautilus, added runs for octopus (`pr#33214 `_, Yuri Weinstein) * qa/tests: removed all runs on ovh (`pr#27960 `_, Yuri Weinstein) * qa/tests: removed filters for client-upgrade-\\* suites (`pr#28271 `_, Yuri Weinstein) * qa/tests: run luminous-x and mimic-x 2 times a week but with high priority (`pr#27527 `_, Yuri Weinstein) * qa/tests: trying to fix syntax error that prevented mimic-x to be add\xe2\x80\xa6 (`pr#31799 `_, Yuri Weinstein) * qa/valgrind.supp: abstract from ceph::buffers symbol versioning (`pr#33757 `_, Radoslaw Zarzynski) * qa/workunits/cephadm/test_adoption: run as root (`pr#33485 `_, Sage Weil) * qa/workunits/cephadm/test_cephadm.sh: consolidate wait loop logic (`pr#33544 `_, Michael Fritch) * qa/workunits/cephadm/test_cephadm.sh: dump logs on exit (`pr#33634 `_, Michael Fritch) * qa/workunits/cephadm/test_cephadm.sh: need --fsid always (`pr#32220 `_, Sage Weil) * qa/workunits/cephadm/test_cephadm.sh: re-enable `adopt` tests (`pr#32244 `_, Michael Fritch) * qa/workunits/cephadm/test_cephadm.sh: skip docker when service is disabled (`pr#33018 `_, Michael Fritch) * qa/workunits/cephadm/test_cephadm.sh: use avialable pythons; test on ubuntu and centos (`pr#32333 `_, Sage Weil) * qa/workunits/cephadm/test_cephadm: --skip-monitoring-stack (`pr#34013 `_, Sage Weil) * qa/workunits/cephadm/test_cephadm: fix typo (`pr#33181 `_, Sage Weil) * qa/workunits/cephadm/test_cephadm: workunit test cleanup (`pr#32625 `_, Michael Fritch) * qa/workunits/cephadm/test_repos: dont try to use the refspec (`pr#33134 `_, Sage Weil) * qa/workunits/cephadm: separate out test_adoption.sh; fix (`pr#33457 `_, Sage Weil) * qa: fixes (`pr#29361 `_, Kefu Chai) * qa: misc fixes for rados and py3 (`pr#32362 `_, Sage Weil) * qa: pin rgw/verify to 8.0 (`pr#32761 `_, Ali Maredia) * qa: Run flake8 on python2 and python3 (`pr#32222 `_, Thomas Bechtold) * qa: vstart_runner fails because of string index out of range (`pr#28990 `_, Volker Theile) * rbd,tests: cls/rbd: add snapshot limit UINT64_MAX test case (`pr#31350 `_, Chen Pan) * rbd,tests: cls/rbd: add snapshot_add raise -ESTALE test case (`pr#31149 `_, wonderpow) * rbd,tests: journal: always shutdown JournalRecoreder before destructing it (`pr#29501 `_, Kefu Chai) * rbd,tests: journal: fix flush by age and in-flight byte tracking (`pr#31392 `_, Jason Dillaman) * rbd,tests: mgr/dashboard: s/fsid/mirror_uuid/ (`pr#33348 `_, Kefu Chai) * rbd,tests: qa/rbd: add cram-based snap diff test (`issue#39447 `_, `pr#28346 `_, Shyukri Shyukriev, Nathan Cutler) * rbd,tests: qa/suites/krbd: run unmap subsuite with msgr1 only (`pr#31265 `_, Ilya Dryomov) * rbd,tests: qa/suites/rbd: add random distro selection to librbd tests (`pr#27577 `_, Jason Dillaman) * rbd,tests: qa/suites/rbd: added writearound cache test permutations (`issue#39386 `_, `pr#27694 `_, Jason Dillaman) * rbd,tests: qa/suites/rbd: fix errant tab in yaml which is causing parsing failures (`pr#30942 `_, Jason Dillaman) * rbd,tests: qa/suites/rbd: fixed download path for Ubuntu Bionic (`pr#32408 `_, Jason Dillaman) * rbd,tests: qa/suites/rbd: removed OpenStack tempest test cases (`pr#33900 `_, Jason Dillaman) * rbd,tests: qa/tests: added rbd task on ec (`pr#29541 `_, Yuri Weinstein) * rbd,tests: qa/workunit/rbd: fixed QoS throughput unit parsing (`pr#32280 `_, Jason Dillaman) * rbd,tests: qa/workunits/rbd: fix compare_images and compare_image_snapshots (`pr#28524 `_, Mykola Golub) * rbd,tests: qa/workunits/rbd: fixed python interpreter for EL8 (`pr#32409 `_, Jason Dillaman) * rbd,tests: qa/workunits/rbd: fixups for the new krbd discard behavior (`pr#27192 `_, Ilya Dryomov) * rbd,tests: qa/workunits/rbd: override CEPH_ARGS when initializing the site name (`pr#33187 `_, Jason Dillaman) * rbd,tests: qa/workunits/rbd: remove fast-diff from dynamic features test (`issue#39946 `_, `pr#28135 `_, Jason Dillaman) * rbd,tests: qa/workunits/rbd: stress test `rbd mirror pool status --verbose` (`pr#29655 `_, Mykola Golub) * rbd,tests: qa/workunits/rbd: use context managers to control Rados lifespan (`pr#34035 `_, Jason Dillaman) * rbd,tests: qa/workunits/rbd: use https protocol for devstack git operations (`issue#39656 `_, `pr#28063 `_, Jason Dillaman) * rbd,tests: qa/workunits/rbd: use more recent qemu-iotests that support Bionic (`issue#24668 `_, `pr#27683 `_, Jason Dillaman) * rbd,tests: qa/workunits/rbd: wait for nbd map to close after unmap (`pr#33898 `_, Jason Dillaman) * rbd,tests: qa/workunits/rbd: wait for rbd-nbd unmap to complete (`issue#39598 `_, `pr#27981 `_, Jason Dillaman) * rbd,tests: qa: add device mapper and lvm test cases for stable pages (`pr#27271 `_, Ilya Dryomov) * rbd,tests: qa: add krbd_discard_granularity.t test (`pr#27042 `_, Ilya Dryomov) * rbd,tests: qa: add RBD QOS functional test (`pr#27137 `_, Mykola Golub) * rbd,tests: qa: add script to test how libceph handles huge osdmaps (`pr#30363 `_, Ilya Dryomov) * rbd,tests: qa: avoid hexdump skip and length options (`pr#30502 `_, Ilya Dryomov) * rbd,tests: qa: avoid page cache for krbd discard round off tests (`pr#30452 `_, Ilya Dryomov) * rbd,tests: qa: krbd_parent_overlap.t: fix read test (`pr#29966 `_, Ilya Dryomov) * rbd,tests: test/cli-integration/rbd: fixed missing image and snap ids (`pr#29853 `_, Jason Dillaman) * rbd,tests: test/cli-integration: fixed spacing issue for RBD formatted tables (`pr#33902 `_, Jason Dillaman) * rbd,tests: test/cls_rbd/test_cls_rbd: update TestClsRbd.sparsify (`pr#30258 `_, Kefu Chai) * rbd,tests: test/cls_rbd: include compat.h for ERESTART (`pr#32172 `_, Willem Jan Withagen) * rbd,tests: test/journal: always close object (`pr#29476 `_, Kefu Chai) * rbd,tests: test/librados_test_stub: ensure the log flusher thread is started (`pr#27326 `_, Jason Dillaman) * rbd,tests: test/librbd: allow parallel runs of run-rbd-unit-tests (`pr#30072 `_, Willem Jan Withagen) * rbd,tests: test/librbd: drop ceph_test_librbd_api target (`issue#39072 `_, `pr#27695 `_, Jason Dillaman) * rbd,tests: test/librbd: fix mock warnings in TestMockIoImageRequest (`pr#31497 `_, Mykola Golub) * rbd,tests: test/librbd: set nbd timeout due to newer kernels defaulting it on (`pr#29858 `_, Jason Dillaman) * rbd,tests: test/pybind/rbd.pyx: add test_remove_snap_by_id case in test_rbd.py (`pr#30927 `_, Zhang Jiao) * rbd,tests: test/pybind: add create_snap rasie ImageExists test case (`pr#31140 `_, Gangbiao Liu) * rbd,tests: test/pybind: inconsistent use of tabs and spaces in indentation (`pr#31606 `_, Mykola Golub) * rbd,tests: test/rbd_mirror: fix mock warnings (`pr#31608 `_, Mykola Golub) * rbd,tests: test/run-rbd-tests: properly initialize newly created rbd pool (`pr#33642 `_, Mykola Golub) * rbd,tests: test: add test_remove_snap_ImageNotFound test case in remove snap part (`pr#31221 `_, Yingze Wei) * rbd,tests: test:add test_remove_snap2 interface to remove snap when its protected (`pr#31208 `_, Yingze Wei) * rbd,tools: tools/rbd-ggate: close log before running postfork (`pr#30010 `_, Willem Jan Withagen) * rbd,tools: tools/rbd_nbd: use POSIX basename() (`pr#28856 `_, Kefu Chai) * rbd-ggate: fix fallout from bufferlist.copy() change (`pr#33057 `_, Willem Jan Withagen) * rbd-mirror: add namespace support (`issue#37529 `_, `pr#28939 `_, Mykola Golub) * rbd-mirror: add namespace support to service daemon (`pr#31642 `_, Mykola Golub) * rbd-mirror: add support for snapshot-based mirroring resyncs (`pr#33490 `_, Jason Dillaman) * rbd-mirror: apply image state during snapshot replay (`pr#33335 `_, Jason Dillaman) * rbd-mirror: cannot restore deferred deletion mirrored images (`pr#30351 `_, Jason Dillaman) * rbd-mirror: clear out bufferlist prior to listing mirror images (`issue#39407 `_, `pr#27720 `_, Jason Dillaman) * rbd-mirror: continue to isolate journal replay logic (`pr#32399 `_, Jason Dillaman) * rbd-mirror: do not auto-create peers in non-default namespaces (`pr#32341 `_, Jason Dillaman) * rbd-mirror: dont expect image map is always initialized (`pr#33368 `_, Mykola Golub) * rbd-mirror: dont overwrite status error returned by replay (`pr#28179 `_, Mykola Golub) * rbd-mirror: ensure deterministic ordering of method calls (`pr#32274 `_, Jason Dillaman) * rbd-mirror: extract journal replaying logic from image replayer (`pr#32257 `_, Jason Dillaman) * rbd-mirror: fix pool replayer status for case when init failed (`pr#32483 `_, Mykola Golub) * rbd-mirror: fix race on namespace replayer initialization failure (`pr#32243 `_, Mykola Golub) * rbd-mirror: handle duplicates in image sync throttler queue (`issue#40519 `_, `pr#28730 `_, Mykola Golub) * rbd-mirror: hold lock while updating local image name (`pr#33988 `_, Jason Dillaman) * rbd-mirror: ignore errors relating to parsing the cluster config file (`pr#29808 `_, Jason Dillaman) * rbd-mirror: image status should report remote status (`pr#30558 `_, Jason Dillaman) * rbd-mirror: improve detection of blacklisted state (`pr#33411 `_, Mykola Golub) * rbd-mirror: initial end-to-end test and associated bug fixes (`pr#33588 `_, Jason Dillaman) * rbd-mirror: initial snapshot replay state machine (`pr#33166 `_, Jason Dillaman) * rbd-mirror: initial snapshot-based mirroring bootstrap logic (`pr#33002 `_, Jason Dillaman) * rbd-mirror: link against the specified alloc library (`issue#40110 `_, `pr#28434 `_, Jason Dillaman) * rbd-mirror: make logrotate work (`pr#32456 `_, Mykola Golub) * rbd-mirror: mirrored clone should be same format (`pr#31161 `_, Mykola Golub) * rbd-mirror: peer_ping should send the local fsid to the remote (`pr#31950 `_, Jason Dillaman) * rbd-mirror: periodically flush IO and commit positions (`issue#39257 `_, `pr#27533 `_, Jason Dillaman) * rbd-mirror: periodically poll remote mirror configuration (`pr#32671 `_, Jason Dillaman) * rbd-mirror: potential nullptr dereference in ImageReplayer::handle_start_replay (`pr#30484 `_, Mykola Golub) * rbd-mirror: prevent I/O modifications against a non-primary image (`pr#33831 `_, Jason Dillaman) * rbd-mirror: provide initial snapshot replay status (`pr#33440 `_, Jason Dillaman) * rbd-mirror: remove journal-specific logic from image replay and bootstrap state machines (`pr#32578 `_, Jason Dillaman) * rbd-mirror: removing non-primary trash snapshot (`pr#31260 `_, Mykola Golub) * rbd-mirror: rename per-image replication perf counters (`pr#32184 `_, Mykola Golub) * rbd-mirror: simplify peer bootstrapping (`pr#30411 `_, Jason Dillaman) * rbd-mirror: snapshot mirror mode (`pr#30548 `_, Mykola Golub) * rbd-mirror: snapshot-based mirroring should use image sync throttler (`pr#34040 `_, Jason Dillaman) * rbd-nbd: add netlink map/unmap support (`pr#27902 `_, Mike Christie) * rbd-nbd: add nl resize (`pr#29036 `_, Mike Christie) * rbd-nbd: sscanf return 0 mean not-match (`issue#39269 `_, `pr#27484 `_, Jianpeng Ma) * rbd: creating thick-provision image progress percent info exceeds 100% (`pr#30954 `_, Xiangdong Mu) * rbd: journal: add support for aligned appends (`pr#28351 `_, Mykola Golub) * rbd: librbd: skip stale child with non-existent pool for list descendants (`pr#29654 `_, songweibin) * rbd: add --merge to disk-usage (`pr#30994 `_, Alexandre Bruyelles) * rbd: add mirror snapshot schedule commands (`pr#32882 `_, Mykola Golub) * rbd: add snap_exists method API (`pr#32497 `_, Zheng Yin) * rbd: client,common,mgr,rbd: clang related cleanups (`pr#33657 `_, Kefu Chai) * rbd: cls/rbd: improve efficiency of mirror image status queries (`pr#31865 `_, Jason Dillaman) * rbd: cls/rbd: sanitize entity instance messenger version type (`pr#30438 `_, Jason Dillaman) * rbd: cls/rbd: sanitize the mirror image status peer address after reading from disk (`pr#31824 `_, Jason Dillaman) * rbd: cls: reduce log level for non-fatal errors (`issue#40865 `_, `pr#29165 `_, Jason Dillaman) * rbd: delete redundant words when trash restore fails because of same name (`pr#30952 `_, Xiangdong Mu) * rbd: fixed additional issues with CEPH_ARGS processing (`pr#33219 `_, Jason Dillaman) * rbd: incorporate rbd-mirror daemon status in mirror pool status (`pr#31949 `_, Jason Dillaman) * rbd: journal: fix race between player shut down and cache rebalance (`pr#28748 `_, Mykola Golub) * rbd: journal: fix race between player shut down and cache rebalance (`pr#29796 `_, Mykola Golub) * rbd: journal: optimize object overflow detection (`pr#28240 `_, Mykola Golub) * rbd: journal: properly advance read offset after skipping invalid range (`pr#28627 `_, Mykola Golub) * rbd: journal: return error after first corruption detected (`pr#28820 `_, Mykola Golub) * rbd: journal: wait for in flight advance sets on stopping recorder (`pr#28529 `_, Mykola Golub) * rbd: krbd: avoid udev netlink socket overrun (`pr#30965 `_, Ilya Dryomov) * rbd: krbd: fix rbd map hang due to udev return subsystem unordered (`issue#39089 `_, `pr#27339 `_, Zhi Zhang) * rbd: krbd: modprobe before calling build_map_buf() (`pr#30978 `_, Ilya Dryomov) * rbd: krbd: retry on transient errors from udev_enumerate_scan_devices() (`pr#31023 `_, Ilya Dryomov) * rbd: krbd: return -ETIMEDOUT in polling (`issue#38792 `_, `pr#27025 `_, Dongsheng Yang) * rbd: mgr/dashboard: support RBD mirroring bootstrap create/import (`issue#42355 `_, `pr#31062 `_, Jason Dillaman) * rbd: msg/async: avoid unnecessary costly wakeups for outbound messages (`pr#28388 `_, Jason Dillaman) * rbd: msg/async: reduce verbosity of connection timeout failures (`issue#39448 `_, `pr#28050 `_, Jason Dillaman) * rbd: pybind/mgr/rbd_support: fix missing variable in error path (`pr#29773 `_, Jason Dillaman) * rbd: pybind/mgr/rbd_support: ignore missing support for RBD namespaces (`pr#29433 `_, Jason Dillaman) * rbd: pybind/mgr/rbd_support: use image ids to detect duplicate tasks (`pr#29468 `_, Jason Dillaman) * rbd: pybind/mgr/rbd_support: wait for latest OSD map prior to handling commands (`pr#33451 `_, Jason Dillaman) * rbd: pybind/rbd: fix call to unregister_osd_perf_queries (`pr#29419 `_, Venky Shankar) * rbd: pybind/rbd: provide snap remove flags (`pr#31627 `_, Mykola Golub) * rbd: qa/suites/rbd/openstack: use 18.04, not 16.04 (`pr#32284 `_, Sage Weil) * rbd: rbd-ggate: fix compile errors from ceph::mutex update (`pr#29474 `_, Willem Jan Withagen) * rbd: rbd-mirror: adjust journal fetch properties based on memory target (`pr#27670 `_, Mykola Golub) * rbd: rbd/action: display image id in rbd du/list output (`pr#29376 `_, songweibin) * rbd: rbd/action: fix error getting positional argument (`issue#40095 `_, `pr#28313 `_, songweibin) * rbd: rbd/bench: outputs bytes/s format dynamically (`pr#31491 `_, Zheng Yin) * rbd: rbd/cache: Replicated Write Log core codes part 1 (`pr#31279 `_, Peterson, Scott, Li, Xiaoyan, Lu, Yuan, Chamarthy, Mahati) * rbd: rbd/cache: Replicated Write Log core codes part 2 (`pr#31963 `_, Peterson, Scott, Li, Xiaoyan, Lu, Yuan, Chamarthy, Mahati) * rbd: rbd_replay: call the member decode() explicitly (`pr#27703 `_, Kefu Chai) * rbd: schedule for running trash purge operations (`pr#33389 `_, Mykola Golub) * rbd: src: use un-deprecated version of aio_create_completion (`pr#31333 `_, Adam C. Emerson) * rbd: use the ordered throttle for the export action (`issue#40435 `_, `pr#28657 `_, Jason Dillaman) * remove cephadm-adoption-corpus as submodule (`pr#33587 `_, Sage Weil) * Return an error, for Bluestore OSD, if WAL or DB are defined in the tags of the OSD but not present on the system (`pr#28791 `_, David Casier) * rgw,tests: qa/rgw/pubsub: fix tests to sync from master (`pr#33049 `_, Yuval Lifshitz) * rgw,tests: qa/rgw/pubsub: verify incremental sync is used in pubsu (`pr#33068 `_, Yuval Lifshitz) * rgw,tests: qa/rgw: add integration test for sse-kms with barbican (`pr#30218 `_, Casey Bodley, Adam Kupczyk) * rgw,tests: qa/rgw: add new rgw/website suite for static website tests (`pr#30193 `_, Casey Bodley) * rgw,tests: qa/rgw: add rgw_obj and throttle tests to rgw verify suite (`pr#32188 `_, Casey Bodley) * rgw,tests: qa/rgw: disable debuginfo packages (`pr#27528 `_, Casey Bodley) * rgw,tests: qa/rgw: dont use ceph-ansible in s3a-hadoop suite (`issue#39706 `_, `pr#28068 `_, Casey Bodley) * rgw,tests: qa/rgw: drop some objectstore types (`pr#30997 `_, Casey Bodley) * rgw,tests: qa/rgw: exercise DeleteRange in test_bucket_index_log_trim (`pr#33047 `_, Casey Bodley) * rgw,tests: qa/rgw: extra s3tests tasks use rgw endpoint configuration (`issue#17882 `_, `pr#28631 `_, Casey Bodley) * rgw,tests: qa/rgw: fix import error in tasks/swift.py (`issue#40304 `_, `pr#28605 `_, Casey Bodley) * rgw,tests: qa/rgw: fix swift warning message (`pr#28697 `_, Casey Bodley) * rgw,tests: qa/rgw: more fixes for swift task (`issue#40304 `_, `pr#28823 `_, Casey Bodley) * rgw,tests: qa/rgw: multisite checkpoints consider pubsub zone (`pr#32941 `_, Casey Bodley) * rgw,tests: qa/rgw: refactor the kms backend configuration (`pr#30940 `_, Casey Bodley) * rgw,tests: qa/rgw: remove failing radosgw_admin_rest from multisite suite (`pr#32550 `_, Casey Bodley) * rgw,tests: qa/rgw: remove whitelist for SLOW_OPS against ec pools (`pr#31363 `_, Casey Bodley) * rgw,tests: qa/rgw: s3a-hadoop task defaults to maven-version 3.6.3 (`pr#32620 `_, Casey Bodley) * rgw,tests: qa/rgw: skip swift tests on rhel 7.6+ (`issue#40304 `_, `pr#28532 `_, Casey Bodley) * rgw,tests: qa/rgw: update run-s3tests.sh (`pr#28964 `_, Casey Bodley) * rgw,tests: qa/rgw: use testing kms backend for multisite tests (`pr#31374 `_, Casey Bodley) * rgw,tests: qa/rgw: use testing kms backend for other rgw subsuites (`pr#31414 `_, Casey Bodley) * rgw,tests: qa/rgw: whitelist SLOW_OPS failures against ec pools (`pr#30944 `_, Casey Bodley) * rgw,tests: qa/suites/rgw/website: run test on ubuntu (`pr#32791 `_, Sage Weil) * rgw,tests: qa/suites/rgw: reenable ragweed (now py3) (`pr#32310 `_, Sage Weil) * rgw,tests: qa/suites: use s3-tests with python3 support (`pr#32624 `_, Ali Maredia) * rgw,tests: qa/tasks/swift: remove swift tests (`pr#32357 `_, Sage Weil) * rgw,tests: qa/tests: added rgw into upgrade sequence to improve coverage (`pr#29234 `_, Yuri Weinstein) * rgw,tests: qa/tests: added rgw into upgrade sequence to improve coverage - splits (`pr#29282 `_, Yuri Weinstein) * rgw,tests: qa: add force-branch to suites running s3readwrite & s3roundtrip tasks (`pr#32225 `_, Ali Maredia) * rgw,tests: qa: bump maven repo version in s3a_hadoop.py (`pr#30531 `_, Ali Maredia) * rgw,tests: qa: radosgw-admin: remove dependency on bunch package (`pr#32100 `_, Yehuda Sadeh) * rgw,tests: qa: radosgw_admin: validate a simple user stats output (`pr#30684 `_, Abhishek Lekshmanan) * rgw,tests: qa: remove mon valgrind check in rgw verfiy suite (`issue#38827 `_, `pr#28155 `_, Ali Maredia) * rgw,tests: qa: remove s3-tests from rados/basic/tasks/rgw_snaps.yml (`pr#32940 `_, Ali Maredia) * rgw,tests: qa: rgw: add user-policy caps for the s3tests users (`pr#31127 `_, Abhishek Lekshmanan) * rgw,tests: qa: use curl in wait_for_radosgw() in util/rgw.py (`pr#28521 `_, Ali Maredia) * rgw,tests: rgw/amqp: fix race condition in AMQP unit test (`pr#30735 `_, Yuval Lifshitz) * rgw,tests: rgw/amqp: remove flaky amqp test (`pr#31510 `_, Yuval Lifshitz) * rgw,tests: rgw/pubsub: add multisite pubsub tests to teuthology (`pr#27838 `_, Yuval Lifshitz) * rgw,tests: rgw/pubsub: tests enhancements and fixes (`pr#28910 `_, Yuval Lifshitz) * rgw,tests: rgw/pubsub: use incremental sync for pubsub module by default (`pr#28470 `_, Yuval Lifshitz) * rgw,tests: test/rgw: fix test-rgw-multisite.sh script for creating multisite clusters (`pr#27984 `_, Casey Bodley) * rgw,tests: test/rgw: fixes for test-rgw-multisite.sh (`pr#33537 `_, Casey Bodley) * rgw,tests: test/rgw: raise timer durations for unittest_rgw_reshard_wait (`pr#32094 `_, Casey Bodley) * rgw,tests: test/rgw: test_rgw_reshard_wait uses same clock for timing (`pr#27035 `_, Casey Bodley) * rgw,tests: vstart: move common rgw config to [client.rgw] (`pr#29449 `_, Casey Bodley) * rgw,tools: ceph-dencoder: add RGWPeriodLatestEpochInfo support (`pr#30613 `_, yuliyang) * rgw,tools: rgw/examples: adding examples for boto3 extensions to AWS S3 (`pr#30600 `_, Yuval Lifshitz) * rgw,tools: vstart.sh: run multiple rgws with different ids (`pr#26690 `_, Joao Eduardo Luis) * rgw: rgw: cls_bucket_list_unordered lists a single shard (`issue#39393 `_, `pr#27697 `_, Casey Bodley) * rgw: rgw: make radosgw-admin user create and modify distinct (`pr#31901 `_, Matthew Oliver) * rgw: rgw: returns LimitExceeded when user creates too many ACLs (`issue#26835 `_, `pr#25692 `_, Chang Liu) * rgw: A task to run S3 Java tests against RGW (`pr#22788 `_, Antoaneta Damyanova) * rgw: add --object-version in radosgw-admin help info (`pr#30091 `_, yuliyang) * rgw: add a small efficiency (`pr#29178 `_, J. Eric Ivancich) * rgw: add admin rest api for bucket sync (`pr#19020 `_, zhang Shaowen, Zhang Shaowen) * rgw: add cls_queue and cls_rgw_gc for omap offload (`pr#28421 `_, Pritha Srivastava, Casey Bodley) * rgw: add const correctness to some rest functions (`pr#31660 `_, J. Eric Ivancich) * rgw: add creation time information into bucket stats (`pr#30384 `_, Enming Zhang) * rgw: Add days0 to rgw lc (`pr#29937 `_, Or Friedmann) * rgw: add detailed error message for PutACLs (`pr#30385 `_, Enming Zhang) * rgw: add editor directive comments to rgw services source files (`pr#27897 `_, J. Eric Ivancich) * rgw: add GET /admin/realm?list api to list realms (`pr#28156 `_, Casey Bodley) * rgw: add missing admin property when sync user info (`pr#30127 `_, zhang Shaowen) * rgw: add missing bilog status to help info (`pr#30357 `_, zhang Shaowen) * rgw: add missing close_section in send_versioned_response (`pr#28946 `_, Casey Bodley) * rgw: Add more details to the LC delete and transit log (`pr#30913 `_, Or Friedmann) * rgw: add num_shards to radosgw-admin bucket stats (`pr#30845 `_, Paul Emmerich) * rgw: add option to specify shard-id for bi list admin command (`pr#29394 `_, Mark Kogan) * rgw: add optional_yield to http client interface (`pr#25355 `_, Casey Bodley) * rgw: add optional_yield to SysObj service interfaces (`pr#25353 `_, Casey Bodley) * rgw: add PublicAccessBlock set of APIs on buckets (`pr#30033 `_, Abhishek Lekshmanan) * rgw: add rgw_rados_pool_recovery_priority (default 5) (`pr#29181 `_, Sage Weil) * rgw: add roles_pool in RGWZoneParams dump/decode json (`issue#22162 `_, `pr#17338 `_, Tianshan Qu) * rgw: add S3 object lock feature to support object worm (`pr#26538 `_, zhang Shaowen) * rgw: add some comments to rgw code to help explain functionality (`pr#27896 `_, J. Eric Ivancich) * rgw: add SSE-KMS with Vault using token auth (`pr#29783 `_, Andrea Baglioni, Sergio de Carvalho) * rgw: Add support bucket policy for subuser (`pr#33165 `_, Seena Fallah) * rgw: add tenant as parameter to User in multisite tests (`pr#27969 `_, Yuval Lifshitz) * rgw: add transaction id to ops log (`pr#30163 `_, zhang Shaowen) * rgw: add YieldingAioThrottle for async PutObj/GetObj (`pr#26173 `_, Casey Bodley) * rgw: Added caching for S3 credentials retrieved from keystone (`pr#26095 `_, James Weaver) * rgw: adding documentation for AssumeRoleWithWebIdentity (`pr#31994 `_, Pritha Srivastava) * rgw: Adding iam namespace for Role and User Policy related REST APIs (`pr#27178 `_, Pritha Srivastava) * rgw: adding mfa code validation when bucket versioning status is changed (`pr#31767 `_, Pritha Srivastava) * rgw: Adding tcp_nodelay option to Beast (`pr#27008 `_, Or Friedmann) * rgw: address 0-length listing results when non-vis entries dominate (`pr#32636 `_, J. Eric Ivancich) * rgw: adjust allowable bucket index shard counts for dynamic resharding (`pr#30795 `_, J. Eric Ivancich) * rgw: admin: handle delete_at attr in object stat output (`pr#27781 `_, Abhishek Lekshmanan) * rgw: Allow admin APIs that write metadata to be executed first on the mast\xe2\x80\xa6 (`issue#39549 `_, `pr#29549 `_, Shilpa Jagannath) * rgw: allow radosgw-admin to list bucket w --allow-unordered (`issue#39637 `_, `pr#28031 `_, J. Eric Ivancich) * rgw: allow reshard log entries for non-existent buckets to be cancelled (`pr#31271 `_, J. Eric Ivancich) * rgw: apply_olh_log ignores RGW_ATTR_OLH_VER decode error (`pr#31976 `_, Casey Bodley) * rgw: asio: check the remote endpoint before processing requests (`pr#29967 `_, Abhishek Lekshmanan) * rgw: auth/Crypto: fallback to /dev/urandom if getentropy() fails (`pr#30544 `_, Kefu Chai) * rgw: auto-clean reshard queue entries for non-existent buckets (`pr#31323 `_, J. Eric Ivancich) * rgw: az: add archive zone tests (`pr#29359 `_, Javier M. Mellid) * rgw: beast frontend uses 512k mprotected coroutine stacks (`pr#31580 `_, Daniel Gryniewicz, Casey Bodley) * rgw: beast frontend uses yield_context to read/write body (`pr#27795 `_, Casey Bodley) * rgw: beast port parsing (`issue#39000 `_, `pr#27242 `_, Abhishek Lekshmanan) * rgw: beast ssl certs config through config-key (`pr#33287 `_, Yehuda Sadeh) * rgw: bucket granularity sync (`pr#31686 `_, Yehuda Sadeh) * rgw: bucket re-creation fixes (`pr#32121 `_, Yehuda Sadeh) * rgw: bucket stats report mtime in UTC (`pr#27617 `_, Casey Bodley) * rgw: bucket tagging (`pr#27993 `_, Chang Liu) * rgw: build async scheduler only when beast is built (`pr#26634 `_, Abhishek Lekshmanan) * rgw: build radosgw daemon as a shared lib + small executable (`pr#32404 `_, Kaleb S. Keithley) * rgw: build_linked_oids_for_bucket and build_buckets_instance_index should return negative value if it fails (`pr#31346 `_, zhangshaowen) * rgw: change cls rgw reshard status to enum class (`pr#30611 `_, J. Eric Ivancich) * rgw: change MAX_USAGE_TRIM_ENTRIES value from 128 to 1000 (`pr#30392 `_, zhang Shaowen) * rgw: check lc objs not empty after fetching (`pr#26167 `_, Yao Zongyou) * rgw: clean index and remove bucket instance info when setting resharding status fails (`pr#31103 `_, zhangshaowen) * rgw: clean up ordered list (`pr#31338 `_, J. Eric Ivancich) * rgw: clean up some logging (`pr#27411 `_, J. Eric Ivancich) * rgw: cleanup the magic string usage in cls_rgw_client.cc (`pr#31432 `_, zhangshaowen) * rgw: cleanup:remove un-used class member in RGWDeleteLC (`pr#31404 `_, zhang Shaowen) * rgw: cleanup:remove un-used create_new_bucket_instance in rgw_admin.cc (`pr#31345 `_, zhangshaowen) * rgw: clear ent_list for each loop of bucket list (`issue#44394 `_, `pr#33693 `_, Yao Zongyou) * rgw: cls/rgw: fix bilog trim tests in ceph_test_cls_rgw (`pr#30268 `_, Casey Bodley) * rgw: cls/rgw: keep issuing bilog trim ops after reset (`issue#40187 `_, `pr#28430 `_, Casey Bodley) * rgw: cls/rgw: test before accessing pkeys->rbegin() (`issue#39984 `_, `pr#28391 `_, Casey Bodley) * rgw: cls/rgw: when object is versioned and lc transition it, the object is becoming non-current (`pr#32458 `_, Or Friedmann) * rgw: cls/user: cls_user_set_buckets_info overwrites creation_time (`issue#39635 `_, `pr#28045 `_, Casey Bodley) * rgw: cls_bucket_list\\_(un)ordered should clear results collection (`pr#33702 `_, J. Eric Ivancich) * rgw: compression info should be same during multipart uploading (`pr#30574 `_, zhang Shaowen) * rgw: conditionally allow non-unique email addresses (`issue#40089 `_, `pr#28327 `_, Matt Benjamin) * rgw: continuation token doesnt work in list object v2 request (`pr#28988 `_, zhang Shaowen) * rgw: continuationToken or startAfter shouldnt be returned if not specified (`pr#29298 `_, zhang Shaowen) * rgw: correct some error log about reshard in cls_rgw.cc (`pr#31429 `_, zhangshaowen) * rgw: crypt: permit RGW-AUTO/default with SSE-S3 headers (`pr#30189 `_, Matt Benjamin) * rgw: crypto: throw DigestException from Digest and HMAC (`issue#39456 `_, `pr#27765 `_, Matt Benjamin) * rgw: data sync markers include timestamp from datalog entry (`pr#32309 `_, Casey Bodley) * rgw: data/bilogs are trimmed when no peers are reading them (`issue#39487 `_, `pr#27794 `_, Casey Bodley) * rgw: datalog/mdlog trim commands loop until done (`pr#29448 `_, Casey Bodley) * rgw: data_sync_source_zones only contains exporting zones (`pr#33193 `_, Casey Bodley) * rgw: decrypt filter does not cross multipart boundaries (`issue#38700 `_, `pr#27130 `_, Adam Kupczyk, Casey Bodley, Abhishek Lekshmanan) * rgw: DefaultRetention requires either Days or Years (`pr#29680 `_, Chang Liu) * rgw: delete_obj_index() takes mtime for bilog (`issue#24991 `_, `pr#27980 `_, Casey Bodley) * rgw: distinguish different get_usage for usage log (`pr#17719 `_, Jiaying Ren) * rgw: dmclock: wait until the request is handled (`pr#30777 `_, GaryHyg) * rgw: do not miss the 1000th element of every iteration during lifecycle processing (`pr#30861 `_, Ilsoo Byun) * rgw: do not remove delete marker when fixing versioned bucket (`pr#32562 `_, Ilsoo Byun) * rgw: Dont crash on copy when metadata directive not supplied (`issue#40416 `_, `pr#28949 `_, Adam C. Emerson) * rgw: dont crash on missing /etc/mime.types (`issue#38328 `_, `pr#26998 `_, Casey Bodley) * rgw: dont print error log when list reshard result is not truncated (`pr#31142 `_, zhangshaowen) * rgw: dont recalculate etags for slo/dlo (`pr#27470 `_, Casey Bodley) * rgw: dont throw when accept errors are happening on frontend (`pr#29587 `_, Yuval Lifshitz) * rgw: drop cloud sync module logs attrs from the log (`pr#27820 `_, Nathan Cutler) * rgw: drop dead flush_read_list declaration (`pr#29458 `_, Jiaying Ren) * rgw: drop unused rgw_decode_pki_token() (`pr#27052 `_, Radoslaw Zarzynski) * rgw: dump s3_code as the Code response element in RGWDeleteMultiObj_ObjStore_S3 (`issue#18241 `_, `pr#12470 `_, Radoslaw Zarzynski) * rgw: eliminates duplicated tags_bl var (`pr#27970 `_, Chang Liu) * rgw: Evaluating bucket policies also while reading permissions for an\xe2\x80\xa6 (`issue#38638 `_, `pr#27309 `_, Pritha Srivastava) * rgw: examples: rgw: add boto3 append & get usage api extensions (`pr#33063 `_, Abhishek Lekshmanan) * rgw: Expiration days cant be zero and transition days can be zero (`pr#30878 `_, zhang Shaowen) * rgw: extend SSE-KMS with Vault using transit secrets engine (`pr#31361 `_, Andrea Baglioni, Sergio de Carvalho) * rgw: fetch_remote_obj() compares expected object size (`pr#28303 `_, Xiaoxi CHEN, Casey Bodley) * rgw: find oldest period and update RGWMetadataLogHistory() (`pr#31873 `_, Shilpa Jagannath) * rgw: fix a bug that bucket instance obj cant be removed after resharding completed (`pr#31483 `_, zhang Shaowen) * rgw: fix a bug that lifecycle expiraton generates delete marker continuously (`issue#40393 `_, `pr#28587 `_, zhang Shaowen) * rgw: fix bucket may redundantly list keys after BI_PREFIX_CHAR (`issue#39984 `_, `pr#28188 `_, Tianshan Qu) * rgw: Fix bucket versioning vs. swift metadata bug (`pr#29240 `_, Marcus Watts) * rgw: Fix bug on subuser policy identity checker (`pr#33398 `_, Seena Fallah) * rgw: fix bug with (un)ordered bucket listing and marker w/ namespace (`pr#33046 `_, J. Eric Ivancich) * rgw: fix bugs in listobjectsv1 (`pr#28873 `_, Albin Antony) * rgw: fix cls_bucket_list_unordered() partial results (`pr#29692 `_, Mark Kogan) * rgw: fix compile errors with boost 1.70 (`pr#27730 `_, Casey Bodley) * rgw: fix data consistency error casued by rgw sent timeout (`pr#30257 `_, \xe6\x9d\x8e\xe7\xba\xb2\xe5\xbd\xac82225) * rgw: fix data sync start delay if remote havent init data_log (`pr#30393 `_, Tianshan Qu) * rgw: fix default storage class for get_compression_type (`pr#29909 `_, Casey Bodley) * rgw: fix default_placement containing / when storage_class is standard (`issue#39380 `_, `pr#27676 `_, mkogan1) * rgw: fix dns name comparison for virtual hosting (`pr#30221 `_, Casey Bodley) * rgw: Fix documentation for rgw_ldap_secret (`pr#29816 `_, Robin M\xc3\xbcller) * rgw: fix drain handles error when deleting bucket with bypass-gc option (`pr#28789 `_, dongdong tao) * rgw: Fix dynamic resharding not working for empty zonegroup in period (`pr#31977 `_, Or Friedmann) * rgw: Fix expiration header does not return the earliest rule (`pr#29399 `_, Or Friedmann) * rgw: fix incorrect radosgw-admin zonegroup rm info (`pr#30319 `_, zhang Shaowen) * rgw: fix indentation for listobjectsv2 (`pr#28830 `_, Albin Antony) * rgw: fix list bucket with delimiter wrongly skip some special keys (`issue#40905 `_, `pr#29215 `_, Tianshan Qu) * rgw: fix list bucket with start maker and delimiter / will miss next object\xe2\x80\xa6 (`issue#39989 `_, `pr#28192 `_, Tianshan Qu) * rgw: fix list versions starts with version_id=null (`pr#29897 `_, Tianshan Qu) * rgw: fix MalformedXML errors in PutBucketObjectLock/PutObjRetention (`pr#28783 `_, Casey Bodley) * rgw: fix memory growth while deleting objects with (`pr#30174 `_, Mark Kogan) * rgw: fix minimum of unordered bucket listing (`pr#30146 `_, J. Eric Ivancich) * rgw: fix minor compiler warning in keystone auth (`pr#27100 `_, David Disseldorp) * rgw: fix miss get ret in STSService::storeARN (`issue#40386 `_, `pr#28527 `_, Tianshan Qu) * rgw: fix miss handle curl error return (`pr#28345 `_, Casey Bodley, Tianshan Qu) * rgw: fix missing tenant prefix in bucket name during bucket link (`pr#29815 `_, Shilpa Jagannath) * rgw: fix multipart uploads error response (`pr#32771 `_, GaryHyg) * rgw: Fix narrowing conversion error (`pr#28905 `_, Adam C. Emerson) * rgw: fix one part of the bulk delete(RGWDeleteMultiObj_ObjStore_S3) fails but no error messages (`pr#29795 `_, Snow Si) * rgw: fix opslog operation field as per Amazon s3 (`issue#20978 `_, `pr#30539 `_, Jiaying Ren) * rgw: fix potential realm watch lost (`issue#40991 `_, `pr#29369 `_, Tianshan Qu) * rgw: fix read not exists null version return wrong (`issue#38811 `_, `pr#27047 `_, Tianshan Qu) * rgw: fix refcount tags to match and update objects idtag (`pr#30013 `_, J. Eric Ivancich) * rgw: fix REQUEST_URI setting in the rgw_asio_client.cc (`pr#30540 `_, Jiaying Ren) * rgw: fix rgw crash and set correct error code (`pr#28172 `_, yuliyang) * rgw: fix rgw crash when duration is invalid in sts request (`pr#32119 `_, yuliyang) * rgw: fix rgw crash when token is not base64 encode (`pr#31830 `_, yuliyang) * rgw: fix rgw decompression log-print (`pr#29633 `_, Han Fengzhe) * rgw: fix rgw lc does not delete objects that do not have exactly the same tags as the rule (`pr#30151 `_, Or Friedmann) * rgw: fix RGWDeleteMultiObj::verify_permission() (`pr#26947 `_, Irek Fasikhov) * rgw: fix RGWUserInfo decode current version (`pr#31591 `_, Chang Liu) * rgw: fix S3 compatibility bug when CORS is not found (`issue#37945 `_, `pr#25999 `_, Nick Janus) * rgw: fix sharded bucket listing with prefix/delimiter (`pr#33628 `_, Casey Bodley) * rgw: fix SignatureDoesNotMatch when use ipv6 address in s3 client (`pr#30778 `_, yuliyang) * rgw: fix signed char truncation in delimiter check (`pr#27001 `_, Matt Benjamin) * rgw: fix string_view formatting in RGWFormatter_Plain (`pr#33754 `_, Casey Bodley) * rgw: fix the bug of rgw not doing necessary checking to website configuration (`issue#40678 `_, `pr#28904 `_, Enming Zhang) * rgw: fix unlock of shared lock in RGWCache (`pr#29558 `_, Abhishek Lekshmanan) * rgw: fix unlock of shared lock in RGWDataChangesLog (`pr#29538 `_, Casey Bodley) * rgw: Fix upload part copy range able to get almost any string (`pr#32487 `_, Or Friedmann) * rgw: fix version tracking across bucket link steps (`pr#29851 `_, Matt Benjamin) * rgw: fixed unrecognized arg error when using radosgw-admin zone rm (`pr#30060 `_, Hongang Chen) * rgw: Fixes related to omap offload and gc (`pr#33372 `_, Pritha Srivastava) * rgw: followup for user rename (`pr#29540 `_, Casey Bodley) * rgw: forwarded some requests to master zone (`pr#28276 `_, Chang Liu) * rgw: gc remove tag after all sub io finish (`issue#40903 `_, `pr#29199 `_, Tianshan Qu) * rgw: get barbican secret key request maybe return error code (`pr#29639 `_, Richard Bai(\xe7\x99\xbd\xe5\xad\xa6\xe4\xbd\x99)) * rgw: get elastic search info in start_sync, avoid creating new coroutines manager (`pr#32269 `_, Chang Liu) * rgw: housekeeping of reset stats operation in radosgw-admin and cls back-end (`pr#29515 `_, J. Eric Ivancich) * rgw: http client drops lock before suspending coroutine (`pr#29553 `_, Casey Bodley) * rgw: iam: add all http args to req_info (`pr#31124 `_, Abhishek Lekshmanan) * rgw: iam: use a function to calculate the Action Bit string (`pr#30152 `_, Abhishek Lekshmanan) * rgw: ignore If-Unmodified-Since if If-Match exists, and ignore If-Modified-Since if If-None-Match exists (`pr#28625 `_, zhang Shaowen) * rgw: improve beast (`pr#33017 `_, Or Friedmann, Matt Benjamin) * rgw: improve data sync restart after failure (`pr#30175 `_, Tianshan Qu) * rgw: improve debugs on the path of RGWRados::cls_bucket_head (`pr#12709 `_, Radoslaw Zarzynski) * rgw: improvements to SSE-KMS with Vault (`pr#31025 `_, Andrea Baglioni, Sergio de Carvalho) * rgw: Improving doc for Cross Project(Tenant) access with Openstack Ke\xe2\x80\xa6 (`pr#27507 `_, Pritha Srivastava) * rgw: incorrect return value when processing CORS headers (`pr#28622 `_, Ilsoo Byun) * rgw: Incorrectly calling ceph::buffer::list::decode_base64 in bucket policy (`pr#31356 `_, GaryHyg) * rgw: increase beast parse buffer size to 64k (`pr#29776 `_, Casey Bodley) * rgw: increase log level for same or older period pull msg (`pr#33527 `_, Ali Maredia) * rgw: Increase the default number of RGW bucket shards (`pr#32660 `_, Casey Bodley, Mark Nelson) * rgw: init-radosgw: use ceph-conf to get cluster configuration value (`pr#27538 `_, Daniel Badea) * rgw: Initialize member variables in rgw_sync.h, rgw_rados.h (`pr#16929 `_, amitkuma) * rgw: initialize member variables of rgw_log_entry (`pr#32430 `_, Kefu Chai) * rgw: kill compile warnning in rgw_object_lock.h (`pr#30489 `_, Chang Liu) * rgw: LC expiration header should present midnight expiration date (`pr#31887 `_, Or Friedmann) * rgw: lc: check for valid placement target before processing transitions (`pr#28256 `_, Abhishek Lekshmanan) * rgw: LC: handle resharded buckets (`pr#26564 `_, Abhishek Lekshmanan) * rgw: ldap auth: S3 auth failure should return InvalidAccessKeyId (`pr#30332 `_, Matt Benjamin) * rgw: ldap: fix LDAPAuthEngine::init() when uri !empty() (`pr#26911 `_, Matt Benjamin) * rgw: lifecycle days may be 0 (`pr#26524 `_, Matt Benjamin) * rgw: lifecycle: alternate solution to prefix_map conflict (`issue#37879 `_, `pr#26518 `_, Matt Benjamin) * rgw: limit entries in remove_olh_pending_entries() (`issue#39118 `_, `pr#27400 `_, Casey Bodley) * rgw: list buckets: dont return buckets if limit=0 (`pr#32109 `_, Yehuda Sadeh) * rgw: list_bucket versions return NextVersionIdMarker = null if next_marker.instance is empty (`pr#17591 `_, Shasha Lu) * rgw: log refactoring for putobj_processor (`pr#26107 `_, Ali Maredia) * rgw: log refactoring for rgw_rest_s3/swift ops (`pr#27037 `_, Ali Maredia) * rgw: make dns hostnames matching case insensitive (`issue#40995 `_, `pr#29380 `_, Abhishek Lekshmanan) * rgw: make max_connections configurable in beast (`pr#33053 `_, Tiago Pasqualini) * rgw: Make rgw admin ops api get user info consistent with the command line (`pr#26183 `_, Li Shuhao) * rgw: make sure modelines are correct for all files (`pr#29742 `_, Daniel Gryniewicz) * rgw: maybe coredump when reload operator happened (`pr#29733 `_, Richard Bai(\xe7\x99\xbd\xe5\xad\xa6\xe4\xbd\x99)) * rgw: metadata refactoring (`pr#29118 `_, Casey Bodley, Yehuda Sadeh) * rgw: mgr/ansible: Change default realm and zonegroup (`pr#29793 `_, Sebastian Wagner) * rgw: mgr/dashboard: enable/disable MFA Delete on RGW bucket (`pr#31922 `_, Alfonso Mart\xc3\xadnez) * rgw: mgr/orchestrator: name rgw by client.rgw.$realm.$zone[.$id] (`pr#31890 `_, Sage Weil) * rgw: mitigate bucket list with max-entries excessively high (`pr#29179 `_, J. Eric Ivancich) * rgw: move bucket reshard checks out of write path (`pr#29852 `_, Casey Bodley) * rgw: move delimiter-based bucket listing/filtering logic to cls (`pr#30272 `_, J. Eric Ivancich) * rgw: move forward marker even in case of many rgw.none indexes (`pr#32513 `_, Ilsoo Byun) * rgw: Move upload_info declaration out of conditional (`pr#29559 `_, Adam C. Emerson) * rgw: multipart upload abort is best-effort (`issue#40526 `_, `pr#28724 `_, J. Eric Ivancich) * rgw: MultipartObjectProcessor supports stripe size > chunk size (`pr#32996 `_, Casey Bodley) * rgw: multisite log trimming only checks peers that sync from us (`issue#39283 `_, `pr#27567 `_, Casey Bodley) * rgw: nfs: skip empty (non-POSIX) path segments (`issue#38744 `_, `pr#26954 `_, Matt Benjamin) * rgw: nfs: svc-enable RGWLi (`pr#26981 `_, Matt Benjamin) * rgw: normalize v6 endpoint behaviour for the beast frontend (`issue#39038 `_, `pr#27270 `_, Abhishek Lekshmanan) * rgw: object expirer fixes (`pr#27870 `_, Abhishek Lekshmanan) * rgw: Object tags shouldnt work with deletemarker or multipart expiration (`issue#40405 `_, `pr#28617 `_, zhang Shaowen) * rgw: one log shard fails shouldnt block other shards process when reshard buckets (`pr#31155 `_, zhangshaowen) * rgw: One Rados Handle to Rule Them All (`pr#27102 `_, Adam C. Emerson) * rgw: orphan fixes (`pr#26412 `_, Abhishek Lekshmanan) * rgw: parse_copy_location defers url-decode (`issue#27217 `_, `pr#25498 `_, Casey Bodley) * rgw: perfcounters: add gc retire counter (`pr#26351 `_, Matt Benjamin) * rgw: permit rgw-admin to populate user info by access-key (`pr#28331 `_, Matt Benjamin) * rgw: Policy should be url_decode when assume_role (`pr#28704 `_, yuliyang) * rgw: prefix-delimiter listing: support >1 character delimiter (`pr#26863 `_, Matt Benjamin) * rgw: prevent bucket reshard scheduling if bucket is resharding (`pr#30610 `_, J. Eric Ivancich) * rgw: prevent LC from reading stale head when transitioning object (`pr#31214 `_, Ilsoo Byun) * rgw: project and return lc expiration from GET/HEAD and PUT ops (`pr#26160 `_, Matt Benjamin) * rgw: Project Zipper - Bucket (`pr#31436 `_, Daniel Gryniewicz) * rgw: Project Zipper - Bucketlist (`pr#30619 `_, Daniel Gryniewicz) * rgw: Project Zipper part 1 (`pr#28824 `_, Daniel Gryniewicz) * rgw: qa/suite/rgw/verify: valgrind on centos again! (`pr#32727 `_, Sage Weil) * rgw: qa/tasks/s3tests_java: move to gradle 6.0.1 (`pr#32335 `_, Sage Weil) * rgw: qa/tests: update s3a hadoop versions used for test (`pr#26100 `_, Vasu Kulkarni) * rgw: qa: remove force-branch from overrides of s3-tests (`pr#32462 `_, Ali Maredia) * rgw: qa: update s3-test download code for s3-test tasks (`pr#31839 `_, Ali Maredia) * rgw: queue like an Egyptian(`pr#26461 `_, Adam C. Emerson) * rgw: race condition between resharding and ops waiting on resharding (`issue#38990 `_, `pr#27223 `_, J. Eric Ivancich) * rgw: radosgw-admin flush user stats output (`pr#30669 `_, Abhishek Lekshmanan) * rgw: radosgw-admin zone placement rm and radosgw-admin zonegroup placement rm support --storage-class (`pr#31239 `_, yuliyang) * rgw: radosgw-admin: add --uid check in bucket list command (`pr#30194 `_, Vikhyat Umrao) * rgw: radosgw-admin: bucket sync status not caught up during full sync (`issue#40806 `_, `pr#29094 `_, Casey Bodley) * rgw: radosgw-admin: fix syncs_from in bucket sync status (`issue#40022 `_, `pr#28243 `_, Casey Bodley) * rgw: radosgw-admin: sync status displays id of shard furthest behind (`pr#32311 `_, Casey Bodley) * rgw: radosgw-admin: update help for max-concurrent-ios (`pr#30742 `_, Paul Emmerich) * rgw: reduce per-shard entry count during ordered bucket listing (`pr#30853 `_, J. Eric Ivancich) * rgw: reject bucket tagging requests and document unsupported (`pr#26952 `_, Casey Bodley) * rgw: relax es zone validity check (`pr#32290 `_, jiahuizeng) * rgw: release unused callback argument (`pr#32669 `_, Ilsoo Byun) * rgw: remove re-defined is_tagging_op in RGWHandler_REST_Bucket_S3 (`pr#29004 `_, zhang Shaowen) * rgw: remove unused bucket parameter in check_bucket_shards (`pr#31186 `_, zhang Shaowen) * rgw: remove unused last_run in reshard thread entry (`pr#31150 `_, zhangshaowen) * rgw: Replace COMPLETE_MULTIPART_MAX_LEN with rgw_max_put_param_size (`issue#38002 `_, `pr#26070 `_, Lei Liu) * rgw: replace direct calls to ioctx.operate() (`pr#28569 `_, Ali Maredia) * rgw: ReplaceKeyPrefixWith and ReplaceKeyWith can not set at the same \xe2\x80\xa6 (`pr#32609 `_, yuliyang) * rgw: reshard list may return more than specified max_entries (`pr#31355 `_, zhangshaowen) * rgw: rest client fixes for cloud sync XML outputs (`pr#27680 `_, Abhishek Lekshmanan) * rgw: return error if lock log shard fails (`pr#31344 `_, zhangshaowen) * rgw: return ERR_NO_SUCH_BUCKET early while evaluating bucket policy (`issue#38420 `_, `pr#26569 `_, Abhishek Lekshmanan) * rgw: rgw : Bucket mv, bucket chown and user rename utilities (`issue#35885 `_, `issue#24348 `_, `pr#28813 `_, Shilpa Jagannath, Marcus Watts) * rgw: rgw admin: add tenant argument to reshard cancel (`pr#26887 `_, Abhishek Lekshmanan) * rgw: rgw admin: disable stale instance delete in a multiste env (`pr#26852 `_, Abhishek Lekshmanan) * rgw: rgw multisite: add perf counters to data sync (`issue#38549 `_, `pr#26722 `_, Casey Bodley) * rgw: rgw multisite: avoid writing bilog entries on PREPARE and CANCEL (`pr#26755 `_, Casey Bodley) * rgw: rgw multisite: data sync checks empty next_marker for datalog (`issue#39033 `_, `pr#27276 `_, Casey Bodley) * rgw: rgw multisite: enforce spawn window for incremental data sync (`pr#32534 `_, Casey Bodley) * rgw: rgw multisite: fixes for concurrent version creation (`pr#31325 `_, Casey Bodley) * rgw: rgw/kafka: add ssl+sasl security to kafka (`pr#31834 `_, Yuval Lifshitz) * rgw: rgw/multisite: Dont allow certain radosgw-admin commands to run on non-master zone (`issue#39548 `_, `pr#28861 `_, Shilpa Jagannath) * rgw: rgw/multisite: warn if bucket chown command is run on non-master zone (`pr#32932 `_, Shilpa Jagannath) * rgw: rgw/multisite:RGWListBucketIndexesCR for data full sync pagination (`issue#39551 `_, `pr#28146 `_, Shilpa Jagannath) * rgw: rgw/notification: add opaque data (`pr#32723 `_, Yuval Lifshitz) * rgw: rgw/pubsub: add kafka notification endpoint (`pr#30960 `_, Yuval Lifshitz) * rgw: rgw/pubsub: fix doc on updates. fix multi-notifications (`pr#27931 `_, Yuval Lifshitz, Casey Bodley) * rgw: rgw/pubsub: fix records/event json format to match documentation (`pr#31926 `_, Yuval Lifshitz) * rgw: rgw/pubsub: handle subscription conf errors better (`pr#27530 `_, Yuval Lifshitz) * rgw: rgw/pubsub: notification filtering by object tags (`pr#31878 `_, Yuval Lifshitz) * rgw: rgw/pubsub: prevent kafka thread from spinning when there are no messages (`pr#31998 `_, Yuval Lifshitz) * rgw: rgw/pubsub: send notifications from multi-delete op (`pr#32155 `_, Yuval Lifshitz) * rgw: rgw/pubsub: service reordering issue (`pr#29877 `_, Yuval Lifshitz) * rgw: rgw/rgw_client_io_filters.h: print size_t the portable way (`pr#28838 `_, Kefu Chai) * rgw: rgw/rgw_crypt.cc: silence -Wsign-compare GCC warning (`pr#29151 `_, Kefu Chai) * rgw: rgw/rgw_main: auto set radosgws cpu affinity according to numa_node configuration (`pr#31001 `_, luo rixin) * rgw: rgw/rgw_op: Remove get_val from hotpath via legacy options (`pr#29943 `_, Mark Nelson) * rgw: rgw/rgw_rados: set pg_autoscale_bias=4 for omap pools (`pr#27375 `_, Sage Weil, Casey Bodley) * rgw: rgw/rgw_reshard: Dont dump RGWBucketReshard JSON in process_single_logshard (`pr#29894 `_, Mark Nelson) * rgw: rgw/rgw_user: add [[maybe_unused]] for silencing -Wunused-variable wa\xe2\x80\xa6 (`pr#30035 `_, Kefu Chai) * rgw: rgw/services: silence -Wunused-variable warning (`pr#30063 `_, Lan Liu) * rgw: RGW: add bucket permission verify when copy obj (`pr#29628 `_, NancySu05) * rgw: RGW: fix an endless loop error when to show usage (`pr#30470 `_, lvshuhua) * rgw: RGW: Set appropriate bucket quota value (when quota value is less than 0) (`pr#30920 `_, GaryHyg) * rgw: RGW:Listobjectsv2 (`pr#28102 `_, Albin Antony) * rgw: RGWCoroutine::call(nullptr) sets retcode=0 (`pr#29856 `_, Casey Bodley) * rgw: rgwfile reqid: absorbs rgw_file: allocate new id for continued request #25664 (`issue#37734 `_, `pr#28108 `_, Matt Benjamin, Tao Chen) * rgw: RGWPeriodPusher uses zone system key for inter-zonegroup messages (`issue#39287 `_, `pr#27576 `_, Casey Bodley) * rgw: RGWSI_User_Module filters .buckets objects out of user listing (`pr#29695 `_, Casey Bodley) * rgw: rgw_file: advance_mtime() should consider namespace expiration (`issue#40415 `_, `pr#28632 `_, Matt Benjamin) * rgw: rgw_file: all directories are virtual with respect to contents (`issue#40204 `_, `pr#28451 `_, Matt Benjamin) * rgw: rgw_file: avoid string::front() on empty path (`pr#32596 `_, Matt Benjamin) * rgw: rgw_file: dont deadlock in advance_mtime() (`pr#29560 `_, Matt Benjamin) * rgw: rgw_file: fix readdir eof() calc--caller stop implies !eof (`issue#40375 `_, `pr#28565 `_, Matt Benjamin) * rgw: rgw_file: include tenant when hashing bucket names (`issue#40118 `_, `pr#28370 `_, Matt Benjamin) * rgw: rgw_file: introduce fast S3 Unix stats (immutable) (`issue#40456 `_, `pr#28664 `_, Matt Benjamin) * rgw: rgw_file: permit lookup_handle to lookup root_fh (`pr#28440 `_, Matt Benjamin) * rgw: rgw_file: readdir: do not construct markers w/leading / (`pr#29670 `_, Matt Benjamin) * rgw: rgw_file: save etag and acl info in setattr (`pr#26439 `_, Tao Chen) * rgw: rgw_lc: use a new bl while encoding RGW_ATTR_LC (`pr#28049 `_, Abhishek Lekshmanan) * rgw: rgw_sync: drop ENOENT error logs from mdlog (`pr#26908 `_, Abhishek Lekshmanan) * rgw: s/std::map/boost::container::flat_map/ cls_bucket_list_ordered (`pr#28637 `_, Matt Benjamin) * rgw: S3 compatible pubsub API (`pr#27091 `_, Yuval Lifshitz) * rgw: s3: dont require a body in S3 put-object-acl (`pr#31987 `_, Matt Benjamin) * rgw: save an unnecessary copy of RGWEnv (`pr#28426 `_, Mark Kogan) * rgw: Select the std::bitset to resolv ambiguity (`pr#31126 `_, Willem Jan Withagen) * rgw: set bucket attr twice when delete lifecycle config (`pr#30862 `_, zhang Shaowen) * rgw: set correct storage class for append (`pr#31088 `_, yuliyang) * rgw: set correct storage class for post object upload (`pr#30956 `_, yuliyang) * rgw: set null version object acl issues (`issue#36763 `_, `pr#25044 `_, Tianshan Qu) * rgw: shard number must be non-negative when resharding the bucket (`pr#29037 `_, zhang Shaowen) * rgw: silence a -Wunused-function warning in pubsu (`pr#27578 `_, Casey Bodley) * rgw: Silence warning: control reaches end of non-void function (`issue#40747 `_, `pr#28809 `_, Jos Collin) * rgw: split mdlog/datalog trimming into separate files (`pr#27579 `_, Casey Bodley) * rgw: sts: add all http args to req_info (`pr#31661 `_, yuliyang) * rgw: support encoding-type param for list bucket multiparts (`pr#30993 `_, Abhishek Lekshmanan) * rgw: support radosgw-admin zone/zonegroup placement get command (`pr#30880 `_, jiahuizeng) * rgw: support specify user default placement and placement_tags when create or modify user (`pr#31185 `_, yuliyang) * rgw: svc.bucket: assign to optional<> using = (`pr#32433 `_, Kefu Chai) * rgw: swift: bugfix: https://tracker.ceph.com/issues/37765 (`pr#25962 `_, Andrey Groshev) * rgw: sync counters: drop spaces from counter names (`pr#27725 `_, Abhishek Lekshmanan) * rgw: sync with elastic search v7 (`pr#29637 `_, Chang Liu) * rgw: TempURL should not allow PUTs with the X-Object-Manifest (`issue#20797 `_, `pr#16659 `_, Radoslaw Zarzynski) * rgw: test/rgw: fix test_rgw_reshard_wait with -DHAVE_BOOST_CONTEXT=OFF (`pr#32811 `_, Yaakov Selkowitz) * rgw: test: modify iam tests to use a function to set bits (`pr#32808 `_, Abhishek Lekshmanan) * rgw: tests: Fix building with -DWITH_BOOST_CONTEXT=OFF (`pr#29430 `_, Ulrich Weigand) * rgw: the http response code of delete bucket should not be 204-no-content (`pr#30471 `_, Chang Liu) * rgw: Thread optional yield context through get_bucket_info call path (`pr#27898 `_, Ali Maredia) * rgw: thread option_yield through bucket index transaction prepare (`pr#28152 `_, Ali Maredia) * rgw: unexpected crash when creating bucket in librgw (`pr#26089 `_, Tao CHEN) * rgw: update op_mask of user via admin rest api (`issue#39084 `_, `pr#21154 `_, Ning Yao) * rgw: update the hash source for multipart entries during resharding (`pr#32617 `_, dongdong tao) * rgw: update the radosgw-admin reshard status (`issue#37615 `_, `pr#25496 `_, Mark Kogan) * rgw: updates to resharding documentation (`issue#39007 `_, `pr#27250 `_, J. Eric Ivancich) * rgw: url decode PutUserPolicy params (`pr#29578 `_, Abhishek Lekshmanan) * rgw: url encode common prefixes for List Objects response (`pr#30970 `_, Abhishek Lekshmanan) * rgw: usage dump_unsigned instead dump_int (`pr#28308 `_, yuliyang) * rgw: usage dump_unsigned instead dump_int in dump_usage_categories_info (`pr#25808 `_, yuliyang) * rgw: use bucket creation time from bucket instance info (`pr#32180 `_, Yehuda Sadeh) * rgw: use explicit to_string() overload for boost::string_ref (`issue#39611 `_, `pr#28013 `_, Casey Bodley) * rgw: use new Stopped state for special handling of bucket sync disable (`pr#33054 `_, Casey Bodley) * rgw: use STSEngine::authenticate when post upload with x_amz_security_token (`pr#31879 `_, yuliyang) * rgw: use the compatibilty function for pthread_setname (`pr#27456 `_, Willem Jan Withagen) * rgw: user policy: forward write requests to master zone (`pr#32476 `_, Abhishek Lekshmanan) * rgw: vstart: move [client.rgw] config into [client] (`pr#29778 `_, Casey Bodley) * rgw: vstart: only add --debug-ms=1 in RGWDEBUG (`pr#27409 `_, Casey Bodley) * rgw: warn on potential insecure mon connection (`pr#33777 `_, Yehuda Sadeh) * rgw: when resharding store progress json (`pr#30575 `_, Mark Kogan) * rgw: when you abort a multipart upload request, the quota may be not updated (`pr#29703 `_, Richard Bai(\xe7\x99\xbd\xe5\xad\xa6\xe4\xbd\x99)) * rgw: Zipper - RGWUser (`pr#32298 `_, Daniel Gryniewicz) * rgw: [RFC] rgw: raise default rgw_bucket_index_max_aio to 128 (`pr#28558 `_, Casey Bodley) * rgw: [rgw]:Validate bucket names as per revised s3 spec (`pr#26787 `_, Soumya Koduri) * seastar,crimson: pickup change to pin socket to fixed core (`pr#32797 `_, Kefu Chai) * seastar: pick up changes for better performance (`pr#28008 `_, Kefu Chai) * seastar: pick up latest changes and cleanups (`pr#29942 `_, Kefu Chai) * seastar: pick up the latest seastar (`pr#28709 `_, Kefu Chai) * seastar: pickup change to fix cgroups V2 support (`pr#32978 `_, Kefu Chai) * seastar: pickup the recent future optimizations (`pr#32296 `_, Radoslaw Zarzynski) * seastar: pickup unix domain socket support (`pr#30578 `_, Kefu Chai) * src/: silence GCC warnings (`pr#28684 `_, Adam C. Emerson, Kefu Chai) * src/msg/async/net_handler.cc: Fix compilation (`pr#31637 `_, Carlos Valiente) * src/script/kubejacker: Fix and simplify (`issue#39065 `_, `pr#27292 `_, Sebastian Wagner) * src/script: extract mypy config to mypy.ini (`pr#28264 `_, Alfonso Mart\xc3\xadnez) * src/telemetry: remove, now lives in ceph-telemetry.git (`pr#31170 `_, Dan Mick) * src: polish the wording (`pr#33224 `_, Jun Su) * stop.sh: add --crimson option (`pr#28676 `_, Kefu Chai) * stop.sh: do not try to contact mon unless cluster is up (`pr#32295 `_, Kefu Chai) * support RDMA NIC without SRQ in msg/async/rdma (`pr#29947 `_, Changcheng Liu, Roman Penyaev) * tasks/ceph_deploy: get rid of iteritems for python3 (`pr#30791 `_, Kyr Shatskyy) * telemetry: make server compensate for older mgr modules, elasticsearch (`pr#27802 `_, Dan Mick) * test/crimson: fix interpretability with perf_async_msgr (`pr#28913 `_, Yingxin Cheng) * tests,tools: ceph-objectstore-tool: call collection_bits() crashes on the meta col\xe2\x80\xa6 (`pr#31133 `_, David Zafman) * tests,tools: ceph-objectstore-tool: set log date format (`pr#29297 `_, Robert Church) * tests,tools: tools/ceph-dencoder: split types.h into smaller pieces (`issue#39595 `_, `pr#28359 `_, Kefu Chai) * tests,tools: tools/setup-virtualenv.sh: do not default to python2.7 (`pr#30379 `_, Nathan Cutler) * tests: add missing header cmath to test/mon/test_mon_memory_target.cc (`pr#30284 `_, Su Yue) * tests: ceph-object-corpus: pick up 15.0.0-539-g191ab33faf (`pr#27867 `_, Kefu Chai) * tests: cls/queue: add unit tests (`pr#33218 `_, Yuval Lifshitz) * tests: corrected issues with RBD tests under EL8 distros (`pr#32684 `_, Jason Dillaman) * tests: crimson/net: configure seastar to accept on a fixed core (`pr#32632 `_, Yingxin Cheng) * tests: crimson/test: add CBT based perf tests (`pr#29612 `_, Kefu Chai) * tests: crimson/test: v2 failover tests with crimson FailoverTestPeer (`pr#30162 `_, Yingxin Cheng) * tests: crush, test: update editor variables (`pr#30537 `_, Kefu Chai) * tests: fio_ceph_messenger: catch up v2 proto changes by using dummy auth (`pr#27264 `_, Roman Penyaev) * tests: import-generated.sh: use PATH to get ceph-dencoder (`pr#27573 `_, Changcheng Liu) * tests: introduce compiletest_cxx11_client for C++11 conformity (`pr#25395 `_, Radoslaw Zarzynski) * tests: lvm/deactivate: add unit tests, remove --all (`pr#32277 `_, Jan Fajerski) * tests: mgr/dashboard: ability to provide custom credentials for E2E tests (`pr#33549 `_, Alfonso Mart\xc3\xadnez) * tests: mgr/dashboard: Add linter for unclosed HTML tags (`issue#40686 `_, `pr#28916 `_, Patrick Nawracay) * tests: mgr/dashboard: add python-common to $PYTHONPATH (`pr#29525 `_, Kefu Chai) * tests: mgr/dashboard: Added breadcrumb tests to Manager modules and Alerts menu (`pr#26853 `_, Nathan Weinberg) * tests: mgr/dashboard: Added breadcrumb tests to NFS menu (`pr#26850 `_, Nathan Weinberg) * tests: mgr/dashboard: Added breadcrumb tests to Object Gateway menu items (`pr#25451 `_, Nathan Weinberg, Tiago Melo) * tests: mgr/dashboard: comment failing QA suites out (`pr#30864 `_, Tatjana Dehler) * tests: mgr/dashboard: disable pylints --py3k flag (`pr#30078 `_, Ernesto Puerta) * tests: mgr/dashboard: E2E test to verify Configuration editing functionality (`pr#29216 `_, Adam King, Rafael Quintero) * tests: mgr/dashboard: Explicitly type page variables (`pr#29324 `_, Adam King, Rafael Quintero) * tests: mgr/dashboard: Fix e2e host test (`pr#30377 `_, Tiago Melo) * tests: mgr/dashboard: fix existing issues in user integration tests (`pr#30789 `_, Tatjana Dehler) * tests: mgr/dashboard: fix stray requests/error in Grafana unit test (`pr#33572 `_, Patrick Seidensal) * tests: mgr/dashboard: fix tasks.mgr.dashboard.test_rgw suite (`pr#33426 `_, Alfonso Mart\xc3\xadnez) * tests: mgr/dashboard: fix tests in order to match pg num conventions (`pr#31906 `_, Tatjana Dehler) * tests: mgr/dashboard: Improve e2e script (`pr#29101 `_, Valentin Bajrami) * tests: mgr/dashboard: RBD Image Purge Trash, Move to Trash and Restore (`pr#29673 `_, Adam King, Rafael Quintero) * tests: mgr/dashboard: reactivate dashboard test suites (`pr#32005 `_, Tatjana Dehler) * tests: mgr/dashboard: Reduce code duplication through TableActionComponent UnitTests (`issue#40399 `_, `pr#28633 `_, Patrick Nawracay) * tests: mgr/dashboard: restore working directory after creating venv (`pr#32371 `_, Kefu Chai) * tests: mgr/dashboard: RGW bucket E2E Tests (`pr#28999 `_, Adam King, Rafael Quintero) * tests: mgr/dashboard: RGW user E2E Tests (`pr#29237 `_, Adam King, Rafael Quintero) * tests: mgr/dashboard: take portal_ip_addresses as a list (`pr#28495 `_, Kefu Chai) * tests: mgr/dashboard: Update formatting of e2e test files (`pr#29070 `_, Adam King, Rafael Quintero) * tests: mgr/dashboard: Updated existing E2E tests to match new format (`pr#27408 `_, Nathan Weinberg) * tests: mgr/dashboard: Verify fields on Configuration page (`pr#29583 `_, Adam King, Rafael Quintero) * tests: mgr/dashboard: Verify fields on OSDs page (`pr#29447 `_, Adam King, Rafael Quintero) * tests: mgr/dashboard: Wait for iSCSI target put and delete (`pr#30588 `_, Ricardo Marques) * tests: mgr/dashboard: Write E2E tests for pool creation, deletion and verification (`issue#40693 `_, `issue#38093 `_, `pr#28928 `_, Patrick Nawracay) * tests: mgr/orch: try harder when pickle fails to marshal an exception (`pr#33701 `_, Kefu Chai) * tests: mgr/ssh: add make check integration (`pr#31523 `_, Sebastian Wagner) * tests: mgr/tox: make run-tox.sh scripts more robust (`issue#39323 `_, `pr#27614 `_, Nathan Cutler) * tests: osd-backfill-space.sh test failed in TEST_backfill_multi_partial() (`issue#39333 `_, `pr#27769 `_, David Zafman) * tests: pybind/mgr: apply_drivegroups should return Sequence[Completion] (`pr#33977 `_, Kefu Chai) * tests: python: pin mypy requirement to mypy==0.770 (`pr#33926 `_, Sebastian Wagner) * tests: qa.tests: added smoke suite to the schedule on mimic,nautilus (`pr#28479 `_, Yuri Weinstein) * tests: qa/ceph-ansible: Disable dashboard (`pr#29916 `_, Brad Hubbard) * tests: qa/ceph-ansible: Move to ansible 2.8 (`issue#40602 `_, `pr#28803 `_, Brad Hubbard) * tests: qa/ceph-ansible: Move to Nautilus (`pr#27013 `_, Brad Hubbard) * tests: qa/ceph-ansible: Replace pgs with pg_num (`issue#40605 `_, `pr#28807 `_, Brad Hubbard) * tests: qa/ceph-ansible: Upgrade ansible version (`pr#33379 `_, Brad Hubbard) * tests: qa/cephadm/smoke: run on opensuse_15.1 (`pr#33338 `_, Nathan Cutler) * tests: qa/crontab/teuthology-cronjobs: fix suite-branch (`pr#27140 `_, Neha Ojha) * tests: qa/distros/all: add openSUSE 15.1, drop openSUSE 12.2 (`pr#30597 `_, Nathan Cutler) * tests: qa/distros: add SLE-12-SP3 and SLE-15-SP1 (`pr#31112 `_, Nathan Cutler) * tests: qa/orchestrator: do not test mon update 3 host1 (`pr#32023 `_, Sage Weil, Kefu Chai) * tests: qa/standalone/ceph-helpers: resurrect all OSD before waiting for health (`pr#28328 `_, Kefu Chai) * tests: qa/standalone/test_ceph_daemon: Fix ceph daemon standalone test (`pr#31440 `_, Thomas Bechtold) * tests: qa/suites/krbd: fsx with object-map and fast-diff (`pr#32376 `_, Ilya Dryomov) * tests: qa/suites/rados/cephadm/upgrade: add simple upgrade test (`pr#33343 `_, Sage Weil) * tests: qa/suites/rados/cephadm: deploy all monitoring components (`pr#33785 `_, Sage Weil) * tests: qa/suites/rados/perf/objectstore: do not symlink to qa/objectstore (`pr#30309 `_, Neha Ojha) * tests: qa/suites/rados/perf: test min recommended osd_memory_target (`pr#30347 `_, Neha Ojha) * tests: qa/suites/rados: whitelist POOL_APP_NOT_ENABLED warning (`pr#29763 `_, Kefu Chai) * tests: qa/suites/upgrade/nautilus-x/parallel: restart mgr.x before mons (`pr#33705 `_, Neha Ojha) * tests: qa/suites/upgrade: use correct branch names (`pr#27764 `_, Neha Ojha) * tests: qa/suites: do not test luminous-x upgrade path (`pr#27112 `_, Kefu Chai) * tests: qa/tasks/cbt.py: add support for client_endpoints (`pr#28522 `_, Neha Ojha) * tests: qa/tasks/cbt.py: change port to work with client_endpoints (`pr#28442 `_, Neha Ojha) * tests: qa/tasks/cbt.py: use git --depth 1 for faster clone (`pr#29597 `_, Kefu Chai) * tests: qa/tasks/ceph.py: quote in command line (`pr#33775 `_, Kefu Chai) * tests: qa/tasks/ceph.py: remove unused variables (`pr#31005 `_, Kefu Chai) * tests: qa/tasks/ceph2: add support for shell, packaged ceph-daemon (`pr#31891 `_, Sage Weil) * tests: qa/tasks/cephfs_test_runner: setattr to class not instance (`pr#32571 `_, Kefu Chai) * tests: qa/tasks/ceph_deploy: assume systemd and simplify shutdown wonkiness (`pr#29030 `_, Sage Weil) * tests: qa/tasks/ceph_deploy: install python3.6 instead of python3.4 for py3 tests (`pr#27504 `_, Kefu Chai) * tests: qa/tasks/ceph_manager.py: ignore errors in test_pool_min_size (`issue#40533 `_, `pr#28731 `_, Kefu Chai) * tests: qa/tasks/ceph_manager: capture stderr for COT (`pr#33805 `_, Kefu Chai) * tests: qa/tasks/ceph_manager: do not panic if pg_num_target is missing (`pr#30973 `_, Kefu Chai) * tests: qa/tasks/ceph_manager: do not pick a pool is there is no pools (`pr#32519 `_, Kefu Chai) * tests: qa/tasks/mgr/dashboard/test_health: add allow_unknown in mgr_map (`pr#30517 `_, Kefu Chai) * tests: qa/tasks/mgr/dashboard/test_health: add missing field for test_full_health (`pr#29615 `_, Kefu Chai) * tests: qa/tasks/mgr/dashboard/test_health: update schema (`pr#32122 `_, Tatjana Dehler) * tests: qa/tasks/mgr/dashboard/test_mgr_module: sync w/ telemetry (`pr#29461 `_, Kefu Chai) * tests: qa/tasks/mgr/dashboard: set pg_num to 16 (`pr#32575 `_, Kefu Chai) * tests: qa/tasks/mgr/test_orchestrator_cli: fix mon update test (`pr#32428 `_, Kefu Chai) * tests: qa/tasks/mgr/test_orchestrator_cli: fix service action tests (`pr#32518 `_, Kefu Chai) * tests: qa/tasks/mgr/test_orchestrator_cli: fix test_host_ls (`pr#33477 `_, Sage Weil) * tests: qa/tasks/mgr/test_progress.py: fix bug in 9b4dbf0 (`pr#29385 `_, Kamoltat (Junior) Sirivadhna) * tests: qa/tasks/mgr/test_progress.py: s/ev/new_event/ (`issue#40618 `_, `pr#29368 `_, Kefu Chai) * tests: qa/tasks/mgr: set mgr module option with --force (`pr#32588 `_, Kefu Chai) * tests: qa/tasks/vstart_runner: write string to StringIO (`pr#32438 `_, Kefu Chai) * tests: qa/tasks: call super classs setUp() (`pr#33325 `_, Kefu Chai) * tests: qa/tasks: py3 compat (tasks exercised by rados suites) (`pr#33709 `_, Kyr Shatskyy, Kefu Chai) * tests: qa/tasks: use items() for py3 compatibility (`pr#30813 `_, Kyr Shatskyy) * tests: qa/tests: filtered in only trusty (`issue#40195 `_, `pr#28439 `_, Yuri Weinstein) * tests: qa/tests: added mimic-x on master run (`pr#29428 `_, Yuri Weinstein) * tests: qa/tests: added nautilus-p2p to cron (`pr#27218 `_, Yuri Weinstein) * tests: qa/tests: added nautilus-x run (`pr#27252 `_, Yuri Weinstein) * tests: qa/tests: added new client-upgrade-\\*-nautilus suites for jewel, luminous, mimic (`pr#28067 `_, Yuri Weinstein) * tests: qa/tests: added ragweed coverage to stress-split\\* upgrade suites (`issue#40467 `_, `issue#40452 `_, `pr#28931 `_, Yuri Weinstein) * tests: qa/tests: added ragweed coverage to stress-split\\* upgrade suites (`issue#40467 `_, `issue#40452 `_, `pr#28932 `_, Yuri Weinstein) * tests: qa/tests: added rgw into upgrade sequence to improve coverage (`pr#29406 `_, Yuri Weinstein) * tests: qa/tests: reduced distro to run to be random (`pr#28435 `_, Yuri Weinstein) * tests: qa/tests: reduced frequency for luminous and mimic runs (`pr#27057 `_, Yuri Weinstein) * tests: qa/tests: removed all runs for luminous - EOL (`pr#33186 `_, Yuri Weinstein) * tests: qa/tests: removed upgrade/client-upgrade-hammer becasue ubuntu 14.04 \xe2\x80\xa6 (`pr#28518 `_, Yuri Weinstein) * tests: qa/tests: removed `1node` and `systemd` tests as ceph-deploy is not actively developed (`issue#40207 `_, `issue#40208 `_, `pr#28455 `_, Yuri Weinstein) * tests: qa/valgrind.supp: generalize the whiterule for aes-128-gcm to help rgw suite (`issue#38827 `_, `pr#28305 `_, Radoslaw Zarzynski) * tests: qa/workunits/cephadm/test_cephadm: drop stray exit 0 (`pr#32622 `_, Sage Weil) * tests: qa/workunits/cephtool/test.sh: a handful fixes (`pr#31689 `_, Kefu Chai) * tests: qa/workunits/mon/config.sh: s|bin/ceph|ceph| (`pr#27147 `_, Kefu Chai) * tests: qa/workunits/rados/test_crash.sh: do not rm coredump (`pr#32883 `_, Kefu Chai) * tests: qa/workunits/rados/test_envlibrados_for_rocksdb: accomodate rocksdb c\xe2\x80\xa6 (`pr#32143 `_, Kefu Chai) * tests: qa/workunits/rados/test_envlibrados_for_rocksdb: install newer cmake (`pr#29584 `_, Kefu Chai) * tests: qa/workunits/rados/test_librados_build.sh: download from current branch (`pr#31693 `_, Kefu Chai) * tests: qa/workunits/rados/test_librados_build.sh: install build deps (`pr#28484 `_, Kefu Chai) * tests: qa/workunits/rest: Better detection of rest url (`pr#26604 `_, Brad Hubbard) * tests: qa: add .qa link (`pr#32363 `_, Patrick Donnelly) * tests: qa: Add basic mypy support for the qa directory (`pr#32495 `_, Thomas Bechtold) * tests: qa: add path to device output schema (`pr#32427 `_, Kefu Chai) * tests: qa: add RHEL 7.7 and use as RHEL7 default (`pr#29908 `_, Patrick Donnelly) * tests: qa: correct zap disk with ceph-deploy tool (`pr#31312 `_, Changcheng Liu, Alfredo Deza) * tests: qa: distro helper symlinks (`pr#28371 `_, Patrick Donnelly) * tests: qa: enable CRB repo for RHEL8 (`pr#32426 `_, Kefu Chai) * tests: qa: enable dashboard tests to be run with --suite rados/dashboard (`pr#30434 `_, Nathan Cutler) * tests: qa: Enable flake8 tox and fix failures (`pr#32129 `_, Thomas Bechtold) * tests: qa: fix all the fsx.sh-invoking yaml files to install dependencies (`pr#33959 `_, Greg Farnum) * tests: qa: fix lingering ceph-mgr-ssh -> ceph-mgr-cephadm refs (`pr#32250 `_, Sage Weil) * tests: qa: get rid of iterkeys for py3 compatibility (`pr#30873 `_, Kyr Shatskyy) * tests: qa: kernel.sh: update for read-only changes (`pr#31773 `_, Ilya Dryomov) * tests: qa: krbd_exclusive_option.sh: fixup for json.tool ordering change (`pr#32358 `_, Ilya Dryomov) * tests: qa: krbd_exclusive_option.sh: update for recent kernel changes (`pr#32088 `_, Ilya Dryomov) * tests: qa: rbd_workunit_suites_fsx: install build dependencies (`pr#33412 `_, Ilya Dryomov) * tests: qa: run cephadm/smoke on opensuse 15.2 instead of 15.1 (`pr#33535 `_, Nathan Cutler) * tests: qa: update krbd tests for python3 (`pr#31968 `_, Ilya Dryomov) * tests: qa: update krbd_blkroset.t and add krbd_get_features.t (`pr#31771 `_, Ilya Dryomov) * tests: qa: whitelist FS_DEGRADED (`pr#32549 `_, Kefu Chai) * tests: remove spurious whitespace (`pr#33848 `_, Milind Changire) * tests: Revert qa/tasks/cbt: include py2 deps on ubuntu for now (`pr#32512 `_, Kefu Chai) * tests: script/run-cbt.sh: add support for ceph-osd testing (`pr#30811 `_, Radoslaw Zarzynski) * tests: script/run-cbt.sh: always use python3 (`pr#30321 `_, Kefu Chai) * tests: script/run-cbt.sh: check option correctly (`pr#30287 `_, Kefu Chai) * tests: script/run-cbt.sh: set fs.aio-max-nr for seastar (`pr#31667 `_, Kefu Chai) * tests: script/run_mypy: Support mypy 0.740 (`pr#31192 `_, Sebastian Wagner) * tests: script/run_tox.sh: do not use python2 if we have python3 (`pr#31751 `_, Kefu Chai) * tests: selinux: Update the policy for RHEL8 (`pr#28290 `_, Boris Ranto) * tests: src/test, qa/suites/rados/thrash: add dedup test (`pr#28983 `_, Myoungwon Oh) * tests: src/test/compressor: Add missing gtest (`pr#33731 `_, Willem Jan Withagen) * tests: src/test: fix creating two different objects for testing chunked object (`issue#39282 `_, `pr#27667 `_, Myoungwon Oh) * tests: src/valgrind.supp: replace with the teuthologys file. Whitelist OpenSSL (`pr#27265 `_, Radoslaw Zarzynski) * tests: tasks/ceph: drop testdir replacement in skeleton_config (`pr#30829 `_, Kyr Shatskyy) * tests: tasks/ceph: get rid of iteritems for python3 (`pr#30792 `_, Kyr Shatskyy) * tests: test/bench_log: add usage function (`pr#31723 `_, Xuqiang Chen) * tests: test/bufferlist.cc: encode/decode int64_t instead of long (`pr#29881 `_, Alexandre Oliva) * tests: test/cli/ceph-conf: fix test (`pr#28818 `_, Kefu Chai) * tests: test/cli: Make the ceph-conf test more liberal (`pr#29405 `_, Willem Jan Withagen) * tests: test/common/test_util: skip it if /etc/os-release does not exist (`pr#27927 `_, Kefu Chai) * tests: test/crimson/: use 256M mem and 1 cpu core for each test (`pr#29152 `_, Kefu Chai) * tests: test/crimson/perf_async_msgr: remove unsued header file (`pr#28707 `_, Jianpeng Ma) * tests: test/crimson: add acceptable section to tests (`pr#30315 `_, Kefu Chai) * tests: test/crimson: add unit-test for ceph::net::Socket (`pr#28623 `_, Yingxin Cheng) * tests: test/crimson: cbt test does rand-reads instead of seq-reads (`pr#30794 `_, Radoslaw Zarzynski) * tests: test/crimson: fix a compiler error (`pr#27883 `_, Jianpeng Ma) * tests: test/crimson: fix build of unittest_seastar_monc (`pr#27515 `_, Kefu Chai, Yingxin Cheng) * tests: test/crimson: fix FTBFS (`pr#28902 `_, Kefu Chai) * tests: test/crimson: fix msgr test of ref counter racing (`issue#36405 `_, `pr#28362 `_, Yingxin Cheng) * tests: test/crimson: implement a remote async TestPeer for crimson msgr tests (`pr#31156 `_, Yingxin Cheng) * tests: test/crimson: improved perf_crimson_msgr with timer and sampled lat (`pr#28542 `_, Yingxin Cheng) * tests: test/crimson: include writes in perf_crimson/async_server (`pr#27429 `_, Yingxin Cheng) * tests: test/crimson: lower the bar for cbt test (`pr#30458 `_, Kefu Chai) * tests: test/crimson: remove unittest_seastar_socket temporarily (`pr#32720 `_, Kefu Chai) * tests: test/crimson: update to accomodate Dispatcher changes (`pr#27093 `_, Kefu Chai) * tests: test/crimson: v2 failover tests with ack/keepalive (`pr#30803 `_, Yingxin Cheng) * tests: test/crimson: verify msgr v2 behavior with different policies (`pr#30925 `_, Yingxin Cheng) * tests: test/erasure-code: add exception handling to k & m (`pr#30087 `_, Hang Li) * tests: test/fio/fio_ceph_messenger: make exec multi client on the same host (`pr#28464 `_, Jianpeng Ma) * tests: test/fio: fix a compiler error (`pr#27880 `_, Jianpeng Ma) * tests: test/fio: introduce fio ioengine: fio_ceph_messenger (`pr#24678 `_, Roman Penyaev) * tests: test/kv_store_bench: Fix double free error (`pr#32439 `_, Xuqiang Chen, luo rixin) * tests: test/librados: avoid residual crush rule after test case execution (`issue#40970 `_, `pr#29341 `_, Bingyi Zhang) * tests: test/librados: free AioCompletion using AioCompletion::release() (`pr#30204 `_, Kefu Chai) * tests: test/librados: use GTEST_SKIP() to skip test (`pr#32770 `_, Kefu Chai) * tests: test/msgr: fix ComplexTest fail when using DPDK protocal stack (`pr#31910 `_, Chunsong Feng) * tests: test/msgr: make ceph_perf_msgr_client/server work (`pr#28842 `_, Jianpeng Ma) * tests: test/objectstore: silence -Wsign-compare warning (`pr#27750 `_, Kefu Chai) * tests: test/old: remove stale tests (`pr#29124 `_, Kefu Chai) * tests: test/pybind/test_ceph_argparse.py: pg_num of pool creation now optional (`pr#30535 `_, xie xingguo) * tests: test/python: remove stale tests (`pr#29413 `_, Kefu Chai) * tests: test/TestOSDScrub: fix mktime() error (`pr#33430 `_, luo rixin) * tests: test/test_socket: fix dispatch_sockets() unexpected exception (`pr#33482 `_, luo rixin) * tests: test/test_weighted_shuffle: enlarge epsilon (`pr#27181 `_, Kefu Chai) * tests: test/unittest_bluefs: always remove temp bdev file (`pr#29676 `_, Kefu Chai) * tests: test/venv: do not hardwire to py2.7 for tox tests (`pr#29761 `_, Willem Jan Withagen) * tests: test: Add flush_pg_stats to avoid race with getting num_shards_repaired (`pr#33776 `_, David Zafman) * tests: test: Add `#include ` (`pr#27455 `_, Willem Jan Withagen) * tests: test: Allow fractional milliseconds to make test possible (`pr#30220 `_, David Zafman) * tests: test: do not include unnecessary includes (`pr#30065 `_, Kefu Chai) * tests: test: Do not test unicode if boost::spirit >= 1.72 (`pr#32388 `_, Willem Jan Withagen) * tests: test: Expect being off by up to 2 and make sure all PGs are active+clean (`pr#33566 `_, David Zafman) * tests: test: Fix failing ceph_objectstore_tool.py test (`pr#33593 `_, David Zafman) * tests: test: Fix race with osd restart and doing a scru (`pr#32039 `_, David Zafman) * tests: test: fix unused asserts variable in ceph_test_osd_stale_read.cc (`pr#32789 `_, Radoslaw Zarzynski) * tests: test: Fix wait_for_state() to wait for a PG to get into a state (`pr#32628 `_, David Zafman) * tests: test: Ignore OSD_SLOW_PING_TIME\\* if injecting socket failures (`pr#30714 `_, David Zafman) * tests: test: move bluestore dependent code under WITH_BLUESTORE (`pr#31335 `_, Willem Jan Withagen) * tests: test: remove Dockerfile for centos7 and add Dockerfile for centos8 (`pr#33452 `_, Kefu Chai) * tests: test: remove useless ASSERT_XXX macros for rgw test (`pr#30062 `_, Zhi Zhang) * tests: test: silence warning unused variable nvme (`pr#33650 `_, Jos Collin) * tests: test: Update pg log test for new trimming behavior (`pr#32945 `_, David Zafman) * tests: use python3 compatible print (`pr#30758 `_, Kyr Shatskyy) * tests: vstart.sh: Make sure mkdir succeeds (`pr#30005 `_, Willem Jan Withagen) * test_alien_echo: update to use crimson:: namespace (`pr#31135 `_, Samuel Just) * test_cephadm.sh: pass --fsid to shell command (`pr#32389 `_, Sage Weil) * test_cephadm: use container shell for ceph cmds (`pr#32627 `_, Michael Fritch) * tools: add maxread in rados listomapkeys (`pr#30637 `_, lvshuhua) * tools: adding ceph level immutable obj cache daemon (`pr#25545 `_, Yuan Zhou, Dehao Shang) * tools: backport-create-issue: flush line before overprinting (`pr#31688 `_, Nathan Cutler) * tools: backport-create-issue: read redmine key from file (`pr#31533 `_, Tiago Melo) * tools: backport-create-issue: resolve parent if all backports resolved/rejected (`pr#30752 `_, Nathan Cutler) * tools: backport-create-issue: resolve parent only if parent has backport issues (`pr#31753 `_, Nathan Cutler) * tools: backport-resolve-issue: narrow regular expression and read key/token from files (`pr#31594 `_, Nathan Cutler) * tools: backport-resolve-issue: populate tracker_description method (`pr#33105 `_, Nathan Cutler) * tools: backport-resolve-issue: recognize that Target version is populated and prune duplicate URLs (`pr#31247 `_, Nathan Cutler) * tools: backport-resolve-issue: resolve multiple backport issues (`pr#30988 `_, Nathan Cutler) * tools: backport-resolve-issue: use Basic Authentication instead of access_token (`pr#33173 `_, Nathan Cutler) * tools: build-integration-branch: dont fail on existing branch (`pr#33093 `_, Sage Weil) * tools: build-integration-branch: take PRs in chronological order (`pr#31132 `_, Nathan Cutler) * tools: ceph-backport.sh: allow user to specify --fork explicitly (`pr#31734 `_, Nathan Cutler) * tools: ceph-backport.sh: automate setting of milestone and component label, implement --version option (`pr#30725 `_, Nathan Cutler) * tools: ceph-backport.sh: cherry-pick individual commits (`pr#30097 `_, Jan Fajerski) * tools: ceph-backport.sh: fix setup routine (`pr#33456 `_, Nathan Cutler) * tools: ceph-backport.sh: guess component with --existing-pr (`pr#31419 `_, Nathan Cutler) * tools: ceph-backport.sh: implement --milestones feature and more-careful vetting (`pr#30879 `_, Nathan Cutler) * tools: ceph-backport.sh: implement interactive setup routine and new options (`pr#31366 `_, Nathan Cutler) * tools: ceph-backport.sh: use Basic Authentication instead of access_token (`pr#33182 `_, Nathan Cutler) * tools: ceph-conf: added --show-config-value to usage (`pr#29981 `_, James McClune) * tools: ceph-crash: use open(..,r) to read bytes for Python3 (`issue#40781 `_, `pr#29053 `_, Dan Mick) * tools: ceph-daemon: ExecStart=/bin/bash script (`pr#31319 `_, Sage Weil) * tools: ceph-daemon: fix typo in the output_pub_ssh_key argument (`pr#31337 `_, John McGowan) * tools: ceph-daemon: Fix `ls` cmd for legacy confs (`pr#31329 `_, Michael Fritch) * tools: ceph-monstore-tool: print out caps when rebuilding monstore (`pr#27340 `_, Kefu Chai) * tools: ceph-objectstore-tool: return 0 if incmap is sane (`pr#29704 `_, Kefu Chai) * tools: ceph-objectstore-tool: update-mon-db: do not fail if incmap is missing (`pr#29571 `_, Kefu Chai) * tools: ceph.in: fix verbose print (`pr#29486 `_, luo.runbing) * tools: cls: add timeindex types to ceph-dencoder (`pr#27780 `_, Abhishek Lekshmanan) * tools: github/codeowners: add ceph-volume (`pr#31883 `_, Jan Fajerski) * tools: github: Add CODEOWNERs for designated code-owner reviews (`pr#29451 `_, Ernesto Puerta) * tools: no-mon-config switch for ceph-objectstore-tool (`pr#26717 `_, Igor Fedotov) * tools: pin the version of breathe that works with Python2 (`pr#27721 `_, Alfredo Deza) * tools: script/backport-create-issue: add --resolve-parent feature (`pr#29904 `_, Nathan Cutler) * tools: script/backport-create-issue: handle long Redmine issue names (`pr#27887 `_, Nathan Cutler) * tools: script/backport-resolve-issue: better error message (`pr#30187 `_, Nathan Cutler) * tools: script/backport-resolve-issue: handle tracker URLs better (`pr#29950 `_, Nathan Cutler) * tools: script/ceph-backport-sh: add access_token parameter to all ghub api c\xe2\x80\xa6 (`pr#29261 `_, Jan Fajerski) * tools: script/ceph-backport.sh: Add prepare function (`pr#28446 `_, Tiago Melo) * tools: script/ceph-backport.sh: Allow to set component label (`pr#29318 `_, Tiago Melo) * tools: script/ceph-backport.sh: allow user to specify remote repo (`pr#27233 `_, Kefu Chai) * tools: script/ceph-backport.sh: carry https through to logical conclusion (`pr#29743 `_, Nathan Cutler) * tools: script/ceph-backport.sh: Fix verification of git repository (`pr#30398 `_, Tiago Melo) * tools: script/ceph-backport.sh: make the script idempotent (`pr#30106 `_, Nathan Cutler) * tools: script/ceph-backport.sh: Use secure access for tracker.ceph.com (`pr#29438 `_, Willem Jan Withagen) * tools: script/ceph-backport.sh: wholesale refactor (`pr#29957 `_, Nathan Cutler) * tools: script/ceph-release-notes: alternate merge commit format (`pr#27281 `_, Nathan Cutler) * tools: script/ptl-tool: update for python3 (`pr#29095 `_, Patrick Donnelly) * tools: script/run_mypy: Sort groups (`pr#28225 `_, Sebastian Wagner) * tools: script/run_tox.sh: remove unused code (`pr#30386 `_, Kefu Chai) * tools: script/sepia_bt.sh: remove stale script (`pr#29129 `_, Kefu Chai) * tools: script: add backport-resolve-issue (`pr#29797 `_, Nathan Cutler) * tools: script: enable nautilus in backport scripts (`pr#26973 `_, Nathan Cutler) * tools: script: Obtain milestones via github API (`pr#27221 `_, Lenz Grimmer) * tools: script: raw_input was renamed to input in py3 (`pr#30346 `_, Patrick Donnelly) * tools: scripts/kubejacker: Fix mgr_plugins target for centos (`pr#28078 `_, Sebastian Wagner) * tools: scripts/run_mypy: add .gitignore (`pr#27118 `_, Sebastian Wagner) * tools: scripts: use https url for redmine (`pr#29536 `_, Patrick Donnelly) * tools: src/script/backport-create-issue: implement --force option (`pr#30571 `_, Nathan Cutler) * tools: src/script/check_commands.sh: fix grep regex class range (`pr#29161 `_, Valentin Bajrami) * tools: src/script/unhexdump-C: script to reverse a hexdump -C style hexdump (`pr#29098 `_, Sage Weil) * tools: stop.sh: use bash shell to solve syntax error (`pr#32263 `_, luo rixin) * tools: tool/ceph-conf: s/global_pre_init()/global_init()/ (`issue#7849 `_, `pr#29058 `_, Kefu Chai) * tools: tool: ceph_monstore_tool: --readable=0 => --readable (`pr#32265 `_, simon gao) * tools: tools/ceph-kvstore-tool: print db stats (`pr#27162 `_, Igor Fedotov) * tools: tools/osdmaptool.cc: do not use deprecated std::random_shuffle() (`pr#31990 `_, Kefu Chai) * tools: tools/rados: update advisory lock break usage with --lock-cookie required (`pr#31348 `_, Zhi Zhang) * tools: vstart.sh: fix CEPH_PORT check and cleanups (`pr#26782 `_, Changcheng Liu, Kefu Chai) * tools: vstart: add --inc-osd option (`pr#30512 `_, xie xingguo) * tools: vstart: add new option to pass list of block devices to bluestore (`pr#27518 `_, Jeff Layton) * tools: vstart: fix error when getting CMake variables with the same prefix (`pr#31962 `_, Kiefer Chang) * tools: vstart: fix run() invocation for rgw (`pr#28386 `_, Casey Bodley) * Update grafana dashboards (`issue#39652 `_, `pr#28043 `_, Jan Fajerski) * vstart.sh: add an option to use crimson-osd (`pr#27108 `_, chunmei Liu, Kefu Chai) * vstart.sh: correct ceph-run path (`pr#27968 `_, Changcheng Liu) * vstart.sh: fix install of cephadm ssh keys from ~/.ssh (`pr#33647 `_, Sage Weil) * vstart.sh: Fix problem that all extra_conf got merged into single line (`pr#28586 `_, Adam Kupczyk) * vstart.sh: move extra_seastar_args up in vstart.sh (`pr#32366 `_, Chunmei Liu) * vstart.sh: unify the indent (`pr#27995 `_, Kefu Chai, Richael Zhuang) * vstart_runner: split unicode arguments into lists (`pr#28561 `_, Rishabh Dave) .. _announcement: https://lists.fedoraproject.org/archives/list/epel-announce@lists.fedoraproject.org/message/EGUMKAIMPK2UD5VSHXM53BH2MBDGDWMO/ .. _Bucket Notifications: ../../radosgw/notifications .. _HashiCorp Vault Integration: ../../radosgw/vault .. _Multisite Sync Policy: ../../radosgw/multisite-sync-policy