From e6918187568dbd01842d8d1d2c808ce16a894239 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 21 Apr 2024 13:54:28 +0200 Subject: Adding upstream version 18.2.2. Signed-off-by: Daniel Baumann --- doc/releases/mimic.rst | 4475 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 4475 insertions(+) create mode 100644 doc/releases/mimic.rst (limited to 'doc/releases/mimic.rst') diff --git a/doc/releases/mimic.rst b/doc/releases/mimic.rst new file mode 100644 index 000000000..c811556e3 --- /dev/null +++ b/doc/releases/mimic.rst @@ -0,0 +1,4475 @@ +===== +Mimic +===== + +Mimic is the 13th stable release of Ceph. It is named after the mimic +octopus (thaumoctopus mimicus). + +v13.2.10 Mimic +============== + +This is the tenth bugfix release of Ceph Mimic, this release fixes a RGW +vulnerability affecting mimic, and we recommend that all mimic users upgrade. + +Notable Changes +--------------- +* CVE 2020 12059: Fix an issue with Post Object Requests with Tagging + (`issue#44967 `_, Lei Cao, Abhishek + Lekshmanan) + +v13.2.9 Mimic +============= + +This is the ninth and very likely the last stable release in the Ceph Mimic +stable release series. This release fixes bugs across all components and also +contains a RGW security fix. We recommend all mimic users to upgrade to this +version. + +Notable Changes +--------------- + +* CVE-2020-1760: Fixed XSS due to RGW GetObject header-splitting + +* 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 1 of + the racks. In those cases, the configuration value can be increased. + +* The ``cephfs-data-scan scan_links`` command now automatically repair inotables + and snaptable. + + +Changelog +--------- + +* bluestore: os/bluestore: fix improper setting of STATE_KV_SUBMITTED (`pr#31673 `_, Igor Fedotov) +* ceph-volume/batch: check lvs list before access (`pr#34479 `_, Jan Fajerski) +* ceph-volume/batch: fail on filtered devices when non-interactive (`pr#33201 `_, Jan Fajerski) +* ceph-volume/batch: return success when all devices are filtered (`pr#34476 `_, Jan Fajerski) +* ceph-volume/lvm/activate.py: clarify error message: fsid refers to osd_fsid (`pr#32865 `_, Yaniv Kaul) +* ceph-volume/test: patch VolumeGroups (`pr#32559 `_, Jan Fajerski) +* ceph-volume: Dereference symlink in lvm list (`pr#32876 `_, Benoît Knecht) +* ceph-volume: add db and wal support to raw mode (`pr#33622 `_, Sébastien Han) +* ceph-volume: add methods to pass filters to pvs, vgs and lvs commands (`pr#33215 `_, Rishabh Dave) +* ceph-volume: add proper size attribute to partitions (`pr#32529 `_, Jan Fajerski) +* ceph-volume: add raw mode (`pr#33580 `_, Jan Fajerski, Sage Weil, Guillaume Abrioux) +* ceph-volume: add sizing arguments to prepare (`pr#33578 `_, Jan Fajerski) +* ceph-volume: add utility functions (`pr#32544 `_, Mohamad Gebai) +* ceph-volume: allow raw block devices everywhere (`pr#32869 `_, Jan Fajerski) +* ceph-volume: allow to skip restorecon calls (`pr#32530 `_, Alfredo Deza) +* ceph-volume: avoid calling zap_lv with a LV-less VG (`pr#33610 `_, Jan Fajerski) +* ceph-volume: batch bluestore fix create_lvs call (`pr#33579 `_, Jan Fajerski) +* ceph-volume: batch bluestore fix create_lvs call (`pr#33623 `_, Jan Fajerski) +* ceph-volume: check if we run in an selinux environment (`pr#32866 `_, Jan Fajerski) +* ceph-volume: check if we run in an selinux environment, now also in py2 (`pr#32867 `_, Jan Fajerski) +* ceph-volume: devices/simple/scan: Fix string in log statement (`pr#34444 `_, Jan Fajerski) +* ceph-volume: don't create osd['block.db'] by default (`pr#33626 `_, Jan Fajerski) +* ceph-volume: don't remove vg twice when zapping filestore (`pr#33615 `_, Jan Fajerski) +* ceph-volume: finer grained availability notion in inventory (`pr#33606 `_, Jan Fajerski) +* ceph-volume: fix is_ceph_device for lvm batch (`pr#33608 `_, Jan Fajerski, Dimitri Savineau) +* ceph-volume: fix the integer overflow (`pr#32872 `_, dongdong tao) +* ceph-volume: import mock.mock instead of unittest.mock (py2) (`pr#32871 `_, Jan Fajerski) +* ceph-volume: lvm deactivate command (`pr#33208 `_, Jan Fajerski) +* ceph-volume: lvm/deactivate: add unit tests, remove --all (`pr#32862 `_, Jan Fajerski) +* ceph-volume: lvm: get_device_vgs() filter by provided prefix (`pr#33617 `_, Jan Fajerski, Yehuda Sadeh) +* ceph-volume: make get_devices fs location independent (`pr#33124 `_, Jan Fajerski) +* ceph-volume: minor clean-up of "simple scan" subcommand help (`pr#32557 `_, Michael Fritch) +* ceph-volume: mokeypatch calls to lvm related binaries (`pr#31406 `_, Jan Fajerski) +* ceph-volume: pass journal_size as Size not string (`pr#33611 `_, Jan Fajerski) +* ceph-volume: rearrange api/lvm.py (`pr#31407 `_, Rishabh Dave) +* ceph-volume: refactor listing.py + fixes (`pr#33603 `_, Jan Fajerski, Rishabh Dave, Theofilos Mouratidis, Guillaume Abrioux) +* ceph-volume: reject disks smaller then 5GB in inventory (`issue#40776 `_, `pr#32528 `_, Jan Fajerski) +* ceph-volume: silence 'ceph-bluestore-tool' failures (`pr#33605 `_, Sébastien Han) +* ceph-volume: skip missing interpreters when running tox tests (`pr#33489 `_, Andrew Schoen) +* ceph-volume: skip osd creation when already done (`pr#33607 `_, Guillaume Abrioux) +* ceph-volume: strip _dmcrypt suffix in simple scan json output (`pr#33618 `_, Jan Fajerski) +* ceph-volume: use correct extents if using db-devices and >1 osds_per_device (`pr#32875 `_, Fabian Niepelt) +* ceph-volume: use fsync for dd command (`pr#31552 `_, Rishabh Dave) +* ceph-volume: use get_device_vgs in has_common_vg (`pr#33609 `_, Jan Fajerski) +* ceph-volume: util: look for executable in $PATH (`pr#32861 `_, Shyukri Shyukriev) +* cephfs: cephfs: osdc/objecter: Fix last_sent in scientific format and add age to ops (`pr#31384 `_, Varsha Rao) +* cephfs: cephfs: test_volume_client: declare only one default for python version (`issue#40460 `_, `pr#30110 `_, Rishabh Dave) +* cephfs: client: more precise CEPH_CLIENT_CAPS_PENDING_CAPSNAP (`pr#31283 `_, "Yan, Zheng") +* cephfs: client: remove Inode.dir_contacts field and handle bad whence value to llseek gracefully (`pr#31380 `_, Jeff Layton) +* cephfs: mds: avoid calling clientreplay_done() prematurely (`pr#31282 `_, "Yan, Zheng") +* cephfs: mds: fix assert(omap_num_objs <= MAX_OBJECTS) of OpenFileTable (`pr#32757 `_, "Yan, Zheng") +* cephfs: mds: fix infinite loop in Locker::file_update_finish (`pr#31284 `_, "Yan, Zheng") +* cephfs: mds: mds returns -5(EIO) error when the deleted file does not exist (`pr#31381 `_, huanwen ren) +* cephfs: mds: split the dir if the op makes it oversized, because some ops maybe in flight (`pr#31379 `_, simon gao) +* cephfs: tools/cephfs: make 'cephfs-data-scan scan_links' reconstruct snaptable (`pr#31281 `_, "Yan, Zheng") +* common/config: parse --log-early option (`pr#33130 `_, Sage Weil) +* common: common/admin_socket: Increase socket timeouts (`pr#33323 `_, Brad Hubbard) +* common: common/config: update values when they are removed via mon (`pr#33327 `_, Sage Weil) +* common: common/util: use ifstream to read from /proc files (`pr#32902 `_, Kefu Chai, songweibin) +* core,mgr,tests: mgr: Release GIL and Balancer fixes (`pr#31957 `_, Neha Ojha, Kefu Chai, Noah Watkins, David Zafman) +* core,mgr: mgr/prometheus: assign a value to osd_dev_node when obj_store is not filestore or bluestore (`pr#31557 `_, jiahuizeng) +* core,tests: qa/tasks/cbt: install python3 deps (`pr#34193 `_, Sage Weil) +* core: mon/OSDMonitor: fix format error ceph osd stat --format json (`pr#33322 `_, Zheng Yin) +* core: mon: Don't put session during feature change (`pr#33154 `_, Brad Hubbard) +* core: osd/PeeringState.cc: don't let num_objects become negative (`pr#33331 `_, Neha Ojha) +* core: osd/PeeringState.cc: skip peer_purged when discovering all missing (`pr#33329 `_, Neha Ojha) +* core: osd/PeeringState.h: ignore MLogRec in Peering/GetInfo (`pr#33594 `_, Neha Ojha) +* core: osd/PeeringState: do not exclude up from acting_recovery_backfill (`pr#33324 `_, Nathan Cutler, xie xingguo) +* core: osd: Allow 64-char hostname to be added as the "host" in CRUSH (`pr#33145 `_, Michal Skalski) +* core: osd: Diagnostic logging for upmap cleaning (`pr#32717 `_, David Zafman) +* core: osd: backfill_toofull seen on cluster where the most full OSD is at 1% (`pr#32361 `_, David Zafman) +* core: osd: set collection pool opts on collection create, pg load (`pr#32125 `_, Sage Weil) +* core: selinux: Allow ceph to read udev db (`pr#32258 `_, Boris Ranto) +* core: selinux: Allow ceph-mgr access to httpd dir (`pr#34458 `_, Brad Hubbard) +* doc: remove invalid option mon_pg_warn_max_per_osd (`pr#31875 `_, zhang daolong) +* doc: doc/_templates/page.html: redirect to etherpad (`pr#32249 `_, Neha Ojha) +* doc: doc/cephfs/client-auth: description and example are inconsistent (`pr#32782 `_, Ilya Dryomov) +* doc: wrong datatype describing crush_rule (`pr#32255 `_, Kefu Chai) +* mgr,pybind: mgr/prometheus: report per-pool pg states (`pr#33158 `_, Aleksei Zakharov) +* mgr,pybind: mgr/telemetry: check get_metadata return val (`pr#33096 `_, Yaarit Hatuka) +* mount.ceph: give a hint message when no mds is up or cluster is laggy (`pr#32911 `_, Xiubo Li) +* pybind: pybind/mgr: Cancel output color control (`pr#31805 `_, Zheng Yin) +* qa: get rid of iterkeys for py3 compatibility (`pr#33999 `_, Kyr Shatskyy) +* rbd: creating thick-provision image progress percent info exceeds 100% (`pr#33318 `_, Xiangdong Mu) +* rbd: librbd: diff iterate with fast-diff now correctly includes parent (`pr#32470 `_, Jason Dillaman) +* rbd: librbd: don't call refresh from mirror::GetInfoRequest state machine (`pr#32952 `_, Mykola Golub) +* rbd: librbd: fix rbd_open_by_id, rbd_open_by_id_read_only (`pr#33315 `_, yangjun) +* rbd: nautilus: rbd-mirror: fix 'rbd mirror status' asok command output (`pr#32714 `_, Mykola Golub) +* rbd: rbd-mirror: clone v2 mirroring improvements (`pr#31520 `_, Mykola Golub) +* rbd: rbd-mirror: improve detection of blacklisted state (`pr#33598 `_, Mykola Golub) +* rbd: rbd-mirror: make logrotate work (`pr#32598 `_, Mykola Golub) +* rgw: add bucket permission verify when copy obj (`pr#31377 `_, NancySu05) +* rgw: add list user admin OP API (`pr#31754 `_, Oshyn Song) +* rgw: add missing admin property when sync user info (`pr#30804 `_, zhang Shaowen) +* rgw: add num_shards to radosgw-admin bucket stats (`pr#31183 `_, Paul Emmerich) +* rgw: adding mfa code validation when bucket versioning status is changed (`pr#33303 `_, Pritha Srivastava) +* rgw: allow reshard log entries for non-existent buckets to be cancelled (`pr#33302 `_, J. Eric Ivancich) +* rgw: auto-clean reshard queue entries for non-existent buckets (`pr#33300 `_, J. Eric Ivancich) +* rgw: change the "rgw admin status" 'num_shards' output to signed int (`issue#37645 `_, `pr#33305 `_, Mark Kogan) +* rgw: crypt: permit RGW-AUTO/default with SSE-S3 headers (`pr#31861 `_, Matt Benjamin) +* rgw: find oldest period and update RGWMetadataLogHistory() (`pr#33309 `_, Shilpa Jagannath) +* rgw: fix a bug that bucket instance obj can't be removed after resharding completed (`pr#33306 `_, zhang Shaowen) +* rgw: fix bad user stats on versioned bucket after reshard (`pr#33304 `_, J. Eric Ivancich) +* rgw: fix memory growth while deleting objects with (`pr#31378 `_, Mark Kogan) +* rgw: get barbican secret key request maybe return error code (`pr#33966 `_, Richard Bai(白学余)) +* rgw: make max_connections configurable in beast (`pr#33341 `_, Tiago Pasqualini) +* rgw: making implicit_tenants backwards compatible (`issue#24348 `_, `pr#33748 `_, Marcus Watts) +* rgw: maybe coredump when reload operator happened (`pr#33313 `_, Richard Bai(白学余)) +* rgw: move forward marker even in case of many rgw.none indexes (`pr#33311 `_, Ilsoo Byun) +* rgw: prevent bucket reshard scheduling if bucket is resharding (`pr#31299 `_, J. Eric Ivancich) +* rgw: update the hash source for multipart entries during resharding (`pr#33312 `_, dongdong tao) + + +v13.2.8 Mimic +============= + +This is the eighth release in the Ceph Mimic stable release series. Its sole +purpose is to fix a regression that found its way into the previous release. + +Notable Changes +--------------- + +* Due to a missed backport, clusters in the process of being upgraded from + 13.2.6 to 13.2.7 might suffer an OSD crash in build_incremental_map_msg. + This regression was reported in https://tracker.ceph.com/issues/43106 + and is fixed in 13.2.8 (this release). Users of 13.2.6 can upgrade to 13.2.8 + directly - i.e., skip 13.2.7 - to avoid this. + +Changelog +--------- + +* osd: fix sending incremental map messages (more) (`issue#43106 `_, `pr#32000 `_, Sage Weil) +* tests: added missing point release versions (`pr#32087 `_, Yuri Weinstein) +* tests: rgw: add missing force-branch: ceph-mimic for swift tasks (`pr#32033 `_, Casey Bodley) + + +v13.2.7 Mimic +============= + +This is the seventh bugfix release of the Mimic v13.2.x long-term stable release +series. All Mimic users are advised to upgrade. + +Notable Changes +--------------- + +MDS: + +* Cache trimming is now throttled. Dropping the MDS cache via the "ceph tell + mds. cache drop" command or large reductions in the cache size will no + longer cause service unavailability. + +* Behavior with recalling caps has been significantly improved to not attempt + recalling too many caps at once, leading to instability. MDS with a large + cache (64GB+) should be more stable. + +* MDS now provides a config option "mds_max_caps_per_client" (default: 1M) to + limit the number of caps a client session may hold. Long running client + sessions with a large number of caps have been a source of instability in the + MDS when all of these caps need to be processed during certain session + events. It is recommended to not unnecessarily increase this value. + +* The "mds_recall_state_timeout" config parameter has been removed. Late client + recall warnings are now generated based on the number of caps the MDS has + recalled which have not been released. The new config parameters + "mds_recall_warning_threshold" (default: 32K) and "mds_recall_warning_decay_rate" + (default: 60s) set the threshold for this warning. + +* The "cache drop" admin socket command has been removed. The "ceph tell mds.X + cache drop" remains. + +OSD: + +* 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. A new configuration option "mon_warn_on_slow_ping_time", + specified in milliseconds, overrides the computed value, causing a warning + when OSD heartbeat pings take longer than the specified amount. A new admin + command "ceph daemon mgr.# dump_osd_network [threshold]" lists 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. A new admin + command "ceph daemon osd.# dump_osd_network [threshold]" does the same but only + including heartbeats initiated by the specified OSD. + +* The default value of the "osd_deep_scrub_large_omap_object_key_threshold" + parameter has been lowered to detect an object with large number of omap keys + more easily. + +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. + +Changelog +--------- + +* bluestore: 50-100% iops lost due to bluefs_preextend_wal_files = false (`issue#40280 `_, `pr#28574 `_, Vitaliy Filippov) +* bluestore: Change default for bluestore_fsck_on_mount_deep as false (`pr#29699 `_, Neha Ojha) +* bluestore: _txc_add_transaction error (39) Directory not empty not handled on operation 21 (op 1, counting from 0) (`issue#39692 `_, `pr#29217 `_, Sage Weil) +* bluestore: apply shared_alloc_size to shared device with log level change (`pr#30219 `_, Vikhyat Umrao, Josh Durgin, Sage Weil, Igor Fedotov) +* bluestore: avoid length overflow in extents returned by Stupid Allocator (`issue#40758 `_, `issue#40703 `_, `pr#29024 `_, Igor Fedotov) +* bluestore: common/options: Set concurrent bluestore rocksdb compactions to 2 (`pr#30150 `_, Mark Nelson) +* bluestore: default to bitmap allocator for bluestore/bluefs (`pr#28970 `_, Igor Fedotov) +* bluestore: dump before "no-spanning blob id" abort (`pr#28029 `_, Igor Fedotov) +* bluestore: fix >2GB bluefs writes (`pr#28967 `_, Sage Weil, kungf) +* bluestore: fix duplicate allocations in bmap allocator (`issue#40080 `_, `pr#28645 `_, Igor Fedotov) +* bluestore: load OSD all compression settings unconditionally (`issue#40480 `_, `pr#28894 `_, Igor Fedotov) +* build/ops: Cython 0.29 removed support for subinterpreters: raises ImportError: Interpreter change detected (`issue#39593 `_, `issue#39592 `_, `pr#27971 `_, Kefu Chai, Tim Serong) +* build/ops: admin/build-doc: use python3 (`pr#30663 `_, Kefu Chai) +* build/ops: admin/build-doc: use python3 (follow-on fix) (`pr#30687 `_, Nathan Cutler) +* build/ops: backport miscellaneous install-deps.sh and ceph.spec.in fixes from master (`issue#37707 `_, `pr#30718 `_, Jeff Layton, Kefu Chai, Nathan Cutler, Brad Hubbard, Changcheng Liu, Sebastian Wagner, Yunchuan Wen, Tomasz Setkowski, Zack Cerza) +* build/ops: ceph.spec.in: reserve 2500MB per build job (`pr#30355 `_, Dan van der Ster) +* build/ops: cmake,run-make-check.sh: disable SPDK by default (`pr#30183 `_, Kefu Chai) +* build/ops: cmake: detect armv8 crc and crypto feature using CHECK_C_COMPILER_FLAG (`issue#17516 `_, `pr#30713 `_, Kefu Chai) +* build/ops: do_cmake.sh: source not found (`issue#39981 `_, `issue#40005 `_, `pr#28217 `_, Nathan Cutler) +* build/ops: fix build fail related to PYTHON_EXECUTABLE variable (`pr#30260 `_, Ilsoo Byun) +* build/ops: install-deps.sh: Remove CR repo (`issue#13997 `_, `pr#30128 `_, Alfredo Deza, Brad Hubbard) +* build/ops: install-deps.sh: install `python\*-devel` for python\*rpm-macros (`pr#30244 `_, Kefu Chai) +* build/ops: make "patch" build dependency explicit (`issue#40269 `_, `issue#40175 `_, `pr#29150 `_, Nathan Cutler) +* build/ops: python3-cephfs should provide python36-cephfs (`pr#30982 `_, Kefu Chai) +* build/ops: rpm: always build ceph-test package (`pr#30188 `_, Nathan Cutler) +* ceph-volume: PVolumes.filter shouldn't purge itself (`pr#30806 `_, Rishabh Dave) +* ceph-volume: VolumeGroups.filter shouldn't purge itself (`pr#30808 `_, Rishabh Dave) +* ceph-volume: add Ceph's device id to inventory (`pr#31211 `_, Sebastian Wagner) +* ceph-volume: api/lvm: check if list of LVs is empty (`pr#31229 `_, Rishabh Dave) +* ceph-volume: assume msgrV1 for all branches containing mimic (`pr#31615 `_, Jan Fajerski) +* ceph-volume: batch functional idempotency test fails since message is now on stderr (`pr#29688 `_, Jan Fajerski) +* ceph-volume: broken assertion errors after pytest changes (`pr#28948 `_, Alfredo Deza) +* ceph-volume: do not fail when trying to remove crypt mapper (`pr#30555 `_, Guillaume Abrioux) +* ceph-volume: does not recognize wal/db partitions created by ceph-disk (`pr#29463 `_, Jan Fajerski) +* ceph-volume: ensure device lists are disjoint (`pr#30334 `_, Jan Fajerski) +* ceph-volume: extend batch (`issue#40919 `_, `pr#29243 `_, Andrew Schoen, Jan Fajerski, Sébastien Han, Volker Theile) +* ceph-volume: fix stderr failure to decode/encode when redirected (`pr#30301 `_, Alfredo Deza) +* ceph-volume: fix warnings raised by pytest (`pr#30678 `_, Rishabh Dave) +* ceph-volume: implement __format__ in Size to format sizes in py3 (`pr#30333 `_, Jan Fajerski) +* ceph-volume: look for rotational data in lsblk (`pr#26991 `_, Andrew Schoen) +* ceph-volume: lvm.activate: Return an error if WAL/DB devices absent (`pr#29039 `_, David Casier) +* ceph-volume: lvm.zap fix cleanup for db partitions (`issue#40664 `_, `pr#30303 `_, Dominik Csapak) +* ceph-volume: minor optimizations related to class Volumes's use (`pr#30096 `_, Rishabh Dave) +* ceph-volume: miscellaneous backports (`pr#31227 `_, Mohamad Gebai, Andrew Schoen) +* ceph-volume: missing string substitution when reporting mounts (`issue#40977 `_, `pr#29350 `_, Shyukri Shyukriev) +* ceph-volume: more mimic backports (`pr#29631 `_, Andrew Schoen, Alfredo Deza) +* ceph-volume: more missing mimic backports (`pr#31362 `_, Mohamad Gebai, Kefu Chai) +* ceph-volume: pre-install python-apt and its variants before test runs (`pr#30295 `_, Alfredo Deza) +* ceph-volume: prints errors to stdout with --format json (`issue#38548 `_, `pr#29507 `_, Jan Fajerski) +* ceph-volume: prints log messages to stdout (`pr#29602 `_, Jan Fajerski, Alfredo Deza, Kefu Chai) +* ceph-volume: replace testinfra command with py.test (`pr#28930 `_, Alfredo Deza) +* ceph-volume: simple functional tests drop test for lvm zap (`pr#29661 `_, Jan Fajerski) +* ceph-volume: simple: when 'type' file is not present activate fails (`pr#29417 `_, Jan Fajerski, Alfredo Deza) +* ceph-volume: tests add a sleep in tox for slow OSDs after booting (`pr#28947 `_, Alfredo Deza) +* ceph-volume: tests set the noninteractive flag for Debian (`pr#29900 `_, Alfredo Deza) +* ceph-volume: update testing playbook 'deploy.yml' (`pr#29074 `_, Andrew Schoen, Guillaume Abrioux) +* ceph-volume: use the OSD identifier when reporting success (`pr#29770 `_, Alfredo Deza) +* ceph-volume: zap always skips block.db, leaves them around (`issue#40664 `_, `pr#30306 `_, Alfredo Deza) +* ceph_detect_init: Add support for ALT Linux (`pr#27028 `_, Andrey Bychkov) +* cephfs: MDSTableServer.cc: 83: FAILED assert(version == tid) (`issue#39212 `_, `issue#38835 `_, `pr#29222 `_, "Yan, Zheng") +* cephfs: avoid map been inserted by mistake (`pr#29833 `_, XiaoGuoDong2019) +* cephfs: ceph-fuse: client hang because its bad session PipeConnection to mds (`issue#39305 `_, `issue#39685 `_, `pr#29200 `_, Guan yunfei) +* cephfs: client: EINVAL may be returned when offset is 0 (`pr#30932 `_, wenpengLi) +* cephfs: client: _readdir_cache_cb() may use the readdir_cache already clear (`issue#41148 `_, `pr#30933 `_, huanwen ren) +* cephfs: client: add procession of SEEK_HOLE and SEEK_DATA in lseek (`pr#30918 `_, Shen Hang) +* cephfs: client: bump ll_ref from int32 to uint64_t (`pr#29187 `_, Xiaoxi CHEN) +* cephfs: client: ceph.dir.rctime xattr value incorrectly prefixes 09 to the nanoseconds component (`issue#40168 `_, `pr#28501 `_, David Disseldorp) +* cephfs: client: fix bad error handling in _lookup_parent (`issue#40085 `_, `pr#29609 `_, Jeff Layton) +* cephfs: client: nfs-ganesha with cephfs client, removing dir reports not empty (`issue#40746 `_, `pr#30443 `_, Peng Xie) +* cephfs: client: return -EIO when sync file which unsafe reqs have been dropped (`issue#40877 `_, `pr#30241 `_, simon gao) +* cephfs: client: set snapdir's link count to 1 (`pr#30108 `_, "Yan, Zheng") +* cephfs: client: support the fallocate() when fuse version >= 2.9 (`issue#40615 `_, `pr#30228 `_, huanwen ren) +* cephfs: client: unlink dentry for inode with llref=0 (`issue#40960 `_, `pr#29479 `_, Xiaoxi CHEN) +* cephfs: fix a memory leak (`pr#29915 `_, XiaoGuoDong2019) +* cephfs: getattr on snap inode stuck (`issue#40437 `_, `pr#29230 `_, "Yan, Zheng") +* cephfs: kcephfs TestClientLimits.test_client_pin fails with client caps fell below min (`issue#38270 `_, `issue#38687 `_, `pr#29211 `_, "Yan, Zheng") +* cephfs: mds: Fix duplicate client entries in eviction list (`pr#30950 `_, Sidharth Anupkrishnan) +* cephfs: mds: avoid sending too many osd requests at once after mds restarts (`issue#40042 `_, `issue#40028 `_, `pr#28650 `_, simon gao) +* cephfs: mds: behind on trimming and [dentry] was purgeable but no longer is! (`issue#39223 `_, `issue#38679 `_, `pr#29224 `_, "Yan, Zheng") +* cephfs: mds: cannot switch mds state from standby-replay to active (`issue#40213 `_, `pr#29232 `_, "Yan, Zheng", simon gao) +* cephfs: mds: change how mds revoke stale caps (`issue#38043 `_, `issue#17854 `_, `pr#28585 `_, "Yan, Zheng", Rishabh Dave) +* cephfs: mds: check dir fragment to split dir if mkdir makes it oversized (`issue#39689 `_, `pr#28381 `_, Erqi Chen) +* cephfs: mds: cleanup unneeded client_snap_caps when splitting snap inode (`issue#39987 `_, `pr#30234 `_, "Yan, Zheng") +* cephfs: mds: delay exporting directory whose pin value exceeds max rank id (`issue#40603 `_, `pr#29940 `_, Zhi Zhang) +* cephfs: mds: destroy reconnect msg when it is from non-existent session to avoid memory leak (`issue#40588 `_, `pr#28796 `_, Shen Hang) +* cephfs: mds: evict an unresponsive client only when another client wants its caps (`pr#30239 `_, Rishabh Dave) +* cephfs: mds: fix SnapRealm::resolve_snapname for long name (`issue#39472 `_, `pr#28186 `_, "Yan, Zheng") +* cephfs: mds: fix corner case of replaying open sessions (`pr#28579 `_, "Yan, Zheng") +* cephfs: mds: high debug logging with many subtrees is slow (`issue#38875 `_, `pr#29219 `_, Rishabh Dave) +* cephfs: mds: make MDSIOContextBase delete itself when shutting down (`pr#30417 `_, Xuehan Xu) +* cephfs: mds: mds_cap_revoke_eviction_timeout is not used to initialize Server::cap_revoke_eviction_timeout (`issue#38844 `_, `issue#39210 `_, `pr#29220 `_, simon gao) +* cephfs: mds: output lock state in format dump (`issue#39669 `_, `issue#39645 `_, `pr#28274 `_, Zhi Zhang) +* cephfs: mds: remove cache drop admin socket command (`issue#38020 `_, `issue#38099 `_, `pr#29210 `_, Patrick Donnelly) +* cephfs: mds: reset heartbeat during long-running loops in recovery (`issue#40222 `_, `pr#28918 `_, "Yan, Zheng") +* cephfs: mds: stopping MDS with a large cache (40+GB) causes it to miss heartbeats (`issue#38022 `_, `issue#38129 `_, `issue#37723 `_, `issue#38131 `_, `pr#28452 `_, Patrick Donnelly) +* cephfs: mds: there is an assertion when calling Beacon::shutdown() (`issue#39215 `_, `issue#38822 `_, `pr#29223 `_, huanwen ren) +* cephfs: mount.ceph.c: do not pass nofail to the kernel (`issue#39233 `_, `pr#28090 `_, Kenneth Waegeman) +* cephfs: mount.ceph: properly handle -o strictatime (`pr#30240 `_, Jeff Layton) +* cephfs: mount: key parsing fail when doing a remount (`issue#40165 `_, `pr#29225 `_, Luis Henriques) +* cephfs: pybind: added lseek() (`issue#39679 `_, `pr#28337 `_, Xiaowei Chu) +* cephfs: test_volume_client: fix test_put_object_versioned() (`issue#39405 `_, `issue#39510 `_, `pr#30236 `_, Rishabh Dave) +* common/ceph_context: avoid unnecessary wait during service thread shutdown (`pr#31096 `_, Jason Dillaman) +* common/options.cc: Lower the default value of osd_deep_scrub_large_omap_object_key_threshold (`pr#29174 `_, Neha Ojha) +* common/util: handle long lines in /proc/cpuinfo (`issue#39475 `_, `issue#38296 `_, `pr#28206 `_, Sage Weil) +* common: Keyrings created by ceph auth get are not suitable for ceph auth import (`issue#22227 `_, `issue#40547 `_, `pr#28741 `_, Kefu Chai) +* common: data race in OutputDataSocket (`issue#40268 `_, `issue#40188 `_, `pr#29201 `_, Casey Bodley) +* common: parse ISO 8601 datetime format (`issue#40088 `_, `pr#28326 `_, Sage Weil) +* core: .mgrstat failed to decode mgrstat state; luminous dev version? (`issue#38852 `_, `issue#38839 `_, `pr#29249 `_, Sage Weil) +* core: Better default value for osd_snap_trim_sleep (`pr#29732 `_, Neha Ojha) +* core: Health warnings on long network ping times (`issue#40640 `_, `issue#40586 `_, `pr#30225 `_, xie xingguo, David Zafman) +* core: ceph daemon mon.a config set mon_health_to_clog false cause leader mon assert (`issue#39625 `_, `pr#29741 `_, huangjun) +* core: crc cache should be invalidated when posting preallocated rx buffers (`issue#38437 `_, `pr#29247 `_, Ilya Dryomov) +* core: lazy omap stat collection (`pr#29189 `_, Brad Hubbard) +* core: mon, osd: parallel clean_pg_upmaps (`issue#40104 `_, `issue#40230 `_, `pr#28619 `_, xie xingguo) +* core: mon,osd: limit MOSDMap messages by size as well as map count (`issue#38277 `_, `issue#38040 `_, `pr#29242 `_, Sage Weil) +* core: mon/AuthMonitor: fix initial creation of rotating keys (`issue#40634 `_, `pr#30181 `_, Sage Weil) +* core: mon/MDSMonitor: use stringstream instead of dout for mds repaired (`issue#40472 `_, `pr#30235 `_, Zhi Zhang) +* core: mon/MgrMonitor: fix null deref when invalid formatter is specified (`pr#29593 `_, Sage Weil) +* core: mon/OSDMonitor.cc: better error message about min_size (`pr#29618 `_, Neha Ojha) +* core: mon/OSDMonitor: trim not-longer-exist failure reporters (`pr#30903 `_, NancySu05) +* core: mon: C_AckMarkedDown has not handled the Callback Arguments (`pr#30213 `_, NancySu05) +* core: mon: ensure prepare_failure() marks no_reply on op (`pr#30481 `_, Joao Eduardo Luis) +* core: mon: paxos: introduce new reset_pending_committing_finishers for safety (`issue#39744 `_, `issue#39484 `_, `pr#28540 `_, Greg Farnum) +* core: mon: show pool id in pool ls command (`issue#40287 `_, `pr#30485 `_, Chang Liu) +* core: osd beacon sometimes has empty pg list (`issue#40464 `_, `issue#40377 `_, `pr#29253 `_, Sage Weil) +* core: osd/OSD.cc: make osd bench description consistent with parameters (`issue#39374 `_, `issue#39006 `_, `pr#28097 `_, Neha Ojha) +* core: osd/OSDCap: Check for empty namespace (`issue#40835 `_, `pr#30214 `_, Brad Hubbard) +* core: osd/OSDMap: Replace get_out_osds with get_out_existing_osds (`issue#39422 `_, `issue#39154 `_, `pr#28142 `_, Brad Hubbard) +* core: osd/OSDMap: do not trust partially simplified pg_upmap_item (`pr#30898 `_, xie xingguo) +* core: osd/PG: Add PG to large omap log message (`pr#30924 `_, Brad Hubbard) +* core: osd/PG: fix last_complete re-calculation on splitting (`issue#39538 `_, `issue#26958 `_, `pr#28259 `_, xie xingguo) +* core: osd/PeeringState: do not complain about past_intervals constrained by oldest epoch (`pr#30222 `_, Sage Weil) +* core: osd/PeeringState: recover_got - add special handler for empty log (`pr#30895 `_, xie xingguo) +* core: osd/PrimaryLogPG: Avoid accessing destroyed references in finish_degr… (`pr#30291 `_, Tao Ning) +* core: osd/PrimaryLogPG: skip obcs that don't exist during backfill scan_range (`pr#31029 `_, Sage Weil) +* core: osd/PrimaryLogPG: update oi.size on write op implicitly truncating ob… (`pr#30275 `_, xie xingguo) +* core: osd: Better error message when OSD count is less than osd_pool_default_size (`issue#38617 `_, `pr#30180 `_, Kefu Chai, Sage Weil, zjh) +* core: osd: Don't evict after a flush if intersecting scrub range (`issue#38840 `_, `issue#39518 `_, `pr#28232 `_, David Zafman) +* core: osd: Don't include user changeable flag in snaptrim related assert (`issue#38124 `_, `issue#39698 `_, `pr#28202 `_, David Zafman) +* core: osd: Fix for compatibility of encode/decode of osd_stat_t (`pr#31275 `_, Kefu Chai, David Zafman) +* core: osd: Include dups in copy_after() and copy_up_to() (`issue#39304 `_, `pr#28089 `_, David Zafman) +* core: osd: Output Base64 encoding of CRC header if binary data present (`issue#39737 `_, `pr#28503 `_, David Zafman) +* core: osd: Remove unused osdmap flags full, nearfull from output (`pr#30901 `_, David Zafman) +* core: osd: clear PG_STATE_CLEAN when repair object (`pr#30243 `_, Zengran Zhang) +* core: osd: fix build_incremental_map_msg (`issue#38282 `_, `pr#31236 `_, Sage Weil) +* core: osd: make project_pg_history handle concurrent osdmap publish (`issue#26970 `_, `pr#29976 `_, Sage Weil) +* core: osd: merge replica log on primary need according to replica log's crt (`pr#30916 `_, Zengran Zhang) +* core: osd: pg stuck in backfill_wait with plenty of disk space (`issue#38034 `_, `pr#28201 `_, xie xingguo, David Zafman) +* core: osd: report omap/data/metadata usage (`issue#40639 `_, `pr#28852 `_, Sage Weil) +* core: osd: rollforward may need to mark pglog dirty (`issue#40403 `_, `pr#31035 `_, Zengran Zhang) +* core: osd: scrub error on big objects; make bluestore refuse to start on big objects (`pr#30784 `_, David Zafman, Sage Weil) +* core: osd: take heartbeat_lock when calling heartbeat() (`issue#39513 `_, `issue#39439 `_, `pr#28220 `_, Sage Weil) +* core: osds allows to partially start more than N+2 (`issue#38206 `_, `issue#38076 `_, `pr#29241 `_, Sage Weil) +* core: should report EINVAL in ErasureCode::parse() if m<=0 (`issue#38682 `_, `issue#38751 `_, `pr#28995 `_, Sage Weil) +* core: should set EPOLLET flag on del_event() (`issue#38856 `_, `pr#29250 `_, Roman Penyaev) +* doc/ceph-fuse: mention -k option in ceph-fuse man page (`pr#30936 `_, Rishabh Dave) +* doc/rbd: s/guess/xml/ for codeblock lexer (`pr#31090 `_, Kefu Chai) +* doc/rgw: document use of 'realm pull' instead of 'period pull' (`issue#39655 `_, `pr#30131 `_, Casey Bodley) +* doc: Document behaviour of fsync-after-close (`issue#24641 `_, `pr#29765 `_, Jos Collin, Jeff Layton) +* doc: Object Gateway multisite document read-only argument error (`issue#40497 `_, `pr#29289 `_, Chenjiong Deng) +* doc: default values for mon_health_to_clog\_\* were flipped (`pr#30227 `_, James McClune) +* doc: describe metadata_heap cleanup (`issue#18174 `_, `pr#30070 `_, Dan van der Ster) +* doc: fix rgw_ldap_dnattr username token (`pr#30099 `_, Thomas Kriechbaumer) +* doc: rgw: CreateBucketConfiguration for s3 PUT Bucket request (`issue#39602 `_, `issue#39597 `_, `pr#29257 `_, Casey Bodley) +* doc: update bluestore cache settings and clarify data fraction (`issue#39522 `_, `pr#31258 `_, Jan Fajerski) +* doc: wrong value of usage log default in logging section (`issue#37891 `_, `issue#37856 `_, `pr#29014 `_, Abhishek Lekshmanan) +* filestore: assure sufficient leaves in pre-split (`issue#39390 `_, `pr#30182 `_, Jeegn Chen) +* krbd: avoid udev netlink socket overrun and retry on transient errors from udev_enumerate_scan_devices() (`pr#31322 `_, Ilya Dryomov, Adam C. Emerson) +* krbd: fix rbd map hang due to udev return subsystem unordered (`issue#39089 `_, `pr#30176 `_, Zhi Zhang) +* mgr/balancer: fix fudge (`pr#28399 `_, xie xingguo) +* mgr/balancer: python3 compatibility issue (`pr#31013 `_, Mykola Golub) +* mgr/balancer: restrict automatic balancing to specific weekdays (`pr#26499 `_, xie xingguo) +* mgr/crash: fix python3 invalid syntax problems (`pr#29029 `_, Ricardo Dias) +* mgr/dashboard: Fix run-frontend-e2e-tests.sh (`issue#40707 `_, `pr#28954 `_, Kiefer Chang, Tiago Melo) +* mgr/dashboard: Fix various RGW issues (`pr#28210 `_, Volker Theile) +* mgr/dashboard: RGW proxy can't handle self-signed SSL certificates (`pr#30543 `_, Volker Theile) +* mgr/dashboard: cephfs multimds graphs stack together (`issue#40660 `_, `pr#28911 `_, Kiefer Chang) +* mgr/localpool: pg_num is an int arg to 'osd pool create' (`pr#30447 `_, Sage Weil) +* mgr/prometheus: Cast collect_timeout (scrape_interval) to float (`pr#31108 `_, Ben Meekhof) +* mgr/prometheus: replace whitespaces in metrics' names (`issue#39458 `_, `pr#28165 `_, Alfonso Martínez) +* mgr/telemetry: Ignore crashes in report when module not enabled (`pr#30846 `_, Wido den Hollander) +* mgr: DaemonServer::handle_conf_change - broken locking (`issue#38899 `_, `issue#38963 `_, `pr#29197 `_, xie xingguo) +* mgr: deadlock (`issue#39040 `_, `issue#39426 `_, `pr#28161 `_, xie xingguo) +* mgr: do not reset reported if a new metric is not collected (`pr#30391 `_, Ilsoo Byun) +* radosgw-admin: bucket sync status not 'caught up' during full sync (`issue#40806 `_, `pr#30170 `_, Casey Bodley) +* rbd-mirror: cannot restore deferred deletion mirrored images (`pr#30828 `_, Jason Dillaman, Mykola Golub) +* rbd-mirror: clear out bufferlist prior to listing mirror images (`issue#39461 `_, `issue#39407 `_, `pr#28123 `_, Jason Dillaman) +* rbd-mirror: don't overwrite status error returned by replay (`pr#29872 `_, Mykola Golub) +* rbd-mirror: handle duplicates in image sync throttler queue (`issue#40519 `_, `issue#40593 `_, `pr#28815 `_, Mykola Golub) +* rbd-mirror: ignore errors relating to parsing the cluster config file (`pr#30117 `_, Jason Dillaman) +* rbd/action: fix error getting positional argument (`issue#40095 `_, `pr#29294 `_, songweibin) +* rbd/tests: avoid hexdump skip and length options in krbd test (`pr#30569 `_, Ilya Dryomov) +* rbd: Reduce log level for cls/journal and cls/rbd expected errors (`issue#40865 `_, `pr#29565 `_, Jason Dillaman) +* rbd: filter out group/trash snapshots from snap_list (`issue#38538 `_, `issue#39186 `_, `pr#28138 `_, songweibin, Jason Dillaman) +* rbd: journal: properly advance read offset after skipping invalid range (`pr#28814 `_, Mykola Golub) +* rbd: librbd: add missing shutdown states to managed lock helper (`issue#38387 `_, `issue#38509 `_, `pr#28151 `_, Jason Dillaman) +* rbd: librbd: async open/close should free ImageCtx before issuing callback (`issue#39429 `_, `issue#39031 `_, `pr#28125 `_, Jason Dillaman) +* rbd: librbd: avoid dereferencing an empty container during deep-copy (`issue#40368 `_, `pr#30177 `_, Jason Dillaman) +* rbd: librbd: disable image mirroring when moving to trash (`pr#28150 `_, Mykola Golub) +* rbd: librbd: ensure compare-and-write doesn't skip compare after copyup (`issue#38383 `_, `issue#38441 `_, `pr#28133 `_, Ilya Dryomov) +* rbd: librbd: properly handle potential object map failures (`issue#39952 `_, `issue#36074 `_, `pr#30796 `_, Jason Dillaman, Mykola Golub) +* rbd: librbd: properly track in-flight flush requests (`issue#40573 `_, `pr#28770 `_, Jason Dillaman) +* rbd: librbd: race condition possible when validating RBD pool (`issue#38500 `_, `issue#38563 `_, `pr#28139 `_, Jason Dillaman) +* rbd: use the ordered throttle for the export action (`issue#40435 `_, `pr#30178 `_, Jason Dillaman) +* restful: Query nodes_by_id for items (`pr#31273 `_, Boris Ranto) +* rgw admin: disable stale instance delete in a multiste env (`pr#30340 `_, Abhishek Lekshmanan) +* rgw/OutputDataSocket: append_output(buffer::list&) says it will (but does not) discard output at data_max_backlog (`issue#40178 `_, `issue#40351 `_, `pr#29279 `_, Matt Benjamin) +* rgw/cls: keep issuing bilog trim ops after reset (`issue#40187 `_, `pr#30074 `_, Casey Bodley) +* rgw/multisite: Don't allow certain radosgw-admin commands to run on non-master zone (`issue#39548 `_, `pr#30133 `_, Shilpa Jagannath) +* rgw/rgw_op: Remove get_val from hotpath via legacy options (`pr#30141 `_, Mark Nelson) +* rgw: Add support for --bypass-gc flag of radosgw-admin bucket rm command in RGW Multi-site (`issue#39748 `_, `issue#24991 `_, `pr#29262 `_, Casey Bodley) +* rgw: Don't crash on copy when metadata directive not supplied (`issue#40416 `_, `pr#29500 `_, Adam C. Emerson) +* rgw: Fix bucket versioning vs. swift metadata bug (`pr#30140 `_, Marcus Watts) +* rgw: Fix rgw decompression log-print (`pr#30156 `_, Han Fengzhe) +* rgw: Multisite sync corruption for large multipart obj (`issue#40144 `_, `pr#29273 `_, Casey Bodley, Tianshan Qu, Xiaoxi CHEN) +* rgw: RGWCoroutine::call(nullptr) sets retcode=0 (`pr#30159 `_, Casey Bodley) +* rgw: Return tenant field in bucket_stats function (`issue#40038 `_, `pr#28209 `_, Volker Theile) +* rgw: S3 policy evaluated incorrectly (`issue#38638 `_, `issue#39274 `_, `pr#29255 `_, Pritha Srivastava) +* rgw: Save an unnecessary copy of RGWEnv (`pr#29483 `_, Mark Kogan) +* rgw: Swift interface: server side copy fails if object name contains '?' (`issue#27217 `_, `issue#40128 `_, `pr#29267 `_, Casey Bodley) +* rgw: TempURL should not allow PUTs with the X-Object-Manifest (`issue#40133 `_, `issue#20797 `_, `pr#28711 `_, Radoslaw Zarzynski) +* rgw: abort multipart fix (`pr#29016 `_, J. Eric Ivancich) +* rgw: asio: check the remote endpoint before processing requests (`pr#30977 `_, Abhishek Lekshmanan) +* rgw: conditionally allow builtin users with non-unique email addresses (`issue#40089 `_, `issue#40507 `_, `pr#28716 `_, Matt Benjamin) +* rgw: data/bilogs are trimmed when no peers are reading them (`issue#39487 `_, `pr#30130 `_, Casey Bodley) +* rgw: datalog/mdlog trim commands loop until done (`pr#30868 `_, Casey Bodley) +* rgw: do necessary checking of website configuration (`issue#40678 `_, `pr#30980 `_, Enming Zhang) +* rgw: don't throw when accept errors are happening on frontend (`pr#30154 `_, Yuval Lifshitz) +* rgw: fix CreateBucket with BucketLocation parameter failed under default zonegroup (`pr#30171 `_, Enming Zhang) +* rgw: fix bucket may redundantly list keys after BI_PREFIX_CHAR (`issue#40147 `_, `issue#39984 `_, `pr#28409 `_, Casey Bodley, Tianshan Qu) +* rgw: fix cls_bucket_list_unordered() partial results (`pr#30253 `_, Mark Kogan) +* rgw: fix data sync start delay if remote haven't init data_log (`pr#30510 `_, Tianshan Qu) +* rgw: fix drain handles error when deleting bucket with bypass-gc option (`pr#29984 `_, dongdong tao) +* rgw: fix list bucket with delimiter wrongly skip some special keys (`issue#40905 `_, `pr#30168 `_, Tianshan Qu) +* rgw: fix list versions starts with version_id=null (`pr#30775 `_, Tianshan Qu) +* rgw: fix potential realm watch lost (`issue#40991 `_, `pr#30167 `_, Tianshan Qu) +* rgw: fix race b/w bucket reshard and ops waiting on reshard completion (`pr#29139 `_, J. Eric Ivancich) +* rgw: fix refcount tags to match and update object's idtag (`pr#30891 `_, J. Eric Ivancich) +* rgw: fixed "unrecognized arg" error when using "radosgw-admin zone rm" (`pr#30172 `_, Hongang Chen) +* rgw: gc remove tag after all sub io finish (`issue#40903 `_, `pr#30173 `_, Tianshan Qu) +* rgw: housekeeping of reset stats operation in radosgw-admin and cls back-end (`pr#30165 `_, J. Eric Ivancich) +* rgw: increase beast parse buffer size to 64k (`pr#30450 `_, Casey Bodley) +* rgw: ldap auth: S3 auth failure should return InvalidAccessKeyId (`pr#30652 `_, Matt Benjamin) +* rgw: make dns hostnames matching case insensitive (`issue#40995 `_, `pr#30166 `_, Casey Bodley, Abhishek Lekshmanan) +* rgw: mitigate bucket list with max-entries excessively high (`pr#30134 `_, J. Eric Ivancich) +* rgw: multisite: 'radosgw-admin bucket sync status' should call syncs_from(source.name) instead of id (`issue#40022 `_, `issue#40141 `_, `pr#29270 `_, Casey Bodley) +* rgw: multisite: RGWListBucketIndexesCR for data full sync needs pagination (`issue#39551 `_, `issue#40354 `_, `pr#29284 `_, Shilpa Jagannath) +* rgw: multisite: data sync loops back to the start of the datalog after reaching the end (`issue#39033 `_, `issue#39074 `_, `pr#29021 `_, Casey Bodley) +* rgw: multisite: mismatch of bucket creation times from List Buckets (`issue#39635 `_, `issue#39734 `_, `pr#28483 `_, Casey Bodley) +* rgw: multisite: overwrites in versioning-suspended buckets fail to sync (`issue#38080 `_, `issue#37792 `_, `pr#29017 `_, Casey Bodley) +* rgw: multisite: period pusher gets 403 Forbidden against other zonegroups (`issue#39415 `_, `issue#39287 `_, `pr#29256 `_, Casey Bodley) +* rgw: non-existent mdlog failures logged at level 0 (`issue#38747 `_, `issue#40033 `_, `pr#28757 `_, Abhishek Lekshmanan) +* rgw: perfcounters: add gc retire counter (`pr#30073 `_, Matt Benjamin) +* rgw: permit rgw-admin to populate user info by access-key (`pr#30105 `_, Matt Benjamin, Marc Koderer) +* rgw: provide admin-friendly reshard status output (`issue#37615 `_, `issue#40357 `_, `pr#29285 `_, Mark Kogan) +* rgw: remove_olh_pending_entries() does not limit the number of xattrs to remove (`issue#39179 `_, `issue#39118 `_, `pr#28348 `_, Casey Bodley) +* rgw: resharding of a versioned bucket causes a bucket stats discrepancy (`issue#39532 `_, `pr#28249 `_, J. Eric Ivancich) +* rgw: return ERR_NO_SUCH_BUCKET early while evaluating bucket policy (`issue#38420 `_, `issue#39697 `_, `pr#28422 `_, Abhishek Lekshmanan) +* rgw: rgw_file: all directories are virtual with respect to contents (`issue#40262 `_, `issue#40204 `_, `pr#28887 `_, Matt Benjamin) +* rgw: set null version object issues (`issue#36763 `_, `issue#40360 `_, `pr#29288 `_, Tianshan Qu) +* rgw: support delimiter longer then one symbol (`issue#39989 `_, `issue#38776 `_, `pr#29018 `_, Tianshan Qu, Matt Benjamin) +* rgw: swift object expiry fails when a bucket reshards (`issue#39741 `_, `pr#29258 `_, Casey Bodley, Abhishek Lekshmanan, J. Eric Ivancich) +* rgw: swift: refrain from corrupting static large objects when using nginx as a GET cache (`pr#30135 `_, Andrey Groshev) +* rgw: the Multi-Object Delete operation of S3 API wrongly handles the Code response element (`issue#18241 `_, `issue#40136 `_, `pr#29268 `_, Radoslaw Zarzynski) +* rgw: update resharding documentation (`issue#39047 `_, `pr#29020 `_, J. Eric Ivancich) +* rgw_file: fix invalidation of top-level directories (`issue#40215 `_, `pr#29276 `_, Matt Benjamin) +* rgw_file: advance_mtime() should consider namespace expiration (`issue#40415 `_, `pr#30660 `_, Matt Benjamin) +* rgw_file: fix readdir eof() calc--caller stop implies !eof and introduce fast S3 Unix stats (immutable) (`issue#40375 `_, `issue#40456 `_, `pr#30077 `_, Matt Benjamin) +* rgw_file: include tenant when hashing bucket names (`issue#40225 `_, `issue#40118 `_, `pr#29277 `_, Matt Benjamin) +* rgw_file: readdir: do not construct markers w/leading '/' (`pr#30157 `_, Matt Benjamin) +* rgw_file: save etag and acl info in setattr (`issue#39229 `_, `pr#28073 `_, Tao Chen) +* rpm: missing dependency on python34-ceph-argparse from python34-cephfs (and others?) (`issue#24918 `_, `issue#24919 `_, `issue#37613 `_, `pr#27949 `_, Kefu Chai) +* tests: cls_rbd: removed mirror peer pool test cases (`pr#31485 `_, Jason Dillaman) +* tests: librbd: set nbd timeout due to newer kernels defaulting it on (`pr#30424 `_, Jason Dillaman) +* tests: ceph-disk: use a Python2.7 compatible version of pytest (`pr#31254 `_, Alfredo Deza) +* tests: rgw: don't use ceph-ansible in s3a-hadoop suite (`issue#39706 `_, `pr#30069 `_, Casey Bodley) +* tests/workunits/rbd: wait for rbd-nbd unmap to complete (`issue#39598 `_, `issue#39674 `_, `pr#28310 `_, Jason Dillaman) +* tests: fix issues in vstart runner (`pr#28208 `_, Volker Theile) +* tests: limit loops waiting for force-backfill/force-recovery to happen (`issue#38351 `_, `issue#38309 `_, `pr#29245 `_, David Zafman) +* tests: remove s3tests ! (`pr#31640 `_, Yuri Weinstein) +* tests: cephfs: TestMisc.test_evict_client fails (`issue#40219 `_, `pr#29228 `_, "Yan, Zheng") +* tests: do not take ceph.conf.template from ceph/teuthology.git (`pr#30841 `_, Sage Weil) +* tests: ignore expected MDS_CLIENT_LATE_RELEASE warning (`issue#40968 `_, `pr#29812 `_, Patrick Donnelly) +* tests: install python3-cephfs for fs suite (`pr#31285 `_, Kefu Chai) +* tests: kclient unmount hangs after file system goes down (`issue#38709 `_, `issue#38677 `_, `pr#29218 `_, Patrick Donnelly) +* tests: krbd_msgr_segments.t: filter lvcreate output (`pr#31324 `_, Ilya Dryomov) +* tests: make get_mon_status use mon addr (`pr#31461 `_, Sage Weil, Nathan Cutler) +* tests: make: \*\*\* [hello_world_cpp] Error 127 in rados (`issue#40320 `_, `pr#29203 `_, Kefu Chai) +* tests: qa/standalone/scrub/osd-scrub-snaps.sh sometimes fails (`issue#40179 `_, `issue#40078 `_, `pr#29251 `_, David Zafman) +* tests: qa/tasks/ceph.py: pass cluster_name to get_mons (`pr#31424 `_, Nathan Cutler) +* tests: qa/workunits/rbd: stress test "rbd mirror pool status --verbose" (`pr#29873 `_, Mykola Golub) +* tests: remove "1node" and "systemd" tests as ceph-deploy is not actively developed (`pr#28457 `_, Yuri Weinstein) +* tests: sleep briefly after resetting kclient (`pr#29751 `_, Patrick Donnelly) +* tests: test_volume_client: print python version correctly (`issue#40317 `_, `issue#40184 `_, `pr#29208 `_, Lianne) +* tests: use curl in wait_for_radosgw() in util/rgw.py (`pr#28668 `_, Ali Maredia) +* tests: use hard_reset to reboot kclient (`issue#37681 `_, `pr#30233 `_, Patrick Donnelly) +* tests: whitelisted 'application not enabled' (`pr#28389 `_, Yuri Weinstein) +* tools/rados: list objects in a pg (`issue#36732 `_, `pr#30893 `_, Vikhyat Umrao, Li Wang) +* tools/rbd-ggate: close log before running postfork (`pr#30121 `_, Willem Jan Withagen) +* tools: Add clear-data-digest command to objectstore tool (`issue#37749 `_, `pr#29196 `_, Li Yichao) +* tools: ceph-objectstore-tool can't remove head with bad snapset (`pr#30081 `_, David Zafman) +* tools: ceph-objectstore-tool: return 0 if incmap is sane (`pr#31659 `_, Kefu Chai) +* tools: ceph-objectstore-tool: update-mon-db: do not fail if incmap is missing (`pr#30979 `_, Kefu Chai) +* tools: crushtool crash on Fedora 28 and newer (`issue#39174 `_, `issue#39311 `_, `pr#27986 `_, Brad Hubbard) + + +v13.2.6 Mimic +============= + +This is the sixth bugfix release of the Mimic v13.2.x long term +stable release series. We recommend all Mimic users upgrade. + +Notable Changes +--------------- +* Ceph v13.2.6 now packages python bindings for python3.6 instead of + python3.4, because EPEL7 recently switched from python3.4 to + python3.6 as the native python3. See the `announcement _` + for more details on the background of this change. + +Changelog +--------- +* cephfs: MDSMonitor: do not assign standby-replay when degraded (`issue#36384 `_, `pr#26643 `_, Patrick Donnelly) +* ceph-volume: add --all flag to simple activate (`pr#26655 `_, Jan Fajerski) +* ceph-volume: use our own testinfra suite for functional testing (`pr#26702 `_, Andrew Schoen) +* cli: ability to change file ownership (`issue#38370 `_, `pr#26760 `_, Sébastien Han) +* cli: better output of 'ceph health detail' (`issue#39266 `_, `pr#27847 `_, Shen Hang) +* cls/rgw: raise debug level of bi_log_iterate_entries output (`pr#27973 `_, Casey Bodley) +* common: ceph_timer: stop timer's thread when it is suspended (`issue#37766 `_, `pr#26583 `_, Peng Wang) +* common/str_map: fix trim() on empty string (`issue#38329 `_, `pr#26810 `_, Sage Weil) +* core: ENOENT in collection_move_rename on EC backfill target (`issue#36739 `_, `pr#27943 `_, Neha Ojha) +* core: Fix recovery and backfill priority handling (`issue#38041 `_, `pr#27081 `_, David Zafman) +* crush: add root_bucket to identify underfull buckets (`issue#38826 `_, `pr#27257 `_, huangjun) +* crush: backport recent upmap fixes (`issue#37968 `_, `issue#38897 `_, `issue#37940 `_, `pr#27963 `_, xie xingguo) +* crush/CrushWrapper: ensure crush_choose_arg_map.size == max_buckets (`issue#38664 `_, `pr#27082 `_, Sage Weil) +* doc: Fix incorrect mention of 'osd_deep_mon_scrub_interval' (`pr#26860 `_, Ashish Singh) +* doc: Minor rados related documentation fixes (`issue#38896 `_, `pr#27188 `_, David Zafman) +* doc: osd_recovery_priority is not documented (but osd_recovery_op_priority is) (`issue#23999 `_, `pr#26901 `_, David Zafman) +* doc/radosgw: Document mappings of S3 Operations to ACL grants (`issue#38523 `_, `pr#26968 `_, Adam C. Emerson) +* doc/rgw: document placement target configuration (`issue#24508 `_, `pr#27032 `_, Casey Bodley) +* doc: Update bluestore config docs - fix typo (as -> has) (`pr#27845 `_, Yaniv Kaul) +* doc: updated reference link for log based PG (`issue#38465 `_, `pr#26829 `_, James McClune) +* include/intarith: enforce the same type for p2\*() arguments (`pr#27318 `_, Ilya Dryomov) +* librbd: avoid aggregate-initializing any static_visitor (`issue#38659 `_, `pr#27041 `_, Willem Jan Withagen) +* librbd: avoid aggregate-initializing IsWriteOpVisitor (`issue#38660 `_, `pr#27039 `_, Willem Jan Withagen) +* mds: drop reconnect message from non-existent session (`issue#39026 `_, `pr#27916 `_, Shen Hang) +* mds: inode filtering on 'dump cache' asok (`issue#11172 `_, `pr#27058 `_, dongdong tao) +* mds/server: check directory split after rename (`issue#38994 `_, `pr#27917 `_, Shen Hang) +* mds: wait for client to release shared cap when re-acquiring xlock (`issue#38491 `_, `pr#27023 `_, "Yan, Zheng") +* mgr/balancer: blame if upmap won't actually work (`issue#38780 `_, `pr#26497 `_, xie xingguo) +* mgr/BaseMgrModule: drop GIL for ceph_send_command (`issue#38537 `_, `pr#26833 `_, Sage Weil) +* mgr: crashdump feature backport (`pr#24639 `_, Noah Watkins, Sage Weil, Dan Mick) +* mgr/dashboard: fix for using '::' on hosts without ipv6 (`issue#38575 `_, `pr#26750 `_, Noah Watkins) +* mgr/dashboard: Manager should complain about wrong dashboard certificate (`issue#24453 `_, `pr#27747 `_, Volker Theile, Ricardo Dias) +* mgr/dashboard: Search broken for entries with null values (`issue#38583 `_, `pr#26944 `_, Patrick Nawracay) +* mgr/dashboard: show I/O stats in Pool list (`pr#27053 `_, Alfonso Martínez) +* mgr/dashboard: Update npm packages (`issue#39080 `_, `pr#26670 `_, Tiago Melo) +* mgr/dashboard: Use human readable units on the OSD I/O graphs (`issue#25075 `_, `pr#27558 `_, Tiago Melo) +* mgr: drop GIL in get_config (`pr#26612 `_, John Spray) +* mgr: enable inter-module calls (`pr#27638 `_, John Spray) +* mgr/prometheus: add interface and objectstore to osd metadata (`pr#26537 `_, Jan Fajerski, Konstantin Shalygin) +* mgr/PyModule: put mgr_module_path first in sys.path (`issue#38469 `_, `pr#26777 `_, Tim Serong) +* mon/OSDMonitor: fix osd boot check (`pr#27351 `_, Sage Weil) +* mon/OSDMonitor: further improve prepare_command_pool_set E2BIG error message (`issue#39353 `_, `pr#27647 `_, Nathan Cutler) +* msg: output peer address when detecting bad CRCs (`issue#39367 `_, `pr#27860 `_, Greg Farnum) +* multisite: bucket full sync does not handle delete markers (`issue#38007 `_, `pr#26194 `_, Casey Bodley) +* multisite: rgw_data_sync_status json decode failure breaks automated datalog trimming (`issue#38373 `_, `pr#26615 `_, Casey Bodley) +* os/bluestore: backport new bitmap allocator (`pr#26983 `_, Igor Fedotov, Sage Weil) +* os/bluestore: bitmap allocator might fail to return contiguous chunk despite having enough space (`pr#27298 `_, Igor Fedotov) +* os/bluestore: call fault_range properly prior to looking for blob to … (`pr#27570 `_, Igor Fedotov) +* os/bluestore: fix improper backport for p2 macros for bmap allocator (`pr#27606 `_, Igor Fedotov) +* os/bluestore: fix length overflow (`issue#39245 `_, `pr#27366 `_, Jianpeng Ma) +* os/bluestore: fix out-of-bound access in bmap allocator (`pr#27738 `_, Igor Fedotov) +* os/bluestore_tool: bluefs-bdev-expand: indicate bypassed for main dev (`pr#27447 `_, Igor Fedotov) +* osd: FAILED ceph_assert(attrs || !pg_log.get_missing().is_missing(soid) || (it_objects != pg_log.get_log().objects.end() && it_objects->second->op == pg_log_entry_t::LOST_REVERT)) in PrimaryLogPG::get_object_context() (`issue#38931 `_, `issue#38784 `_, `pr#27940 `_, xie xingguo) +* osd: fixup OpTracker destruct assert, waiting_for_osdmap take ref with OpRequest (`issue#38377 `_, `pr#26862 `_, linbing) +* osd/PG: discover missing objects when an OSD peers and PG is degraded (`pr#27745 `_, Jonas Jelten) +* osd/PGLog.h: print olog_can_rollback_to before deciding to rollback (`issue#38894 `_, `pr#27284 `_, Neha Ojha) +* osd/PGLog: preserve original_crt to check rollbackability (`issue#39023 `_, `issue#36739 `_, `pr#27629 `_, Neha Ojha) +* osd/PrimaryLogPG: handle object !exists in handle_watch_timeout (`issue#38432 `_, `pr#26709 `_, Sage Weil) +* osd: process_copy_chunk remove obc ref before pg unlock (`issue#38842 `_, `pr#27587 `_, Zengran Zhang) +* osd: shutdown recovery_request_timer earlier (`issue#38945 `_, `pr#27938 `_, Zengran Zhang) +* pybind/rados: fixed Python3 string conversion issue on get_fsid (`issue#38381 `_, `pr#27259 `_, Jason Dillaman) +* rbd: API list_images() Segmentation fault (`issue#38468 `_, `pr#26707 `_, songweibin) +* rbd: krbd: return -ETIMEDOUT in polling (`issue#38792 `_, `pr#27588 `_, Dongsheng Yang) +* rbd_mirror: don't report error if image replay canceled (`pr#26140 `_, Mykola Golub) +* rgw: Adding tcp_nodelay option to Beast (`issue#34308 `_, `pr#27367 `_, Or Friedmann) +* rgw admin: add tenant argument to reshard cancel (`issue#38214 `_, `pr#27603 `_, Abhishek Lekshmanan) +* rgw-admin: fix data sync report for master zone (`issue#38938 `_, `pr#27421 `_, cfanz) +* rgw: admin: handle delete_at attr in object stat output (`pr#27828 `_, Abhishek Lekshmanan) +* rgw: allow radosgw-admin to list bucket w --allow-unordered (`pr#28096 `_, J. Eric Ivancich) +* rgw: beast: set a default port for endpoints (`issue#39000 `_, `pr#27661 `_, Abhishek Lekshmanan) +* rgw: bucket limit check misbehaves for > max-entries buckets (usually 1000) (`pr#26945 `_, Matt Benjamin) +* rgw: bug in versioning concurrent, list and get have consistency issue (`issue#38060 `_, `pr#26664 `_, Wang Hao) +* rgw: check for non-existent bucket in RGWGetACLs (`issue#38116 `_, `pr#26529 `_, Matt Benjamin) +* rgw: cls_bucket_list_unordered lists a single shard (`issue#39393 `_, `pr#28086 `_, Casey Bodley) +* rgw: data sync drains lease stack on lease failure (`issue#38479 `_, `pr#26762 `_, Casey Bodley) +* rgw: don't crash on missing /etc/mime.types (`issue#38328 `_, `pr#27354 `_, Casey Bodley) +* rgw: failed to pass test_bucket_create_naming_bad_punctuation in s3test (`issue#23587 `_, `issue#26965 `_, `pr#27666 `_, yuliyang, Abhishek Lekshmanan) +* rgw: fix bug of apply default quota, for this create new a user may core using beast (`issue#38847 `_, `pr#27335 `_, liaoxin01) +* rgw: fix read not exists null version return wrong (`issue#38811 `_, `pr#27304 `_, Tianshan Qu) +* rgw: Fix S3 compatibility bug when CORS is not found (`issue#37945 `_, `pr#27356 `_, Nick Janus) +* rgw: GetBucketCORS API returns Not Found error code when CORS configuration does not exist (`issue#26964 `_, `pr#27122 `_, yuliyang, ashitakasam) +* rgw: get or set realm zonegroup zone should check user's caps for security (`issue#37352 `_, `pr#27948 `_, yuliyang, Casey Bodley) +* rgw: ldap: fix LDAPAuthEngine::init() when uri !empty() (`issue#38699 `_, `pr#27174 `_, Matt Benjamin) +* rgw: multiple es related fixes and improvements (`issue#38028 `_, `issue#22877 `_, `issue#36233 `_, `issue#38030 `_, `issue#36092 `_, `pr#26517 `_, Yehuda Sadeh, Abhishek Lekshmanan, Willem Jan Withagen) +* rgw: nfs: skip empty (non-POSIX) path segments (`issue#38744 `_, `pr#27179 `_, Matt Benjamin) +* rgw: only update last_trim marker on ENODATA (`issue#38075 `_, `pr#26641 `_, Casey Bodley) +* rgw: resolve bugs and clean up garbage collection code (`issue#38454 `_, `pr#27796 `_, J. Eric Ivancich) +* rgw: rgw_file: use correct secret key to check auth (`issue#37855 `_, `pr#26687 `_, MinSheng Lin) +* rgw: sse c fixes (`issue#38700 `_, `pr#27297 `_, Adam Kupczyk, Casey Bodley, Abhishek Lekshmanan) +* rgw: sync module: avoid printing attrs of objects in log (`issue#37646 `_, `pr#27029 `_, Abhishek Lekshmanan) +* rgw: use chunked encoding to get partial results out faster (`issue#12713 `_, `pr#28014 `_, Robin H. Johnson) +* rgw: when exclusive lock fails due existing lock, log add'l info (`issue#38171 `_, `pr#26553 `_, J. Eric Ivancich) +* rgw: when using nfs-ganesha to upload file, rgw es sync module get failed (`issue#36233 `_, `pr#27972 `_, Abhishek Lekshmanan) +* run-standalone.sh: Need double-quotes to handle | in core_pattern on all distributions (`issue#38325 `_, `pr#26811 `_, David Zafman) +* spdk: update to latest spdk-18.05 branch (`pr#27451 `_, Kefu Chai) +* test: run-standalone.sh set local library location so mgr can find li… (`issue#38262 `_, `pr#26495 `_, David Zafman) +* test/store_test: fix/workaround for BlobReuseOnOverwriteUT and garbageCollection (`pr#27055 `_, Igor Fedotov) +* test: Verify a log trim trims the dup_index (`pr#26578 `_, Brad Hubbard) +* tools: ceph-disk/tests: use random unused port for CEPH_MON (`issue#39066 `_, `pr#27228 `_, Kefu Chai) +* tools: ceph-objectstore-tool: rename dump-import to dump-export (`issue#39284 `_, `pr#27635 `_, David Zafman) + + +v13.2.5 Mimic +============= + +This is the fifth bugfix release of the Mimic v13.2.x long term +stable release series. We recommend all Mimic users upgrade. + +Notable Changes +--------------- + +* This release fixes the pg log hard limit bug that was introduced in + 13.2.2, https://tracker.ceph.com/issues/36686. A flag called + `pglog_hardlimit` has been introduced, which is off by default. Enabling + this flag will limit the length of the pg log. In order to enable + that, the flag must be set by running `ceph osd set pglog_hardlimit` + after completely upgrading to 13.2.2. Once the cluster has this flag + set, the length of the pg log will be capped by a hard limit. Once set, + this flag *must not* be unset anymore. In luminous, this feature was + introduced in 12.2.11. Users who are running 12.2.11, and want to + continue to use this feature, should upgrade to 13.2.5 or later. + +* This release also fixes a CVE on civetweb, CVE-2019-3821 where SSL file + descriptors were not closed in civetweb in case the initial negotiation fails. + +* There have been fixes to RGW dynamic and manual resharding, which no longer + leaves behind stale bucket instances to be removed manually. For finding and + cleaning up older instances from a reshard a radosgw-admin command `reshard + stale-instances list` and `reshard stale-instances rm` should do the necessary + cleanup. These commands should *not* be used on a multisite setup as the stale + instances may be unlikely to be from a reshard and can have consequences. In + the next version the admin CLI will prevent this command to be run on a + multisite cluster, however for the current release users are urged not to + use the delete command on a multisite cluster. + +Changelog +--------- + +* build/ops: Destruction of basic_string _GLIBCXX_USE_CXX11_ABI=0 and C++17 mode results in invalid delete (`issue#38177 `_, `pr#26593 `_, Kefu Chai, Jason Dillaman) +* build/ops: rpm: require ceph-base instead of ceph-common (`issue#37620 `_, `pr#25809 `_, Sébastien Han) +* build/ops: run-make-check.sh ccache tweaks (`issue#24817 `_, `issue#24777 `_, `pr#25153 `_, Nathan Cutler, Jonathan Brielmaier, Erwan Velu) +* ceph-create-keys: fix octal notation for Python 3 without losing compatibility with Python 2 (`issue#37641 `_, `pr#25531 `_, James Page) +* cephfs: MDCache::finish_snaprealm_reconnect() create and drop MClientSnap message (`issue#38285 `_, `pr#26472 `_, "Yan, Zheng") +* cephfs: mgr/status: fix fs status subcommand did not show standby-replay MDS' perf info (`issue#36399 `_, `pr#25031 `_, Zhi Zhang) +* ceph-objectstore-tool: Dump hashinfo (`issue#37597 `_, `pr#25721 `_, David Zafman) +* ceph-volume-client: allow setting mode of CephFS volumes (`issue#36651 `_, `pr#25413 `_, Tom Barron) +* ceph-volume: enable device discards (`issue#36532 `_, `pr#25749 `_, Jonas Jelten) +* ceph-volume: fix JSON output in `inventory` (`issue#37390 `_, `pr#25923 `_, Sebastian Wagner) +* ceph-volume: Fix TypeError: join() takes exactly one argument (2 given) (`issue#37595 `_, `pr#25771 `_, Sebastian Wagner) +* ceph-volume normalize comma to dot for string to int conversions (`issue#37442 `_, `pr#25775 `_, Alfredo Deza) +* ceph-volume: revert partition as disk (`issue#37506 `_, `pr#26294 `_, Jan Fajerski) +* ceph-volume: set permissions right before prime-osd-dir (`issue#37486 `_, `pr#25777 `_, Andrew Schoen, Alfredo Deza) +* ceph-volume tests/functional declare ceph-ansible roles instead of importing them (`issue#37805 `_, `pr#25837 `_, Alfredo Deza) +* ceph-volume zap: improve zapping to remove all partitions and all LVs, encrypted or not (`issue#37449 `_, `pr#25351 `_, Alfredo Deza) +* cli: dump osd-fsid as part of osd find (`issue#37966 `_, `pr#26035 `_, Noah Watkins) +* client: do not move f->pos untill success write (`issue#37546 `_, `pr#25683 `_, Junhui Tang) +* client: fix failure in quota size limitation when using samba (`issue#37547 `_, `pr#25678 `_, Junhui Tang) +* client: fix fuse client hang because its pipe to mds is not ok (`issue#36079 `_, `pr#25903 `_, Guan yunfei) +* client: retry remount on dcache invalidation failure (`issue#27657 `_, `pr#24695 `_, Venky Shankar) +* client: session flush does not cause cap release message flush (`issue#38009 `_, `pr#26424 `_, Patrick Donnelly) +* cmake: do not pass -B{symbolic,symbolic-functions} to linker on FreeBSD (`issue#36717 `_, `pr#25525 `_, Willem Jan Withagen) +* common: fix memory leaks in WeightedPriorityQueue (`issue#36248 `_, `pr#25295 `_, Radoslaw Zarzynski) +* common: fix missing include boost/noncopyable.hpp (`issue#38178 `_, `pr#26277 `_, Willem Jan Withagen) +* core: list-inconsistent-obj output truncated, causing osd-scrub-repair.sh failure (`issue#37653 `_, `pr#25603 `_, David Zafman) +* core: luminous->(mimic,nautilus): PGMapDigest decode error on luminous end (`issue#38295 `_, `pr#26451 `_, Sage Weil) +* core: Objecter::calc_op_budget: Fix invalid access to extent union member (`issue#37932 `_, `pr#26066 `_, Simon Ruggier) +* core: scrub warning check incorrectly uses mon scrub interval (`issue#37264 `_, `pr#26493 `_, David Zafman) +* deep fsck fails on inspecting very large onodes (`issue#38065 `_, `pr#26291 `_, Igor Fedotov) +* doc: pin the version for "breathe" to 4.1.11 (`issue#38229 `_, `pr#26333 `_, Alfredo Deza) +* doc: rados/configuration: refresh osdmap section (`issue#38051 `_, `pr#26373 `_, Ilya Dryomov) +* doc: updated Ceph documentation links (`issue#37793 `_, `pr#26180 `_, James McClune) +* doc/user-management: Remove obsolete reset caps command (`issue#37663 `_, `pr#25607 `_, Brad Hubbard) +* journal: max journal order is incorrectly set at 64 (`issue#37541 `_, `pr#25957 `_, Mykola Golub) +* librbd: fix missing unblock_writes if shrink is not allowed (`issue#36778 `_, `pr#25252 `_, runsisi) +* librbd: reset snaps in rbd_snap_list() (`issue#37508 `_, `pr#25459 `_, Kefu Chai) +* mds: broadcast quota message to client when disable quota (`issue#38054 `_, `pr#26292 `_, Junhui Tang) +* mds: create separate config for heartbeat timeout (`issue#37674 `_, `pr#26010 `_, Patrick Donnelly) +* mds: directories pinned keep being replicated back and forth between exporting mds and importing mds (`issue#37368 `_, `pr#25521 `_, Xuehan Xu) +* mds: disallow dumping huge caches to formatter (`issue#36703 `_, `pr#25642 `_, Venky Shankar) +* mds: do not call Journaler::_trim twice (`issue#37566 `_, `pr#25561 `_, Tang Junhui) +* mds: fix bug filelock stuck at LOCK_XSYN leading client can't read data (`issue#37333 `_, `pr#25676 `_, Guan yunfei) +* mds: fix incorrect l_pq_executing_ops statistics when meet an invalid item in purge queue (`issue#37567 `_, `pr#25559 `_, Junhui Tang) +* mds: fix potential re-evaluate stray dentry in _unlink_local_finish (`issue#38263 `_, `pr#26474 `_, Zhi Zhang) +* mds: fix races of updating wanted caps (`issue#37464 `_, `pr#25680 `_, "Yan, Zheng") +* mds: handle fragment notify race (`issue#36035 `_, `pr#26252 `_, "Yan, Zheng") +* mds: handle state change race (`issue#37594 `_, `pr#26051 `_, "Yan, Zheng") +* mds: log evicted clients to clog/dbg (`issue#37639 `_, `pr#25857 `_, Patrick Donnelly) +* MDSMonitor: allow beacons from stopping MDS that was laggy (`issue#37724 `_, `pr#25685 `_, Patrick Donnelly) +* MDSMonitor: missing osdmon writeable check (`issue#37929 `_, `pr#26069 `_, Patrick Donnelly) +* mds: purge queue recovery hangs during boot if PQ journal is damaged (`issue#37543 `_, `pr#26055 `_, Patrick Donnelly) +* mds: PurgeQueue write error handler does not handle EBLACKLISTED (`issue#37394 `_, `pr#25523 `_, Patrick Donnelly) +* mds: remove duplicated l_mdc_num_strays perfcounter set (`issue#37516 `_, `pr#25681 `_, Zhi Zhang) +* mds: remove wrong assertion in Locker::snapflush_nudge (`issue#37721 `_, `pr#25885 `_, "Yan, Zheng") +* mds: runs out of file descriptors after several respawns (`issue#35850 `_, `pr#25822 `_, Patrick Donnelly) +* mds: severe internal fragment when decoding xattr_map from log event (`issue#37399 `_, `pr#25519 `_, "Yan, Zheng") +* mds: trim cache after journal flush (`issue#38010 `_, `pr#26214 `_, Patrick Donnelly) +* mds: wait shorter intervals if beacon not sent (`issue#36367 `_, `pr#25980 `_, Patrick Donnelly) +* mgr: add get_latest_counter() to C++ -> Python interface (`issue#38138 `_, `pr#26074 `_, Jan Fajerski) +* mgr/balancer: add cmd to list all plans (`issue#37418 `_, `pr#25293 `_, Yang Honggang) +* mgr/balancer: add crush_compat_metrics param to change optimization keys (`issue#37412 `_, `pr#25291 `_, Dan van der Ster) +* mgr/dashboard: Set mirror_mode to None (`issue#37870 `_, `pr#26009 `_, Sebastian Wagner) +* mgr: deadlock: _check_auth_rotating possible clock skew, rotating keys expired way too early (`issue#23460 `_, `pr#26426 `_, Yan Jun) +* mgr: prometheus: added bluestore db and wal devices to ceph_disk_occupation metric (`issue#36627 `_, `pr#25218 `_, Konstantin Shalygin) +* mgr: race between daemon state and service map in 'service status' (`issue#36656 `_, `pr#25368 `_, Mykola Golub) +* mgr/restful: fix py got exception when get osd info (`issue#38182 `_, `pr#26200 `_, Boris Ranto, zouaiguo) +* mgr: various python3 fixes (`issue#37415 `_, `pr#25292 `_, Noah Watkins) +* mgr will refuse connection from the monitor who starts behind it (`issue#37753 `_, `pr#26235 `_, Xinying Song) +* mgr/zabbix: Send more PG information to Zabbix (`issue#38180 `_, `pr#25944 `_, Wido den Hollander) +* mon: A PG with PG_STATE_REPAIR doesn't mean damaged data, PG_STATE_IN… (`issue#38070 `_, `pr#26304 `_, David Zafman) +* mon: log last command skips latest entry (`issue#36679 `_, `pr#25526 `_, John Spray) +* mon: mark REMOVE_SNAPS messages as no_reply (`issue#37568 `_, `pr#25782 `_, "Yan, Zheng") +* mon/OSDMonitor: do not populate void pg_temp into nextmap (`issue#37784 `_, `pr#25844 `_, Aleksei Zakharov) +* mon: shutdown messenger early to avoid accessing deleted logger (`issue#37780 `_, `pr#25846 `_, ningtao) +* msg/async: backport recent messenger fixes (`issue#36497 `_, `issue#37778 `_, `pr#25958 `_, xie xingguo) +* msg/async: crashes when authenticator provided by verify_authorizer not implemented (`issue#36443 `_, `pr#25299 `_, Sage Weil) +* multisite: es sync null versioned object failed because of olh info (`issue#23842 `_, `issue#23841 `_, `pr#25578 `_, Tianshan Qu, Shang Ding) +* os/bluestore: fixup access a destroy cond cause deadlock or undefine (`issue#37733 `_, `pr#26260 `_, linbing) +* os/bluestore: KernelDevice::read() does the EIO mapping now (`issue#36455 `_, `pr#25854 `_, Radoslaw Zarzynski) +* os/bluestore: rename does not old ref to replacement onode at old name (`issue#36541 `_, `pr#25313 `_, Sage Weil) +* osd: Add support for osd_delete_sleep configuration value (`issue#36474 `_, `pr#25507 `_, Jianpeng Ma, David Zafman) +* osd-backfill-stats.sh fails in rados/standalone/osd.yaml (`issue#37393 `_, `issue#35982 `_, `pr#26329 `_, Sage Weil, David Zafman) +* osd: backport recent upmap fixes (`issue#37940 `_, `issue#37881 `_, `pr#26128 `_, huangjun, xie xingguo) +* osdc/Objecter: update op_target_t::paused in _calc_target (`issue#37398 `_, `pr#25718 `_, Song Shun, runsisi) +* osd: failed assert when osd_memory_target options mismatch (`issue#37507 `_, `pr#25605 `_, xie xingguo) +* osd: force-backfill sets forced_recovery instead of forced_backfill in 13.2.1 (`issue#27985 `_, `pr#26324 `_, xie xingguo) +* osd/mon: fix upgrades for pg log hard limit (`issue#36686 `_, `pr#26206 `_, Neha Ojha) +* osd/OSDMap: cancel mapping if target osd is out (`issue#37501 `_, `pr#25699 `_, ningtao, xie xingguo) +* osd/OSD: OSD::mkfs asserts when reusing disk with existing superblock (`issue#37404 `_, `pr#25385 `_, Igor Fedotov) +* osd/PG.cc: account for missing set irrespective of last_complete (`issue#37919 `_, `pr#26239 `_, Neha Ojha) +* osd/PrimaryLogPG: fix the extent length error of the sync read (`issue#37680 `_, `pr#25708 `_, Xiaofei Cui) +* osd: Prioritize user specified scrubs (`issue#37269 `_, `pr#25513 `_, David Zafman) +* os/filestore: ceph_abort() on fsync(2) or fdatasync(2) failure (`issue#38258 `_, `pr#26438 `_, Sage Weil) +* pybind/mgr: drop unnecessary iterkeys usage to make py-3 compatible (`issue#37581 `_, `pr#25759 `_, Mykola Golub) +* pybind/mgr/status: fix ceph fs status in py3 environments (`issue#37573 `_, `pr#25694 `_, Jan Fajerski) +* qa: pjd test appears to require more than 3h timeout for some configurations (`issue#36594 `_, `pr#25557 `_, Patrick Donnelly) +* qa/rados/upgrade: align thrashing with upgrade suite, don't import/export pgs (`issue#37665 `_, `pr#25856 `_, Sage Weil) +* qa/tasks/radosbench: default to 64k writes (`issue#37797 `_, `pr#26354 `_, Sage Weil) +* qa: test_damage needs to silence MDS_READ_ONLY (`issue#37944 `_, `pr#26072 `_, Patrick Donnelly) +* qa: test_damage performs truncate test on same object repeatedly (`issue#37836 `_, `issue#37837 `_, `pr#26047 `_, Patrick Donnelly) +* qa: teuthology may hang on diagnostic commands for fuse mount (`issue#36390 `_, `pr#25515 `_, Patrick Donnelly) +* qa: whitelist cap revoke warning (`issue#25188 `_, `pr#26496 `_, Patrick Donnelly) +* qa/workunits/rados/test_health_warnings: prevent out osds (`issue#37776 `_, `pr#25850 `_, Sage Weil) +* qa: wrong setting for msgr failures (`issue#36676 `_, `pr#25517 `_, Patrick Donnelly) +* rbd: fix delay time calculation for trash move (`issue#37861 `_, `pr#25954 `_, Mykola Golub) +* rgw: debug logging for v4 auth does not sanitize encryption keys (`issue#37847 `_, `pr#26003 `_, Casey Bodley) +* rgw: Don't treat colons specially in resource part of ARN (`issue#23817 `_, `pr#25386 `_, Adam C. Emerson) +* rgw: fails to start on Fedora 28 from default configuration (`issue#24228 `_, `pr#26129 `_, Matt Benjamin) +* rgw: feature -- log successful bucket resharding events (`issue#37647 `_, `pr#25740 `_, J. Eric Ivancich) +* rgw_file: user info never synced since librgw init (`issue#37527 `_, `pr#25485 `_, Tao Chen) +* rgw: fix max-size in radosgw-admin and REST Admin API (`issue#37517 `_, `pr#25449 `_, Nick Erdmann) +* rgw: fix version bucket stats (`issue#21429 `_, `pr#25643 `_, Shasha Lu) +* rgw: handle S3 version 2 pre-signed urls with meta-data (`issue#23470 `_, `pr#25899 `_, Matt Benjamin) +* rgw: master zone deletion without a zonegroup rm would break rgw rados init (`issue#37328 `_, `pr#25511 `_, Abhishek Lekshmanan) +* rgw: multisite: sync gets stuck retrying deletes that fail with ERR_PRECONDITION_FAILED (`issue#37448 `_, `pr#25505 `_, Casey Bodley) +* rgw: Object can still be deleted even if s3:DeleteObject policy is set (`issue#37403 `_, `pr#26309 `_, Enming.Zhang) +* rgw: "radosgw-admin bucket rm ... --purge-objects" can hang (`issue#38134 `_, `pr#26266 `_, J. Eric Ivancich) +* rgw: radosgw-admin: translate reshard status codes (trivial) (`issue#36486 `_, `pr#25198 `_, Matt Benjamin) +* rgw: rgwgc: process coredump in some special case (`issue#23199 `_, `pr#25624 `_, zhaokun) +* rpm: Use hardened LDFLAGS (`issue#36316 `_, `pr#25171 `_, Boris Ranto) + +v13.2.4 Mimic +============= + +This is the fourth bugfix release of the Mimic v13.2.x long term +stable release series. This release includes two security fixes that +were tested but inadvertently excluded from the final v13.2.3 release +build. + +Changelog +--------- + +* CVE-2018-16846: rgw: enforce bounds on max-keys/max-uploads/max-parts (`issue#35994 `_) +* CVE-2018-14662: mon: limit caps allowed to access the config store + +v13.2.3 Mimic +============= + +This is the third bugfix release of the Mimic v13.2.x long term stable release +series. This release contains many fixes across all components of Ceph. +We recommend that all users upgrade. + +* The default memory utilization for the mons has been increased + somewhat. Rocksdb now uses 512 MB of RAM by default, which should + be sufficient for small to medium-sized clusters; large clusters + should tune this up. Also, the `mon_osd_cache_size` has been + increase from 10 OSDMaps to 500, which will translate to an + additional 500 MB to 1 GB of RAM for large clusters, and much less + for small clusters. + +* Ceph v13.2.2 includes a wrong backport, which may cause mds to go into + 'damaged' state when upgrading Ceph cluster from previous version. + The bug is fixed in v13.2.3. If you are already running v13.2.2, + upgrading to v13.2.3 does not require special action. + +* The bluestore_cache_* options are no longer needed. They are replaced + by osd_memory_target, defaulting to 4GB. BlueStore will expand + and contract its cache to attempt to stay within this + limit. Users upgrading should note this is a higher default + than the previous bluestore_cache_size of 1GB, so OSDs using + BlueStore will use more memory by default. + For more details, see the `BlueStore docs `_. + +* This version contains an upgrade bug, http://tracker.ceph.com/issues/36686, + due to which upgrading during recovery/backfill can cause OSDs to fail. This + bug can be worked around, either by restarting all the OSDs after the upgrade, + or by upgrading when all PGs are in "active+clean" state. If you have already + successfully upgraded to 13.2.2, this issue should not impact you. Going + forward, we are working on a clean upgrade path for this feature. + +Changelog +--------- + +* build/ops: Can't compile Ceph on Fedora 29 as it doesn't recognize python\*3\*-tox as an install Tox (`issue#18163 `_, `issue#37301 `_, `issue#37422 `_, `pr#25294 `_, Nathan Cutler, Brad Hubbard) +* build/ops: debian: correct ceph-common relationship with older radosgw package (`pr#25115 `_, Matthew Vernon) +* ceph-bluestore-tool: fix set label functionality for specific keys (`pr#24352 `_, Igor Fedotov) +* ceph fs add_data_pool applies pool application metadata incorrectly (`issue#36203 `_, `issue#36028 `_, `pr#24470 `_, John Spray) +* cephfs: client: explicitly show blacklisted state via asok status command (`issue#36457 `_, `issue#36352 `_, `pr#24993 `_, Jonathan Brielmaier, Zhi Zhang) +* cephfs: client: request next osdmap for blacklisted client (`issue#36668 `_, `issue#36690 `_, `pr#24987 `_, Zhi Zhang) +* cephfs-journal-tool: wrong layout info used (`issue#24933 `_, `issue#24644 `_, `pr#24583 `_, Gu Zhongyan) +* cephfs: some tool commands silently operate on only rank 0, even if multiple ranks exist (`issue#36218 `_, `pr#25036 `_, Venky Shankar) +* ceph-fuse: add to selinux profile (`issue#36103 `_, `issue#36197 `_, `pr#24439 `_, Patrick Donnelly) +* ceph-volume: activate option --auto-detect-objectstore respects --no-systemd (`issue#36249 `_, `pr#24357 `_, Alfredo Deza) +* ceph-volume add device_id to inventory listing (`pr#25349 `_, Jan Fajerski) +* ceph-volume: add inventory command (`issue#24972 `_, `pr#25013 `_, Jan Fajerski) +* ceph-volume Additional work on ceph-volume to add some choose_disk capabilities (`issue#36446 `_, `pr#24782 `_, Erwan Velu) +* ceph-volume add new ceph-handlers role from ceph-ansible (`issue#36251 `_, `pr#24337 `_, Alfredo Deza) +* ceph-volume: adds a --prepare flag to `lvm batch` (`issue#36363 `_, `pr#24760 `_, Andrew Schoen) +* ceph-volume: allow to specify --cluster-fsid instead of reading from ceph.conf (`issue#26953 `_, `pr#25116 `_, Alfredo Deza) +* ceph_volume_client: py3 compatible (`issue#26850 `_, `issue#17230 `_, `pr#24443 `_, Rishabh Dave, Patrick Donnelly) +* ceph-volume custom cluster names fail on filestore trigger (`issue#27210 `_, `pr#24279 `_, Alfredo Deza) +* ceph-volume: do not send (lvm) stderr/stdout to the terminal, use the logfile (`issue#36492 `_, `pr#24740 `_, Alfredo Deza) +* ceph-volume enable --no-systemd flag for simple sub-command (`issue#36470 `_, `pr#25011 `_, Alfredo Deza) +* ceph-volume: fix journal and filestore data size in `lvm batch --report` (`issue#36242 `_, `pr#24306 `_, Andrew Schoen) +* ceph-volume: lsblk can fail to find PARTLABEL, must fallback to blkid (`issue#36098 `_, `pr#24334 `_, Alfredo Deza) +* ceph-volume lvm.prepare update help to indicate partitions are needed, not devices (`issue#24795 `_, `pr#24449 `_, Alfredo Deza) +* ceph-volume: make `lvm batch` idempotent (`pr#24588 `_, Andrew Schoen) +* ceph-volume: patch Device when testing (`issue#36768 `_, `pr#25066 `_, Alfredo Deza) +* ceph-volume: reject devices that have existing GPT headers (`issue#27062 `_, `pr#25103 `_, Andrew Schoen) +* ceph-volume: remove LVs when using zap --destroy (`pr#25100 `_, Alfredo Deza) +* ceph-volume remove version reporting from help menu (`issue#36386 `_, `pr#24753 `_, Alfredo Deza) +* ceph-volume: rename Device property valid to available (`issue#36701 `_, `pr#25133 `_, Jan Fajerski) +* ceph-volume: skip processing devices that don't exist when scanning system disks (`issue#36247 `_, `pr#24381 `_, Alfredo Deza) +* ceph-volume systemd import main so console_scripts work for executable (`issue#36648 `_, `pr#24852 `_, Alfredo Deza) +* ceph-volume tests install ceph-ansible's requirements.txt dependencies (`issue#36672 `_, `pr#24959 `_, Alfredo Deza) +* ceph-volume tests.systemd update imports for systemd module (`issue#36704 `_, `pr#24957 `_, Alfredo Deza) +* ceph-volume: use console_scripts (`issue#36601 `_, `pr#24838 `_, Mehdi Abaakouk) +* ceph-volume util.encryption don't push stderr to terminal (`issue#36246 `_, `pr#24826 `_, Alfredo Deza) +* ceph-volume util.encryption robust blkid+lsblk detection of lockbox (`pr#24980 `_, Alfredo Deza) +* client: fix use-after-free in Client::link() (`issue#35841 `_, `issue#24557 `_, `pr#24187 `_, "Yan, Zheng") +* client: statfs inode count odd (`issue#35940 `_, `issue#24849 `_, `pr#24377 `_, Rishabh Dave) +* client:two ceph-fuse client, one can not list out files created by an… (`issue#27051 `_, `issue#35934 `_, `pr#24295 `_, Peng Xie) +* client: update ctime when modifying file content (`issue#35945 `_, `issue#36134 `_, `pr#24385 `_, "Yan, Zheng") +* common: get real hostname from container/pod environment (`pr#23916 `_, Sage Weil) +* core: _aio_log_start inflight overlap of 0x10000~1000 with [65536~4096] (`issue#36754 `_, `issue#36625 `_, `pr#25062 `_, Jonathan Brielmaier, Yang Honggang) +* core: FAILED assert(osdmap_manifest.pinned.empty()) in OSDMonitor::prune_init() (`issue#24612 `_, `issue#35071 `_, `pr#24918 `_, Joao Eduardo Luis) +* core: Interactive mode CLI prints no output since Mimic (`issue#36358 `_, `issue#36432 `_, `pr#24971 `_, John Spray, Mohamad Gebai) +* core: mgr crash on scrub of unconnected osd (`issue#36110 `_, `issue#36465 `_, `pr#25029 `_, Sage Weil) +* core: mon osdmap cash too small during upgrade to mimic (`issue#36505 `_, `pr#25019 `_, Sage Weil) +* core: monstore tool rebuild does not generate creating_pgs (`issue#36306 `_, `issue#36433 `_, `pr#25016 `_, Sage Weil) +* core: Objecter: add ignore cache flag if got redirect reply (`issue#36658 `_, `pr#25075 `_, Iain Buclaw, Jonathan Brielmaier) +* core: objecter cannot resend split-dropped op when racing with con reset (`issue#22544 `_, `issue#35843 `_, `pr#24970 `_, Sage Weil) +* core: os/bluestore: cache autotuning and memory limit (`issue#37340 `_, `pr#25283 `_, Josh Durgin, Mark Nelson) +* core: rados rm --force-full is blocked when cluster is in full status (`issue#36435 `_, `pr#25017 `_, Yang Honggang) +* crush/CrushWrapper: fix crush tree json dumper (`issue#36150 `_, `pr#24481 `_, Oshyn Song) +* debian/control: require fuse for ceph-fuse (`issue#21057 `_, `pr#24037 `_, Thomas Serlin) +* doc: add ceph-volume inventory sections (`pr#25130 `_, Jan Fajerski) +* doc: fix broken fstab url in cephfs/fuse (`issue#36286 `_, `issue#36313 `_, `pr#24441 `_, Jos Collin) +* doc: Put command template into literal block (`pr#25000 `_, Alexey Stupnikov) +* doc: remove deprecated 'scrubq' from ceph(8) (`issue#35813 `_, `issue#35855 `_, `pr#24210 `_, Ruben Kerkhof) +* docs: backport edit on github changes (`pr#25362 `_, Neha Ojha, Noah Watkins) +* doc: Typo error on cephfs/fuse/ (`issue#36180 `_, `issue#36308 `_, `pr#24420 `_, Karun Josy) +* ec: src/common/interval_map.h: 161: FAILED assert(len > 0) (`issue#21931 `_, `issue#22330 `_, `pr#24581 `_, Neha Ojha) +* fsck: cid is improperly matched to oid (`issue#36146 `_, `issue#36551 `_, `issue#36099 `_, `issue#32731 `_, `pr#24480 `_, Kefu Chai, Sage Weil) +* kernel_untar_build.sh: bison: command not found (`issue#36121 `_, `pr#24241 `_, Neha Ojha) +* libcephfs: expose CEPH_SETATTR_MTIME_NOW and CEPH_SETATTR_ATIME_NOW (`issue#36205 `_, `issue#35961 `_, `pr#24464 `_, Zhu Shangzhong) +* librados application's symbol could conflict with the libceph-common (`issue#26839 `_, `issue#25154 `_, `pr#24708 `_, Kefu Chai) +* librbd: blacklisted client might not notice it lost the lock (`issue#34534 `_, `pr#24401 `_, Jason Dillaman) +* librbd: ensure exclusive lock acquired when removing sync point snaps… (`issue#35714 `_, `issue#24898 `_, `pr#24137 `_, Mykola Golub) +* librbd: fixed assert when flattening clone with zero overlap (`issue#35957 `_, `issue#35702 `_, `pr#24356 `_, Jason Dillaman) +* librbd: journaling unable request can not be sent to remote lock owner (`issue#26939 `_, `issue#35712 `_, `pr#24122 `_, Mykola Golub) +* librbd: object map improperly flagged as invalidated (`issue#24516 `_, `issue#36225 `_, `pr#24413 `_, Jason Dillaman) +* librgw: crashes in multisite configuration (`issue#36302 `_, `issue#36415 `_, `pr#24908 `_, Casey Bodley) +* mds: allows client to create .. and . dirents (`issue#32104 `_, `pr#24384 `_, Venky Shankar) +* mds: curate priority of perf counters sent to mgr (`issue#35938 `_, `issue#26991 `_, `issue#32090 `_, `issue#35837 `_, `pr#24467 `_, Patrick Donnelly, Venky Shankar) +* mds: evict cap revoke non-responding clients (`pr#24661 `_, Venky Shankar) +* mimic:mds: fix mds damaged due to unexpected journal length (`issue#36199 `_, `pr#24463 `_, Zhi Zhang) +* mds: internal op missing events time 'throttled', 'all_read', 'dispatched' (`issue#36114 `_, `issue#36195 `_, `pr#24411 `_, Yanhu Cao) +* mds: migrate strays part by part when shutdown mds (`issue#26926 `_, `issue#32092 `_, `pr#24435 `_, "Yan, Zheng") +* mds: optimize the way how max export size is enforced (`issue#25131 `_, `pr#23952 `_, "Yan, Zheng") +* mds: print is_laggy message once (`issue#35250 `_, `issue#35719 `_, `pr#24161 `_, Patrick Donnelly) +* mds: rctime may go back (`issue#35916 `_, `issue#36136 `_, `pr#24379 `_, "Yan, Zheng") +* mds: rctime not set on system inode (root) at startup (`issue#36221 `_, `issue#36461 `_, `pr#25042 `_, Patrick Donnelly) +* mds: reset heartbeat map at potential time-consuming places (`issue#26858 `_, `pr#23506 `_, Yan, Zheng, "Yan, Zheng") +* mds: src/mds/MDLog.cc: 281: FAILED ceph_assert(!capped) during max_mds thrashing (`issue#36350 `_, `issue#37093 `_, `pr#25095 `_, "Yan, Zheng", Jonathan Brielmaier) +* mgr/DaemonServer: fix Session leak (`pr#24233 `_, Sage Weil) +* mgr/dashboard: Add http support to dashboard (`issue#36069 `_, `pr#24734 `_, Boris Ranto, Wido den Hollander) +* mgr/dashboard: Add support for URI encode (`issue#24621 `_, `issue#26856 `_, `issue#24907 `_, `pr#24488 `_, Tiago Melo) +* mgr/dashboard: Progress bar does not stop in TableKeyValueComponent (`issue#35925 `_, `pr#24258 `_, Volker Theile) +* mgr/dashboard: Remove fieldsets when using CdTable (`issue#27851 `_, `issue#26999 `_, `pr#24478 `_, Tiago Melo) +* mgr: hold lock while accessing the request list and submittin request (`pr#25113 `_, Jerry Lee) +* mgr: [restful] deep_scrub is not a valid OSD command (`issue#36720 `_, `issue#36749 `_, `pr#25040 `_, Boris Ranto) +* mon: mgr options not parse propertly (`issue#35076 `_, `issue#35836 `_, `pr#24176 `_, Sage Weil) +* mon/OSDMonitor: invalidate max_failed_since on cancel_report (`issue#35930 `_, `issue#35860 `_, `pr#24281 `_, xie xingguo) +* mon: test if gid exists in pending for prepare_beacon (`issue#35848 `_, `pr#24272 `_, Patrick Donnelly) +* msg/async: clean up local buffers on dispatch (`issue#36127 `_, `issue#35987 `_, `pr#24386 `_, Greg Farnum) +* msg: ceph_abort() when there are enough accepter errors in msg server (`issue#36219 `_, `pr#25045 `_, penglaiyxy@gmail.com) +* msg: challenging authorizer messages appear at debug_ms=0 (`issue#35251 `_, `issue#35717 `_, `pr#24113 `_, Patrick Donnelly) +* multisite: data full sync does not limit concurrent bucket sync (`issue#26897 `_, `issue#36216 `_, `pr#24536 `_, Casey Bodley) +* multisite: data sync error repo processing does not back off on empty (`issue#35979 `_, `issue#26938 `_, `pr#24319 `_, Casey Bodley) +* multisite: incremental data sync makes unnecessary call to RGWReadRemoteDataLogShardInfoCR (`issue#35977 `_, `issue#26952 `_, `pr#24710 `_, Casey Bodley) +* multisite: intermittent test_bucket_index_log_trim failures (`issue#36201 `_, `issue#36034 `_, `pr#24400 `_, Casey Bodley) +* multisite: invalid read in RGWCloneMetaLogCoroutine (`issue#36208 `_, `issue#35851 `_, `pr#24414 `_, Casey Bodley) +* multisite: segfault on shutdown/realm reload (`issue#35857 `_, `issue#35543 `_, `pr#24235 `_, Casey Bodley) +* os/bluestore: fix bloom filter num entry miscalculation in repairer (`issue#25001 `_, `pr#24339 `_, Igor Fedotov) +* os/bluestore: handle spurious read errors (`issue#22464 `_, `pr#24647 `_, Paul Emmerich) +* osd: add creating to pg_string_state (`issue#36174 `_, `issue#36298 `_, `pr#24601 `_, Dan van der Ster) +* osd: backport recent upmap fixes (`pr#25419 `_, ningtao, xie xingguo) +* osdc/Objecter: possible race condition with connection reset (`issue#36183 `_, `issue#36296 `_, `pr#24600 `_, Jason Dillaman) +* osd: crash in OpTracker::unregister_inflight_op via OSD::get_health_metrics (`issue#24889 `_, `pr#23026 `_, Radoslaw Zarzynski) +* osdc: reduce ObjectCacher's memory fragments (`issue#36192 `_, `issue#36643 `_, `pr#24873 `_, "Yan, Zheng") +* osd/ECBackend: don't get result code of subchunk-read overwritten (`issue#35959 `_, `issue#21769 `_, `pr#24298 `_, songweibin) +* OSDMapMapping does not handle active.size() > pool size (`issue#26866 `_, `issue#35936 `_, `pr#24431 `_, Sage Weil) +* osd/PG: avoid choose_acting picking want with > pool size items (`issue#35963 `_, `issue#35924 `_, `pr#24344 `_, Sage Weil) +* osd/PrimaryLogPG: fix potential pg-log overtrimming (`pr#24309 `_, xie xingguo) +* osd: race condition opening heartbeat connection (`issue#36637 `_, `issue#36602 `_, `pr#25026 `_, Sage Weil) +* osd: RBD client IOPS pool stats are incorrect (2x higher; includes IO hints as an op) (`issue#24909 `_, `issue#36557 `_, `pr#25024 `_, Jason Dillaman) +* osd: Remove old bft= which has been superceded by backfill (`issue#36292 `_, `issue#36170 `_, `pr#24573 `_, David Zafman) +* qa: add test that builds example librados programs (`issue#36228 `_, `issue#15100 `_, `pr#24537 `_, Nathan Cutler) +* qa/ceph-ansible: Specify stable-3.2 branch (`pr#25191 `_, Brad Hubbard) +* qa: extend timeout for SessionMap flush (`issue#36156 `_, `pr#24438 `_, Patrick Donnelly) +* qa: fsstress workunit does not execute in parallel on same host without clobbering files (`issue#36278 `_, `issue#24177 `_, `issue#36323 `_, `issue#36184 `_, `issue#36165 `_, `issue#36153 `_, `pr#24408 `_, Patrick Donnelly) +* qa: increase rm timeout for workunit cleanup (`issue#36501 `_, `issue#36365 `_, `pr#24684 `_, Patrick Donnelly) +* qa: install dependencies for rbd_workunit_kernel_untar_build (`issue#35074 `_, `issue#35077 `_, `pr#24240 `_, Ilya Dryomov) +* qa: remove knfs site from future releases (`issue#36075 `_, `issue#36102 `_, `pr#24269 `_, Yuri Weinstein) +* qa/suites/rados/thrash-old-clients: exclude packages for hammer, jewel (`pr#25193 `_, Neha Ojha) +* qa/suites/rgw/verify/tasks/cls_rgw: test cls_rgw (`issue#25024 `_, `pr#23197 `_, Casey Bodley, Sage Weil) +* qa/tasks/qemu: use unique clone directory to avoid race with workunit (`issue#36542 `_, `issue#36569 `_, `pr#24811 `_, Jason Dillaman) +* qa: test_recovery_pool tries asok on wrong node (`issue#24928 `_, `issue#24858 `_, `pr#23087 `_, Patrick Donnelly) +* qa: tolerate failed rank while waiting for state (`issue#36280 `_, `issue#35828 `_, `pr#24572 `_, Patrick Donnelly) +* qa/workunits: replace 'realpath' with 'readlink -f' in fsstress.sh (`issue#36409 `_, `issue#36430 `_, `issue#35538 `_, `pr#24622 `_, Ilya Dryomov, Jason Dillaman) +* RADOS: probably missing clone location for async_recovery_targets (`issue#35964 `_, `issue#35546 `_, `pr#24345 `_, xie xingguo) +* mimic:rbd: fix error import when the input is a pipe (`issue#35705 `_, `issue#34536 `_, `pr#24002 `_, songweibin) +* [rbd-mirror] failed assertion when updating mirror status (`issue#36084 `_, `issue#36120 `_, `pr#24321 `_, Jason Dillaman) +* rbd: [rbd-mirror] forced promotion after killing remote cluster results in stuck state (`issue#36659 `_, `issue#36693 `_, `pr#24952 `_, Jonathan Brielmaier, Jason Dillaman) +* rbd: [rbd-mirror] periodic mirror status timer might fail to be scheduled (`issue#36500 `_, `issue#36555 `_, `pr#24916 `_, Jason Dillaman) +* rbd: rbd-nbd: do not ceph_abort() after print the usages (`issue#36660 `_, `issue#36713 `_, `pr#24988 `_, Shiyang Ruan) +* rbd: TokenBucketThrottle: use reference to m_blockers.front() and then update it (`issue#36529 `_, `issue#36475 `_, `pr#24915 `_, Dongsheng Yang) +* Revert "mimic: cephfs-journal-tool: enable purge_queue journal's event commands" (`issue#36346 `_, `issue#24604 `_, `pr#24485 `_, Xuehan Xu, "Yan, Zheng") +* rgw: abort_bucket_multiparts() ignores individual NoSuchUpload errors (`issue#36129 `_, `issue#35986 `_, `pr#24388 `_, Casey Bodley) +* rgw-admin: reshard add can add a non existant bucket (`issue#36449 `_, `issue#36756 `_, `pr#25087 `_, Jonathan Brielmaier, Abhishek Lekshmanan) +* rgw: async sync_object and remove_object does not access coroutine me… (`issue#36138 `_, `issue#35905 `_, `pr#24417 `_, Tianshan Qu) +* rgw/beast: drop privileges after binding ports (`issue#36041 `_, `pr#24436 `_, Paul Emmerich) +* rgw: beast frontend fails to parse ipv6 endpoints (`issue#36662 `_, `issue#36734 `_, `pr#25079 `_, Jonathan Brielmaier, Casey Bodley) +* rgw: cls_user_remove_bucket does not write the modified cls_user_stats (`issue#36496 `_, `issue#36533 `_, `pr#24910 `_, Casey Bodley) +* rgw: default quota not set in radosgw for Openstack users (`issue#24595 `_, `issue#36223 `_, `pr#24907 `_, Casey Bodley) +* mimic:rgw: fix chunked-encoding for chunks >1MiB (`issue#36125 `_, `issue#35990 `_, `pr#24363 `_, Robin H. Johnson) +* rgw: fix deadlock on RGWIndexCompletionManager::stop (`issue#26949 `_, `issue#35710 `_, `pr#24101 `_, Yao Zongyou) +* mimic:rgw: fix leak of curl handle on shutdown (`issue#35715 `_, `issue#36213 `_, `pr#24518 `_, Casey Bodley) +* mimic:rgw: list bucket can not show the object uploaded by RGWPostObj when enable bucket versioning (`pr#24571 `_, yuliyang) +* rgw: radosgw-admin user stats are incorrect when dynamic re-sharding is enabled (`issue#36535 `_, `pr#24911 `_, Casey Bodley) +* rgw: raise debug level on redundant data sync error messages (`issue#35830 `_, `issue#36140 `_, `pr#24418 `_, Casey Bodley) +* rgw: raise default rgw_curl_low_speed_time to 300 seconds (`issue#35708 `_, `issue#27989 `_, `pr#24071 `_, Casey Bodley) +* rgw: renew resharding locks to prevent expiration (`issue#36687 `_, `issue#27219 `_, `issue#34307 `_, `pr#24899 `_, Orit Wasserman, J. Eric Ivancich) +* rgw: resharding produces invalid values of bucket stats (`issue#36290 `_, `issue#36381 `_, `pr#24526 `_, Abhishek Lekshmanan) +* mimic:rgw: return x-amz-version-id: null when delete obj in versioning (`issue#35814 `_, `pr#24189 `_, yuliyang) +* rgw: RGWAsyncGetBucketInstanceInfo does not access coroutine memory (`issue#36211 `_, `issue#35812 `_, `pr#24516 `_, Casey Bodley) +* rgw: set default objecter_inflight_ops = 24576 (`issue#36571 `_, `issue#25109 `_, `pr#24860 `_, Jonathan Brielmaier, Matt Benjamin) +* rgw: support server-side encryption when SSL is terminated in a proxy (`issue#36645 `_, `issue#27221 `_, `pr#24931 `_, Jonathan Brielmaier, Casey Bodley) +* rgw: use-after-free from RGWRadosGetOmapKeysCR::~RGWRadosGetOmapKeysCR (`issue#21154 `_, `issue#36537 `_, `issue#36539 `_, `pr#24912 `_, Casey Bodley, Sage Weil) +* rpm: use updated gperftools (`issue#36508 `_, `issue#35969 `_, `pr#24260 `_, Brad Hubbard, Kefu Chai) +* segv in BlueStore::OldExtent::create (`issue#36592 `_, `issue#36526 `_, `pr#24745 `_, Sage Weil) +* test/librbd: not valid to have different parents between image snapshots (`issue#36117 `_, `pr#24244 `_, Jason Dillaman) +* [test] periodic seg faults within unittest_librbd (`issue#36220 `_, `issue#36238 `_, `pr#24711 `_, Jason Dillaman) +* test/rbd_mirror: race in WaitingOnLeaderReleaseLeader (`issue#36236 `_, `issue#36276 `_, `pr#24551 `_, Mykola Golub) +* tests: ceph-admin-commands.sh workunit does not log what it's doing (`issue#37153 `_, `issue#37089 `_, `pr#25085 `_, Nathan Cutler) +* tests: librados api aio tests race condition (`issue#24587 `_, `issue#36647 `_, `pr#25027 `_, Josh Durgin) +* tests: make readable.sh fail if it doesn't run anything (`pr#25050 `_, Greg Farnum) +* tests: rbd: move OpenStack devstack test to rocky release (`issue#36410 `_, `issue#36428 `_, `pr#24913 `_, Jason Dillaman) +* tests: unittest_rbd_mirror: TestMockImageMap.AddInstancePingPongImageTest: Value of: it != peer_ack_ctxs->end() (`issue#36683 `_, `issue#36689 `_, `pr#24946 `_, Mykola Golub, Jonathan Brielmaier) +* tests: use timeout for fs asok operations (`issue#36335 `_, `issue#36503 `_, `pr#25332 `_, Patrick Donnelly) +* tests: /usr/bin/ld: cannot find -lradospp in rados mimic (`issue#37396 `_, `pr#25285 `_, Nathan Cutler) +* test: Use a grep pattern that works across releases (`issue#35845 `_, `issue#35909 `_, `pr#24017 `_, David Zafman) +* tools: ceph-objectstore-tool: Allow target level as first positional … (`issue#35846 `_, `issue#35992 `_, `pr#24116 `_, David Zafman) + +v13.2.2 Mimic +============= + +This is the second bugfix release of the Mimic v13.2.x long term stable release +series. This release contains many fixes across all components of Ceph. +We recommend that all users upgrade. + +* This version contains an upgrade bug, http://tracker.ceph.com/issues/36686, + due to which upgrading during recovery/backfill can cause OSDs to fail. This + bug can be worked around, either by restarting all the OSDs after the upgrade, + or by upgrading when all PGs are in "active+clean" state. + + If you have successfully upgraded to 13.2.2, this issue should not impact + you. Going forward, we are working on a clean upgrade path for this feature. + +Changelog +--------- + +* build/ops: Boost system library is no longer required to compile and link example librados program (`issue#25073 `_, `issue#25054 `_, `pr#23201 `_, Nathan Cutler) +* build/ops: debian/rules: fix ceph-mgr .pyc files left behind (`issue#27059 `_, `issue#26883 `_, `pr#23831 `_, Dan Mick) +* build/ops: mimic 13.2.0 doesn't build in Fedora rawhide (`issue#24449 `_, `issue#24905 `_, `pr#23885 `_, Kefu Chai) +* ceph-disk: compatibility fix for python 3 (`pr#24008 `_, Tim Serong) +* ceph-disk: return a list instead of an iterator (`pr#23392 `_, Alexander Graul) +* cephfs-journal-tool: enable purge_queue journal's event commands (`issue#24604 `_, `issue#26989 `_, `pr#23818 `_, Xuehan Xu) +* ceph tell osd.x bench writes resulting JSON to stderr instead of stdout (`issue#35942 `_, `issue#24022 `_, `pr#24041 `_, Коренберг Маркr, John Spray, Kefu Chai) +* ceph-volume add a __release__ string, to help version-conditional calls (`issue#25169 `_, `pr#23333 `_, Alfredo Deza) +* ceph-volume: adds test for `ceph-volume lvm list /dev/sda` (`issue#24784 `_, `issue#24957 `_, `pr#23349 `_, Andrew Schoen) +* ceph-volume: an OSD ID must exist and be destroyed before reuse (`pr#23101 `_, Andrew Schoen, Ron Allred) +* ceph-volume: batch: allow journal+block.db sizing on the CLI (`issue#36088 `_, `pr#24208 `_, Alfredo Deza) +* ceph-volume batch: allow --osds-per-device, default it to 1 (`issue#35913 `_, `pr#24079 `_, Alfredo Deza) +* ceph-volume batch carve out lvs for bluestore (`issue#34535 `_, `pr#24074 `_, Alfredo Deza) +* ceph-volume batch command (`pr#23777 `_, Alfredo Deza) +* ceph-volume: batch tests for mixed-type of devices (`issue#35535 `_, `issue#27210 `_, `pr#23966 `_, Alfredo Deza) +* ceph_volume_client: allow atomic update of RADOS objects (`issue#24173 `_, `issue#24863 `_, `pr#23878 `_, Rishabh Dave) +* CephVolumeClient: delay required after adding data pool to MDSMap (`issue#25206 `_, `pr#23725 `_, Patrick Donnelly) +* ceph-volume: do not use stdin in luminous (`issue#25173 `_, `pr#23368 `_, Alfredo Deza) +* ceph-volume: earlier detection for --journal and --filestore flag requirements (`issue#24794 `_, `pr#24205 `_, Alfredo Deza) +* ceph-volume enable the ceph-osd during lvm activation (`issue#24152 `_, `pr#23393 `_, Dan van der Ster, Alfredo Deza) +* ceph-volume expand auto engine for multiple devices on filestore (`pr#23807 `_, Andrew Schoen, Alfredo Deza) +* ceph-volume: expand auto engine for single type devices on filestore (`pr#23786 `_, Alfredo Deza) +* ceph-volume fix zap not working with LVs (`issue#35970 `_, `pr#24081 `_, Alfredo Deza) +* ceph-volume lvm.activate conditional mon-config on prime-osd-dir (`issue#25216 `_, `pr#23400 `_, Alfredo Deza) +* ceph-volume: `lvm batch` allow extra flags (like dmcrypt) for bluestore (`pr#23780 `_, Alfredo Deza) +* ceph-volume: `lvm batch` documentation and man page updates (`pr#23756 `_, Alfredo Deza) +* ceph-volume lvm.batch remove non-existent sys_api property (`issue#34310 `_, `pr#23810 `_, Alfredo Deza) +* ceph-volume lvm.listing only include devices if they exist (`issue#24952 `_, `pr#23149 `_, Alfredo Deza) +* ceph-volume: process.call with stdin in Python 3 fix (`issue#24993 `_, `pr#23239 `_, Alfredo Deza) +* ceph-volume: PVolumes.get() should return one PV when using name or uuid (`issue#24784 `_, `pr#23327 `_, Andrew Schoen) +* ceph-volume: refuse to zap mapper devices (`issue#24504 `_, `pr#22965 `_, Andrew Schoen) +* ceph-volume: Restore SELinux context (`pr#23295 `_, Boris Ranto) +* ceph-volume: run tests without waiting on ceph repos (`pr#23806 `_, Andrew Schoen) +* ceph-volume tests/functional add mgrs daemons to lvm tests (`pr#23784 `_, Alfredo Deza) +* ceph-volume: tests.functional inherit SSH_ARGS from ansible (`pr#23812 `_, Alfredo Deza) +* ceph-volume: update batch documentation to explain filestore strategies (`issue#34309 `_, `pr#23826 `_, Alfredo Deza) +* ceph-volume: update version of ansible to 2.6.x for simple tests (`pr#23269 `_, Andrew Schoen) +* client: add inst to asok status output (`issue#24724 `_, `issue#24931 `_, `pr#23109 `_, Patrick Donnelly) +* client: check for unmounted condition before printing debug output (`issue#25213 `_, `issue#26914 `_, `pr#23603 `_, Jeff Layton) +* client: requests that do name lookup may be sent to wrong mds (`issue#26984 `_, `issue#26860 `_, `pr#23700 `_, "Yan, Zheng") +* cls/rgw: add rgw_usage_log_entry type to ceph-dencoder (`issue#35070 `_, `pr#23857 `_, Vaibhav Bhembre) +* common: check completion condition before waiting (`issue#25007 `_, `issue#25222 `_, `pr#23435 `_, Patrick Donnelly) +* core: deep scrub cannot find the bitrot if the object is cached (`issue#35068 `_, `pr#23873 `_, Adam C. Emerson, Xiaoguang Wang) +* core: Fix 25085 and 24949 (`pr#23272 `_, David Zafman) +* core: force-create-pg broken (`issue#34532 `_, `issue#26940 `_, `pr#23872 `_, Sage Weil) +* core: Limit pg log length during recovery/backfill so that we don't run out of memory (`issue#21416 `_, `pr#23403 `_, Neha Ojha) +* doc: broken bash example in bluestore migration (`issue#35078 `_, `pr#23854 `_, Alfredo Deza) +* doc: Fix broken urls (`issue#25185 `_, `issue#26916 `_, `pr#23607 `_, Jos Collin) +* doc: http://docs.ceph.com/docs/mimic/rados/operations/pg-states/ (`issue#25055 `_, `pr#23163 `_, Jan Fajerski, Nathan Cutler) +* docs: radosgw: ldap-auth: fixed option name 'rgw_ldap_searchfilter' (`issue#32129 `_, `pr#23956 `_, Konstantin Shalygin) +* filestore: add pgid in filestore pg dir split log message (`issue#25225 `_, `pr#23453 `_, Vikhyat Umrao) +* kv: MergeOperator name() returns string, and caller calls c_str() on the temporary (`issue#26907 `_, `issue#26875 `_, `pr#23865 `_, Sage Weil) +* libradosstriper conditional compile (`issue#27213 `_, `pr#23869 `_, Kefu Chai, Jesse Williamson) +* librbd: deep-copy should not write to objects that cannot exist (`issue#25000 `_, `issue#25083 `_, `pr#23358 `_, Jason Dillaman) +* librbd: validate data pool for self-managed snapshot support (`issue#24945 `_, `pr#23560 `_, Mykola Golub) +* link against libstdc++ statically (`issue#26880 `_, `issue#25209 `_, `pr#23490 `_, Kefu Chai) +* mds: avoid using g_conf->get_val<...>(...) in hot path (`issue#24820 `_, `pr#23407 `_, "Yan, Zheng") +* mds: calculate load by checking self CPU usage (`issue#26834 `_, `issue#26888 `_, `pr#23503 `_, "Yan, Zheng") +* mds: crash when dumping ops in flight (`issue#26894 `_, `issue#26982 `_, `pr#23672 `_, "Yan, Zheng") +* mds: dump recent events on respawn (`issue#25040 `_, `pr#23275 `_, Patrick Donnelly) +* mds: explain delayed client_request due to subtree migration (`issue#26988 `_, `issue#24840 `_, `pr#23792 `_, Yan, Zheng, "Yan, Zheng") +* mds: handle discontinuous mdsmap (`issue#24856 `_, `pr#23180 `_, "Yan, Zheng") +* mds: health warning for slow metadata IO (`issue#24879 `_, `issue#25045 `_, `pr#23343 `_, "Yan, Zheng") +* mds: increase debug level for dropped client cap msg (`issue#25042 `_, `pr#23309 `_, Patrick Donnelly) +* mds: introduce cephfs' own feature bits (`issue#14456 `_, `issue#24914 `_, `pr#23105 `_, Yan, Zheng, "Yan, Zheng", Patrick Donnelly) +* mds: mark beacons as high priority (`issue#26905 `_, `issue#26899 `_, `pr#23565 `_, Patrick Donnelly) +* mds: MDBalancer::try_rebalance() may stop prematurely (`issue#32086 `_, `issue#26973 `_, `pr#23883 `_, "Yan, Zheng") +* MDSMonitor: note ignored beacons/map changes at higher debug level (`issue#26898 `_, `issue#26929 `_, `pr#23704 `_, Patrick Donnelly) +* mds,osd,mon,msg: use intrusive_ptr for holding Connection::priv (`issue#20924 `_, `pr#22339 `_, "Yan, Zheng", Kefu Chai) +* mds: print mdsmap processed at low debug level (`issue#25035 `_, `pr#23196 `_, Patrick Donnelly) +* mds: scrub doesn't always return JSON results (`issue#23958 `_, `issue#25037 `_, `pr#23225 `_, Venky Shankar) +* mds: use fast dispatch to handle MDSBeacon (`issue#23519 `_, `issue#26923 `_, `pr#23703 `_, "Yan, Zheng") +* mgr balancer does not save optimized plan but latest (`issue#32082 `_, `issue#27000 `_, `pr#23782 `_, Stefan Priebe) +* mgr: "balancer execute" only requires read permissions (`issue#26912 `_, `issue#25345 `_, `pr#23583 `_, John Spray) +* mgrc: enable disabling stats via mgr_stats_threshold (`issue#25197 `_, `issue#26837 `_, `pr#23463 `_, John Spray) +* mgr/dashboard: Display RGW user/bucket quota max size in human readable form (`issue#35706 `_, `pr#24047 `_, Volker Theile) +* mgr/dashboard: Escape regex pattern in DeletionModalComponent (`issue#24902 `_, `issue#26920 `_, `pr#23669 `_, Tiago Melo) +* mgr/dashboard: Prevent RGW API user deletion (`pr#22670 `_, Volker Theile) +* mgr/dashboard: RestClient can't handle ProtocolError exceptions (`pr#23875 `_, Volker Theile) +* mgr/dashboard: RGW is not working if an URL prefix is defined (`pr#23203 `_, Volker Theile) +* mgr/dashboard: URL prefix is not working (`issue#25120 `_, `pr#23874 `_, Ricardo Marques) +* mgr: Ignore daemon if no metadata was returned (`pr#23356 `_, Wido den Hollander) +* mgr/MgrClient: Protect daemon_health_metrics (`issue#23352 `_, `pr#23458 `_, Kjetil Joergensen, Brad Hubbard) +* mgr: Sync the prometheus module (`pr#23215 `_, Boris Ranto) +* mon: add purge-new (`pr#23259 `_, Sage Weil) +* mon: Automatically set expected_num_objects for new pools with >=100 PGs per OSD (`issue#24687 `_, `issue#25144 `_, `pr#23860 `_, Douglas Fuller) +* multisite: intermittent failures in test_bucket_sync_disable_enable (`issue#26895 `_, `issue#26980 `_, `pr#23856 `_, Casey Bodley) +* multisite: object metadata operations are skipped by sync (`issue#24367 `_, `issue#24986 `_, `pr#23172 `_, Casey Bodley) +* object errors found in be_select_auth_object() aren't logged the same (`issue#32108 `_, `issue#25108 `_, `pr#23870 `_, David Zafman) +* os/bluestore: bluestore_buffer_hit_bytes perf counter doesn't reset (`pr#23772 `_, Igor Fedotov) +* os/bluestore/BlueStore.cc: 1025: FAILED assert(buffer_bytes >= b->length) from ObjectStore/StoreTest.ColSplitTest2/2 (`issue#24439 `_, `issue#26944 `_, `pr#23748 `_, Sage Weil) +* os/bluestore: fix assertion in StupidAllocator::get_fragmentation (`pr#23676 `_, Igor Fedotov) +* osd: do_sparse_read(): Verify checksum earlier so we will try to repair (`issue#24875 `_, `pr#23378 `_, David Zafman) +* osd,mon: increase mon_max_pg_per_osd to 300 (`issue#25176 `_, `pr#23861 `_, Neha Ojha) +* osd/OSDMap: CRUSH_TUNABLES5 added in jewel, not kraken (`issue#25057 `_, `issue#25101 `_, `pr#23226 `_, Sage Weil) +* osd/PrimaryLogPG: avoid dereferencing invalid complete_to (`pr#23951 `_, xie xingguo) +* osd: segv in OSDMap::calc_pg_upmaps from balancer (`issue#22056 `_, `issue#26933 `_, `pr#23888 `_, Brad Hubbard) +* qa: cfuse_workunit_kernel_untar_build fails on Ubuntu 18.04 (`issue#26956 `_, `issue#26967 `_, `issue#24679 `_, `pr#23769 `_, Patrick Donnelly) +* qa: fix ceph-disk suite and add coverage for ceph-detect-init (`pr#23337 `_, Nathan Cutler) +* qa/rgw: patch keystone requirements.txt (`issue#26946 `_, `issue#23659 `_, `pr#23771 `_, Casey Bodley) +* qa/suites/rados: move valgrind test to singleton-flat (`issue#24992 `_, `pr#23744 `_, Sage Weil) +* qa/tasks: s3a fix mirror (`pr#24038 `_, Vasu Kulkarni) +* qa/tests: added OBJECT_MISPLACED to the whitelist (`pr#23301 `_, Yuri Weinstein) +* qa/tests: added v13.2.1 to the mix (`pr#23218 `_, Yuri Weinstein) +* qa/tests: update ansible version to 2.5 (`pr#24091 `_, Yuri Weinstein) +* rados: not all exceptions accept keyargs (`issue#25178 `_, `issue#24033 `_, `pr#23335 `_, Rishabh Dave) +* rados python bindings use prval from stack (`issue#25204 `_, `issue#25175 `_, `pr#23863 `_, Sage Weil) +* rbd: improved trash snapshot namespace handling (`issue#25121 `_, `issue#23398 `_, `issue#25114 `_, `pr#23559 `_, Mykola Golub, Jason Dillaman) +* rgw: add curl_low_speed_limit and curl_low_speed_time config to avoid (`issue#25021 `_, `pr#23173 `_, Mark Kogan, Zhang Shaowen) +* rgw: change default rgw_thread_pool_size to 512 (`issue#25214 `_, `issue#25088 `_, `issue#25218 `_, `issue#24544 `_, `pr#23383 `_, Douglas Fuller, Casey Bodley) +* rgw: civetweb fails on urls with control characters (`issue#26849 `_, `issue#24158 `_, `pr#23855 `_, Abhishek Lekshmanan) +* rgw: civetweb: use poll instead of select while waiting on sockets (`issue#35954 `_, `pr#24058 `_, Abhishek Lekshmanan) +* rgw: do not ignore EEXIST in RGWPutObj::execute (`issue#25078 `_, `issue#22790 `_, `pr#23206 `_, Matt Benjamin) +* rgw: fail to recover index from crash mimic backport (`issue#24640 `_, `issue#24629 `_, `issue#24280 `_, `pr#23118 `_, Tianshan Qu) +* rgw_file: deep stat handling (`issue#26842 `_, `issue#24915 `_, `pr#23498 `_, Matt Benjamin) +* rgw: Fix log level of gc_iterate_entries (`issue#23801 `_, `issue#26921 `_, `pr#23686 `_, iliul) +* rgw: Limit the number of lifecycle rules on one bucket (`issue#26845 `_, `issue#24572 `_, `pr#23521 `_, Zhang Shaowen) +* rgw: radosgw-admin: 'sync error trim' loops until complete (`issue#24873 `_, `issue#24984 `_, `pr#23140 `_, Casey Bodley) +* rgw: The delete markers generated by object expiration should have owner (`issue#24568 `_, `issue#26847 `_, `pr#23541 `_, Zhang Shaowen) +* rpm: should change ceph-mgr package depency from py-bcrypt to python2-bcrypt (`issue#27212 `_, `pr#23868 `_, Konstantin Sakhinov) +* rpm: silence osd block chown (`issue#25152 `_, `pr#23324 `_, Dan van der Ster) +* run-rbd-unit-tests.sh test fails to finish in jenkin's make check run (`issue#27060 `_, `issue#24910 `_, `pr#23858 `_, Mykola Golub) +* scrub livelock (`issue#26931 `_, `issue#26890 `_, `pr#23722 `_, Sage Weil) +* spdk: compile with -march=core2 instead of -march=native (`issue#25032 `_, `pr#23175 `_, Nathan Cutler) +* tests: cluster [WRN] 25 slow requests in powercycle (`issue#25119 `_, `pr#23886 `_, Neha Ojha) +* test: Use pids instead of jobspecs which were wrong (`issue#32079 `_, `issue#27056 `_, `pr#23893 `_, David Zafman) +* tools/ceph-detect-init: support RHEL as a platform (`issue#18163 `_, `pr#23303 `_, Nathan Cutler) +* tools: ceph-detect-init: support SLED (`issue#18163 `_, `pr#23111 `_, Nathan Cutler) +* tools: cephfs-data-scan: print the max used ino (`issue#26978 `_, `issue#26925 `_, `pr#23880 `_, "Yan, Zheng") + + +v13.2.1 Mimic +============= + +This is the first bugfix release of the Mimic v13.2.x long term stable release +series. This release contains many fixes across all components of Ceph, +including a few security fixes. We recommend that all users upgrade. + +Notable Changes +--------------- + +* CVE 2018-1128: auth: cephx authorizer subject to replay attack (`issue#24836 `_, Sage Weil) +* CVE 2018-1129: auth: cephx signature check is weak (`issue#24837 `_, Sage Weil) +* CVE 2018-10861: mon: auth checks not correct for pool ops (`issue#24838 `_, Jason Dillaman) + +Changelog +--------- + +* bluestore: common/hobject: improved hash calculation for hobject_t etc (`pr#22777 `_, Adam Kupczyk, Sage Weil) +* bluestore,core: mimic: os/bluestore: don't store/use path_block.{db,wal} from meta (`pr#22477 `_, Sage Weil, Alfredo Deza) +* bluestore: os/bluestore: backport 24319 and 24550 (`issue#24550 `_, `issue#24502 `_, `issue#24319 `_, `issue#24581 `_, `pr#22649 `_, Sage Weil) +* bluestore: os/bluestore: fix incomplete faulty range marking when doing compression (`pr#22910 `_, Igor Fedotov) +* bluestore: spdk: fix ceph-osd crash when activate SPDK (`issue#24472 `_, `issue#24371 `_, `pr#22684 `_, tone-zhang) +* build/ops: build/ops: ceph.git has two different versions of dpdk in the source tree (`issue#24942 `_, `issue#24032 `_, `pr#23070 `_, Kefu Chai) +* build/ops: build/ops: install-deps.sh fails on newest openSUSE Leap (`issue#25065 `_, `pr#23178 `_, Kyr Shatskyy) +* build/ops: build/ops: Mimic build fails with -DWITH_RADOSGW=0 (`issue#24766 `_, `pr#22851 `_, Dan Mick) +* build/ops: cmake: enable RTTI for both debug and release RocksDB builds (`pr#22299 `_, Igor Fedotov) +* build/ops: deb/rpm: add python-six as build-time and run-time dependency (`issue#24885 `_, `pr#22948 `_, Nathan Cutler, Kefu Chai) +* build/ops: deb,rpm: fix block.db symlink ownership (`pr#23246 `_, Sage Weil) +* build/ops: include: fix build with older clang (OSX target) (`pr#23049 `_, Christopher Blum) +* build/ops: include: fix build with older clang (`pr#23034 `_, Kefu Chai) +* build/ops,rbd: build/ops: order rbdmap.service before remote-fs-pre.target (`issue#24713 `_, `issue#24734 `_, `pr#22843 `_, Ilya Dryomov) +* cephfs: cephfs: allow prohibiting user snapshots in CephFS (`issue#24705 `_, `issue#24284 `_, `pr#22812 `_, "Yan, Zheng") +* cephfs: cephfs-journal-tool: Fix purging when importing an zero-length journal (`issue#24861 `_, `pr#22981 `_, yupeng chen, zhongyan gu) +* cephfs: client: fix bug #24491 _ll_drop_pins may access invalid iterator (`issue#24534 `_, `pr#22791 `_, Liu Yangkuan) +* cephfs: client: update inode fields according to issued caps (`issue#24539 `_, `issue#24269 `_, `pr#22819 `_, "Yan, Zheng") +* cephfs: common/DecayCounter: set last_decay to current time when decoding dec… (`issue#24440 `_, `issue#24537 `_, `pr#22816 `_, Zhi Zhang) +* cephfs,core: mon/MDSMonitor: do not send redundant MDS health messages to cluster log (`issue#24308 `_, `issue#24330 `_, `pr#22265 `_, Sage Weil) +* cephfs: mds: add magic to header of open file table (`issue#24541 `_, `issue#24240 `_, `pr#22841 `_, "Yan, Zheng") +* cephfs: mds: low wrlock efficiency due to dirfrags traversal (`issue#24704 `_, `issue#24467 `_, `pr#22884 `_, Xuehan Xu) +* cephfs: PurgeQueue sometimes ignores Journaler errors (`issue#24533 `_, `issue#24703 `_, `pr#22810 `_, John Spray) +* cephfs,rbd: osdc: Fix the wrong BufferHead offset (`issue#24583 `_, `pr#22869 `_, dongdong tao) +* cephfs: repeated eviction of idle client until some IO happens (`issue#24052 `_, `issue#24296 `_, `pr#22550 `_, "Yan, Zheng") +* cephfs: test gets ENOSPC from bluestore block device (`issue#24238 `_, `issue#24913 `_, `issue#24899 `_, `issue#24758 `_, `pr#22835 `_, Patrick Donnelly, Sage Weil) +* cephfs,tests: pjd: cd: too many arguments (`issue#24310 `_, `pr#22882 `_, Neha Ojha) +* cephfs,tests: qa: client socket inaccessible without sudo (`issue#24872 `_, `issue#24904 `_, `pr#23030 `_, Patrick Donnelly) +* cephfs,tests: qa: fix ffsb cd argument (`issue#24719 `_, `issue#24829 `_, `issue#24680 `_, `issue#24579 `_, `pr#22956 `_, Yan, Zheng, Patrick Donnelly) +* cephfs,tests: qa/suites: Add supported-random-distro$ links (`issue#24706 `_, `issue#24138 `_, `pr#22700 `_, Warren Usui) +* ceph-volume describe better the options for migrating away from ceph-disk (`pr#22514 `_, Alfredo Deza) +* ceph-volume dmcrypt and activate --all documentation updates (`pr#22529 `_, Alfredo Deza) +* ceph-volume: error on commands that need ceph.conf to operate (`issue#23941 `_, `pr#22747 `_, Andrew Schoen) +* ceph-volume expand on the LVM API to create multiple LVs at different sizes (`pr#22508 `_, Alfredo Deza) +* ceph-volume initial take on auto sub-command (`pr#22515 `_, Alfredo Deza) +* ceph-volume lvm.activate Do not search for a MON configuration (`pr#22398 `_, Wido den Hollander) +* ceph-volume lvm.common use destroy-new, doesn't need admin keyring (`issue#24585 `_, `pr#22900 `_, Alfredo Deza) +* ceph-volume: provide a nice errror message when missing ceph.conf (`pr#22832 `_, Andrew Schoen) +* ceph-volume tests destroy osds on monitor hosts (`pr#22507 `_, Alfredo Deza) +* ceph-volume tests do not include admin keyring in OSD nodes (`pr#22425 `_, Alfredo Deza) +* ceph-volume tests.functional install new ceph-ansible dependencies (`pr#22535 `_, Alfredo Deza) +* ceph-volume: tests/functional run lvm list after OSD provisioning (`issue#24961 `_, `pr#23148 `_, Alfredo Deza) +* ceph-volume tests/functional use Ansible 2.6 (`pr#23244 `_, Alfredo Deza) +* ceph-volume: unmount lvs correctly before zapping (`issue#24796 `_, `pr#23127 `_, Andrew Schoen) +* cmake: bump up the required boost version to 1.67 (`pr#22412 `_, Kefu Chai) +* common: common: Abort in OSDMap::decode() during qa/standalone/erasure-code/test-erasure-eio.sh (`issue#24865 `_, `issue#23492 `_, `pr#23024 `_, Sage Weil) +* common: common: fix typo in rados bench write JSON output (`issue#24292 `_, `issue#24199 `_, `pr#22406 `_, Sandor Zeestraten) +* common,core: common: partially revert 95fc248 to make get_process_name work (`issue#24123 `_, `issue#24215 `_, `pr#22311 `_, Mykola Golub) +* common: osd: Change osd_skip_data_digest default to false and make it LEVEL_DEV (`pr#23084 `_, Sage Weil, David Zafman) +* common: tell ... config rm not idempotent (`issue#24468 `_, `issue#24408 `_, `pr#22552 `_, Sage Weil) +* core: bluestore: flush_commit is racy (`issue#24261 `_, `issue#21480 `_, `pr#22382 `_, Sage Weil) +* core: ceph osd safe-to-destroy crashes the mgr (`issue#24708 `_, `issue#23249 `_, `pr#22805 `_, Sage Weil) +* core: change default filestore_merge_threshold to -10 (`issue#24686 `_, `issue#24747 `_, `pr#22813 `_, Douglas Fuller) +* core: common/hobject: improved hash calculation (`pr#22722 `_, Adam Kupczyk) +* core: cosbench stuck at booting cosbench driver (`issue#24473 `_, `pr#22887 `_, Neha Ojha) +* core: librados: fix buffer overflow for aio_exec python binding (`issue#24475 `_, `pr#22707 `_, Aleksei Gutikov) +* core: mon: enable level_compaction_dynamic_level_bytes for rocksdb (`issue#24375 `_, `issue#24361 `_, `pr#22361 `_, Kefu Chai) +* core: mon/MgrMonitor: change 'unresponsive' message to info level (`issue#24246 `_, `issue#24222 `_, `pr#22333 `_, Sage Weil) +* core: mon/OSDMonitor: no_reply on MOSDFailure messages (`issue#24322 `_, `issue#24350 `_, `pr#22297 `_, Sage Weil) +* core: os/bluestore: firstly delete db then delete bluefs if open db met error (`pr#22525 `_, Jianpeng Ma) +* core: os/bluestore: fix races on SharedBlob::coll in ~SharedBlob (`issue#24859 `_, `issue#24887 `_, `pr#23065 `_, Radoslaw Zarzynski) +* core: osd: choose_acting loop (`issue#24383 `_, `issue#24618 `_, `pr#22889 `_, Neha Ojha) +* core: osd: do not blindly roll forward to log.head (`issue#24597 `_, `pr#22997 `_, Sage Weil) +* core: osd: eternal stuck PG in 'unfound_recovery' (`issue#24500 `_, `issue#24373 `_, `pr#22545 `_, Sage Weil) +* core: osd: fix deep scrub with osd_skip_data_digest=true (default) and blue… (`issue#24922 `_, `issue#24958 `_, `pr#23094 `_, Sage Weil) +* core: osd: fix getting osd maps on initial osd startup (`pr#22651 `_, Paul Emmerich) +* core: osd: increase default hard pg limit (`issue#24355 `_, `pr#22621 `_, Josh Durgin) +* core: osd: may get empty info at recovery (`issue#24771 `_, `issue#24588 `_, `pr#22861 `_, Sage Weil) +* core: osd/PrimaryLogPG: rebuild attrs from clients (`issue#24768 `_, `issue#24805 `_, `pr#22960 `_, Sage Weil) +* core: osd: retry to read object attrs at EC recovery (`issue#24406 `_, `pr#22394 `_, xiaofei cui) +* core: osd/Session: fix invalid iterator dereference in Sessoin::have_backoff() (`issue#24486 `_, `issue#24494 `_, `pr#22730 `_, Sage Weil) +* core: PG: add custom_reaction Backfilled and release reservations after bac… (`issue#24332 `_, `pr#22559 `_, Neha Ojha) +* core: set correctly shard for existed Collection (`issue#24769 `_, `issue#24761 `_, `pr#22859 `_, Jianpeng Ma) +* core,tests: Bring back diff -y for non-FreeBSD (`issue#24738 `_, `issue#24470 `_, `pr#22826 `_, Sage Weil, David Zafman) +* core,tests: ceph_test_rados_api_misc: fix LibRadosMiscPool.PoolCreationRace (`issue#24204 `_, `issue#24150 `_, `pr#22291 `_, Sage Weil) +* core,tests: qa/workunits/suites/blogbench.sh: use correct dir name (`pr#22775 `_, Neha Ojha) +* core,tests: Wip scrub omap (`issue#24366 `_, `issue#24381 `_, `pr#22374 `_, David Zafman) +* core,tools: ceph-detect-init: stop using platform.linux_distribution (`issue#18163 `_, `pr#21523 `_, Nathan Cutler) +* core: ValueError: too many values to unpack due to lack of subdir (`issue#24617 `_, `pr#22888 `_, Neha Ojha) +* doc: ceph-bluestore-tool manpage not getting rendered correctly (`issue#25062 `_, `issue#24800 `_, `pr#23176 `_, Nathan Cutler) +* doc: doc: update experimental features - snapshots (`pr#22803 `_, Jos Collin) +* doc: fix the links in releases/schedule.rst (`pr#22372 `_, Kefu Chai) +* doc: [mimic] doc/cephfs: remove lingering "experimental" note about multimds (`pr#22854 `_, John Spray) +* lvm: when osd creation fails log the exception (`issue#24456 `_, `pr#22640 `_, Andrew Schoen) +* mgr/dashboard: Fix bug when creating S3 keys (`pr#22468 `_, Volker Theile) +* mgr/dashboard: fix lint error caused by codelyzer update (`pr#22713 `_, Tiago Melo) +* mgr/dashboard: Fix some datatable CSS issues (`pr#22274 `_, Volker Theile) +* mgr/dashboard: Float numbers incorrectly formatted (`issue#24081 `_, `issue#24707 `_, `pr#22886 `_, Stephan Müller, Tiago Melo) +* mgr/dashboard: Missing breadcrumb on monitor performance counters page (`issue#24764 `_, `pr#22849 `_, Ricardo Marques, Tiago Melo) +* mgr/dashboard: Replace Pool with Pools (`issue#24699 `_, `pr#22807 `_, Lenz Grimmer) +* mgr: mgr/dashboard: Listen on port 8443 by default and not 8080 (`pr#22449 `_, Wido den Hollander) +* mgr,mon: exception for dashboard in config-key warning (`pr#22770 `_, John Spray) +* mgr,pybind: Python bindings use iteritems method which is not Python 3 compatible (`issue#24803 `_, `issue#24779 `_, `pr#22917 `_, Nathan Cutler) +* mgr: Sync up ceph-mgr prometheus related changes (`pr#22341 `_, Boris Ranto) +* mon: don't require CEPHX_V2 from mons until nautilus (`pr#23233 `_, Sage Weil) +* mon/OSDMonitor: Respect paxos_propose_interval (`pr#22268 `_, Xiaoxi CHEN) +* osd: forward-port osd_distrust_data_digest from luminous (`pr#23184 `_, Sage Weil) +* osd/OSDMap: fix CEPHX_V2 osd requirement to nautilus, not mimic (`pr#23250 `_, Sage Weil) +* qa/rgw: disable testing on ec-cache pools (`issue#23965 `_, `pr#23096 `_, Casey Bodley) +* qa/suites/upgrade/mimic-p2p: allow target version to apply (`pr#23262 `_, Sage Weil) +* qa/tests: added supported distro for powercycle suite (`pr#22224 `_, Yuri Weinstein) +* qa/tests: changed distro symlink to point to new way using supported OSes (`pr#22653 `_, Yuri Weinstein) +* rbd: librbd: deep_copy: resize head object map if needed (`issue#24499 `_, `issue#24399 `_, `pr#22768 `_, Mykola Golub) +* rbd: librbd: fix crash when opening nonexistent snapshot (`issue#24637 `_, `issue#24698 `_, `pr#22943 `_, Mykola Golub) +* rbd: librbd: force 'invalid object map' flag on-disk update (`issue#24496 `_, `issue#24434 `_, `pr#22754 `_, Mykola Golub) +* rbd: librbd: utilize the journal disabled policy when removing images (`issue#24388 `_, `issue#23512 `_, `pr#22662 `_, Jason Dillaman) +* rbd: Prevent the use of internal feature bits from outside cls/rbd (`issue#24165 `_, `issue#24203 `_, `pr#22222 `_, Jason Dillaman) +* rbd: rbd-mirror daemon failed to stop on active/passive test case (`issue#24390 `_, `pr#22667 `_, Jason Dillaman) +* rbd: [rbd-mirror] entries_behind_master will not be zero after mirror over (`issue#24391 `_, `issue#23516 `_, `pr#22549 `_, Jason Dillaman) +* rbd: rbd-mirror simple image map policy doesn't always level-load instances (`issue#24519 `_, `issue#24161 `_, `pr#22892 `_, Venky Shankar) +* rbd: rbd trash purge --threshold should support data pool (`issue#24476 `_, `issue#22872 `_, `pr#22891 `_, Mahati Chamarthy) +* rbd,tests: qa: krbd_exclusive_option.sh: bump lock_timeout to 60 seconds (`issue#25081 `_, `pr#23209 `_, Ilya Dryomov) +* rbd: yet another case when deep copying a clone may result in invalid object map (`issue#24596 `_, `issue#24545 `_, `pr#22894 `_, Mykola Golub) +* rgw: cls_bucket_list fails causes cascading osd crashes (`issue#24631 `_, `issue#24117 `_, `pr#22927 `_, Yehuda Sadeh) +* rgw: multisite: RGWSyncTraceNode released twice and crashed in reload (`issue#24432 `_, `issue#24619 `_, `pr#22926 `_, Tianshan Qu) +* rgw: objects in cache never refresh after rgw_cache_expiry_interval (`issue#24346 `_, `issue#24385 `_, `pr#22643 `_, Casey Bodley) +* rgw: add configurable AWS-compat invalid range get behavior (`issue#24317 `_, `issue#24352 `_, `pr#22590 `_, Matt Benjamin) +* rgw: Admin OPS Api overwrites email when user is modified (`issue#24253 `_, `pr#22523 `_, Volker Theile) +* rgw: fix gc may cause a large number of read traffic (`issue#24807 `_, `issue#24767 `_, `pr#22941 `_, Xin Liao) +* rgw: have a configurable authentication order (`issue#23089 `_, `issue#24547 `_, `pr#22842 `_, Abhishek Lekshmanan) +* rgw: index complete miss zones_trace set (`issue#24701 `_, `issue#24590 `_, `pr#22818 `_, Tianshan Qu) +* rgw: Invalid Access-Control-Request-Request may bypass validate_cors_rule_method (`issue#24809 `_, `issue#24223 `_, `pr#22935 `_, Jeegn Chen) +* rgw: meta and data notify thread miss stop cr manager (`issue#24702 `_, `issue#24589 `_, `pr#22821 `_, Tianshan Qu) +* rgw:-multisite: endless loop in RGWBucketShardIncrementalSyncCR (`issue#24700 `_, `issue#24603 `_, `pr#22815 `_, cfanz) +* rgw: performance regression for luminous 12.2.4 (`issue#23379 `_, `issue#24633 `_, `pr#22929 `_, Mark Kogan) +* rgw: radogw-admin reshard status command should print text for reshar… (`issue#24834 `_, `issue#23257 `_, `pr#23021 `_, Orit Wasserman) +* rgw: "radosgw-admin objects expire" always returns ok even if the pro… (`issue#24831 `_, `issue#24592 `_, `pr#23001 `_, Zhang Shaowen) +* rgw: require --yes-i-really-mean-it to run radosgw-admin orphans find (`issue#24146 `_, `issue#24843 `_, `pr#22986 `_, Matt Benjamin) +* rgw: REST admin metadata API paging failure bucket & bucket.instance: InvalidArgument (`issue#23099 `_, `issue#24813 `_, `pr#22933 `_, Matt Benjamin) +* rgw: set cr state if aio_read err return in RGWCloneMetaLogCoroutine:state_send_rest_request (`issue#24566 `_, `issue#24783 `_, `pr#22880 `_, Tianshan Qu) +* rgw: test/rgw: fix for bucket checkpoints (`issue#24212 `_, `issue#24313 `_, `pr#22466 `_, Casey Bodley) +* rgw,tests: add unit test for cls bi list command (`issue#24736 `_, `issue#24483 `_, `pr#22845 `_, Orit Wasserman) +* tests: mimic - qa/tests: Set ansible-version: 2.4 (`issue#24926 `_, `pr#23122 `_, Yuri Weinstein) +* tests: osd sends op_reply out of order (`issue#25010 `_, `pr#23136 `_, Neha Ojha) +* tests: qa/tests - added overrides stanza to allow runs on ovh on rhel OS (`pr#23156 `_, Yuri Weinstein) +* tests: qa/tests - added skeleton for mimic point to point upgrades testing (`pr#22697 `_, Yuri Weinstein) +* tests: qa/tests: fix supported distro lists for ceph-deploy (`pr#23017 `_, Vasu Kulkarni) +* tests: qa: wait longer for osd to flush pg stats (`issue#24321 `_, `pr#22492 `_, Kefu Chai) +* tests: tests: Health check failed: 1 MDSs report slow requests (MDS_SLOW_REQUEST) in powercycle (`issue#25034 `_, `pr#23154 `_, Neha Ojha) +* tests: tests: make test_ceph_argparse.py pass on py3-only systems (`issue#24825 `_, `issue#24816 `_, `pr#22988 `_, Nathan Cutler) +* tests: upgrade/luminous-x: whitelist REQUEST_SLOW for rados_mon_thrash (`issue#25056 `_, `issue#25051 `_, `pr#23164 `_, Nathan Cutler) + +v13.2.0 Mimic +============= + +This is the first stable release of Mimic, the next long term release series. + +Major Changes from Luminous +--------------------------- + +- *Dashboard*: + + * The (read-only) Ceph manager dashboard introduced in Ceph Luminous has been + replaced with a new implementation inspired by and derived from the + `openATTIC `_ Ceph management tool, providing a + drop-in replacement offering a :ref:`number of additional management + features `. + +- *RADOS*: + + * Config options can now be centrally stored and managed by the monitor. + * The monitor daemon uses significantly less disk space when undergoing + recovery or rebalancing operations. + * An *async recovery* feature reduces the tail latency of requests + when the OSDs are recovering from a recent failure. + * OSD preemption of scrub by conflicting requests reduces tail latency. + +- *RGW*: + + * RGW can now replicate a zone (or a subset of buckets) to an + external cloud storage service like S3. + * RGW now supports the S3 multi-factor authentication API on + versioned buckets. + * The Beast frontend is no longer experimental, and is considered + stable and ready for use. + +- *CephFS*: + + * Snapshots are now stable when combined with multiple MDS daemons. + +- *RBD*: + + * Image clones no longer require explicit *protect* and *unprotect* + steps. + * Images can be deep-copied (including any clone linkage to a parent + image and associated snapshots) to new pools or with altered data + layouts. + +- *Misc*: + + * We have dropped the Debian builds for the Mimic release due to the + lack of GCC 8 in Stretch. We expect Debian builds to return with + the release of Buster in early 2019, and hope to build a final + Luminous release (and possibly later Mimic point releases) once + Buster is available. + + +Upgrading from Luminous +----------------------- + +Notes +~~~~~ + +* We recommend you avoid creating any RADOS pools while the upgrade is + in process. + +* 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 +~~~~~~~~~~~~ + +#. If your cluster was originally installed with a version prior to + Luminous, ensure that it has completed at least one full scrub of + all PGs while running Luminous. Failure to do so will cause your + monitor daemons to refuse to join the quorum on start, leaving them + non-functional. + + If you are unsure whether or not your Luminous cluster has + completed a full scrub of all PGs, you can check your cluster's + state by running:: + + # ceph osd dump | grep ^flags + + In order to be able to proceed to Mimic, your OSD map must include + the ``recovery_deletes`` and ``purged_snapdirs`` flags. + + If your OSD map does not contain both these flags, you can simply + wait for approximately 24-48 hours, which in a standard cluster + configuration should be ample time for all your placement groups to + be scrubbed at least once, and then repeat the above process to + recheck. + + However, if you have just completed an upgrade to Luminous and want + to proceed to Mimic in short order, you can force a scrub on all + placement groups with a one-line shell command, like:: + + # ceph pg dump pgs_brief | cut -d " " -f 1 | xargs -n1 ceph pg scrub + + You should take into consideration that this forced scrub may + possibly have a negative impact on your Ceph clients' performance. + +#. 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.:: + + # systemctl restart ceph-mon.target + + Once all monitors are up, verify that the monitor upgrade is + complete by looking for the ``mimic`` feature string in the mon + map. For example:: + + # ceph mon feature ls + + should include `mimic` under persistent features:: + + on current monmap (epoch NNN) + persistent: [kraken,luminous,mimic] + required: [kraken,luminous,mimic] + +#. Upgrade ``ceph-mgr`` daemons by installing the new packages and + restarting with:: + + # 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 hosts:: + + # systemctl restart ceph-osd.target + + You can monitor the progress of the OSD upgrades with the new + ``ceph versions`` or ``ceph osd versions`` command:: + + # ceph osd versions + { + "ceph version 12.2.5 (...) luminous (stable)": 12, + "ceph version 13.2.0 (...) mimic (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 radosgw.target + +#. Complete the upgrade by disallowing pre-Mimic OSDs and enabling + all new Mimic-only functionality:: + + # ceph osd require-osd-release mimic + +#. 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``. + +Upgrading from pre-Luminous releases (like Jewel) +------------------------------------------------- + +You *must* first upgrade to Luminous (12.2.z) before attempting an +upgrade to Mimic. In addition, your cluster must have completed at +least one scrub of all PGs while running Luminous, setting the +``recovery_deletes`` and ``purged_snapdirs`` flags in the OSD map. + +Upgrade compatibility notes +--------------------------- + +These changes occurred between the Luminous and Mimic releases. + +* *core*: + + - The ``pg force-recovery`` command will not work for erasure-coded PGs when a + Luminous monitor is running along with a Mimic OSD. Please use the + recommended upgrade order of monitors before OSDs to avoid this issue. + + - The sample ``crush-location-hook`` script has been removed. Its output is + equivalent to the built-in default behavior, so it has been replaced with an + example in the CRUSH documentation. + + - The ``-f`` option of the rados tool now means ``--format`` instead + of ``--force``, for consistency with the ceph tool. + + - The format of the ``config diff`` output via the admin socket has changed. It + now reflects the source of each config option (e.g., default, config file, + command line) as well as the final (active) value. + + - Commands variously marked as `del`, `delete`, `remove` + etc. should now all be normalized as `rm`. Commands already + supporting alternatives to `rm` remain backward-compatible. This + changeset applies to the ``radosgw-admin`` tool as well. + + - Monitors will now prune on-disk full maps if the number of maps grows above + a certain number (mon_osdmap_full_prune_min, default: 10000), thus + preventing unbounded growth of the monitor data store. This feature is + enabled by default, and can be disabled by setting + `mon_osdmap_full_prune_enabled` to false. + + - *rados list-inconsistent-obj format changes:* + + + Various error strings have been improved. For example, the "oi" + or "oi_attr" in errors which stands for object info is now + "info" (e.g. oi_attr_missing is now info_missing). + + + The object's "selected_object_info" is now in json format + instead of string. + + + The attribute errors (attr_value_mismatch, attr_name_mismatch) + only apply to user attributes. Only user attributes are output + and have the internal leading underscore stripped. + + + If there are hash information errors (hinfo_missing, hinfo_corrupted, + hinfo_inconsistency) then "hashinfo" is added with the json format of the + information. If the information is corrupt then "hashinfo" is a string + containing the value. + + + If there are snapset errors (snapset_missing, snapset_corrupted, + snapset_inconsistency) then "snapset" is added with the json format of the + information. If the information is corrupt then "snapset" is a string + containing the value. + + + If there are object information errors (info_missing, info_corrupted, + obj_size_info_mismatch, object_info_inconsistency) then "object_info" is + added with the json format of the information instead of a string. If the + information is corrupt then "object_info" is a string containing the + value. + + - *rados list-inconsistent-snapset format changes:* + + + Various error strings have been improved. For example, the "ss_attr" in + errors which stands for snapset info is now "snapset" (e.g. + ss_attr_missing is now snapset_missing). The error snapset_mismatch has + been renamed to snapset_error to better reflect what it means. + + + The head snapset information is output in json format as "snapset." This + means that even when there are no head errors, the head object will be + output when any shard has an error. This head object is there to show the + snapset that was used in determining errors. + + - The `osd_mon_report_interval_min` option has been renamed to + `osd_mon_report_interval`, and the `osd_mon_report_interval_max` + (unused) has been eliminated. If this value has been customized on your + cluster then your configuration should be adjusted in order to avoid + reverting to the default value. + + - The config-key interface can store arbitrary binary blobs but JSON can only + express printable strings. If binary blobs are present, the 'ceph config-key + dump' command will show them as something like `<<< binary blob of length N + >>>`. + + - Bootstrap auth keys will now be generated automatically on a fresh + deployment; these keys will also be generated, if missing, during upgrade. + + - The ``osd force-create-pg`` command now requires a force option to proceed + because the command is dangerous: it declares that data loss is permanent + and instructs the cluster to proceed with an empty PG in its place, without + making any further efforts to find the missing data. + + *CephFS*: + + - Upgrading an MDS cluster to 12.2.3+ will result in all active MDS + exiting due to feature incompatibilities once an upgraded MDS comes online + (even as standby). Operators may ignore the error messages and continue + upgrading/restarting or follow this upgrade sequence: + + After upgrading the monitors to Mimic, reduce the number of ranks to 1 + (`ceph fs set max_mds 1`), wait for all other MDS to deactivate, + leaving the one active MDS, stop all standbys, upgrade the single active + MDS, then upgrade/start standbys. Finally, restore the previous max_mds. + + !! NOTE: see release notes on snapshots in CephFS if you have ever enabled + snapshots on your file system. + + See also: https://tracker.ceph.com/issues/23172 + + - Several ``ceph mds ...`` commands have been obsoleted and replaced by + equivalent ``ceph fs ...`` commands: + + + ``mds dump`` -> ``fs dump`` + + ``mds getmap`` -> ``fs dump`` + + ``mds stop`` -> ``mds deactivate`` + + ``mds set_max_mds`` -> ``fs set max_mds`` + + ``mds set`` -> ``fs set`` + + ``mds cluster_down`` -> ``fs set cluster_down true`` + + ``mds cluster_up`` -> ``fs set cluster_down false`` + + ``mds add_data_pool`` -> ``fs add_data_pool`` + + ``mds remove_data_pool`` -> ``fs rm_data_pool`` + + ``mds rm_data_pool`` -> ``fs rm_data_pool`` + + - New CephFS file system attributes session_timeout and + session_autoclose are configurable via ``ceph fs set``. The MDS + config options `mds_session_timeout`, `mds_session_autoclose`, and + `mds_max_file_size` are now obsolete. + + - As the multiple MDS feature is now standard, it is now enabled by + default. ``ceph fs set allow_multimds`` is now deprecated and will be + removed in a future release. + + - As the directory fragmentation feature is now standard, it is now + enabled by default. ``ceph fs set allow_dirfrags`` is now deprecated and + will be removed in a future release. + + - MDS daemons now activate and deactivate based on the value of + `max_mds`. Accordingly, ``ceph mds deactivate`` has been deprecated as it + is now redundant. + + - Taking a CephFS cluster down is now done by setting the down flag which + deactivates all MDS. For example: `ceph fs set cephfs down true`. + + - Preventing standbys from joining as new actives (formerly the now + deprecated cluster_down flag) on a file system is now accomplished by + setting the joinable flag. This is useful mostly for testing so that a + file system may be quickly brought down and deleted. + + - New CephFS file system attributes session_timeout and session_autoclose + are configurable via `ceph fs set`. The MDS config options + mds_session_timeout, mds_session_autoclose, and mds_max_file_size are now + obsolete. + + - Each mds rank now maintains a table that tracks open files and their + ancestor directories. Recovering MDS can quickly get open files' paths, + significantly reducing the time of loading inodes for open files. MDS + creates the table automatically if it does not exist. + + - CephFS snapshot is now stable and enabled by default on new filesystems. + To enable snapshot on existing filesystems, use the command:: + + ceph fs set allow_new_snaps + + The on-disk format of snapshot metadata has changed. The old format + metadata can not be properly handled in multiple active MDS configuration. + To guarantee all snapshot metadata on existing filesystems get updated, + perform the sequence of upgrading the MDS cluster strictly. + + See http://docs.ceph.com/docs/mimic/cephfs/upgrading/ + + For filesystems that have ever enabled snapshots, the multiple-active MDS + feature is disabled by the mimic monitor daemon. This will cause the "restore + previous max_mds" step in above URL to fail. To re-enable the feature, + either delete all old snapshots or scrub the whole filesystem: + + - ``ceph daemon scrub_path / force recursive repair`` + - ``ceph daemon scrub_path '~mdsdir' force recursive repair`` + + - Support has been added in Mimic for quotas in the Linux kernel client as of v4.17. + + See http://docs.ceph.com/docs/mimic/cephfs/quota/ + + - Many fixes have been made to the MDS metadata balancer which distributes + load across MDS. It is expected that the automatic balancing should work + well for most use-cases. In Luminous, subtree pinning was advised as a + manual workaround for poor balancer behavior. This may no longer be + necessary so it is recommended to try experimentally disabling pinning as a + form of load balancing to see if the built-in balancer adequately works for + you. Please report any poor behavior post-upgrade. + + - NFS-Ganesha is an NFS userspace server that can export shares from multiple + file systems, including CephFS. Support for this CephFS client has improved + significantly in Mimic. In particular, delegations are now supported through + the libcephfs library so that Ganesha may issue delegations to its NFS clients + allowing for safe write buffering and coherent read caching. Documentation + is also now available: http://docs.ceph.com/docs/mimic/cephfs/nfs/ + + - MDS uptime is now available in the output of the MDS admin socket ``status`` command. + + - MDS performance counters for client requests now include average latency as well as the count. + + +* *RBD* + + - The RBD C API's `rbd_discard` method now enforces a maximum length of + 2GB to match the C++ API's `Image::discard` method. This restriction + prevents overflow of the result code. + + - The rbd CLI's ``lock list`` JSON and XML output has changed. + + - The rbd CLI's ``showmapped`` JSON and XML output has changed. + + - RBD now optionally supports simplified image clone semantics where + non-protected snapshots can be cloned; and snapshots with linked clones + can be removed and the space automatically reclaimed once all remaining + linked clones are detached. This feature is enabled by default if + the OSD "require-min-compat-client" flag is set to mimic or later; or can be + overridden via the "rbd_default_clone_format" configuration option. + + - RBD now supports deep copy of images that preserves snapshot history. + +* *RGW* + + - The RGW Beast frontend is now declared stable and ready for production use. + :ref:`rgw_frontends` for details. + + - Civetweb frontend has been updated to the latest 1.10 release. + + - The S3 API now has support for multi-factor authentication. Refer to + :ref:`rgw_mfa` for details. + + - RGW now has a sync plugin to sync to AWS and clouds with S3-like APIs. + +* *MGR* + + - The (read-only) Ceph manager dashboard introduced in Ceph Luminous has been + replaced with a new implementation, providing a drop-in replacement offering + a number of additional management features. To access the new dashboard, you + first need to define a username and password and create an SSL certificate. + See the :ref:`mgr-dashboard` for a feature overview and installation + instructions. + + - The ``ceph-rest-api`` command-line tool (obsoleted by the MGR + `restful` module and deprecated since v12.2.5) has been dropped. + + There is a MGR module called `restful` which provides similar functionality + via a "pass through" method. See http://docs.ceph.com/docs/master/mgr/restful + for details. + + - New command to track throughput and IOPS statistics, also available in + ``ceph -s`` and previously in ``ceph -w``. To use this command, enable + the ``iostat`` Manager module and invoke it using ``ceph iostat``. See the + :ref:`iostat documentation ` for details. + +* *build/packaging* + + - The ``rcceph`` script (``systemd/ceph`` in the source code tree, shipped as + ``/usr/sbin/rcceph`` in the ceph-base package for CentOS and SUSE) has been + dropped. This script was used to perform admin operations (start, stop, + restart, etc.) on all OSD and/or MON daemons running on a given machine. This + functionality is provided by the systemd target units (``ceph-osd.target``, + ``ceph-mon.target``, etc.). + + - The python-ceph-compat package is declared deprecated, and will be dropped + when all supported distros have completed the move to Python 3. It has + already been dropped from those supported distros where Python 3 is + standard and Python 2 is optional (currently only SUSE). + + - Ceph codebase has now moved to the C++-17 standard. + + - The Ceph LZ4 compression plugin is now enabled by default, and introduces a + new build dependency. + + +Detailed Changelog +------------------ + +* arch/arm: set ceph_arch_aarch64_crc32 only if the build host supports crc32cx (`issue#19705 `_, `pr#17420 `_, Kefu Chai) +* assert(false)->ceph_abort() (`pr#18072 `_, Li Wang) +* auth: keep /dev/urandom open for get_random_bytes (`issue#21401 `_, `pr#17972 `_, Casey Bodley) +* bluestore: BlueStore::ExtentMap::dup impl (`pr#19719 `_, Shinobu Kinjo) +* bluestore: bluestore/NVMEDevice: accurate the latency perf counter of queue latency (`pr#17435 `_, Ziye Yang, Pan Liu) +* bluestore: bluestore/NVMEDevice: convert the legacy config opt related with SPDK (`pr#18502 `_, Ziye Yang) +* bluestore: bluestore/NVMEDevice: do not deference a dangling pointer (`pr#19067 `_, Kefu Chai) +* bluestore: bluestore/NVMEDevice: fix the bug in write function (`pr#17086 `_, Ziye Yang, Pan Liu) +* bluestore: bluestore/NVMeDevice: update NVMeDevice code due to SPDK upgrade (`pr#16927 `_, Ziye Yang) +* bluestore,build/ops: bluestore,cmake: enable building bluestore without aio (`pr#19017 `_, Kefu Chai) +* bluestore,build/ops: Build: create a proper WITH_BLUESTORE option (`pr#18357 `_, Alan Somers) +* bluestore,build/ops: ceph.spec.in,debian/rules: change aio-max-nr to 1048576 (`pr#17894 `_, chenliuzhong) +* bluestore,build/ops,tests: os: add compile option to build libbluefs.so (`pr#16733 `_, Pan Liu) +* bluestore,build/ops,tests: test/fio: fix build failure caused by sequencer replacement (`pr#20387 `_, Igor Fedotov) +* bluestore: ceph-bluestore-tool: better fsck/repair, bluefs-bdev-{expand,sizes} (`pr#17709 `_, Sage Weil) +* bluestore: ceph-bluestore-tool: check if bdev is empty on 'bluefs-bdev-expand' (`pr#17874 `_, WANG Guoqin) +* bluestore: ceph-bluestore-tool: link target shouldn't ending with "\n" (`pr#18585 `_, Yao Zongyou) +* bluestore,common: intarith: get rid of P2\* and ROUND_UP\* macros (`pr#21085 `_, xie xingguo) +* bluestore: comp_min_blob_size init error (`pr#18318 `_, linbing) +* bluestore: config: Change bluestore_cache_kv_max to type INT64 (`pr#20255 `_, Zhi Zhang) +* bluestore,core: ceph-bluestore-tool: prime-osd-dir: update symlinks instead of bailing (`pr#18565 `_, Sage Weil) +* bluestore,core: common/options: bluefs_buffered_io=true by default (`pr#20542 `_, Sage Weil) +* bluestore,core: os/bluestore: compensate for bad freelistmanager size/blocks metadata (`issue#21089 `_, `pr#17268 `_, Sage Weil) +* bluestore,core: os/bluestore: fix data read error injection in bluestore (`pr#19866 `_, Sage Weil) +* bluestore,core: os/bluestore: kv_max -> kv_min (`pr#20544 `_, Sage Weil) +* bluestore,core: os/bluestore: switch default allocator to stupid; test both bitmap and stupid in qa (`pr#16906 `_, Sage Weil) +* bluestore,core: src/bluestore/NVMEDevice: make all read use aio_submit (`pr#17655 `_, Ziye Yang, Pan Liu) +* bluestore,core,tests: test/unittest_bluefs: check whether rmdir success (`pr#15363 `_, shiqi) +* bluestore,core: tool: ceph-kvstore-tool doesn't umount BlueStore properly (`issue#21625 `_, `pr#18083 `_, Chang Liu) +* bluestore: define default value of LoglevelV only once (3 templates) (`pr#20727 `_, Matt Benjamin) +* bluestore: drop unused friend class in SharedDriverQueueData (`pr#16894 `_, Pan Liu) +* bluestore: fix aio_t::rval type (`issue#23527 `_, `pr#21136 `_, kungf) +* bluestore: fix build on armhf (`pr#20951 `_, Kefu Chai) +* bluestore: fixed compilation error when enable spdk with gcc 4.8.5 (`pr#16945 `_, Ziye Yang, Pan Liu) +* bluestore: kv/RocksDBStore: extract common code to a new function (`pr#16532 `_, Pan Liu) +* bluestore/NVMEDevice: code cleanup (`pr#17284 `_, Ziye Yang, Pan Liu) +* bluestore: os/bluestore: add bluestore_prefer_deferred_size_hdd/ssd to tracked keys (`pr#17459 `_, xie xingguo) +* bluestore: os/bluestore: add discard method for ssd's performance (`pr#14727 `_, Taeksang Kim) +* bluestore: os/bluestore: Add lat record of deferred_queued and deferred_aio_wait (`pr#17015 `_, lisali) +* bluestore: os/bluestore: Add missing __func__ in dout (`pr#17903 `_, lisali) +* bluestore: os/bluestore: add perf counter for allocator fragmentation (`pr#21377 `_, Igor Fedotov) +* bluestore: os/bluestore: allocate entire write in one go (`pr#17698 `_, Sage Weil) +* bluestore: os/bluestore: allow reconstruction of osd data dir from bluestore bdev label (`pr#18256 `_, Sage Weil) +* bluestore: os/bluestore: alter the allow_eio policy regarding kernel's error list (`issue#23333 `_, `pr#21306 `_, Radoslaw Zarzynski) +* bluestore: os/bluestore: avoid excessive ops in _txc_release_alloc (`pr#18854 `_, Igor Fedotov) +* bluestore: os/bluestore: avoid omit cache for remove-collection (`pr#18785 `_, Jianpeng Ma) +* bluestore: os/bluestore: avoid overhead of std::function in blob_t (`pr#20294 `_, Radoslaw Zarzynski) +* bluestore: os/bluestore: avoid unneeded BlobRefing in _do_read() (`pr#19864 `_, Radoslaw Zarzynski) +* bluestore: os/bluestore: be more verbose when hitting unloaded shard in extent map (`pr#21245 `_, Igor Fedotov) +* bluestore: os/bluestore/BlueFS: compact log even when sync_metadata sees no work (`pr#17354 `_, Sage Weil) +* bluestore: os/bluestore/BlueFS: Don't call debug related code under any condition (`pr#17627 `_, Jianpeng Ma) +* bluestore: os/bluestore/BlueFS: don't need wait for aio when using _sync_write (`pr#16066 `_, Haodong Tang) +* bluestore: os/bluestore/BlueFS: fix race with log flush during async log compaction (`issue#21878 `_, `pr#18428 `_, Sage Weil) +* bluestore: os/bluestore/BlueFS: move release unused extents work in _flush_and_syn_log (`pr#17684 `_, Jianpeng Ma) +* bluestore: os/bluestore/BlueFS: prevent _compact_log_async reentry (`issue#21250 `_, `pr#17503 `_, Sage Weil) +* bluestore: os/bluestore/BlueFS: Reduce unnecessary operations in collect_metadata (`pr#17995 `_, Luo Kexue) +* bluestore: os/bluestore/BlueFS: sanity check that alloc->allocate() won't return 0 (`pr#18259 `_, xie xingguo) +* bluestore: os/bluestore/BlueFS: several cleanups (`pr#17966 `_, xie xingguo) +* bluestore: os/bluestore/bluefs_types: make block_mask 64-bit (`pr#21629 `_, Sage Weil) +* bluestore: os/bluestore/BlueStore: ASAP wake up _kv_finalize_thread (`pr#18203 `_, Jianpeng Ma) +* bluestore: os/bluestore/BlueStore: narrow deferred_lock in _deferred_submit_unlock (`pr#17628 `_, Jianpeng Ma) +* bluestore: os/bluestore: bluestore repair should use interval_set::union_insert (`pr#20900 `_, Igor Fedotov) +* bluestore: os/bluestore: cleanup around ExtentList, AllocExtent and bluestore_extent_t classes (`pr#20360 `_, Igor Fedotov) +* bluestore: os/bluestore: clearer comments, not slower code (`pr#16872 `_, Mark Nelson) +* bluestore: os/bluestore: correctly check all block devices to decide if journal is_rotational (`issue#23141 `_, `pr#20602 `_, Greg Farnum) +* bluestore: os/bluestore: delete redundant header file in KernelDevice.cc (`pr#18631 `_, Jing Li) +* bluestore: os/bluestore: do not assert if BlueFS rebalance is unable to allocate sufficient space (`pr#18494 `_, Igor Fedotov) +* bluestore: os/bluestore: do not core dump when BlueRocksEnv gets EEXIST error (`issue#20871 `_, `pr#17357 `_, liuchang0812) +* bluestore: os/bluestore: do not core dump when we try to open kvstore twice (`pr#18161 `_, Chang Liu) +* bluestore: os/bluestore: do not release empty bluefs_extents_reclaiming (`pr#18671 `_, Igor Fedotov) +* bluestore: os/bluestore: do not segv on kraken upgrade debug print (`issue#20977 `_, `pr#16992 `_, Sage Weil) +* bluestore: os/bluestore: don't re-initialize csum-setting for existing blobs (`issue#21175 `_, `pr#17398 `_, xie xingguo) +* bluestore: os/bluestore: do SSD discard on mkfs (`pr#20897 `_, Igor Fedotov) +* bluestore: os/bluestore: drop deferred_submit_lock, fix aio leak (`issue#21171 `_, `pr#17352 `_, Sage Weil) +* bluestore: os/bluestore: drop unused function declaration (`pr#18075 `_, Li Wang) +* bluestore: os/bluestore: drop unused param "what" in apply() (`pr#17251 `_, songweibin) +* bluestore: os/bluestore: _dump_onode() don't prolongate Onode anymore (`pr#19841 `_, Radoslaw Zarzynski) +* bluestore: os/bluestore: dynamic CF configuration; put pglog omap in separate CF (`pr#18224 `_, Sage Weil) +* bluestore: os/bluestore: enlarege aligned_size avoid too many vector(> IOV_MAX) (`issue#21932 `_, `pr#18828 `_, Jianpeng Ma) +* bluestore: os/bluestore: ExtentMap::reshard - fix wrong shard length (`pr#17334 `_, chenliuzhong) +* bluestore: os/bluestore: fail early on very large objects (`issue#20923 `_, `pr#16924 `_, Sage Weil) +* bluestore: os/bluestore: fix another aio stall/deadlock (`issue#21470 `_, `pr#18118 `_, Sage Weil) +* bluestore: os/bluestore: fix broken cap in _balance_bluefs_freespace() (`pr#21097 `_, Igor Fedotov) +* bluestore: os/bluestore: fix clone dirty_range again (`issue#20983 `_, `pr#16994 `_, Sage Weil) +* bluestore: os/bluestore: fix dirty_shard off-by-one (`pr#16850 `_, Sage Weil) +* bluestore: os/bluestore: fix exceeding the max IO queue depth in KernelDevice (`issue#23246 `_, `pr#20996 `_, Radoslaw Zarzynski) +* bluestore: os/bluestore: fix potential assert when splitting collection (`pr#19519 `_, Igor Fedotov) +* bluestore: os/bluestore: fix SharedBlob unregistration (`issue#22039 `_, `pr#18805 `_, Sage Weil) +* bluestore: os/bluestore: fix some code formatting (`pr#21037 `_, Gu Zhongyan) +* bluestore: os/bluestore: fix the allocate in bluefs (`pr#19030 `_, tangwenjun) +* bluestore: os/bluestore: fix the demotion in StupidAllocator::init_rm_free (`pr#20430 `_, Kefu Chai) +* bluestore: os/bluestore: fix the wrong usage for map_any (`pr#18939 `_, Jianpeng Ma) +* bluestore: os/bluestore: fix wrong usage for BlueFS::_allocate (`pr#20708 `_, Jianpeng Ma) +* bluestore: os/bluestore: free the spdk qpair resource correctly in destructor of SharedDriverQueueData (`pr#20929 `_, Jianyu Li) +* bluestore: os/bluestore: handle small main device properly (`pr#17416 `_, xie xingguo) +* bluestore: os/bluestore: ignore 0x2000~2000 extent oddity from luminous upgrade (`issue#21408 `_, `pr#17845 `_, Sage Weil) +* bluestore: os/bluestore: implement BlueStore repair (`pr#19843 `_, Igor Fedotov) +* bluestore: os/bluestore: make bluefs behave better near enospc (`pr#18120 `_, Sage Weil) +* bluestore: os/bluestore: mark derivatives of AioContext as final (`pr#20227 `_, Radoslaw Zarzynski) +* bluestore: os/bluestore: move aio_callback{,_priv} to base class BlockDevice (`pr#17002 `_, mychoxin) +* bluestore: os/bluestore: move assert of read/write to base class (`pr#17033 `_, mychoxin) +* bluestore: os/bluestore: move size and block_size to the base class BlockDevice (`pr#16886 `_, Pan Liu) +* bluestore: os/bluestore: no need to fsync when failed to write label (`pr#20092 `_, tangwenjun) +* bluestore: os/bluestore: no trim debug noise if there is no trimming to be done (`pr#20684 `_, Sage Weil) +* bluestore: os/bluestore/NVMEDevice: change write_bl to bl (`pr#17145 `_, Ziye Yang, Pan Liu) +* bluestore: os/bluestore/NVMEDevice: fix the nvme queue depth issue (`pr#17200 `_, Ziye Yang, Pan Liu) +* bluestore: os/bluestore/NVMEDevice: Remove using dpdk thread (`pr#17769 `_, Ziye Yang, Pan Liu) +* bluestore: os/bluestore: OpSequencer: reduce kv_submitted_waiters if _is_all_kv_submitted() return true (`pr#18622 `_, Jianpeng Ma) +* bluestore: os/bluestore: optimize _collection_list (`pr#18777 `_, Jianpeng Ma) +* bluestore: os/bluestore: pass strict flag to bluestore_blob_use_tracker_t::equal() (`pr#15705 `_, xie xingguo) +* bluestore: os/bluestore: Prealloc memory avoid realloc in list_collection (`pr#18804 `_, Jianpeng Ma) +* bluestore: os/bluestore: prevent mount if osd_max_object_size >= 4G (`pr#19043 `_, Sage Weil) +* bluestore: os/bluestore: print aio in batch (`pr#18873 `_, Kefu Chai) +* bluestore: os/bluestore: print leaked extents to debug output (`pr#17225 `_, Sage Weil) +* bluestore: os/bluestore: propagate read-EIO to high level callers (`pr#17744 `_, xie xingguo) +* bluestore: os/bluestore: put cached attrs in correct mempool (`issue#21417 `_, `pr#18001 `_, Sage Weil) +* bluestore: os/bluestore: recalc_allocated() when decoding bluefs_fnode_t (`issue#23212 `_, `pr#20701 `_, Jianpeng Ma, Kefu Chai) +* bluestore: os/bluestore: reduce meaningless flush (`pr#19027 `_, tangwenjun) +* bluestore: os/bluestore: refactor FreeListManager to get clearer view on the number (`issue#22535 `_, `pr#19718 `_, Igor Fedotov) +* bluestore: os/bluestore: release disk extents in bulky manner (`pr#17913 `_, Radoslaw Zarzynski) +* bluestore: os/bluestore: remove ineffective BlueFS fnode extent calculation (`pr#18905 `_, Igor Fedotov) +* bluestore: os/bluestore: remove unused parameters (`pr#18635 `_, Jianpeng Ma) +* bluestore: os/bluestore: remove unused variable (`pr#21063 `_, Gu Zhongyan) +* bluestore: os/bluestore: remove useless function submit (`pr#17537 `_, mychoxin) +* bluestore: os/bluestore: reorder members of bluefs_extent_t for space efficiency (`pr#21034 `_, Radoslaw Zarzynski) +* bluestore: os/bluestore: replace dout with ldout in StupidAllocator (`pr#17404 `_, Radoslaw Zarzynski) +* bluestore: os/bluestore: report error and quit correctly when disk error happens (`issue#21263 `_, `pr#17522 `_, Pan Liu) +* bluestore: os/bluestore: Revert "os/bluestore: allow multiple DeferredBatches in flight at once" (`issue#20925 `_, `issue#20295 `_, `pr#16900 `_, Sage Weil) +* bluestore: os/bluestore: s/bluefs_total/bluefs_free/ (`pr#21036 `_, xie xingguo) +* bluestore: os/bluestore: separate finisher for deferred_try_submit (`issue#21207 `_, `pr#17409 `_, Sage Weil) +* bluestore: os/bluestore: set bitmap freelist resolution to min_alloc_size (`pr#17610 `_, Sage Weil) +* bluestore: os/bluestore: shrink aio submit size to pending value (`pr#17588 `_, kungf) +* bluestore: os/bluestore: silence -Wreturn-type warning (`pr#18286 `_, Kefu Chai) +* bluestore: os/bluestore: support calculate cost when using spdk (`pr#17091 `_, Ziye Yang, Pan Liu) +* bluestore: os/bluestore: synchronous on_applied completions (`pr#18196 `_, Sage Weil) +* bluestore: os/bluestore: trim cache every 50ms (instead of 200ms) (`pr#20498 `_, Sage Weil) +* bluestore: os/bluestore: update description for bluestore_compression\_[min|max|_blob_size options (`pr#21244 `_, Igor Fedotov) +* bluestore: os/bluestore: using macro OBJECT_MAX_SIZE to check osd_max_object_size (`pr#19622 `_, Jianpeng Ma) +* bluestore: osd/bluestore: delete unused variable in KernelDevice (`pr#20857 `_, Leo Zhang) +* bluestore: osd,os/bluestore: Display current size of osd_max_object_size (`pr#19725 `_, Shinobu Kinjo) +* bluestore: Revert "os/bluestore: pass strict flag to bluestore_blob_use_tracker_t::equal()" (`issue#21293 `_, `pr#17569 `_, Sage Weil) +* bluestore,rgw: rgw,unittest_bit_alloc: silence clang analyzer warning (`pr#17294 `_, Kefu Chai) +* bluestore,tests: objectstore/store_test: fix lack of flush prior to collection_empty()… (`issue#22409 `_, `pr#19764 `_, Igor Fedotov) +* bluestore,tests: Revert "bluestore/fio: Fixed problem with all objects having the same hash (`pr#18352 `_, Radoslaw Zarzynski) +* bluestore,tools: ceph-bluestore-tool: create out_dir before create full path of kvdb (`pr#18367 `_, Leo Zhang) +* bluestore,tools: os/bluestore/bluestore_tool: add log-dump command to dump bluefs's log (`pr#18535 `_, Yang Honggang) +* build: fix dpdk build error (`pr#18087 `_, chunmei) +* build mimic-dev1 with gcc 7 (`issue#22438 `_, `pr#19548 `_, Kefu Chai) +* build/ops: automake: remove files required by automake (`pr#17937 `_, Kefu Chai) +* build/ops: blkin: link against lttng-ust-fork (`pr#17673 `_, Mohamad Gebai) +* build/ops: boost: remove boost submodule (`pr#17405 `_, Kefu Chai) +* build/ops: build: do_cmake: allow ARGS to be overridden (`pr#19876 `_, Abhishek Lekshmanan) +* build/ops: build: remove PGMap.cc from libcommon (`pr#18496 `_, Sage Weil) +* build/ops: ceph-disk activate unlocks bluestore data partition (`issue#20488 `_, `pr#16357 `_, Felix Winterhalter) +* build/ops: ceph_disk: allow "no fsid" on activate (`pr#18991 `_, Dan Mick) +* build/ops,cephfs: ceph-object-corpus: update to fix make check (`pr#21261 `_, Patrick Donnelly) +* build/ops,cephfs: cmake, test/fs, client: fix build with clang (`pr#20392 `_, Adam C. Emerson) +* build/ops: ceph.spec: use devtoolset-6-gcc-c++ on aarch64 (`issue#22301 `_, `pr#19341 `_, Kefu Chai) +* build/ops: ceph-volume: Require lvm2, move to osd package (`issue#22443 `_, `pr#19529 `_, Theofilos Mouratidis) +* build/ops: ceph-volume: tests add tests for the is_mounted utility (`pr#16962 `_, Alfredo Deza) +* build/ops: change WITH_SYSTEMD default to ON (`pr#20404 `_, Nathan Cutler) +* build/ops: cmake/BuildBoost: fixes to ready seastar (`pr#20616 `_, Kefu Chai, Casey Bodley) +* build/ops: cmake,deb: install system units using cmake (`pr#20618 `_, Kefu Chai) +* build/ops: cmake: link libcommon with libstdc++ statically if WITH_STATIC_LIBSTDCXX (`issue#22438 `_, `pr#19515 `_, Kefu Chai) +* build/ops: cmake,make-dist: bump up boost version to 1.67 (`pr#21572 `_, Kefu Chai) +* build/ops: cmake,mds: detect std::map::merge() before using it (`pr#21211 `_, Willem Jan Withagen, Kefu Chai) +* build/ops: cmake/mgr: use Python 3 virtualenv if mgr subinterpreter is Python 3 (`pr#21446 `_, Nathan Cutler) +* build/ops,common: cmake, common: silence cmake and gcc warnings (`issue#23774 `_, `pr#21484 `_, Kefu Chai) +* build/ops: common/time: add time.h for Alpine build (`pr#19863 `_, huanwen ren) +* build/ops,common: Update C++ standard to 14 and clean up (`pr#19490 `_, Adam C. Emerson) +* build/ops,core: ceph-crush-location: remove (`pr#19881 `_, Sage Weil) +* build/ops,core: ceph-volume: do not use --key during mkfs (`issue#22283 `_, `pr#19276 `_, Kefu Chai, Sage Weil) +* build/ops,core: /etc/sysconfig/ceph: remove jemalloc option (`issue#20557 `_, `pr#18487 `_, Sage Weil) +* build/ops,core: mimic: cmake,common,filestore: silence gcc-8 warnings/errors (`pr#21862 `_, Kefu Chai) +* build/ops,core: mimic: cmake: do not check for aligned_alloc() anymore (`issue#23653 `_, `pr#22048 `_, Kefu Chai) +* build/ops,core: msg/async: update to work with dpdk shipped with spdk v17.10 (`pr#19470 `_, Kefu Chai) +* build/ops,core: zstd: Upgrade to v1.3.2 (`pr#18407 `_, Adam C. Emerson) +* build/ops: debian/control: adjust ceph-{osdomap,kvstore,monstore}-tool feature move (`issue#22319 `_, `pr#19328 `_, Sage Weil) +* build/ops: debian/control: adjust ceph-{osdomap,kvstore,monstore}-tool feature move (`issue#22319 `_, `pr#19395 `_, Kefu Chai, Sage Weil) +* build/ops: debian/control: adjust ceph-{osdomap,kvstore,monstore}-tool feature move (`pr#19356 `_, Kefu Chai) +* build/ops: debian: fix package relationships after 40caf6a6 (`issue#21762 `_, `pr#18474 `_, Kefu Chai) +* build/ops: debian: lock ceph user during purge (`pr#15118 `_, Caleb Boylan) +* build/ops: debian/rules: no more ChangeLog (`pr#18023 `_, Sage Weil) +* build/ops: debian/rules: strip ceph-base libraries (`issue#22640 `_, `pr#19870 `_, Sage Weil) +* build/ops: do\_{cmake,freebsd}: Don't invoke nproc(1) on FreeBSD (`pr#17949 `_, Alan Somers) +* build/ops: dpdk: remove redundant dpdk submodule (`pr#18712 `_, chunmei) +* build/ops: EventKqueue: Clang want realloc return to be typed (`pr#21550 `_, Willem Jan Withagen) +* build/ops: filestore,rgw: fix types/casts making clang on 32-Bit working (`pr#21055 `_, Daniel Glaser) +* build/ops: Fix ppc64 support for ceph (`pr#16753 `_, Boris Ranto) +* build/ops: Fix two dpdk assert happened in dpdk library (`pr#18409 `_, chunmei) +* build/ops: FreeBSD: add new required packages to be installed (`pr#21349 `_, Willem Jan Withagen) +* build/ops: githubmap: add some known Ceph reviewers (`pr#17507 `_, Patrick Donnelly) +* build/ops: .githubmap: Add wjwithagen as a known Ceph reviewer (`pr#17518 `_, Willem Jan Withagen) +* build/ops: .githubmap: Update (`pr#18230 `_, Sage Weil) +* build/ops: .gitignore: allow debian .patch files (`pr#17577 `_, Ken Dreyer) +* build/ops: include: compat.h, fix the return result of pthread_set_name() (`pr#20474 `_, Willem Jan Withagen) +* build/ops: install-deps: Add support for 'opensuse-tumbleweed' (`pr#21650 `_, Ricardo Marques) +* build/ops: install-deps.sh: avoid re-installing g++-7 (`pr#19468 `_, Kefu Chai) +* build/ops: install-deps.sh, cmake: use GCC-7 on xenial also (`pr#19418 `_, Kefu Chai) +* build/ops: install-deps.sh: install new gcc as the default the right way (`pr#19417 `_, Kefu Chai) +* build/ops: install-deps.sh: pass --no-recommends to zypper (`issue#22998 `_, `pr#20434 `_, Nathan Cutler) +* build/ops: install-deps.sh: set python2 %bcond by environment (`issue#22999 `_, `pr#20436 `_, Nathan Cutler) +* build/ops: install-deps.sh: use DTS on centos if GCC is too old (`pr#19398 `_, Kefu Chai) +* build/ops: install-deps.sh: use tee for writing a file (`pr#19516 `_, Kefu Chai) +* build/ops: install-deps: use DTS-7 on aarch64 and only download mirrored package indexes (`pr#19645 `_, Kefu Chai, Songbo Wang) +* build/ops: libmpem: Revert "submodule: make libmpem as a submodule." (`pr#18414 `_, Jianpeng Ma) +* build/ops: logrotate: add systemd reload in logrotate in case of centos minimal without killall (`pr#16586 `_, Tianshan Qu) +* build/ops: make-dist,cmake: avoid re-downloading boost (`pr#19124 `_, Kefu Chai) +* build/ops: make-dist,cmake: move boost tarball location to download.ceph.com (`pr#17980 `_, Sage Weil) +* build/ops: make-dist,cmake: Try multiple URLs to download boost before failing (`pr#18048 `_, Brad Hubbard) +* build/ops: make-dist: fall back to python3 (`pr#21127 `_, Nathan Cutler) +* build/ops,mgr: mgr/dashboard: build tweaks (`pr#20752 `_, John Spray) +* build/ops,mgr: mgr/dashboard: remove node/npm system installation (`pr#20898 `_, Tiago Melo) +* build/ops,mgr: packaging: explicit jinja2 dependency for dashboard (`issue#22457 `_, `pr#19598 `_, John Spray) +* build/ops,mgr,tests: mgr/dashboard: replace dashboard with dashboard_v2 (`pr#20912 `_, Ricardo Dias) +* build/ops: mimic: cmake: use javac -h for creating JNI native headers (`issue#24012 `_, `pr#21824 `_, Kefu Chai) +* build/ops: mimic: silence various warnings to enable GCC-8 build (`pr#22081 `_, Adam C. Emerson, Kefu Chai) +* build/ops: mon,osd: do not use crush_device_class file to initalize class for new osds (`pr#19939 `_, Sage Weil) +* build/ops: mstart.sh: support read CLUSTERS_LIST from env var (`pr#16988 `_, Jiaying Ren) +* build/ops: os/CMakeLists: fix link errro when enable WITH_PMEM=ON (`pr#20658 `_, Jianpeng Ma) +* build/ops: osdc,os,osd: fix build on osx (`pr#20029 `_, Kefu Chai) +* build/ops: python-numpy-devel build dependency for SUSE (`issue#21176 `_, `pr#17366 `_, Nathan Cutler) +* build/ops: qa/tests - added for the suites with subset be able to use 'testing' … (`pr#21454 `_, Yuri Weinstein) +* build/ops,rbd: ceph-dencoder: moved RBD types outside of RGW preprocessor guard (`issue#22321 `_, `pr#19343 `_, Jason Dillaman) +* build/ops: rbdmap: fix umount when multiple mounts use the same RBD (`pr#17978 `_, Alexandre Marangone) +* build/ops: Revert "make-dist: add OBS-specific release suffix on SUSE" (`pr#20813 `_, Nathan Cutler) +* build/ops,rgw: radosgw: Make compilation with CryptoPP possible (`pr#14955 `_, Adam Kupczyk) +* build/ops: rocksdb: do not use aligned_alloc (`issue#23653 `_, `pr#21632 `_, Kefu Chai) +* build/ops: rpm: adjust ceph-{osdomap,kvstore,monstore}-tool feature move (`issue#22558 `_, `pr#19777 `_, Kefu Chai) +* build/ops: rpm: build-depends on "cunit-devel" for suse (`pr#18997 `_, Kefu Chai) +* build/ops: rpm: conditionalize Python 2 availability to enable Ceph build on Python 3-only system (`pr#20018 `_, Nathan Cutler) +* build/ops: rpm,debian: Ensure all ceph-disk runtime dependencies are declared for ceph-base (`issue#23657 `_, `pr#21356 `_, Nathan Cutler) +* build/ops: rpm,deb: package ceph-kvstore-tool man page (`pr#17387 `_, Sage Weil) +* build/ops: rpm: drop legacy librbd.so.1 symlink in /usr/lib64/qemu (`pr#17324 `_, Nathan Cutler) +* build/ops: rpm: fix _defined_if_python2_absent conditional (`pr#20166 `_, Nathan Cutler) +* build/ops: rpm: fix systemd macros for ceph-volume@.service (`issue#22217 `_, `pr#19081 `_, Nathan Cutler) +* build/ops: rpm: move ceph-\*-tool binaries out of ceph-test subpackage (`issue#21762 `_, `pr#18289 `_, Nathan Cutler) +* build/ops: rpm: Python 3-only ceph-disk and ceph-volume (`pr#20140 `_, Nathan Cutler) +* build/ops: rpm: recommend chrony instead of ntp-daemon (`pr#20138 `_, Nathan Cutler) +* build/ops: rpm: recommend python-influxdb with ceph-mgr (`pr#18511 `_, Nathan Cutler, Tim Serong) +* build/ops: rpm: Revert "ceph.spec: work around build.opensuse.org" (`pr#21716 `_, Nathan Cutler) +* build/ops: rpm: rip out rcceph script (`pr#19899 `_, Nathan Cutler) +* build/ops: rpm: selinux-policy fixes (`pr#19026 `_, Brad Hubbard) +* build/ops: rpm: set build parallelism based on available memory (`pr#19122 `_, Nathan Cutler, Richard Brown) +* build/ops: rpm: set permissions 0755 on rbd resource agent (`issue#22362 `_, `pr#19494 `_, Nathan Cutler) +* build/ops: run-make-check.sh: fix SUSE support (`issue#22875 `_, `pr#20234 `_, Nathan Cutler) +* build/ops: run-make-check.sh: handle Python 2 absence (`issue#23035 `_, `pr#20480 `_, Nathan Cutler) +* build/ops: run-make-check.sh: run ulimit without sudo (`pr#17361 `_, yang.wang) +* build/ops: script/build-integration-branch: print pr url list with titles (`pr#17426 `_, Sage Weil) +* build/ops: selinux: Allow nvme devices (`issue#19200 `_, `pr#15597 `_, Boris Ranto) +* build/ops: setup-virtualenv.sh: do not hardcode python binary (`issue#23437 `_, `pr#21002 `_, Nathan Cutler) +* build/ops: spdk: update SPDK to fix the build failure on aarch64 (`pr#20134 `_, Tone Zhang, Kefu Chai) +* build/ops: spdk: update SPDK to v17.10 (`pr#19208 `_, Kefu Chai) +* build/ops: spdk: update submodule to more recent upstream (`pr#20077 `_, Nathan Cutler) +* build/ops: specs: require of e2fsprogs (`pr#21345 `_, Guillaume Abrioux) +* build/ops: src/script/build-integration-branch (`pr#17382 `_, Sage Weil) +* build/ops: src: s/pip --use-wheel/pip/ (`pr#21159 `_, Kefu Chai) +* build/ops: submodule: make libmpem as a submodule (`pr#17036 `_, Jianpeng Ma) +* build/ops: sysctl.d: set kernel.pid_max=4194304 (`issue#21929 `_, `pr#18544 `_, David Disseldorp) +* build/ops: systemd: rbd-mirror does not start on reboot (`pr#17969 `_, Sébastien Han) +* build/ops: test: delete asok directories correctly (`pr#21023 `_, Chang Liu) +* build/ops: test/fio: enable objectstore FIO plugin building without the need to install and build FIO source code (`pr#20535 `_, Igor Fedotov) +* build/ops,tests: common,test,cmake: various changes to re-enable build on osx (`pr#18888 `_, Kefu Chai) +* build/ops,tests: qa/tests: Changed rhel7.4 to rhel7.5 (`pr#21336 `_, Yuri Weinstein) +* build/ops,tests: test/fio: fix fio objectstore plugin building broken by (`pr#20514 `_, Igor Fedotov) +* build/ops: udev: Fix typo in udev OSD rules file (`pr#18976 `_, Mitch Birti) +* build/ops: use devtoolset-7 on centos/rhel-7 (`pr#18863 `_, Kefu Chai) +* cephfs: Client:Fix readdir bug (`pr#18784 `_, dongdong tao) +* cephfs: Client: setattr should drop "Fs" rather than "As" for mtime and size (`pr#18786 `_, dongdong tao) +* cephfs,common,rbd: common/common_init: disable ms subsystem log gathering for clients (`issue#21860 `_, `pr#18418 `_, Jason Dillaman) +* cephfs,common,rbd: Various fixes for SCA issues (`pr#21708 `_, Danny Al-Gaaf) +* cephfs,core: mon/OSDMonitor: set FLAG_SELFMANAGED_SNAPS on cephfs snap removal (`issue#23949 `_, `pr#21756 `_, Sage Weil) +* cephfs: MDS: add null check before we push_back "onfinish" (`pr#18892 `_, dongdong tao) +* cephfs: MDS: correct the error msg when init mon client (`pr#18836 `_, dongdong tao) +* cephfs: MDS: make popular counter decay at proper rate (`pr#18776 `_, Jianyu Li) +* cephfs: MDS: make rebalancer evaluate the overload state of each mds with the same criterion (`pr#19255 `_, Jianyu Li) +* cephfs: messages: Initialization of is_primary (`pr#16897 `_, amitkuma) +* cephfs: messages: Initialization of member variables (`pr#16898 `_, amitkuma) +* cephfs: mimic: MDSMonitor: clean up use of pending fsmap in uncommitted ops (`issue#23768 `_, `pr#22005 `_, Patrick Donnelly) +* cephfs: mon/MDSMonitor: wait for readable OSDMap before sanitizing (`issue#21945 `_, `pr#18603 `_, Patrick Donnelly) +* cephfs,mon: mon/MDSMonitor: fix a bug at preprocess_beacon (`pr#17415 `_, wangshuguang) +* cephfs: osdc/Journaler: use new style options (`pr#17806 `_, Kefu Chai) +* cephfs: qa: check pool full flags (`issue#22475 `_, `pr#19588 `_, Patrick Donnelly) +* cephfs: qa: fix typo in test_full (`issue#23643 `_, `pr#21334 `_, Patrick Donnelly) +* cephfs: Revert "ceph_context: re-expand admin_socket metavariables in child process" (`pr#18545 `_, Patrick Donnelly) +* cephfs,tests: qa/suites/powercycle/osd/whitelist_health: whitelist slow trimming (`pr#17307 `_, Sage Weil) +* cephfs,tests: qa/workunits/cephtool/test.sh: fix test_mon_mds() (`pr#21579 `_, Kefu Chai) +* cephfs,tools: mount.fuse.ceph: Fix typo (`pr#19128 `_, Jos Collin) +* cephfs: vstart_runner: fixes for recent cephfs changes (`pr#19533 `_, Patrick Donnelly) +* ceph-volume: add ANSIBLE_SSH_RETRIES=5 to functional tests (`pr#20592 `_, Andrew Schoen) +* ceph-volume add functional tests for simple, rearrange lvm tests (`pr#18882 `_, Alfredo Deza) +* ceph-volume: Add linesep/newline at end of JSON file when writing (`pr#19458 `_, Wido den Hollander) +* ceph-volume: adds a --destroy flag to ceph-volume lvm zap (`issue#22653 `_, `pr#20010 `_, Andrew Schoen) +* ceph-volume: adds --crush-device-class flag for lvm prepare and create (`pr#19949 `_, Andrew Schoen) +* ceph-volume: adds custom cluster name support to simple (`pr#20367 `_, Andrew Schoen) +* ceph-volume: adds functional CI testing (`pr#16919 `_, Andrew Schoen, Alfredo Deza) +* ceph-volume: adds functional testing for bluestore (`pr#18656 `_, Andrew Schoen) +* ceph-volume: adds raw device support to 'lvm list' (`issue#23140 `_, `pr#20620 `_, Andrew Schoen) +* ceph-volume: adds success messages for lvm prepare/activate/create (`issue#22307 `_, `pr#19875 `_, Andrew Schoen) +* ceph-volume: adds support to zap encrypted devices (`issue#22878 `_, `pr#20537 `_, Andrew Schoen) +* ceph-volume: adds the ceph-volume lvm zap subcommand (`pr#18513 `_, Andrew Schoen) +* ceph-volume allow filtering by `uuid`, do not require osd id (`pr#17606 `_, Andrew Schoen, Alfredo Deza) +* ceph-volume: allow parallel creates (`issue#23757 `_, `pr#21489 `_, Theofilos Mouratidis) +* ceph-volume: allow skipping systemd interactions on activate/create (`issue#23678 `_, `pr#21496 `_, Alfredo Deza) +* ceph-volume: allow using a device or partition for `lvm --data` (`pr#18924 `_, Alfredo Deza) +* ceph-volume be resilient to $PATH issues (`pr#20650 `_, Alfredo Deza) +* ceph-volume consume mount/format options from ceph.conf (`pr#20408 `_, Alfredo Deza) +* ceph-volume: correctly fallback to bluestore when no objectstore is specified (`pr#19213 `_, Alfredo Deza) +* ceph-volume correctly normalize mount flags (`pr#20543 `_, Alfredo Deza) +* ceph-volume: create the ceph-volume and ceph-volume-systemd man pages (`issue#21030 `_, `pr#17152 `_, Alfredo Deza) +* ceph-volume: dmcrypt support for lvm (`issue#22619 `_, `pr#20054 `_, Alfredo Deza) +* ceph-volume dmcrypt support for simple (`issue#22620 `_, `pr#20264 `_, Andrew Schoen, Alfredo Deza) +* ceph-volume/doc: add missing subcommand in examples (`pr#19381 `_, Guillaume Abrioux) +* ceph-volume: ensure correct --filestore/--bluestore behavior (`pr#18518 `_, Alfredo Deza) +* ceph-volume failed ceph-osd --mkfs command doesn't halt the OSD creation process (`issue#23874 `_, `pr#21685 `_, Alfredo Deza) +* ceph-volume: fix action plugins path in tests (`pr#20910 `_, Guillaume Abrioux) +* ceph-volume fix filestore OSD creation after mon-config changes (`issue#23260 `_, `pr#20787 `_, Alfredo Deza) +* ceph-volume: fix typo in ceph-volume lvm prepare help (`pr#21196 `_, Jeffrey Zhang) +* ceph-volume: fix usage of the --osd-id flag (`issue#22642 `_, `issue#22836 `_, `pr#20203 `_, Andrew Schoen) +* ceph-volume Format correctly when vg/lv cannot be used (`issue#22299 `_, `pr#19285 `_, Alfredo Deza) +* ceph-volume handle inline comments in the ceph.conf file (`issue#22297 `_, `pr#19319 `_, Alfredo Deza) +* ceph-volume: handle leading whitespace/tabs in ceph.conf (`issue#22280 `_, `pr#19259 `_, Alfredo Deza) +* ceph-volume Implement an 'activate all' to help with dense servers or migrating OSDs (`pr#21130 `_, Alfredo Deza) +* ceph-volume improve robustness when reloading vms in tests (`pr#21070 `_, Alfredo Deza) +* ceph-volume: log the current running command for easier debugging (`issue#23004 `_, `pr#20594 `_, Andrew Schoen) +* ceph-volume lvm api refactor/move (`pr#18110 `_, Alfredo Deza) +* ceph-volume lvm list (`pr#18095 `_, Alfredo Deza) +* ceph-volume lvm.prepare update to use create_osd_path (`pr#18514 `_, Alfredo Deza) +* ceph-volume: lvm zap will unmount osd paths used by zapped devices (`issue#22876 `_, `pr#20265 `_, Andrew Schoen) +* ceph-volume: Nits noticed while studying code (`pr#21455 `_, Dan Mick) +* ceph-volume Persist non-lv devices for journals (`pr#17403 `_, Alfredo Deza) +* ceph-volume process the abspath of the executable first (`issue#23259 `_, `pr#20824 `_, Alfredo Deza) +* ceph-volume: removed the explicit use of sudo (`issue#22282 `_, `pr#19363 `_, Andrew Schoen) +* ceph-volume: remove extra space (`pr#21140 `_, Sébastien Han) +* ceph-volume rollback on failed OSD prepare/create (`issue#22281 `_, `pr#19351 `_, Alfredo Deza) +* ceph-volume should be able to handle multiple LVM (VG/LV) tags (`issue#22305 `_, `pr#19321 `_, Alfredo Deza) +* ceph-volume: support GPT and other deployed OSDs (`pr#18823 `_, Alfredo Deza) +* ceph-volume tests add optional flags for vagrant (`pr#20849 `_, Alfredo Deza) +* ceph-volume tests alleviate libvirt timeouts when reloading (`issue#23163 `_, `pr#20718 `_, Alfredo Deza) +* ceph-volume tests.devices.lvm prepare isn't bluestore specific anymore (`pr#18984 `_, Alfredo Deza) +* ceph-volume tests remove unused import (`pr#20459 `_, Alfredo Deza) +* ceph-volume tests use granular env vars for vagrant (`pr#20864 `_, Alfredo Deza) +* ceph-volume: Try to cast OSD metadata to int while scanning directory (`pr#19477 `_, Wido den Hollander) +* ceph-volume update man page for prepare/activate flags (`pr#21570 `_, Alfredo Deza) +* ceph-volume use realpath when checking mounts (`issue#22988 `_, `pr#20427 `_, Alfredo Deza) +* ceph-volume: use unique logical volumes (`pr#17207 `_, Alfredo Deza) +* ceph-volume: Using --readonly for {vg|pv|lv}s commands (`pr#21409 `_, Erwan Velu) +* ceph-volume: warn on missing ceph.conf file (`issue#22326 `_, `pr#19347 `_, Alfredo Deza) +* ceph-volume warn on mix of filestore and bluestore flags (`issue#23003 `_, `pr#20513 `_, Alfredo Deza) +* cleanup: Replacing MIN,MAX with std::min,std::max (`pr#18124 `_, Amit Kumar) +* cli: rados: support for high precision time using stat2 (`issue#21199 `_, `pr#17395 `_, Abhishek Lekshmanan) +* cls_acl/_crypto: Add modeline (`pr#19010 `_, Shinobu Kinjo) +* cmake: add chrono to BOOST_COMPONENTS (`issue#23424 `_, `pr#20977 `_, Nathan Cutler) +* cmake: add cython_rbd as a dependency to vstart target (`pr#18382 `_, Ali Maredia) +* cmake: bail out if GCC version is less than 5.1 (`pr#19344 `_, Kefu Chai) +* cmake: BuildBoost.cmake: use specified compiler for building boost (`pr#19898 `_, Kefu Chai) +* cmake: bump target jdk to 1.7 (`issue#23458 `_, `pr#21082 `_, Shengjing Zhu) +* cmake: bump up required cmake version to 2.8.12 (`pr#18285 `_, Kefu Chai) +* cmake: changes of BuildBoost.cmake to ready seastar (`pr#21404 `_, Kefu Chai) +* cmake: check for aligned_alloc() instead of checking tcmalloc version (`pr#18557 `_, Kefu Chai) +* cmake: check gcc version not release date for libstdc++ saneness (`pr#18938 `_, Kefu Chai) +* cmake: check version of boost in src/boost (`pr#19914 `_, Kefu Chai) +* cmake: cleanups (`pr#18597 `_, Kefu Chai) +* cmake,common: changes to port part of ceph to osx (`pr#17615 `_, Kefu Chai) +* cmake: compile nvml as an external project (`pr#17462 `_, Jianpeng Ma) +* cmake: define HAVE_STDLIB_MAP_SPLICING for both libstdc++ and libc++ (`pr#21284 `_, Kefu Chai) +* cmake: disable DOWNLOAD_NO_PROGRESS if cmake ver is lower than 3.1 (`pr#20492 `_, Kefu Chai) +* cmake: disable FAIL_ON_WARNINGS for rocksdb (`pr#19426 `_, Kefu Chai) +* cmake: disable VTA on options.cc (`pr#17393 `_, Kefu Chai) +* cmake: do not find bzip2/lz4 for rocksdb (`pr#19963 `_, runsisi) +* cmake: do not link against librados.a (`pr#18576 `_, Kefu Chai) +* cmake: do not link against unused or duplicated libraries (`pr#18092 `_, Kefu Chai) +* cmake: enabled py3 only build (`pr#20064 `_, Kefu Chai) +* cmake: enable LZ4 by default (`pr#21332 `_, Grant Slater, Casey Bodley) +* cmake: enable new policies to silence cmake warnings (`pr#21662 `_, Kefu Chai) +* cmake: fix building without mgr module (`pr#21591 `_, Yuan Zhou) +* cmake: fix frontend cmake build (`pr#21449 `_, Ricardo Dias) +* cmake: fix libcephfs-test.jar build failure (`issue#22828 `_, `pr#20175 `_, Tone Zhang) +* cmake: fix the include dir for building boost::python (`pr#20324 `_, Kefu Chai) +* cmake: fix typo in status message (`pr#21464 `_, Lenz Grimmer) +* cmake: hide symbols import from other libraries in libcls\_\* (`issue#23517 `_, `pr#21571 `_, Kefu Chai) +* cmake: identify the possible incompatibility of rocksdb and tcmalloc (`issue#21422 `_, `pr#17788 `_, Kefu Chai) +* cmake: in case of bad "ALLOCATOR" selected issue warning (`pr#17422 `_, Adam Kupczyk) +* cmake: include frontend build in 'all' target (`pr#21466 `_, John Spray) +* cmake: let "tests" depend on "mgr-dashboard-frontend-build" (`pr#21468 `_, Kefu Chai) +* cmake: 'make check' builds radosgw and its cls dependencies (`pr#20422 `_, Casey Bodley) +* cmake: mgr: exclude .gitignore (`pr#19174 `_, Nathan Cutler) +* cmake/modules/BuildRocksDB.cmake: enable compressions for rocksdb (`issue#24025 `_, `pr#22183 `_, Kefu Chai) +* cmake: only create sysctl file on linux (`pr#19029 `_, Kefu Chai) +* cmake: pass static linkflags to the linker who links libcommon (`pr#19763 `_, Kefu Chai) +* cmake: s/boost_256/boost_sha256/ (`pr#21573 `_, Kefu Chai) +* cmake: set supported language the right way (`pr#18216 `_, Kefu Chai) +* cmake: should use the value of GPERFTOOLS_LIBRARIES as REQUIRED_VARS (`pr#18645 `_, Kefu Chai) +* cmake: s/sysconf/sysconfig/ (`pr#20631 `_, Kefu Chai) +* cmake: sync nvml submodule to latest code (`pr#20411 `_, Jianpeng Ma) +* cmake: System Includes to silence warnings from submodules and libraries! (`pr#18711 `_, Adam C. Emerson) +* cmake: typo fix when npm is not found (`pr#20801 `_, Abhishek Lekshmanan) +* cmake: update minimum boost version to 1.66 (`issue#20048 `_, `issue#22600 `_, `pr#19808 `_, Casey Bodley) +* cmake: update the error message for gperftools bug (`pr#17901 `_, Kefu Chai) +* cmake: warn if libstdc++ older than 5.1.0 is used (`pr#18837 `_, Kefu Chai) +* cmake: WITH_SPDK=ON by default (`pr#18944 `_, Liu-Chunmei, Kefu Chai, wanjun.lp, Ziye Yang) +* common: adding line break at end of some cli results (`issue#21019 `_, `pr#16687 `_, songweibin) +* common: add line break for "ceph daemon TYPE.ID version" (`pr#17146 `_, Zhu Shangzhong) +* common: Add metadata with only Ceph version number and release (`pr#21095 `_, Wido den Hollander) +* common: Add min/max of ms_async_op_threads (`pr#19942 `_, Shinobu Kinjo) +* common: Add noreturn attribute to silence uninitialized warning (`pr#19348 `_, Adam C. Emerson) +* common: auth: add err reason for log info in load function (`pr#17256 `_, Luo Kexue) +* common: bench test fall into dead loop when =0 (`pr#16382 `_, PC) +* common: buffer: avoid changing bufferlist ABI by removing new _mempool field (`issue#21573 `_, `pr#18408 `_, Sage Weil) +* common: by default, do not assert on leaks in the shared_cache code (`issue#21737 `_, `pr#18201 `_, Greg Farnum) +* common: ceph: add the right bracket to watch-channel argument in the help message (`pr#19698 `_, Chang Liu) +* common: ceph.in: execv using the same python (`pr#17713 `_, Kefu Chai) +* common: ceph_release: s/rc/stable/ (`pr#22264 `_, Sage Weil) +* common: change routines to public access (`pr#20003 `_, Willem Jan Withagen) +* common: Check this->data.op_size before use (`pr#18816 `_, Amit Kumar) +* common: cleanup address_helper (`pr#19643 `_, Shinobu Kinjo) +* common: cmake,common/RWLock: check for libpthread extensions (`pr#19202 `_, Kefu Chai) +* common: common: add for_each_substr() for cheap string split (`pr#18798 `_, Casey Bodley) +* common: common: add streaming interfaces for json/xml escaping (`pr#19806 `_, Casey Bodley) +* common: common/admin_socket: validate command json before feeding it to hook (`pr#20437 `_, Kefu Chai) +* common: common/blkdev: fix build in FreeBSD environment (`pr#19316 `_, Mykola Golub) +* common: common/buffer: cleanups (`pr#18312 `_, Shinobu Kinjo) +* common: common/buffer: switch crc cache to single pair instead of map (`pr#18906 `_, Piotr Dałek) +* common: common/config: add units to options (`issue#22747 `_, `pr#20419 `_, Kefu Chai) +* common: common/config: limit calls to normalize_key_name (`pr#20318 `_, Piotr Dałek) +* common: common/config: make internal_safe_to_start_threads internal (`pr#18884 `_, Sage Weil) +* common: common/ConfUtils: check key before actually normalizing (`pr#20370 `_, Piotr Dałek) +* common: common/dns_resolv.cc: Query for AAAA-record if ms_bind_ipv6 is True (`issue#23078 `_, `pr#20530 `_, Wido den Hollander) +* common: common/dns_resolve: fix memory leak (`pr#19649 `_, Yao Zongyou) +* common: common/event_socket.h: include to use errno (`pr#18351 `_, Kefu Chai) +* common: common/Formatter: fix string_view usage for {json,xml}_stream_escaper (`issue#23622 `_, `pr#21317 `_, Sage Weil) +* common: common/hobject: compare two objects' key directly (`pr#21062 `_, xie xingguo) +* common: common/hobject: preserve the order of hobject (`pr#21217 `_, Kefu Chai) +* common: common/ipaddr: Do not select link-local IPv6 addresses (`issue#21813 `_, `pr#20862 `_, Wido den Hollander) +* common: common/lockdep: drop hash specialization (`pr#20574 `_, Kefu Chai) +* common: common/LogClient: assign seq and queue atomically (`issue#18209 `_, `pr#16828 `_, Sage Weil) +* common: common/log: Speed improvement for log (`pr#19100 `_, Adam Kupczyk, Kefu Chai) +* common: common/OpHistory: move insert/cleanup into separate thread (`pr#20540 `_, Piotr Dałek) +* common: common/options: drop unused options (`pr#20895 `_, Kefu Chai) +* common: common/options: long description for log_stderr_prefix (`pr#19869 `_, Sage Weil) +* common: common/options: pass by reference and use user-literals for size (`pr#18034 `_, Kefu Chai) +* common: common/options: use user-defined literals for default values (`pr#17180 `_, Kefu Chai) +* common: common/perf_counters: remove unused parameter (`pr#19805 `_, Kefu Chai) +* common: common/pick_address.cc: Cleanup (`pr#19707 `_, Shinobu Kinjo) +* common: common/pick_address: wrong prefix_len in pick_iface() (`pr#20128 `_, Gu Zhongyan) +* common: common/str_list: s/boost::string_view/std::string_view (`pr#20475 `_, Kefu Chai) +* common: common/strtol: fix strict_strtoll() so it accepts hex starting with 0x (`pr#21521 `_, Kefu Chai) +* common: common/strtoll: remove superfluous const modifier (`pr#21560 `_, Jan Fajerski) +* common: common/throttle: start using 64-bit values (`issue#22539 `_, `pr#19759 `_, Igor Fedotov) +* common: common/types: make numbers a bit nicer when displaying space usage (`pr#17126 `_, xie xingguo) +* common: common/util: do not print error if VERSION_ID is missing (`pr#17787 `_, Kefu Chai) +* common: compressor: use generate_random_number() for type="random" (`pr#18272 `_, Casey Bodley) +* common: compressor/zstd: improvements (`pr#18879 `_, Sage Weil) +* common: compute SimpleLRU's size with contents.size() instead of lru.size() (`issue#22613 `_, `pr#19813 `_, Xuehan Xu) +* common: config: expand tilde for ~/.ceph/$cluster.conf (`issue#23215 `_, `pr#20774 `_, Rishabh Dave) +* common: config: notify config observers on set_mon_vals() (`pr#21161 `_, Casey Bodley) +* common: config: Remove _get_val (`pr#18222 `_, Adam C. Emerson) +* common/config: use with_val() for better performance (`pr#19056 `_, Adam C. Emerson) +* common: consolidate spinlocks (`pr#15816 `_, Jesse Williamson) +* common,core: common, osd: various cleanups (`pr#18149 `_, Kefu Chai) +* common,core: common/pick_address: add {public,cluster}_network_interface option (`pr#18028 `_, Sage Weil) +* common,core: common/Throttle: Clean up (`pr#16618 `_, Adam C. Emerson) +* common,core: fix broken use of streamstream::rdbuf() (`issue#22715 `_, `pr#19998 `_, Sage Weil) +* common,core: include/ceph_features: deprecate a bunch of features (`pr#18546 `_, Sage Weil) +* common,core: include,messages,rbd: Initialize counter,group_pool (`pr#17774 `_, Amit Kumar) +* common,core: options: Do not use linked lists of pointers! (`pr#17984 `_, Adam C. Emerson) +* common,core: osdc/Objecter: take budgets across a LingerOp instead of on child Ops (`issue#22882 `_, `pr#20519 `_, Greg Farnum) +* common,core: osd/OpRequest: reduce overhead when disabling tracking (`pr#18470 `_, Haomai Wang) +* common,core: rados: Prefer templates to macros (`pr#19913 `_, Adam C. Emerson) +* common,core,rbd,rgw: common,osd,rgw: Fixes for issues found during SCA (`pr#21419 `_, Danny Al-Gaaf) +* common,core,rbd,tests,tools: common,mds,mgr,mon,osd: store event only if it's added (`pr#16312 `_, Kefu Chai) +* common,core: Revert "msg/async/AsyncConnection: unregister connection when racing happened" (`issue#22231 `_, `pr#19586 `_, Sage Weil) +* common,core: Revert "osd/OSDMap: allow bidirectional swap of pg-upmap-items" (`issue#21410 `_, `pr#17760 `_, Sage Weil) +* common: Coverity and SCA fixes (`pr#17431 `_, Danny Al-Gaaf) +* common/crc/aarch64: Added cpu feature pmull and make aarch64 specific… (`pr#22184 `_, Adam Kupczyk) +* common: crush/CrushWrapper: fix out of bounds access (`issue#20926 `_, `pr#16869 `_, Sage Weil) +* common: crypto: remove cryptopp library (`pr#20015 `_, Casey Bodley) +* common: denc cleanups and other fixes (`pr#19877 `_, Adam C. Emerson) +* common: denc: support enum with underlying type (`pr#18701 `_, Kefu Chai) +* common: Destroy attr of RWLock after initialized (`pr#17103 `_, Wen Zhang) +* common: dmclock: update mClockPriorityQueue with changes in subtree (`pr#20992 `_, Casey Bodley) +* common: dout: DoutPrefixProvider operates directly on stream (`pr#21608 `_, Casey Bodley) +* common: drop namespace using directives for std (`pr#19159 `_, Shinobu Kinjo) +* common: drop unused variables "bluestore_csum\_\*_block" in opts (`pr#17394 `_, songweibin) +* common: encoding: reset optional<> if it is uninitialized (`pr#17599 `_, Kefu Chai) +* common: Extends random.h: numeric types relaxed to compatible types (with (`pr#20670 `_, Jesse Williamson) +* common: fix BoundedKeyCounter const_pointer_iterator (`issue#22139 `_, `pr#18953 `_, Casey Bodley) +* common: fix daemon abnormal exit at parsing invalid arguments (`issue#21365 `_, `issue#21338 `_, `pr#17664 `_, Yan Jun) +* common: fix potential memory leak in HTMLFormatter (`pr#20699 `_, Yao Zongyou) +* common: fix typo deamon in comments (`pr#17687 `_, yonghengdexin735) +* common: fix typo in options.cc (`pr#20549 `_, songweibin) +* common: FreeBSD wants the correct struct selection for ipv6 (`issue#21813 `_, `pr#21143 `_, Willem Jan Withagen) +* common: global: output usage on -h, --help, or no args before contacting mons (`pr#20812 `_, Sage Weil) +* common: hint the main branch of dout() accordingly to default verbosity (`pr#21259 `_, Radoslaw Zarzynski) +* common: implement random number generator (following N3551) (`issue#18873 `_, `pr#15341 `_, Jesse Williamson) +* common: Improving message sent to user when getting signals (`issue#23320 `_, `pr#21000 `_, Erwan Velu) +* common: include/encoding: fix compat version error message (`pr#19660 `_, Xinying Song) +* common: include/interval_set: parameterize by map type and kill btree_interval_set.h (`pr#18611 `_, Sage Weil) +* common: include/rados: fix typo in librados.h (`pr#17988 `_, wumingqiao) +* common: include: Remove unused header, ciso646 (`pr#18320 `_, Shinobu Kinjo) +* common: include/types: format decimal numbers with decimal factor (`issue#22095 `_, `pr#19117 `_, Jan Fajerski) +* common: include: xlist: Fix Clang error for missing string (`pr#19367 `_, Willem Jan Withagen) +* common: interval_set: kill subset_of() (`pr#21108 `_, xie xingguo) +* common: interval_set: optimize intersect_of insert operations (`issue#21229 `_, `pr#17265 `_, Zac Medico) +* common: introduce md_config_cacher_t (`pr#20320 `_, Radoslaw Zarzynski) +* common: kick off mimic (`pr#16993 `_, Sage Weil) +* common: lockdep fixes (`issue#20988 `_, `pr#17738 `_, Jeff Layton) +* common: log: clear thread-local stream's ios flags on reuse (`pr#20174 `_, Casey Bodley) +* common: logically dead code inside shunique_lock.h (`pr#17341 `_, Amit Kumar) +* common: make ceph_clock_now() inlineable (`pr#20443 `_, Radoslaw Zarzynski) +* common: Make code to invoke assert() smaller (`pr#20445 `_, Adam Kupczyk) +* common: make some message informative, instead of error (`pr#16594 `_, Willem Jan Withagen) +* common: mark events of TrackedOp outside its constructor (`issue#22608 `_, `pr#19828 `_, Xuehan Xu) +* common: mgr/dashboard_v2: Fix test_cluster_configuration test (`issue#23265 `_, `pr#20782 `_, Sebastian Wagner) +* common: mimic: include/types: space between number and units (`pr#22107 `_, Sage Weil) +* common,mon: crush,mon: fix weight-set vs crush device classes (`issue#20939 `_, `pr#16883 `_, Sage Weil) +* common,mon,osd,pybind: silence warning and remove executable mode bit (`pr#17512 `_, Kefu Chai) +* common: msg/async/AsyncConnection: less noisy debug (`pr#20600 `_, Sage Weil) +* common: msg/async: execute on core specified by core_id not its index (`pr#20659 `_, Kefu Chai) +* common: msg/msg_types: fix the entity_addr_t's decoder (`pr#17699 `_, Kefu Chai) +* common: msg/simple: s/ceph::size/std::size/ (`pr#19896 `_, Kefu Chai) +* common/options.cc: cleanup readable literals for default sizes (`pr#18425 `_, Enming Zhang) +* common/options.cc: Set Filestore rocksdb compaction readahead option (`issue#21505 `_, `pr#17900 `_, Mark Nelson) +* common: OpTracker doesn't visit TrackedOp when nref == 0 (`issue#24037 `_, `pr#22160 `_, Radoslaw Zarzynski) +* common: osdc/Objecter: fix warning (`pr#21757 `_, Sage Weil) +* common: osdc/Objecter: record correctly value for l_osdc_op_send_bytes (`issue#21982 `_, `pr#18810 `_, Jianpeng Ma) +* common: osd/PrimaryLogPG: send requests to primary on cache miss (`issue#20919 `_, `pr#16884 `_, Sage Weil) +* common: osd_types: define max in eversion_t::max() to static (`pr#17453 `_, yang.wang) +* common,os: initialize commit_data,cmount,iocb (`pr#17766 `_, Amit Kumar) +* common: posix_fallocate on ZFS returns EINVAL (`pr#20398 `_, Willem Jan Withagen) +* common: rados: clean up rados_getxattrs() and rados_striper_getxattrs() (`pr#20259 `_, Gu Zhongyan) +* common: RAII-styled mechanism for updating PerfCounters (`pr#19149 `_, Radoslaw Zarzynski) +* common: random: revert change from boost::optional to std::optional (`issue#23778 `_, `pr#21567 `_, Casey Bodley) +* common: Remove ceph_clock_gettime, extern keyword (`pr#19353 `_, Shinobu Kinjo) +* common: retry_sys_call no need take address of a function pointer (`pr#21281 `_, Leo Zhang) +* common: Revert "common/config: return const reference instead of a copy" (`pr#18934 `_, Kefu Chai) +* common: Revert "core: hint the dout()'s message crafting as a cold code." (`issue#23169 `_, `pr#20636 `_, Kefu Chai) +* common,rgw: rgw,common,rbd: s/boost::regex/std::regex/ (`pr#19393 `_, Kefu Chai) +* common,rgw: rgw,common: remove already included header files (`pr#19390 `_, Yao Zongyou) +* common: silence jenkins's buiding warning in obj_bencher.cc (`pr#17272 `_, Luo Kexue) +* common: src/common: update some ms\_\* options to be more consistent (`pr#20652 `_, shangfufei) +* common: src/msg/async/rdma: decrease cpu usage by rdtsc instruction (`pr#16965 `_, Jin Cai) +* common: Static Pointer (`pr#19079 `_, Adam C. Emerson) +* common: strict_strtol INT_MAX and INT_MIN is valid (`pr#18574 `_, Shasha Lu) +* common: s/unique_lock/lock_guard/, if manual lock/unlock are not necessary (`pr#19770 `_, Shinobu Kinjo) +* common: Switch singletons to use immobile_any and cleanups (`pr#20273 `_, Adam C. Emerson) +* common: test: fix unittest memory leak to silence valgrind (`pr#19654 `_, Yao Zongyou) +* common,tests: test/common: unittest_mclock_priority_queue builds with "make" command (`pr#17582 `_, J. Eric Ivancich) +* common,tests: test/librados: create unique lock names (`issue#20798 `_, `pr#16953 `_, Neha Ojha) +* common: tools/crushtool: skip device id if no name exists (`issue#22117 `_, `pr#18901 `_, Jan Fajerski) +* common: use mono clock for HeartbeatMap (`pr#17827 `_, Xinze Chi, Kefu Chai) +* common: use move instead of copy in build_options() (`pr#18003 `_, Casey Bodley) +* common: utime: fix __32u sec time overflow (`pr#21113 `_, kungf) +* compressor: add zstd back (`pr#21106 `_, Kefu Chai) +* compressor: conditionalize on HAVE_LZ4 (`pr#17059 `_, Kefu Chai) +* compressor: kill AsyncCompressor which is broken (`pr#18472 `_, Haomai Wang) +* core: blkin: Fix unconditional tracing in OSD (`pr#19156 `_, Yingxin) +* core: ceph-debug-docker.sh: add ceph-osd-dbg package (`pr#17947 `_, Patrick Donnelly) +* core: ceph.in: Add blocking mode for scrub and deep-scrub (`pr#19793 `_, Brad Hubbard) +* core: ceph.in: do not panic at control+d in interactive mode (`pr#18374 `_, Kefu Chai) +* core: ceph.in: print all matched commands if arg missing (`issue#22344 `_, `pr#19547 `_, Kefu Chai) +* core: ceph.in: use a different variable for holding thrown exception (`pr#20663 `_, Kefu Chai) +* core: ceph-kvstore-tool: copy to different store type and cleanup properly (`pr#18029 `_, Josh Durgin) +* core: ceph-mgr: exit after usage (`issue#23482 `_, `pr#21401 `_, Sage Weil) +* core: ceph_osd.cc: Drop legacy or redundant code (`pr#18718 `_, Shinobu Kinjo) +* core: ceph-osd: some flags are not documented in the help output (`issue#20057 `_, `pr#15565 `_, Yanhu Cao) +* core: ceph: print output of "status" as string not as bytes (`pr#21297 `_, Kefu Chai) +* core: ceph-rest-api: when port=0 use the DEFAULT_PORT instead (`pr#17443 `_, You Ji) +* core: ceph_test_objectstore: disable filestore_fiemap for tests (`issue#21880 `_, `pr#18452 `_, Sage Weil) +* core: ceph_test_objectstore: do not change model for 0-length zero (`issue#21712 `_, `pr#18519 `_, Sage Weil) +* core: ceph_test_rados_api_aio: fix race with full pool and osdmap (`issue#23916 `_, `issue#23917 `_, `pr#21709 `_, Sage Weil) +* core: ceph_test_rados_api_tier: add ListSnap test (`pr#17706 `_, Xuehan Xu) +* core: client,osd,test: Initialize fuse_req_key,snap,who,seq (`pr#17772 `_, Amit Kumar) +* core: common/admin_socket: various cleanups (`pr#20274 `_, Adam C. Emerson) +* core: common/config: cleanup remove some unused macros (`pr#19599 `_, Yao Zongyou) +* core: common,mds,osd: Explicitly delete copy ctor if noncopyable (`pr#19465 `_, Shinobu Kinjo) +* core: common/options: enable multiple rocksdb compaction threads for filestore (`pr#18232 `_, Josh Durgin) +* core: common, osd: duplicated "start" event in OpTracker, improve OpTracker::dump_ops (`pr#21119 `_, Chang Liu) +* core: compressor: Add Brotli Compressor (`pr#19549 `_, BI SHUN KE) +* core: config: lower default omap entries recovered at once (`issue#21897 `_, `pr#19910 `_, Josh Durgin) +* core: crush/CrushWrapper: fix potential invalid use of iterator (`pr#21325 `_, xie xingguo) +* core: dmclock: Delivery of the dmclock delta, rho and phase parameter + Enabling the client service tracker (`pr#16369 `_, Byungsu Park, Taewoong Kim) +* core: erasure-code: refactor the interfaces to hide internals from public (`pr#18683 `_, Kefu Chai) +* core: erasure-code: use jerasure_free_schedule to properly free a schedule (`pr#19650 `_, Yao Zongyou) +* core: erasure-code: use std::count() instead (`pr#19428 `_, Kefu Chai) +* core: etc/default/ceph: remove jemalloc option (`issue#20557 `_, `pr#18486 `_, Sage Weil) +* core: filestore: include (`pr#20415 `_, wumingqiao) +* core: Fix a dead lock when doing rdma performance test by fio (`pr#17016 `_, Wang Chuanhong) +* core: Fix asserts caused by DNE pgs left behind after lots of OSD restarts (`issue#21833 `_, `pr#20571 `_, David Zafman) +* core: include: kill MIN and MAX macros (`pr#20886 `_, Sage Weil) +* core: interval_set: optimize intersection_of (`pr#17088 `_, Zac Medico) +* core: kv/KeyValueDB: add column family (`pr#18049 `_, Jianjian Huo, Adam C. Emerson, Sage Weil) +* core: kv/RocksDB: get index and filter blocks memory usage (`pr#19934 `_, Zhi Zhang) +* core: kv/RocksDBStore: fix rocksdb error when block cache is disabled (`issue#23816 `_, `pr#21583 `_, Yang Honggang) +* core: librados: add OPERATION_ORDERSNAP flag and yet another aio_operate method (`pr#20343 `_, Mykola Golub) +* core: librados.h: add LIBRADOS_SUPPORTS_APP_METADATA (`pr#16542 `_, Matt Benjamin) +* core: libradosstriper: fix the function declaration of rados_striper_trunc (`pr#20301 `_, yuelongguang) +* core: libradosstriper: silence warning from -Wreorder (`pr#16890 `_, songweibin) +* core: make the main dout() paths faster and more maintanable (`pr#20290 `_, Radoslaw Zarzynski) +* core: messages: Initialization of variable beat (`pr#17641 `_, Amit Kumar) +* core: messages: Initialize member variables (`pr#16846 `_, amitkuma) +* core: messages: initialize variable tid in MMDSFindIno (`pr#16793 `_, amitkuma) +* core: messages: Initializing members in MOSDPGUpdateLogMissing (`pr#16928 `_, amitkuma) +* core: messages: Initializing variable ceph_mds_reply_head (`pr#17090 `_, amitkuma) +* core: messages,journal: Initialization of stats_period,m_active_set (`pr#17792 `_, Amit Kumar) +* core: messages/MOSDMap: do compat reencode of crush map, too (`issue#21882 `_, `pr#18454 `_, Sage Weil) +* core: messages/MOSDOp: a fixes of encode_payload (`pr#16836 `_, Ying He) +* core: messages: Silence uninitialized member warnings (`pr#17596 `_, Amit Kumar) +* core: mgr/DaemonServer.cc: add 'is_valid=false' when decode caps error (`issue#20990 `_, `pr#16978 `_, Yanhu Cao) +* core,mgr: mgr/balancer: improve error message (`issue#22814 `_, `pr#21427 `_, Sage Weil) +* core,mgr: osd,mgrclient: pass daemon_status by rvalue ref and other cleanups (`pr#18509 `_, Kefu Chai) +* core,mgr: osd,mgr: report slow requests and pending creating pgs to mgr (`pr#18614 `_, Kefu Chai) +* core: mimic: crush: update choose_args on bucket removal (`issue#24167 `_, `pr#22120 `_, Sage Weil) +* core: mimic: osdc: guard op->on_notify_finish with lock (`issue#23966 `_, `pr#21834 `_, Kefu Chai) +* core: mimic: osd: clean up smart probe (`issue#23899 `_, `issue#24104 `_, `pr#21959 `_, Sage Weil, Gu Zhongyan) +* core: mimic: osd: Don't evict even when preemption has restarted with smaller chunk (`pr#22041 `_, David Zafman) +* core: mimic: osd/PrimaryLogPG: fix try_flush_mark_clean write contention case (`issue#24200 `_, `issue#24174 `_, `pr#22113 `_, Sage Weil) +* core: mon/ConfigKeyService: dump: print placeholder value for binary blobs (`issue#23622 `_, `pr#21329 `_, Sage Weil) +* core,mon: crush, mon: bump up map version only if we truly created a weight-set (`pr#20178 `_, xie xingguo) +* core: mon/LogMonitor: separate out summary by channel (`pr#21395 `_, Sage Weil) +* core,mon: mon/AuthMonitor: create bootstrap keys on create_initial() (`pr#21236 `_, Joao Eduardo Luis) +* core,mon: mon/LogMonitor: do not crash on log sub w/ no messages (`pr#21469 `_, Sage Weil) +* core,mon: mon,osd,crush: misc cleanup (`pr#20687 `_, songweibin) +* core,mon: mon/OSDMonitor: Comment out unused function (`pr#20275 `_, Brad Hubbard) +* core,mon: mon/OSDMonitor: don't create pgs if pool was deleted (`issue#21309 `_, `pr#17600 `_, Joao Eduardo Luis) +* core,mon: mon/OSDMonitor: implement cluster pg limit (`pr#17427 `_, Sage Weil) +* core,mon: mon/OSDMonitor: list osd tree in named bucket (`pr#19564 `_, kungf) +* core: mon, osd: add create-time for pool (`pr#21690 `_, xie xingguo) +* core: mon, osd: fix potential collided \*Up Set\* after PG remapping (`issue#23118 `_, `pr#20653 `_, xie xingguo) +* core,mon: osd,mon: add max-pg-per-osd limit (`pr#18358 `_, Kefu Chai) +* core: mon/OSDMonitor: filter out pgs that shouldn't exist from force-create-pg (`pr#20267 `_, Sage Weil) +* core: mon/OSDMonitor: fix min_size default for replicated pools (`pr#20555 `_, Josh Durgin) +* core: mon/OSDMonitor: Fix OSDMonitor error message outputs (`issue#22351 `_, `pr#20022 `_, Brad Hubbard) +* core: mon/OSDMonitor: make 'osd crush class rename' idempotent (`pr#17330 `_, xie xingguo) +* core: mon/OSDMonitor: rename outer name declaration to avoid shadowing (`pr#20032 `_, Sage Weil) +* core: mon/OSDMonitor: require --yes-i-really-mean-it for force-create-pg (`pr#21619 `_, Sage Weil) +* core: mon,osd,osdc: refactor snap trimming (phase 1) (`pr#18276 `_, Sage Weil) +* core: mon, osd: per pool space-full flag support (`pr#17371 `_, xie xingguo) +* core: mon, osd: turn down non-error scrub message severity (`issue#20947 `_, `pr#16916 `_, John Spray) +* core: mon/PGMap: fix PGMapDigest decode (`pr#22099 `_, Sage Weil) +* core: mon/PGMap: Fix %USED calculation bug (`issue#22247 `_, `pr#19165 `_, Xiaoxi Chen) +* core: mon/PGMap: remove or narrow columns 'pg ls' output (`pr#20945 `_, Sage Weil) +* core: mon/PGMap: 'unclean' does not imply damaged (`pr#18493 `_, Sage Weil) +* core: MOSDPGRecoveryDelete[Reply]: bump header version (`pr#17585 `_, Josh Durgin) +* core: msg/asyc/rmda: fix the bug of assert when Infiniband::recv_msg receives disconnect message (`pr#17688 `_, Jin Cai) +* core: msg/async/AsyncConnection: combine multi alloc into one (`pr#18833 `_, Haomai Wang) +* core: msg/async/AsyncConnection: Fix FPE in process_connection (`issue#23618 `_, `pr#21314 `_, Brad Hubbard) +* core: msg/async/AsyncConnection: state will be NONE if replacing by another one (`issue#21883 `_, `pr#18467 `_, Haomai Wang) +* core: msg/async/AsyncConnection: unregister connection when racing happened (`pr#19013 `_, Haomai Wang) +* core: msg/async: batch handle numevents (`pr#18321 `_, Jianpeng Ma) +* core: msg/async: don't kill connection if replacing (`issue#21143 `_, `pr#17288 `_, Haomai Wang) +* core: msg/async: don't stuck into resetsession/retrysession loop (`pr#17276 `_, Haomai Wang) +* core: msg/async: fix bug of data type conversion when uint64_t -> int -> uint64_t (`pr#18210 `_, shangfufei) +* core: msg/async: print error log if add_event fail (`pr#17102 `_, mychoxin) +* core: msg/async/rdma: fix multi cephcontext confllicting (`pr#16893 `_, Haomai Wang) +* core: msg/async/rdma: fix the bug that rdma polling thread uses the same thread name with msg worker (`pr#16936 `_, Jin Cai) +* core: msg/async/rdma: improves RX buffer management (`pr#16693 `_, Alex Mikheev) +* core: msg/async/rdma: uninitialized variable fix (`pr#18091 `_, Vasily Philipov) +* core: msg/DispatchQueue: clear queue after wait() (`issue#18351 `_, `pr#20374 `_, Sage Weil) +* core: msgr/simple: set Pipe::out_seq to in_seq of the connecting side (`issue#23807 `_, `pr#21585 `_, Xuehan Xu) +* core: os/bluestore: debug bluestore cache shutdown (`issue#21259 `_, `pr#17844 `_, Sage Weil) +* core: os/bluestore: disable on_applied sync_complete (`issue#22668 `_, `pr#20169 `_, Sage Weil) +* core: os/bluestore: make bdev label parsing error more meaningful and less noisy (`pr#20090 `_, Sage Weil) +* core: os/bluestore: make BlueStore opened by start_kv_only umountable (`issue#21624 `_, `pr#18082 `_, Chang Liu) +* core: os/bluestore: use db->rm_range_keys to delete range of keys (`pr#18279 `_, Xiaoyan Li) +* core: OSD/admin_socket: add get_mapped_pools command (`pr#19112 `_, Xiaoxi Chen) +* core: osdc, class_api: kill implicit string conversions (`pr#16648 `_, Piotr Dałek) +* core: osdc: dec num_in_flight for pool_dne case (`pr#21110 `_, Jianpeng Ma) +* core: osdc: Do not use lock_guard as unique_lock (`pr#19756 `_, Shinobu Kinjo) +* core: osdc: invoke notify finish context on linger commit failure (`issue#23966 `_, `pr#21786 `_, Jason Dillaman) +* core: osdc/Objecter: add ignore overlay flag if got redirect reply (`pr#21275 `_, Ting Yi Lin) +* core: osdc/Objecter: delay initialization of hobject_t in _send_op (`issue#21845 `_, `pr#18427 `_, Jason Dillaman) +* core: osdc/Objecter: fix recursive locking in _finish_command (`issue#23940 `_, `pr#21742 `_, Sage Weil) +* core: osdc/Objecter: misc cleanups (`pr#18476 `_, Jianpeng Ma) +* core: osdc/Objecter: prevent double-invocation of linger op callback (`issue#23872 `_, `pr#21649 `_, Jason Dillaman) +* core: osdc/Objecter: skip sparse-read result decode if bufferlist is empty (`issue#21844 `_, `pr#18400 `_, Jason Dillaman) +* core: osd,compressor: Expose compression algorithms via MOSDBoot (`issue#22420 `_, `pr#20558 `_, Jesse Williamson) +* core: osdc: remove unused function (`pr#21081 `_, Jianpeng Ma) +* core: osd,dmclock: use pointer to ClientInfo instead of a copy of it (`pr#18387 `_, Kefu Chai) +* core: osd: do not forget pg_stat acks which failed to send (`pr#16702 `_, huangjun) +* core: OSD: drop unsed parameter passed to check_osdmap_features (`pr#18466 `_, Leo Zhang) +* core: osd/ECBackend: inject sleep during deep scrub (`pr#20531 `_, xie xingguo) +* core: osd/ECBackend: only check required shards when finishing recovery reads (`issue#23195 `_, `pr#21273 `_, Josh Durgin) +* core: osd/ECBackend: update misleading comment about EIO handling (`pr#21686 `_, Josh Durgin) +* core: osd/ECBackend: wait for apply for luminous peers (`pr#21604 `_, Sage Weil) +* core: osd/ECMsgTypes: fix ECSubRead compat decode (`pr#20948 `_, Sage Weil) +* core: osd, librados: add a rados op (TIER_PROMOTE) (`pr#19362 `_, Myoungwon Oh) +* core: osd,librados: add manifest, operations for chunked object (`pr#15482 `_, Myoungwon Oh) +* core: osd,messages: Initialize read_length,options,send_reply (`pr#17799 `_, Amit Kumar) +* core: osd/OSD: batch-list objects to reduce memory consumption (`pr#20767 `_, xie xingguo) +* core: osd/OSD.cc: add 'isvalid=false' when failed to parse caps (`pr#16888 `_, Yanhu Cao) +* core: osd/OSD.cc: use option 'osd_scrub_cost' instead (`pr#18479 `_, Liao Weizhong) +* core: osd/OSDMap: add osdmap epoch info when printing info summary (`pr#20184 `_, shun-s) +* core: osd/OSDMap: fix HAVE_FEATURE logic in encode() (`pr#20922 `_, Ilya Dryomov) +* core: osd/OSDMap: ignore PGs from pools of failure-domain OSD (`pr#20703 `_, xie xingguo) +* core: osd/OSDMap: misleading message in print_oneline_summary() (`issue#22350 `_, `pr#20313 `_, Gu Zhongyan) +* core: osd/OSDMap: more pg upmap fixes (`issue#23878 `_, `pr#21670 `_, xiexingguo) +* core: osd/OSDMap: remove the unnecessary checks for null (`pr#18636 `_, Kefu Chai) +* core: osd/OSDMap: skip out/crush-out osds (`pr#20655 `_, xie xingguo) +* core: osd/OSDMap: upmap should respect the osd reweights (`issue#21538 `_, `pr#17944 `_, Theofilos Mouratidis) +* core: osd/osd_type: get_clone_bytes - inline size() for overlapping size (`pr#17823 `_, xie xingguo) +* core: osd/osd_types.cc: copy extents map too while making clone (`pr#18396 `_, xie xingguo) +* core: osd/osd_types: fix ideal lower bound object-id of pg (`pr#21235 `_, xie xingguo) +* core: osd/osd_types: fix object_stat_sum_t decode (`pr#18551 `_, Sage Weil) +* core: osd/osd_types: fix pg_pool_t encoding for hammer (`pr#21282 `_, Sage Weil) +* core: osd/osd_types: kill preferred field in pg_t (`pr#20567 `_, Sage Weil) +* core: osd/osd_types: object_info_t: remove unused function (`pr#17905 `_, Kefu Chai) +* core: osd/osd_types: pg_pool_t: remove crash_replay_interval member (`pr#18379 `_, Sage Weil) +* core: osd/osd_types: remove backlog type for pg_log_entry_t (`pr#20887 `_, Sage Weil) +* core: osd/OSD: Using Wait rather than WaitInterval to wait queue.is_empty() (`pr#17659 `_, Jianpeng Ma) +* core: osd/PG: allow scrub preemption (`pr#18971 `_, Sage Weil) +* core: osd/PGBackend: delete reply if fails to complete delete request (`issue#20913 `_, `pr#17183 `_, Kefu Chai) +* core: osd/PGBackend: drop input "snapid_t" from objects_list_range() (`pr#21151 `_, xie xingguo) +* core: osd/PGBackend: fix large_omap_objects checking (`pr#21150 `_, xie xingguo) +* core: osd/PGBackend: release a msg using msg->put() not delete (`issue#20913 `_, `pr#17246 `_, Kefu Chai) +* core: osd/PG: const cleanup for recoverable/readable predicates (`pr#18982 `_, Neha Ojha) +* core: osd/PG: decay scrub_chunk_max too if scrub is preempted (`pr#20552 `_, xie xingguo) +* core: osd/PG: discard msgs from down peers (`issue#19605 `_, `pr#17217 `_, Kefu Chai) +* core: osd/PG: drop unused variable "oldest_update" in PG.h (`pr#17142 `_, songweibin) +* core: osd/PG: extend pg state bits to fix pg ls commands error (`issue#21609 `_, `pr#18058 `_, Yan Jun) +* core: osd/PG: fix calc of misplaced objects (`pr#18528 `_, Kefu Chai) +* core: osd/PG: fix DeferRecovery vs AllReplicasRecovered race (`issue#23860 `_, `pr#21706 `_, Sage Weil) +* core: osd/PG: fix objects degraded higher than 100% (`issue#21803 `_, `issue#21898 `_, `pr#18297 `_, Sage Weil, David Zafman) +* core: osd/PG: fix out of order priority for PG deletion (`pr#21613 `_, xie xingguo) +* core: osd/PG: fix recovery op leak (`pr#18524 `_, Sage Weil) +* core: osd/PG: fix uninit read in Incomplete::react(AdvMap&) (`issue#23980 `_, `pr#21798 `_, Sage Weil) +* core: osd/PG: force rebuild of missing set on jewel upgrade (`issue#20958 `_, `pr#16950 `_, Sage Weil) +* core: osd/PG: include primary in PG operator<< for ec pools (`pr#19453 `_, Sage Weil) +* core: osd/PGLog: assert out on performing overflowed log trimming (`pr#21580 `_, xie xingguo) +* core: osd/PGLog: cleanup unused function revise_have (`pr#19329 `_, Enming Zhang) +* core: osd/PGLog: fix sanity check against \*\*complete-to\*\* iter (`pr#21612 `_, songweibin) +* core: osd/PGLog: get rid of ineffective container operations (`pr#19161 `_, xie xingguo) +* core: osd/PGLog: write only changed dup entries (`issue#21026 `_, `pr#17245 `_, Josh Durgin) +* core: osd, pg, mgr: make snap trim queue problems visible (`issue#22448 `_, `pr#19520 `_, Piotr Dałek) +* core: osd/PG: misc cleanups (`pr#18340 `_, Yan Jun) +* core: osd/PG: miscellaneous choose acting changes and cleanups (`pr#18481 `_, xie xingguo) +* core: osd/PG: pass scrub priority to replica (`pr#20317 `_, Sage Weil) +* core: osd/PG: perfer async_recovery_targets in reverse order of cost (`pr#21578 `_, xie xingguo) +* core: osd/PG: perfer EC async_recovery_targets in reverse order of cost (`pr#21588 `_, xie xingguo) +* core: osd/PG: PGPool::update: avoid expensive union_of (`pr#17239 `_, Zac Medico) +* core: osd/PGPool::update: optimize with subset_of (`pr#17820 `_, Zac Medico) +* core: osd/PG: reduce some overhead on operating MissingLoc (`pr#18186 `_, xie xingguo) +* core: osd/PG: remote recovery preemption, and new feature bit to condition it on (`pr#18553 `_, Sage Weil) +* core: osd/PG: remove unused parameter in calc_ec_acting (`pr#17304 `_, yang.wang) +* core: osd/PG: restart recovery if NotRecovering and unfound found (`issue#22145 `_, `pr#18974 `_, Sage Weil) +* core: osd/PG: revert approx size (`issue#22654 `_, `pr#18755 `_, Adam Kupczyk) +* core: osd/PG: re-write of _update_calc_stats and improve pg degraded state (`issue#20059 `_, `pr#19850 `_, David Zafman) +* core: osd/PG: some cleanups && add should_gather filter for loop logging (`pr#19546 `_, Enming Zhang) +* core: osd/PG: two cleanups (`pr#17171 `_, xie xingguo) +* core: osd/PG: use osd_backfill_retry_interval for schedule_backfill_retry() (`pr#18686 `_, xie xingguo) +* core: osd/PrimaryLogPG: add condition "is_chunky_scrub_active" to check object in chunky_scrub (`pr#18506 `_, Jianpeng Ma) +* core: osd/PrimaryLogPG: arrange recovery order by number of missing objects (`pr#18292 `_, xie xingguo) +* core: osd/PrimaryLogPG: avoid infinite loop when flush collides with write lock (`pr#21653 `_, Sage Weil) +* core: osd/PrimaryLogPG: calc clone_overlap size in a more efficient and concise way (`pr#17928 `_, xie xingguo) +* core: osd/PrimaryLogPG: cleanup do_sub_op && do_sub_op_reply and define soid in prepare_transaction more appropriate (`pr#19495 `_, Enming Zhang) +* core: osd/PrimaryLogPG: clear data digest on WRITEFULL if skip_data_digest (`pr#21676 `_, Sage Weil) +* core: osd/PrimaryLogPG: clear pin_stats_invalid bit properly on scrub-repair completion (`pr#18052 `_, xie xingguo) +* core: osd/PrimaryLogPG: defer evict if head \*or\* object intersect scrub interval (`issue#23646 `_, `pr#21628 `_, Sage Weil) +* core: osd/PrimaryLogPG: do not pull-up snapc to snapset (`pr#18713 `_, Sage Weil) +* core: osd/PrimaryLogPG: do not set data digest for bluestore (`pr#17515 `_, xie xingguo) +* core: osd/PrimaryLogPG: do not set data/omap digest blindly (`pr#18061 `_, xie xingguo) +* core: osd/PrimaryLogPG: do not use approx_size() for log trimming (`pr#18338 `_, xie xingguo) +* core: osd/PrimaryLogPG: do_osd_ops - propagate EAGAIN/EINPROGRESS on failok (`pr#17222 `_, xie xingguo) +* core: osd/PrimaryLogPG: drop unused parameters (`pr#18581 `_, Liao Weizhong) +* core: osd/PrimaryLogPG: fix dup stat for async read (`pr#18693 `_, Xinze Chi) +* core: osd/PrimaryLogPG: Fix log messages (`pr#21639 `_, Gu Zhongyan) +* core: osd/PrimaryLogPG: fix sparse read won't trigger repair correctly (`pr#17221 `_, xie xingguo) +* core: osd/PrimaryLogPG: fix the oi size mismatch with real object size (`issue#23701 `_, `pr#21408 `_, Peng Xie) +* core: osd/PrimaryLogPG: kick off recovery on backoffing a degraded object (`pr#17987 `_, xie xingguo) +* core: osd/PrimaryLogPG: kill add_interval_usage (`pr#17807 `_, xie xingguo) +* core: osd/PrimaryLogPG: maybe_handle_manifest_detail - sanity check obc existence (`pr#17298 `_, xie xingguo) +* core: osd/PrimaryLogPG: misc cleanups (`pr#17830 `_, Yan Jun) +* core: osd/PrimaryLogPG: more oi.extents fixes (`pr#18616 `_, xie xingguo) +* core: osd/PrimaryLogPG: prepare_transaction - fix EDQUOT vs ENOSPC (`pr#17808 `_, xie xingguo) +* core: osd/PrimaryLogPG: request osdmap update in the right block (`issue#21428 `_, `pr#17828 `_, Josh Durgin) +* core: osd/PrimaryLogPG: several oi.extents fixes (`pr#18527 `_, xie xingguo) +* core: osd/PrimaryLogPG: trigger auto-repair on full-object-size CRC error (`pr#18353 `_, xie xingguo) +* core: osd/ReplicatedBackend: clean up code (`pr#20127 `_, Jianpeng Ma) +* core: osd/ReplicatedBackend: 'osd_deep_scrub_keys' doesn't work (`pr#20221 `_, fang yuxiang) +* core: osd/ReplicatedPG: add omap write bytes to delta_stats (`pr#18471 `_, Haomai Wang) +* core: osd_types.cc: reorder fields in serialized pg_stat_t (`pr#19965 `_, Piotr Dałek) +* core: os/filestore: disable rocksdb compression (`pr#18707 `_, Sage Weil) +* core: os/filestore/FileStore: Initialized by nullptr, NULL or 0 instead (`pr#18980 `_, Shinobu Kinjo) +* core: os/filestore: fix device/partition metadata detection (`issue#20944 `_, `pr#16913 `_, Sage Weil) +* core: os/filestore: fix do_copy_range replay bug (`issue#23298 `_, `pr#20832 `_, Sage Weil) +* core: os/Filestore: fix wbthrottle assert (`pr#14213 `_, Xiaoxi Chen) +* core: os/filestore: print out the error if do_read_entry() fails (`pr#18346 `_, Kefu Chai) +* core: os: FileStore, Using stl min | max, MIN | MAX macros instead (`pr#19832 `_, Shinobu Kinjo) +* core: os: fix 0-length zero semantics, add tests (`issue#21712 `_, `pr#18159 `_, Sage Weil) +* core: os/FuseStore: fix incorrect used space statistics for fuse's statfs interface (`pr#19033 `_, Zhi Zhang) +* core: os/kstore: Drop unused function declaration (`pr#18077 `_, Jos Collin) +* core: os/kstore: fix statfs problem and add vstart.sh support (`issue#23590 `_, `pr#21287 `_, Yang Honggang) +* core: os/memstore: Fix wrong use of lock_guard (`pr#20914 `_, Shen-Ta Hsieh) +* core: os/ObjectStore: fix get_data_alignment return -1 causing problem in msg header (`pr#18475 `_, Haomai Wang) +* core: os/ObjectStore.h: fix mistake in comment TRANSACTION ISOLATION (`pr#16840 `_, mychoxin) +* core: os,osd: initial work to drop onreadable/onapplied callbacks (`issue#23029 `_, `pr#20177 `_, Sage Weil) +* core: os: unify Sequencer and CollectionHandle (`pr#20173 `_, Sage Weil) +* core: PG: fix name of WaitActingChange (`pr#18768 `_, wumingqiao) +* core: pg: handle MNotifyRec event in down state (`pr#20959 `_, Mingxin Liu) +* core: PGPool::update: optimize removed_snaps comparison when possible (`pr#17410 `_, Zac Medico) +* core: PGPool::update: optimize with interval_set.swap (`pr#17121 `_, Zac Medico) +* core: PG: primary should not be in the peer_info, skip if it is (`pr#20189 `_, Neha Ojha) +* core: ptl-tool: checkout branch after creation (`pr#18157 `_, Patrick Donnelly) +* core: ptl-tool: load labeled PRs (`pr#18231 `_, Patrick Donnelly) +* core: ptl-tool: make branch name configurable (`pr#18499 `_, Patrick Donnelly) +* core: ptl-tool: print bzs/tickets cited in commit msgs/comments (`pr#18547 `_, Patrick Donnelly) +* core: pybind/ceph_argparse: fix cli output info (`pr#17667 `_, Luo Kexue) +* core: pybind/ceph_argparse: Fix UnboundLocalError if command doesn't validate (`pr#21342 `_, Tim Serong) +* core: pybind/ceph_argparse.py:'timeout' must in kwargs when call run_in_thread (`pr#21659 `_, yangdeliu) +* core,pybind: pybind/ceph_argparse: accept flexible req (`pr#20791 `_, Gu Zhongyan) +* core,pybind: pybind/rados: add alignment getter to IoCtx (`pr#21222 `_, Bruce Flynn) +* core,pybind: pybind/rados: add rados_service\_\*() (`pr#18812 `_, Kefu Chai) +* core,pybind: pybind/rados: add support open_ioctx2 API (`pr#17710 `_, songweibin) +* core,pybind: rados: support python API of "set_osdmap_full_try" (`pr#17418 `_, songweibin) +* core: qa: fix the potential delay of pg state change (`pr#17253 `_, huangjun) +* core: qa/standalone/osd/repro_long_log: no-mon-config for cot (`pr#20919 `_, Sage Weil) +* core: qa/standalone/scrub/osd-scrub-repair: no -y to diff (`issue#21618 `_, `pr#18079 `_, Sage Weil) +* core: qa/suite/rados: fix balancer vs firefly tunables failures (`pr#18826 `_, Sage Weil) +* core: qa/suites/rados: fewer msgr failures (`pr#20918 `_, Sage Weil) +* core: qa/suites/rados/perf: whitelist health warnings (`pr#18878 `_, Sage Weil) +* core: qa/suites/rados/rest/mgr: provision openstack volumes (`pr#20573 `_, Sage Weil) +* core: qa/suites/rados/singleton/all/mon-seesaw: whitelist MON_DOWN (`pr#18246 `_, Sage Weil) +* core: qa/suites/rados/singleton/all/recover-preemption: handle slow starting osd (`pr#18078 `_, Sage Weil) +* core: qa/suites/rados/singleton/all/recovery_preemption: whitelist SLOW_OPS (`pr#21250 `_, Sage Weil) +* core: qa/suites/rados/singleton/diverget_priors\*: broaden whitelist (`pr#17379 `_, Sage Weil) +* core: qa/suites/rados/thrash: extend mgr beacon grace when many msgr failures injected (`issue#21147 `_, `pr#19242 `_, Sage Weil) +* core: qa/suites/rados/verify/tasks/rados_api_tests: whitelist OBJECT_MISPLACED (`pr#21646 `_, Sage Weil) +* core: qa/workunits/rest/test.py: stop trying to test obsolte cluster_up/down (`pr#18552 `_, Sage Weil) +* core: rados/objclass.h: fix build define CEPH_CLS_API in all cases (`pr#21606 `_, Danny Al-Gaaf) +* core: rados: use WaitInterval()'s return value instead of manual timing (`pr#20028 `_, Mohamad Gebai) +* core,rbd: common,rbd-nbd: fix up prefork behavior vs AsyncMessenger singletons (`issue#23143 `_, `pr#20681 `_, Sage Weil) +* core,rbd: librbd,os: address coverity false positives (`pr#17793 `_, Amit Kumar) +* core,rbd: mgr,osd,kv: Fix various warnings for Clang and GCC7 (`pr#17976 `_, Adam C. Emerson) +* core,rbd: vstart.sh: fix mstart variables (`pr#20826 `_, Sage Weil) +* core: rdma: Assign instead of compare (`pr#16664 `_, amitkuma) +* core: remove startsync (`issue#20604 `_, `pr#16396 `_, Amit Kumar) +* core: rocksdb: sync with upstream (`issue#20529 `_, `pr#17388 `_, Kefu Chai) +* core: rocksdb: sync with upstream (`pr#21320 `_, Kefu Chai) +* core: scrub errors not cleared on replicas can cause inconsistent pg state when replica takes over primary (`issue#23267 `_, `pr#21101 `_, David Zafman) +* core: Snapset inconsistency is detected with its own error (`issue#22996 `_, `pr#20450 `_, David Zafman) +* core: src/messages/MOSDMap: reencode OSDMap for older clients (`issue#21660 `_, `pr#18134 `_, Sage Weil) +* core: src/osd/PG.cc: 6455: FAILED assert(0 == "we got a bad state machine event") (`pr#20933 `_, David Zafman) +* core: src/test/osd: add two pool test for manifest objects (`pr#20096 `_, Myoungwon Oh) +* core: test/cli/osdmaptool/test-map-pgs.t: remove nondetermimistic test (`pr#20872 `_, Sage Weil) +* core: test/objectstore_bench: Don't forget judging whether call usage (`pr#21369 `_, Jianpeng Ma) +* core,tests: ceph_test_filestore_idempotent_sequence: many fixes (`issue#22920 `_, `pr#20279 `_, Sage Weil) +* core,tests: ceph_test_objectstore: drop expect regex (`pr#16968 `_, Sage Weil) +* core,tests: Erasure code read test and code cleanup (`issue#14513 `_, `pr#17703 `_, David Zafman) +* core,tests: Erasure code recovery should send additional reads if necessary (`issue#21382 `_, `pr#17920 `_, David Zafman) +* core,tests: osd,dmclock: fix dmclock test simulator change (`pr#20270 `_, J. Eric Ivancich) +* core,tests: os: kstore fix unittest for FiemapHole (`pr#17313 `_, Ning Yao) +* core,tests: os/memstore: memstore_page_set=false (`issue#20738 `_, `pr#16995 `_, Sage Weil) +* core,tests: qa/ceph_manager: check pg state again before timedout (`issue#21294 `_, `pr#17810 `_, huangjun) +* core,tests: qa/clusters/fixed-[23]: 4 osds per node, not 3 (`pr#16799 `_, Sage Weil) +* core,tests: qa: modify rgw default pool names (`pr#21630 `_, Neha Ojha) +* core,tests: qa/objectstore/bluestore\*: less debug output (`issue#20910 `_, `pr#17505 `_, Sage Weil) +* core,tests: qa/overrides/2-size-2-min-size: whitelist REQUEST_STUCK (`pr#17243 `_, Sage Weil) +* core,tests: qa/standalone/ceph-helpers: pass --verbose to ceph-disk (`pr#19456 `_, Sage Weil) +* core,tests: qa/standalone/scrub/osd-scrub-repair: fix grep pattern (`issue#21127 `_, `pr#17258 `_, Sage Weil) +* core,tests: qa/standalone/scrub/osd-scrub-snaps: adjust test for lack of snapdir objects (`pr#17927 `_, Sage Weil) +* core,tests: qa/suites/rados/monthrash: tolerate PG_AVAILABILITY during mon thrashing (`pr#18122 `_, Sage Weil) +* core,tests: qa/suites/rados/monthrash: whitelist SLOW_OPS (`pr#21331 `_, Sage Weil) +* core,tests: qa/suites/rados/objectstore: logs (`issue#20738 `_, `pr#16923 `_, Sage Weil) +* core,tests: qa/suites/rados/perf: create pool with lower pg_num (`pr#17819 `_, Neha Ojha) +* core,tests: qa/suites/rados/rest/mgr-restful: whitelist more health (`pr#18457 `_, Sage Weil) +* core,tests: qa/suites/rados/rest: move rest_test from qa/suites/rest/ (`pr#19175 `_, Sage Weil) +* core,tests: qa/suites/rados/thrash: fix thrashing with ec vs map discon (`pr#16842 `_, Sage Weil) +* core,tests: qa/suites/rados/thrash-old-clients: add hammer clients (`pr#21703 `_, Sage Weil) +* core,tests: qa/suites/rados/thrash-old-clients: add rbd tests (`pr#21704 `_, Sage Weil) +* core,tests: qa/suites/rados/thrash-old-clients: do some thrashing with jewel and luminous clients (`pr#21679 `_, Sage Weil) +* core,tests: qa/suites/rados/thrash-old-clients: only centos and 16.04 (`pr#22125 `_, Sage Weil) +* core,tests: qa/suites/upgrade/jewel-x/stress-split: tolerate sloppy past_intervals (`pr#17226 `_, Sage Weil) +* core,tests: qa/suites/upgrade/luminous-x/stress-split: avoid enospc (`pr#21753 `_, Sage Weil) +* core,tests: qa/tasks/ceph_manager: revive osds before doing final rerr reset (`issue#21206 `_, `pr#17406 `_, Sage Weil) +* core,tests: qa/tasks/ceph_manager: tolerate tell osd.\* error (`pr#19365 `_, Sage Weil) +* core,tests: qa/tasks/ceph.py: tolerate flush pg stats exception (`pr#16905 `_, Sage Weil) +* core,tests: qa/tasks/filestore_idempotent: shorter test (`pr#20509 `_, Sage Weil) +* core,tests: qa/tasks/thrashosds: set min_in default to 4 (`issue#21997 `_, `pr#18670 `_, Sage Weil) +* core,tests: qa/tests: run ceph-ansible task on installer.0 role/node (`pr#19605 `_, Yuri Weinstein) +* core,tests: qa: tolerate failure to force backfill (`issue#22614 `_, `pr#19765 `_, Sage Weil) +* core,tests: qa/workunits/rados/test_rados_tool: fix stray ``|``, race (`issue#22676 `_, `pr#19946 `_, Sage Weil) +* core,tests: qa/workunits/rados/test.sh: ensure tee output is valid filename (`pr#21507 `_, Sage Weil) +* core,tests: rados: Initialization of alignment (`pr#17723 `_, Amit Kumar) +* core,tests: rados: Initializing members of librados/TestCase.h (`pr#16896 `_, amitkuma) +* core,tests: test: Checking fd for negative before closing (`pr#17190 `_, amitkuma) +* core,tests: test: Check to avoid divide by zero (`pr#17220 `_, amitkuma) +* core: tool: change default objectstore from filestore to bluestore (`pr#18066 `_, Song Shun) +* core: tool: misc cleanup of ceph-kvstore-tool (`issue#22092 `_, `pr#18815 `_, Chang Liu) +* core,tools: Add export and remove ceph-objectstore-tool command option (`issue#21272 `_, `pr#17538 `_, David Zafman) +* core,tools: ceph-objectstore-tool: fix import of post-split pg from pre-split ancestor (`issue#21753 `_, `pr#18229 `_, Sage Weil) +* core: tools/ceph-objectstore-tool: split filestore directories offline to target hash level (`issue#21366 `_, `pr#17666 `_, Zhi Zhang) +* core,tools: common, tool: update kvstore-tool to repair key/value database (`issue#17730 `_, `issue#21744 `_, `pr#16745 `_, liuchang0812, Chang Liu) +* core,tools: osd,os/bluestore: kill clang analyzer warnings (`pr#18015 `_, Kefu Chai) +* core: tools/rados: add touch command to change object modification time (`pr#18913 `_, Yao Zongyou) +* core,tools: scripts: add ptl-tool for scripting merges (`pr#17926 `_, Patrick Donnelly) +* core: vstart.sh: drop .ceph_port and use randomly selected available port (`pr#19268 `_, Shinobu Kinjo) +* core: vstart.sh: drop --{mon,osd,mds,rgw,mgr}_num options (`pr#18648 `_, Kefu Chai) +* core: vstart.sh: Remove duplicate global section (`pr#17543 `_, iliul) +* crush: cleanup update_device_class() log messages (`pr#21174 `_, Gu Zhongyan) +* crush: fix CrushCompiler won't compile maps with empty shadow tree (`pr#17058 `_, xie xingguo) +* crush: fix device_class_clone for unpopulated/empty weight-sets (`issue#23386 `_, `pr#22169 `_, Sage Weil) +* crush: fix fast rule lookup when uniform (`pr#17510 `_, Sage Weil) +* crush: force rebuilding shadow hierarchy after swapping buckets (`pr#17083 `_, xie xingguo) +* crush: improve straw2 algorithm's readability (`pr#20196 `_, Yao Zongyou) +* crush: "osd crush class rename" support (`pr#16961 `_, xie xingguo) +* crush, osd: handle multiple parents properly when applying pg upmaps (`issue#23921 `_, `pr#21835 `_, xiexingguo) +* crush: safe check for 'ceph osd crush swap-bucket' (`pr#17335 `_, Carudy) +* crush: various CrushWrapper cleanups (`pr#17360 `_, Kefu Chai) +* crush: various weight-set fixes (`pr#17014 `_, xie xingguo) +* denc: should check element's type not 'size_t' (`pr#19986 `_, Kefu Chai) +* denc: use constexpr-if to replace some SFINAE impls (`pr#19662 `_, Kefu Chai) +* doc: 12.1.3 release notes (`pr#16975 `_, Abhishek Lekshmanan) +* doc: 12.2.0 major release announcements (`pr#16915 `_, Abhishek Lekshmanan) +* doc: 12.2.1 release notes (`pr#18014 `_, Abhishek Lekshmanan) +* doc: 12.2.4 release notes (`pr#20619 `_, Abhishek Lekshmanan) +* doc: add 12.2.2 release notes (`pr#19264 `_, Abhishek Lekshmanan) +* doc: add allow_multimds and fs_name parameter (`pr#15847 `_, Jan Fajerski) +* doc: add ceph-kvstore-tool's man (`pr#17092 `_, liuchang0812) +* doc: add changelog for 12.2.1 (`pr#18020 `_, Abhishek Lekshmanan) +* doc: add changelog for v11.2.1 (`pr#16956 `_, Abhishek Lekshmanan) +* doc: add changelog for v12.2.2 (`pr#19284 `_, Abhishek Lekshmanan) +* doc: Added CHAP configuration instructions for iSCSI (`pr#18423 `_, Ashish Singh) +* doc: add example of setting pool in cephfs layout (`pr#17372 `_, John Spray) +* doc: Adding changelog for 10.2.10 (`pr#18151 `_, Abhishek Lekshmanan) +* doc: Add introduction about different way to run rbd-mirror (`pr#19692 `_, Yu Shengzuo) +* doc: add --max-buckets to radosgw-admin(8) (`pr#17439 `_, Clément Pellegrini) +* doc: add missing blank line (`pr#18724 `_, iliul) +* doc: Add missing pg states from doc (`pr#20504 `_, David Zafman) +* doc: add mount.fuse.ceph to index (`issue#22595 `_, `pr#19792 `_, Jos Collin) +* doc: Add newbie-friendly updates to Helm start doc (`pr#18886 `_, Blaine Gardner) +* doc: add osd_max_object_size in osd configuration (`pr#18115 `_, Mohamad Gebai) +* doc: build-doc: Upgrade ceph python libraries (`pr#20726 `_, Boris Ranto) +* doc: ceph-disk: create deprecation warnings (`issue#22154 `_, `pr#18988 `_, Alfredo Deza) +* doc: ceph-volume: automatic VDO detection (`issue#23581 `_, `pr#21451 `_, Alfredo Deza) +* doc: ceph-volume docs (`pr#17068 `_, Alfredo Deza) +* doc: ceph-volume document multipath support (`pr#20878 `_, Alfredo Deza) +* doc: ceph-volume doc updates (`pr#20758 `_, Alfredo Deza) +* doc: ceph-volume include physical devices associated with an LV when listing (`pr#21645 `_, Alfredo Deza) +* doc: ceph-volume lvm bluestore support (`pr#18448 `_, Alfredo Deza) +* doc/ceph-volume OSD use the fsid file, not the osd_fsid (`issue#22427 `_, `pr#20059 `_, Alfredo Deza) +* doc: change boolean option default value from zero to false (`pr#17733 `_, Yao Zongyou) +* doc: change cn mirror to ustc domain (`pr#18081 `_, Shengjing Zhu) +* doc: changelog for v12.2.3 (`pr#20503 `_, Abhishek Lekshmanan) +* doc: cleanup erasure coded pool doc on cephfs use (`pr#20572 `_, Patrick Donnelly) +* doc: CodingStyle: add python and javascript/typescript (`pr#20186 `_, Joao Eduardo Luis) +* doc: common/options: document filestore and filejournal options (`pr#17739 `_, Sage Weil) +* doc: common/options: document objecter, filer, and journal options (`pr#17740 `_, Sage Weil) +* doc: complete and update the subsystem logging level info table (`pr#18500 `_, Luo Kexue) +* doc: correcting typos in bluestore-config-ref and bluestore-migration (`pr#19154 `_, Katie Holly) +* doc: correct wrong bluestore config types (`pr#18205 `_, Yao Zongyou) +* doc: delete duplicate words (`pr#17104 `_, iliul) +* doc: dev description of async recovery (`pr#21051 `_, Neha Ojha, Josh Durgin) +* doc: doc/bluestore: add SPDK usage for bluestore (`pr#17654 `_, Haomai Wang) +* doc: doc/cephfs/experimental-features: kernel client snapshots limit (`pr#18579 `_, Ilya Dryomov) +* doc: doc/cephfs/posix: remove stale information for seekdir (`pr#17658 `_, "Yan, Zheng") +* doc: doc/conf.py: do not set html_use_smartypants explicitly (`pr#17127 `_, Kefu Chai) +* doc: doc/dev: add a brief guide to serialization (`pr#20131 `_, John Spray) +* doc: doc/dev/cxx: add C++11 ABI related doc (`pr#20030 `_, Kefu Chai) +* doc: doc/dev/iana: document our official IANA numbers (`pr#16910 `_, Sage Weil) +* doc: doc/dev/index: update rados lead (`pr#16911 `_, Sage Weil) +* doc: doc/dev/macos: add doc for building on MacOS (`pr#20031 `_, Kefu Chai) +* doc: doc/dev/msgr2.rst: a few notes on protocol goals (`pr#20083 `_, Sage Weil) +* doc: doc/dev/perf: add doc on disabling -fomit-frame-pointer (`pr#17358 `_, Kefu Chai) +* doc: doc for mount.fuse.ceph (`issue#21539 `_, `pr#19172 `_, Jos Collin) +* doc: doc/man remove deprecation of ceph-disk man page title (`pr#19325 `_, Alfredo Deza) +* doc: doc/mgr: Add limitations section to plugin guide (`pr#21347 `_, Tim Serong) +* doc: doc/mgr: add "local pool" plugin to toc (`pr#17961 `_, Kefu Chai) +* doc: doc/mgr/balancer: document (`issue#22789 `_, `pr#21421 `_, Sage Weil) +* doc: doc/mgr: document facilities methods using `automethod` directive (`pr#18680 `_, Kefu Chai) +* doc: doc/mgr/plugins: add note about distinction between config and kv store (`pr#21671 `_, Jan Fajerski) +* doc: doc/mgr: remove non user-facing code from doc (`pr#20372 `_, Kefu Chai) +* doc: doc,os,osdc: drop and modify comments (`pr#17732 `_, songweibin) +* doc: doc/rados: Add explanation of straw2 (`pr#19247 `_, Shinobu Kinjo) +* doc: doc/rados/operations/bluestore-migration: document bluestore migration process (`pr#16918 `_, Sage Weil) +* doc: doc/rados/operations/bluestore-migration: update docs a bit (`pr#17011 `_, Sage Weil) +* doc: doc raise exceptions with a base class (`pr#18152 `_, Alfredo Deza) +* doc: doc/rbd: add info for rbd group (`pr#17633 `_, yonghengdexin735) +* doc: doc/rbd: add missing several commands in rbd CLI man page (`issue#14539 `_, `issue#16999 `_, `pr#19659 `_, songweibin) +* doc: doc/rbd: correct the path of librbd python APIs (`pr#19690 `_, songweibin) +* doc: doc/rbd: fix typo s/morror/mirror (`pr#19997 `_, songweibin) +* doc: doc/rbd: iSCSI Gateway Documentation (`issue#20437 `_, `pr#17376 `_, Aron Gunn, Jason Dillaman) +* doc: doc/rbd: specify additional ESX prerequisites (`pr#18517 `_, Jason Dillaman) +* doc: doc/rbd: tweaks for the LIO iSCSI gateway (`issue#21763 `_, `pr#18250 `_, Jason Dillaman) +* doc: doc/rbd: tweaks to the Windows iSCSI initiator directions (`pr#18704 `_, Jason Dillaman) +* doc: doc/release-notes: add jewel->kraken notes (`pr#18482 `_, Sage Weil) +* doc: doc/release-notes: clarify purpose of require-osd-release (`pr#17270 `_, Sage Weil) +* doc: doc/release-notes: clarify that you need to keep your existing OSD caps (`pr#18825 `_, Jason Dillaman) +* doc: doc/release-notes: ensure RBD users can blacklist prior to upgrade (`issue#21353 `_, `pr#17755 `_, Jason Dillaman) +* doc: doc/release-notes: fix typo 'psd' to 'osd' (`pr#18695 `_, wangsongbo) +* doc: doc/releases: the Kraken sleepeth, faintest sunlights flee (`pr#17424 `_, Abhishek Lekshmanan) +* doc: doc/releases: update release cycle docs (`pr#18117 `_, Sage Weil) +* doc: doc/rgw: add page for http frontend configuration (`issue#13523 `_, `pr#20058 `_, Casey Bodley) +* doc: doc/scripts: py3 compatible (`pr#17640 `_, Kefu Chai) +* doc: docs: Do not use "min size = 1" as an example (`pr#17912 `_, Alfredo Deza) +* doc: docs fix ceph-volume missing sub-commands (`issue#23148 `_, `pr#20673 `_, Alfredo Deza) +* doc: doc/start/os-recommendations.rst: bump krbd kernels (`pr#21478 `_, Ilya Dryomov) +* doc: docs update ceph-deploy reference to reflect ceph-volume API (`pr#20510 `_, Alfredo Deza) +* doc: document ceph-disk prepare class hierarchy (`pr#17019 `_, Loic Dachary) +* doc: document include/ipaddr.h (`issue#12056 `_, `pr#17613 `_, Nathan Cutler) +* doc: drop duplicate line in ceph-bluestore-tool man page (`pr#19169 `_, Xiaojun Liao) +* doc: eliminate useless cat statement (`pr#17154 `_, Ken Dreyer) +* doc: examples: add new librbd example (`pr#18314 `_, Mahati Chamarthy) +* doc: expand developer documentation of unit tests (`pr#19594 `_, Nathan Cutler) +* doc: Fix a grammar error in rbd-snapshot.rst (`pr#21470 `_, Zeqing Tyler Qi) +* doc: fix CFLAGS in doc/dev/cpu-profiler.rst (`pr#19752 `_, Chang Liu) +* doc: fix desc of option "mon cluster log file" (`pr#18770 `_, Kefu Chai) +* doc: fix doc/radosgw/admin.rst typos (`pr#17397 `_, Enming Zhang) +* doc: Fix dynamic resharding doc formatting (`pr#20970 `_, Ashish Singh) +* doc: fix error in osd scrub load threshold (`pr#21678 `_, Dirk Sarpe) +* doc: Fixes a spelling error and a broken hyperlink (`pr#20442 `_, Jordan Hus) +* doc: Fixes rbd snapshot flatten example (`issue#17723 `_, `pr#17436 `_, Ashish Singh) +* doc: fixes syntax in osd-config-ref (`issue#21733 `_, `pr#18188 `_, Joshua Schmid) +* doc: Fixes the name of the CephFS snapshot directory (`pr#18710 `_, Jordan Rodgers) +* doc: fix hyper link to radosgw/config-ref (`pr#17986 `_, Kefu Chai) +* doc: fix librbdpy example (`pr#20019 `_, Yuan Zhou) +* doc: fix order of options in osd new (`issue#21023 `_, `pr#17326 `_, Neha Ojha) +* doc: fix sphinx build warnings and errors (`pr#17025 `_, Alfredo Deza) +* doc: fix the desc of "osd max pg per osd hard ratio" (`pr#18373 `_, Kefu Chai) +* doc: Fix typo and URL (`pr#18040 `_, Jos Collin) +* doc: fix typo e.g,. => e.g (`pr#18607 `_, Yao Zongyou) +* doc: fix typo in bluestore-migration.rst (`pr#18389 `_, Yao Zongyou) +* doc: Fix typo in mount.fuse.ceph (`pr#19215 `_, Jos Collin) +* doc: fix typo in php.rst (`pr#17762 `_, Yao Zongyou) +* doc: fix typo in radosgw/dynamicresharding.rst (`pr#18651 `_, Alexander Ermolaev) +* doc: fix typo on specify db block device (`pr#17590 `_, Xiaoxi Chen) +* doc: Fix typo s/applicatoin/application/ (`pr#20720 `_, Francois Deppierraz) +* doc: Fix typos in placement-groups.rst (`pr#17973 `_, Matt Boyle) +* doc: Fix typos in release notes (`pr#18950 `_, Stefan Knorr) +* doc: .githubmap: Add cbodley (`pr#18946 `_, Jos Collin) +* doc: githubmap: add map for GitHub contributor lookup (`pr#17457 `_, Patrick Donnelly) +* doc: .githubmap, .mailmap, .organizationmap, .peoplemap: update Igor (`pr#19314 `_, Igor Fedotov) +* doc: globally change CRUSH ruleset to CRUSH rule (`issue#20559 `_, `pr#19435 `_, Nathan Cutler) +* doc: Improved dashboard documentation (`pr#21443 `_, Lenz Grimmer) +* doc: Improved hitset parameters description (`pr#19691 `_, Alexey Stupnikov) +* doc: improve links in doc/releases.rst (`pr#18155 `_, Nathan Cutler) +* doc: Improve mgr/restful module documentation (`pr#20717 `_, Boris Ranto) +* doc: Improve the ceph fs set max_mds command (`issue#21007 `_, `pr#17044 `_, Bara Ancincova) +* doc: include ceph-disk and ceph-disk-volume man pages in index (`pr#17168 `_, Alfredo Deza) +* doc: init flags to 0 in rados example (`pr#20671 `_, Patrick Donnelly) +* doc: Kube + Helm installation (`pr#18520 `_, Alexandre Marangone) +* doc: legal: remove doc license ambiguity (`issue#23336 `_, `pr#20876 `_, Nathan Cutler) +* doc: lock_timeout is a per mapping option (`pr#21563 `_, Ilya Dryomov) +* doc: log-and-debug: fix default value of "log max recent" (`pr#20316 `_, Nathan Cutler) +* doc: mailmap: Add Sibei, XueYu Affiliation (`pr#18395 `_, Sibei Gao) +* doc: mailmap: Fixed maintenance guide URL (`pr#18076 `_, Jos Collin) +* doc: mailmap, organizationmap: add Dongsheng, Liuzhong, Pengcheng, Yang Affiliation (`pr#17548 `_, Dongsheng Yang) +* doc: .mailmap, .organizationmap: add Fufei, Mingqiao and Ying Affiliation (`pr#17540 `_, Ying He) +* doc: .mailmap, .organizationmap: Add Liu Lei's mailmap and affiliation (`pr#17105 `_, iliul) +* doc: .mailmap, .organizationmap: update JingChen, ZongyouYao, ShanchunLv's… (`pr#18960 `_, Chang Liu) +* doc: mailmap: update affiliation for Mykola Golub (`pr#18069 `_, Mykola Golub) +* doc: mailmap: update affiliation for Mykola Golub (`pr#19667 `_, Mykola Golub) +* doc: mailmap: Update umcloud affiliation (`pr#17441 `_, Yixing Yan) +* doc: make the commands in README.md properly aligned (`pr#18639 `_, Yao Zongyou) +* doc/man: add "ls" to "ceph osd" command's subcommands list (`pr#19382 `_, Rishabh Dave) +* doc: "mds blacklist interval" vs manually blacklisting (`pr#18195 `_, Ken Dreyer) +* doc: mgr/dashboard.rst: mention ceph.conf and ceph mgr services (`pr#20961 `_, Nathan Cutler) +* doc/mgr/plugins: mgr accessor during init causes exception (`pr#16973 `_, Jan Fajerski) +* doc: mimic: doc: Updated dashboard documentation (features, SSL config) (`pr#22079 `_, Lenz Grimmer) +* doc: misc fix spell errors in osd/OSD and doc (`pr#17107 `_, songweibin) +* doc: misc: fix various spelling errors (`pr#20831 `_, Shengjing Zhu) +* doc: Misc iSCSI doc updates (`pr#19931 `_, Mike Christie) +* doc: move glance_api_version option to the right place (`pr#17337 `_, Luo Kexue) +* doc: options.cc: document rgw config options (`pr#18007 `_, Yehuda Sadeh) +* doc: organizationmap: Add Adam Wolfe Gordon's affiliation (`pr#18295 `_, Adam Wolfe Gordon) +* doc: organizationmap: Add Ashish Singh affiliation (`pr#17109 `_, Ashish Singh) +* doc: .organizationmap: add Xin Yuan and Yichao Li's affiliation (`pr#21170 `_, Li Wang) +* doc: PendingReleaseNotes: Added note about Dashboard v2, fixed typo (`pr#21597 `_, Lenz Grimmer) +* doc: PendingReleaseNotes:Announce FreeBSD availability (`pr#16782 `_, Willem Jan Withagen) +* doc: PendingReleaseNotes: mention some monitor changes (`pr#21474 `_, Joao Eduardo Luis) +* doc: PendingReleaseNotes: note about upmap mapping change in luminous release notes (`pr#17813 `_, Sage Weil) +* doc: qa,doc: drop support of ubuntu trusty (`pr#19307 `_, Kefu Chai) +* doc/rados/operations/bluestore-migration: typos and whitespace (`pr#16991 `_, Sage Weil) +* doc/rados/operations/bluestore-migration: typos (`pr#17581 `_, Sage Weil) +* doc: README: Improve vstart.sh usage (`pr#17644 `_, Fabian Vogt) +* doc: README.md: bump up cmake to 2.8.12 (`pr#18348 `_, Yan Jun) +* doc: redundant "cephfs" when set the "allow_multimds" (`pr#20045 `_, Shangzhong Zhu) +* doc: release notes: fix grammar/style nits (`pr#18876 `_, Nathan Cutler) +* doc: release notes for 12.2.3 (`pr#20500 `_, Abhishek Lekshmanan) +* doc: release notes for v12.1.4 Luminous (`pr#17037 `_, Abhishek Lekshmanan) +* doc/release-notes: remove mention of crush weight optimization (`pr#16974 `_, Sage Weil) +* doc: release-notes.rst: add Kraken v11.2.1 and update releases.rst (`pr#16879 `_, Nathan Cutler) +* doc: release notes update for 10.2.10 (`pr#18148 `_, Abhishek Lekshmanan) +* doc/releases: drop LTS/stable line from second chart (`pr#18153 `_, Sage Weil) +* doc: Remove additional arguments when replacing OSD (`pr#18345 `_, Wido den Hollander) +* doc: remove duplicated --max-buckets option desc (`pr#19737 `_, Kefu Chai) +* doc: remove references to unversioned repository addresses (`pr#21357 `_, Greg Farnum) +* doc: remove unused config: "osd op threads" (`pr#21319 `_, Jianpeng Ma) +* doc: rename changelog with a .txt extension (`pr#18156 `_, Abhishek Lekshmanan) +* doc: reorganize releases (`pr#20784 `_, Abhishek Lekshmanan) +* doc: replace injectargs usage with "config set" (`pr#18789 `_, John Spray) +* doc: replace region with zonegroup in configure bucket sharding section (`issue#21610 `_, `pr#18063 `_, Orit Wasserman) +* doc: restructure bluestore migration insructions (`pr#17603 `_, Sage Weil) +* doc: Revise the Example of Bucket Policy (`pr#17362 `_, zhangwen) +* doc: rgw: add a note for resharding in 12.2.1 docs (`pr#17675 `_, Abhishek Lekshmanan) +* doc: rgw add some basic documentation for sync plugins & ES (`pr#15849 `_, Abhishek Lekshmanan) +* doc: rgw adminops binding libraries (`pr#19164 `_, hrchu) +* doc: rgw mention about tagging & bucket policies in s3api (`pr#16907 `_, Abhishek Lekshmanan) +* doc: rgw: mention the civetweb support for binding to multiple ports (`issue#20942 `_, `pr#17141 `_, Abhishek Lekshmanan) +* doc: rm stray ")" character from mds config ref (`pr#18228 `_, Ken Dreyer) +* docs: ceph-volume CLI updates (`pr#17425 `_, Alfredo Deza) +* doc: s/deamon/daemon/ (`pr#20931 `_, ashitakasam) +* doc: some improvements to ceph-conf.rst (`pr#21268 `_, Nathan Cutler) +* doc: Specify mount details in ceph-fuse (`pr#20071 `_, Jos Collin) +* doc: SubmittingPatches: clarify PR title section (`pr#17143 `_, Nathan Cutler) +* doc/templates update toctree call to include hidden entries (`pr#17076 `_, Alfredo Deza) +* doc: the client inputs the pool name instead of pool ID (`pr#17672 `_, Frank Yu) +* doc: typo fix (`pr#21077 `_, Ashita Dashottar) +* doc: update Blacklisting and OSD epoch barrier (`issue#22542 `_, `pr#19701 `_, Jos Collin) +* doc: update ceph-disk with a state-transition diagram (`pr#17639 `_, Kefu Chai) +* doc: update ceph iscsi kernel and package info (`pr#20020 `_, Mike Christie) +* doc: Update commands and options in radosgw-admin (`pr#18267 `_, Jos Collin) +* doc: update Component Technical Leads and maintainers to canonical location (`pr#18376 `_, Patrick McGarry) +* doc: Update config file search paths to reflect reality (`pr#19882 `_, Adam Wolfe Gordon) +* doc: updated add primary storage documentation for latest CloudStack release (4.11) (`pr#21050 `_, James McClune, John Wilkins) +* doc: Update dashboard feature list (added RGW management) (`pr#21781 `_, Lenz Grimmer) +* doc: updated dashboard feature list (added new RGW details, Pools) (`pr#21562 `_, Lenz Grimmer) +* doc: Updated dashboard feature list (`pr#21693 `_, Lenz Grimmer) +* doc: Updated dashboard v2 feature list (`pr#20755 `_, Lenz Grimmer) +* doc: Updated documentation for Zabbix Mgr module (`pr#18356 `_, Wido den Hollander) +* doc: update default value of option mon_sync_timeout (`pr#17802 `_, Yao Guotao) +* doc: update default value of parameter mon_subscribe_interval (`pr#17669 `_, yaoguotao) +* doc: Update docs to remove gitbuilder and add shaman references (`pr#17022 `_, Alfredo Deza) +* doc: updated the dashboard feature list (`pr#21531 `_, Lenz Grimmer) +* doc: Updated the get-packages.rst to luminous (`pr#20815 `_, Kai Wagner) +* doc: update firewall doc to mention ceph-mgr (`pr#17974 `_, John Spray) +* doc: update iSCSI upstream kernel to 4.16 (`pr#20695 `_, Mike Christie) +* doc: update link to placing-different-pools (`pr#17833 `_, Mohamad Gebai) +* doc: update Li Wang Affiliation (`pr#18060 `_, Li Wang) +* doc: update man page to explain ceph-volume support bluestore (`issue#22663 `_, `pr#19960 `_, lijing) +* doc: Update manual deployment (`issue#20309 `_, `pr#15811 `_, Jens Rosenboom) +* doc: update mgr/dashboard doc about standbys (`pr#19879 `_, John Spray) +* doc: Update mgr doc on how to enable Zabbix module (`pr#16861 `_, Wido den Hollander) +* doc: update mgr related auth settings (`pr#20126 `_, Kefu Chai) +* doc: Update monitoring.rst (`pr#20630 `_, Jos Collin) +* doc: update rbd-mirroring documentation (`issue#20701 `_, `pr#16908 `_, Jason Dillaman) +* doc: update references to use ceph-volume (`pr#19241 `_, Alfredo Deza) +* doc: update releases to the current state (`pr#17364 `_, Abhishek Lekshmanan) +* doc: Updates to bluestore migration doc (`pr#17602 `_, David Galloway) +* doc: v12.2.5 luminous release notes (`pr#21621 `_, Abhishek Lekshmanan) +* doc: various cleanups (`pr#18480 `_, Kefu Chai) +* examples: fix link order in librados example Makefile (`pr#17842 `_, Mahati Chamarthy) +* Fix ceph-mgr restarts (`pr#22051 `_, Boris Ranto) +* follow-up fixups for atomic_t spinlocks (`pr#17611 `_, Jesse Williamson) +* githubmap: Add ktdreyer (`pr#19209 `_, Jos Collin) +* include/buffer.h: fix typo in comment (`pr#17489 `_, mychoxin) +* include/ceph_features: fix OS_PERF_STAT_NS's incarnation (`pr#21467 `_, Kefu Chai) +* install-deps.sh: fix an error condition expression (`pr#20819 `_, Yao Guotao) +* java/native: fix milliseconds to mtime/atime conversion (`pr#17460 `_, dengquan) +* java/native: s/jni: lstat/jni: stat in native_ceph_stat (`pr#20142 `_, Shangzhong Zhu) +* KStore: statfs needs extra includes on FreeBSD (`pr#21429 `_, Willem Jan Withagen) +* kv/leveldb: fix deadlock when close db (`pr#16643 `_, Zengran) +* kv: unify {create_and\_,}open() methods (`pr#18177 `_, Kefu Chai) +* librados: add async interfaces for use with Networking TS (`pr#19054 `_, Casey Bodley) +* librados: block MgrClient::start_command until mgrmap (`pr#21832 `_, John Spray, Kefu Chai) +* librados: extend C API for so it accepts keys with NUL chars (`pr#20314 `_, Piotr Dałek) +* librados: Fix a potential risk of buffer::list::claim_prepend(list& b… (`issue#21338 `_, `pr#17661 `_, Guan yunfei) +* librados: fix potential race condition if notify immediately fails (`issue#23966 `_, `pr#21859 `_, Jason Dillaman) +* librados: getter for min compatible client versions (`pr#20080 `_, Jason Dillaman) +* librados: invalid free() in rados_getxattrs_next() (`issue#22042 `_, `pr#20260 `_, Gu Zhongyan) +* librados: make OPERATION_FULL_FORCE the default for rados_remove() (`issue#22413 `_, `pr#20534 `_, Kefu Chai) +* librbd: abstract hard-coded journal and cache hooks on IO path (`pr#20682 `_, Jason Dillaman) +* librbd: Add a function to list image watchers (`pr#19188 `_, Adam Wolfe Gordon) +* librbd: add API function to get image name (`pr#20935 `_, Mykola Golub) +* librbd: added preprocessor macro for detecting compare-and-write support (`issue#22036 `_, `pr#18708 `_, Jason Dillaman) +* librbd: add eventtrace support (`pr#19251 `_, Mahati Chamarthy) +* librbd: add preliminary support for new operation feature bit (`pr#19903 `_, Jason Dillaman) +* librbd: address coverity false positives (`pr#17696 `_, Amit Kumar) +* librbd: address coverity false positives (`pr#17721 `_, Amit Kumar) +* librbd: auto-remove trash snapshots when image is deleted (`issue#22873 `_, `pr#20376 `_, Jason Dillaman) +* librbd: by default use new format for deep copy destination (`pr#20222 `_, Mykola Golub) +* librbd: cache last index position to accelerate snap create/rm (`issue#22716 `_, `pr#19974 `_, Song Shun) +* librbd: cannot clone all image-metas if we have more than 64 key/value pairs (`pr#18327 `_, PCzhangPC) +* librbd: cannot copy all image-metas if we have more than 64 key/value pairs (`pr#18328 `_, PCzhangPC) +* librbd: clean up ManagedLock log prefix (`pr#20159 `_, shun-s) +* librbd: compare and write against a clone can result in failure (`issue#20789 `_, `pr#18887 `_, Jason Dillaman) +* librbd: deep_copy: don't create snapshots above snap_id_end (`pr#19383 `_, Mykola Golub) +* librbd: default localize parent reads to false (`issue#20941 `_, `pr#16882 `_, Jason Dillaman) +* librbd: default to sparse-reads for any IO operation over 64K (`issue#21849 `_, `pr#18405 `_, Jason Dillaman) +* librbd: disable ENOENT tracking within the object cacher (`issue#23597 `_, `pr#21308 `_, Jason Dillaman) +* librbd: disallow creation of v1 image format (`pr#20460 `_, Julien COLLET, Julien Collet) +* librbd: don't read metadata twice on image open (`pr#18542 `_, Mykola Golub) +* librbd: drop redundant check for null ImageCtx (`pr#18265 `_, Jianpeng Ma) +* librbd: filter out potential race with image rename (`issue#18435 `_, `pr#19618 `_, Jason Dillaman) +* librbd: fix coverity warning for uninitialized member (`pr#18129 `_, Li Wang) +* librbd: fix deep copy a child-image (`pr#20099 `_, songweibin) +* librbd: fix don't send get_stripe_unit_count if striping is not enabled (`issue#21360 `_, `pr#17660 `_, Yanhu Cao) +* librbd: fix issues discovered in clone v2 during upgrade tests (`issue#22979 `_, `pr#20406 `_, Jason Dillaman) +* librbd: fix missing return in NotifyMessage::get_notify_op (`pr#20656 `_, Yao Zongyou) +* librbd: fix rbd close race with rewatch (`pr#21141 `_, Song Shun) +* librbd: fix refuse to release lock when cookie is the same at rewatch (`pr#20868 `_, Song Shun) +* librbd: fix structure size check in rbd_mirror_image_get_info/status (`pr#20478 `_, Mykola Golub) +* librbd: force removal of a snapshot cannot ignore dependent children (`issue#22791 `_, `pr#20105 `_, Jason Dillaman) +* librbd: generalized deep copy function (`pr#16238 `_, Mykola Golub) +* librbd: group and snapshot cleanup (`pr#19990 `_, Jason Dillaman) +* librbd: group snapshots (`pr#11544 `_, Victor Denisov, Jason Dillaman) +* librbd: hold cache_lock while clearing cache nonexistence flags (`issue#21558 `_, `pr#17992 `_, Jason Dillaman) +* librbd: image-meta config overrides should be dynamically refreshed (`issue#21529 `_, `pr#18042 `_, Dongsheng Yang, Jason Dillaman) +* librbd: initial hooks for clone v2 support (`pr#20176 `_, Jason Dillaman) +* librbd: initialization of state member variables (`pr#16866 `_, amitkuma) +* librbd: Initializing members image,operation,journal (`pr#16934 `_, amitkuma) +* librbd: Initializing member variables (`pr#16867 `_, amitkuma) +* librbd: journal should ignore -EILSEQ errors from compare-and-write (`issue#21628 `_, `pr#18099 `_, Jason Dillaman) +* librbd,librados: do not include stdbool.h in C++ headers (`pr#19945 `_, Kefu Chai) +* librbd: list_children should not attempt to refresh image (`issue#21670 `_, `pr#18114 `_, Jason Dillaman) +* librbd: minor cleanup of the IO pathway (`pr#20560 `_, Jason Dillaman) +* librbd: minor code cleanup (`pr#21165 `_, songweibin) +* librbd: missing 'return' in deep_copy::ObjectCopyRequest::send_read_object (`pr#21493 `_, Mykola Golub) +* librbd: new tag should use on-disk committed position (`issue#22945 `_, `pr#20423 `_, Jason Dillaman) +* librbd: object map batch update might cause OSD suicide timeout (`issue#21797 `_, `pr#18315 `_, Jason Dillaman) +* librbd: possible deadlock with synchronous maintenance operations (`issue#22120 `_, `pr#18909 `_, Jason Dillaman) +* librbd: potential crash if object map check encounters error (`issue#22819 `_, `pr#20214 `_, Jason Dillaman) +* librbd: potential race between discard and writeback (`pr#21248 `_, Jason Dillaman) +* librbd: potential race in RewatchRequest when resetting watch_handle (`pr#20420 `_, Mykola Golub) +* librbd: prefer templates to macros (`pr#19912 `_, Adam C. Emerson) +* librbd: prevent overflow of discard API result code (`issue#21966 `_, `pr#18923 `_, Jason Dillaman) +* librbd: prevent watcher from unregistering with in-flight actions (`issue#23955 `_, `pr#21763 `_, Jason Dillaman) +* librbd: refresh image after applying new metadata (`issue#21711 `_, `pr#18158 `_, Jason Dillaman) +* librbd: release lock executing deep copy progress callback (`issue#23929 `_, `pr#21727 `_, Mykola Golub) +* librbd: remove unused member in FlattenRequest (`pr#19416 `_, Mykola Golub) +* librbd: remove unused variables from ReadResult refactor (`pr#18277 `_, Jason Dillaman) +* librbd: rename of non-existent image results in seg fault (`issue#21248 `_, `pr#17502 `_, Jason Dillaman) +* librbd: set deleted parent pointer to null (`issue#22158 `_, `pr#19003 `_, Jason Dillaman) +* librbd: should not set self as remote peer (`pr#17300 `_, songweibin) +* librbd: small cleanup for recently merged code (`pr#20578 `_, Mykola Golub) +* librbd: snapshots should be created/removed against data pool (`issue#21567 `_, `pr#18043 `_, Jason Dillaman) +* librbd: speed up object map disk usage and resize (`pr#20218 `_, shun-s) +* librbd: speed up sparse copy when object map is available (`pr#18967 `_, Song Shun) +* librbd: update mirror::EnableRequest diagram according to code (`pr#19130 `_, Mykola Golub) +* librbd: use steady clock to measure elapsed time in AioCompletion (`pr#20007 `_, Mohamad Gebai) +* librbd: validate if dst group snap name is the same with src (`pr#20395 `_, songweibin) +* log: Fix AddressSanitizer: new-delete-type-mismatch (`issue#23324 `_, `pr#20930 `_, Brad Hubbard) +* log: fix build on osx (`pr#18213 `_, Kefu Chai) +* log: silence warning from -Wsign-compare (`pr#18326 `_, Jos Collin) +* log: Use the coarse real time clock in log timestamps (`pr#18141 `_, Adam C. Emerson) +* mds: check metadata pool not cluster is full (`issue#22483 `_, `pr#19602 `_, Patrick Donnelly) +* mds: fix CEPH_STAT_RSTAT definition (`pr#21633 `_, "Yan, Zheng") +* mds: get rid of the "if" check which is unnecessary inside a loop (`pr#18904 `_, dongdong tao) +* mds: Remove redundant null pointer check (`pr#19750 `_, Brad Hubbard) +* mds: simplify the code logic in replay_alloc_ids (`pr#18893 `_, dongdong tao) +* mempool: fix lack of pool names in mempool:dump output for JSON format (`pr#18329 `_, Igor Fedotov) +* messages: Initialization of uninitialized members various classes (`pr#16848 `_, amitkuma) +* messages/MDentryLink: add const to member function (`pr#15479 `_, yonghengdexin735) +* messages,test,msg: initialize h,reply_type,owner (`pr#17767 `_, Amit Kumar) +* mgr: add mgr daemon to DaemonStateIndex with metadata (hostname) (`issue#23286 `_, `pr#20875 `_, Jan Fajerski) +* mgr: add missing call to pick_addresses (`issue#20955 `_, `pr#16940 `_, John Spray) +* mgr: add the ip addr of standbys (`pr#16476 `_, huanwen ren) +* mgr: add units to performance counters (`issue#22747 `_, `pr#20152 `_, Rubab Syed) +* mgr: allow service daemons to unregister from ServiceMap (`pr#20761 `_, Sage Weil) +* mgr: apply a threshold to perf counter prios (`pr#16699 `_, John Spray) +* mgr: balancer: fixed mistype "AttributeError: 'Logger' object has no attribute 'err'" (`pr#20130 `_, Konstantin Shalygin) +* mgr: centralized setting/getting of mgr configs (`pr#21442 `_, John Spray, Rubab Syed) +* mgr: ceph-mgr: can not change prometheus port for mgr (`pr#17746 `_, wujian) +* mgr: common interface for TSDB modules (`pr#17735 `_, Jan Fajerski, John Spray, My Do) +* mgr/dashboard: Adapt help text if server_addr is not set (`pr#21640 `_, Volker Theile) +* mgr/dashboard: Adapt RBD form to new application_metadata type (`pr#21602 `_, Volker Theile) +* mgr/dashboard: Add Api module (`pr#21126 `_, Tiago Melo) +* mgr/dashboard: Add 'autofocus' directive (`pr#21559 `_, Volker Theile) +* mgr/dashboard: Add CdDatePipe (`pr#21087 `_, Ricardo Marques) +* mgr/dashboard: Add 'cd-error-panel' component to display error messages (`pr#21558 `_, Volker Theile) +* mgr/dashboard: Add 'cd-loading-panel' component (`pr#21618 `_, Volker Theile) +* mgr/dashboard: Add custom validators (`pr#21041 `_, Volker Theile) +* mgr/dashboard: Add DimlessBinaryDirective (`pr#20972 `_, Ricardo Marques) +* mgr/dashboard: Add ErasureCodeProfile controller (`issue#23345 `_, `pr#20920 `_, Sebastian Wagner, Stephan Müller) +* mgr/dashboard: Add 'forceIdentifier' attribute to datatable (`pr#21497 `_, Volker Theile) +* mgr/dashboard: Add helper component (`pr#20971 `_, Ricardo Marques) +* mgr/dashboard: additional fixes to block pages (`pr#20941 `_, Jason Dillaman) +* mgr/dashboard: Add minimalistic browsable API (`pr#20873 `_, Sebastian Wagner) +* mgr/dashboard: Add notification service/component (`pr#21078 `_, Tiago Melo) +* mgr/dashboard: Add Pool-create to the backend (`issue#23345 `_, `pr#20865 `_, Sebastian Wagner) +* mgr/dashboard: Add RGW user and bucket management features (`pr#21351 `_, Volker Theile) +* mgr/dashboard: Adds reusable deletion dialog (`pr#20899 `_, Stephan Müller, Tiago Melo) +* mgr/dashboard: Add submit button component (`pr#21011 `_, Tiago Melo) +* mgr/dashboard: Add usage bar component (`pr#21128 `_, Ricardo Marques) +* mgr/dashboard: Angular modules cleanup (`pr#21402 `_, Tiago Melo) +* mgr/dashboard: Asynchronous tasks (frontend) (`pr#20962 `_, Ricardo Marques) +* mgr/dashboard: awsauth: fix python3 string decode problem (`pr#21875 `_, Ricardo Dias) +* mgr/dashboard: Change font-family of checkbox (`pr#21787 `_, Tiago Melo) +* mgr/dashboard: Clean up Pylint warnings (`pr#21694 `_, Sebastian Wagner) +* mgr/dashboard: Convert floating values to bytes (`pr#21677 `_, Stephan Müller) +* mgr/dashboard: Convert the RBD feature names to a list of strings (`pr#21024 `_, Tatjana Dehler) +* mgr/dashboard: Deletion dialog falsely executes deletion when pressing 'Cancel' (`pr#22032 `_, Volker Theile) +* mgr/dashboard: Display notification if RGW is not configured (`pr#21977 `_, Volker Theile) +* mgr/dashboard: Display RBD form errors on submission (`pr#21529 `_, Ricardo Marques) +* mgr/dashboard: Enable object rendering in KV-table (`pr#21701 `_, Stephan Müller) +* mgr/dashboard: fix 500 error on block device iSCSI status page (`pr#20928 `_, Jason Dillaman) +* mgr/dashboard: fix dashboard python 3 support (`pr#21007 `_, Ricardo Dias) +* mgr/dashboard: Fix data race and use-before-assignment (`pr#21590 `_, Sebastian Wagner) +* mgr/dashboard: fixed password generation in Auth controller (`issue#23404 `_, `pr#21006 `_, Ricardo Dias) +* mgr/dashboard: Fixes documentation link- to open in new tab (`pr#22262 `_, Kanika Murarka) +* mgr/dashboard: Fixes type error in RBD form (`pr#21681 `_, Stephan Müller) +* mgr/dashboard: fix frontend e2e tests (`pr#20943 `_, Tiago Melo) +* mgr/dashboard: fix FS status on old MDS daemons (`issue#20692 `_, `pr#16960 `_, John Spray) +* mgr/dashboard: fix linting problem (`pr#22277 `_, Tiago Melo) +* mgr/dashboard: Fix missing $event on deletion modal (`pr#21667 `_, Ricardo Marques) +* mgr/dashboard: Fix moment.js deprecation warning (`pr#22052 `_, Tiago Melo) +* mgr/dashboard: Fix objects named `default` are inaccessible (`pr#20976 `_, Sebastian Wagner) +* mgr/dashboard: Fix RBD task metadata (`pr#22152 `_, Tiago Melo) +* mgr/dashboard: Fix table without fetchData (`pr#21086 `_, Ricardo Marques) +* mgr/dashboard: Fix the data table action selector (`pr#21270 `_, Stephan Müller) +* mgr/dashboard: fix two type errors found by mypy (`pr#21774 `_, Sebastian Wagner) +* mgr/dashboard: Handle errors during deletion (`pr#22029 `_, Volker Theile) +* mgr/dashboard: Implement a RGW proxy (`pr#21258 `_, Volker Theile, Patrick Nawracay) +* mgr/dashboard: Improve background tasks style (`pr#21462 `_, Ricardo Marques) +* mgr/dashboard: improve error handling (`pr#18182 `_, Nick Erdmann) +* mgr/dashboard: Improve error panel (`pr#21978 `_, Volker Theile) +* mgr/dashboard: Improve `npm start` script (`pr#20989 `_, Ricardo Marques) +* mgr/dashboard: Improve table search (`pr#20807 `_, Stephan Müller) +* mgr/dashboard: Load the datatable content on component initialization (`pr#21595 `_, Volker Theile) +* mgr/dashboard: Navbar dropdown button does not respond for mobile browsers (`pr#21979 `_, Volker Theile) +* mgr/dashboard: Notification improvements (`pr#21350 `_, Tiago Melo) +* mgr/dashboard: pool: fix python3 dict_keys error (`pr#21636 `_, Ricardo Dias) +* mgr/dashboard: Pool listing (`pr#21353 `_, Stephan Müller) +* mgr/dashboard: rbd: add @AuthRequired to snapshots controller (`pr#21517 `_, Ricardo Dias) +* mgr/dashboard: RBD copy, RBD flatten and snapshot clone (frontend) (`pr#21526 `_, Ricardo Marques, Ricardo Dias) +* mgr/dashboard: RBD management (frontend) (`pr#21385 `_, Ricardo Marques) +* mgr/dashboard: Refactor multiple duplicates of `get_rate()` (`pr#21022 `_, Sebastian Wagner) +* mgr/dashboard: Refactor RGW backend (`pr#21855 `_, Volker Theile) +* mgr/dashboard: Rename and refactor ApiInterceptorService class (`pr#21386 `_, Volker Theile) +* mgr/dashboard: Replace font-awesome with fork-awesome (`pr#21327 `_, Lenz Grimmer) +* mgr/dashboard: restcontroller: fix detection of id args in element requests (`pr#21290 `_, Ricardo Dias) +* mgr/dashboard: RESTController improvements (`pr#21516 `_, Ricardo Dias) +* mgr/dashboard: run-tox: pass CEPH_BUILD_DIR value into tox script (`pr#21445 `_, Ricardo Dias) +* mgr: dashboard: show per pool IOPS on health page (#22495) (`issue#22495 `_, `pr#19981 `_, Konstantin Shalygin) +* mgr/dashboard: Support aditional info on 'cd-view-cache' (`pr#21060 `_, Ricardo Marques) +* mgr/dashboard: TaskManager bug fixes (`pr#21240 `_, Ricardo Dias) +* mgr/dashboard: Update selected items on table refresh (`pr#21099 `_, Ricardo Marques) +* mgr/dashboard: Use Bootstrap CSS (`pr#21780 `_, Volker Theile) +* mgr/dashboard: using RoutesDispatcher as HTTP request dispatcher (`pr#21239 `_, Ricardo Dias) +* mgr/dashboard_v2: add mgr to the list of perf counters (`pr#20783 `_, Tiago Melo) +* mgr/dashboard_v2: add mocked service provider for TcmuIscsiService (`pr#20775 `_, Tiago Melo) +* mgr/dashboard_v2: Add toggle able columns (`pr#20806 `_, Stephan Müller) +* mgr/dashboard_v2: Configuration settings support (`pr#20743 `_, Ricardo Dias) +* mgr/dashboard_v2: fix and improve table details (`pr#20811 `_, Tiago Melo) +* mgr/dashboard_v2: Fix cephfs template table usage (`pr#20804 `_, Stephan Müller) +* mgr/dashboard_v2: fix cluster configuration page (`pr#20821 `_, Tiago Melo) +* mgr/dashboard_v2: Improve charts tooltips (`pr#20757 `_, Tiago Melo) +* mgr/dashboard_v2: Pool controller (`pr#20823 `_, Ricardo Dias) +* mgr/dashboard_v2: Rotate the refresh icon on load (`pr#20805 `_, Stephan Müller) +* mgr: die on bind() failure (`pr#20595 `_, John Spray) +* mgr: disconnect unregistered service daemon when report received (`issue#22286 `_, `pr#19261 `_, Jason Dillaman) +* mgr: emit cluster log message on serve() exception (`issue#21999 `_, `pr#18672 `_, John Spray) +* mgr: Expose rgw perf counters (`pr#21269 `_, Boris Ranto) +* mgr: fix "access denied" message (`pr#19518 `_, John Spray) +* mgr: fix crashable DaemonStateIndex::get calls (`issue#17737 `_, `pr#17933 `_, John Spray) +* mgr: fix crash in MonCommandCompletion (`issue#21157 `_, `pr#17308 `_, John Spray) +* mgr: fixes python error handling (`issue#23406 `_, `pr#21005 `_, Ricardo Dias) +* mgr: fix MSG_MGR_MAP handling (`pr#20892 `_, Gu Zhongyan) +* mgr: fix "osd status" command exception if OSD not in pgmap stats (`issue#21707 `_, `pr#18173 `_, Yanhu Cao) +* mgr: fix py3 support (`issue#22880 `_, `pr#20362 `_, Kefu Chai) +* mgr: fix py calls for dne service perf counters (`issue#21253 `_, `pr#17605 `_, John Spray) +* mgr: implement completion of osd MetadataUpdate (`issue#21159 `_, `pr#16925 `_, Yanhu Cao) +* mgr: implement 'osd safe-to-destroy' and 'osd ok-to-stop' commands (`pr#16976 `_, Sage Weil) +* mgr: improved module loading for error reporting etc (`issue#21999 `_, `issue#21683 `_, `issue#21502 `_, `pr#19235 `_, John Spray) +* mgr: improve reporting on unloadable modules (`issue#23358 `_, `pr#20921 `_, John Spray) +* mgr: increase time resolution of Commit/Apply OSD latencies (`pr#19232 `_, Коренберг Марк) +* mgr: initialize PyModuleRegistry sooner (`issue#22918 `_, `pr#20321 `_, John Spray) +* mgr: In plugins 'module' classes need not to be called "Module" anymore (`issue#17454 `_, `pr#18526 `_, Kefu Chai, bhavishyagopesh) +* mgr: locking fixes (`issue#21158 `_, `pr#17309 `_, John Spray) +* mgr: mgr/balancer: cast config vals to int or float (`issue#22429 `_, `pr#19493 `_, Dan van der Ster) +* mgr: mgr/balancer: don't use 'foo' tags on commands (`issue#22361 `_, `pr#19482 `_, John Spray) +* mgr: mgr/balancer: fix KeyError in balancer rm (`issue#22470 `_, `pr#19578 `_, Dan van der Ster) +* mgr: mgr/balancer: fix OPTIONS definition (`pr#21620 `_, John Spray) +* mgr: mgr/balancer: fix upmap; default balancer module enabled (`pr#18691 `_, Sage Weil) +* mgr: mgr/balancer: make crush-compat mode work (`pr#17983 `_, Sage Weil) +* mgr: mgr/balancer: mgr module to automatically balance PGs across OSDs (`pr#16272 `_, Spandan Kumar Sahu, Sage Weil) +* mgr: mgr/balancer: more pool-specific enhancements (`pr#20225 `_, xie xingguo) +* mgr: mgr/balancer: pool-specific optimization support and bug fixes (`pr#20154 `_, xie xingguo) +* mgr: mgr/balancer: replace magic value of -1 for DEFAULT_CHOOSE_ARGS (`pr#20258 `_, Kefu Chai) +* mgr: mgr/balancer: skip CRUSH_ITEM_NONE (`pr#18894 `_, Sage Weil) +* mgr: mgr/balancer: two more fixes (`pr#20180 `_, xie xingguo) +* mgr: mgrc: free MMgrClose in handle_mgr_close (`issue#23846 `_, `pr#21626 `_, Casey Bodley) +* mgr: mgr/DaemonServer: add overrides value to 'config show' (`pr#21093 `_, Gu Zhongyan) +* mgr: mgr/DaemonServer.cc: [Cleanup] Change to using get_val template function (`pr#18717 `_, Shinobu Kinjo) +* mgr: mgr/DaemonServer: [Cleanup] Remove redundant code (`pr#18716 `_, Shinobu Kinjo) +* mgr: mgr/dashboard: add configuration setting browser (`issue#22522 `_, `pr#20043 `_, Rubab Syed) +* mgr: mgr/dashboard: add image id to mgr rbd info instead of block_name_prefix (`pr#20884 `_, zouaiguo) +* mgr: mgr/dashboard: Add monitor list (`pr#19632 `_, Rubab Syed) +* mgr: mgr/dashboard: Add RGW user and bucket lists (read-only) (`pr#20869 `_, Volker Theile) +* mgr: mgr/dashboard: add TLS (`pr#21627 `_, John Spray) +* mgr: mgr/dashboard: Add toBytes() method to FormatterService (`pr#20978 `_, Volker Theile) +* mgr: mgr/dashboard: asynchronous task support (`pr#20870 `_, Ricardo Dias) +* mgr: mgr/dashboard: change raw usage chart's color depending on usage (`pr#17421 `_, Nick Erdmann) +* mgr: mgr/dashboard: fix audit log loading (`pr#18848 `_, John Spray) +* mgr: mgr/dashboard: Fix backend tests for newer CherryPy versions (`pr#20778 `_, Patrick Nawracay) +* mgr: mgr/dashboard: Fix PG status coloring (`pr#19431 `_, Wido den Hollander) +* mgr: mgr/dashboard: format tooltip's label as user friendly string (`pr#18769 `_, Yao Zongyou) +* mgr: mgr/dashboard: handle null in format_number (`issue#21570 `_, `pr#17991 `_, John Spray) +* mgr: mgr/dashboard: HTTP request logging (`pr#20797 `_, Ricardo Dias) +* mgr: mgr/dashboard: Improve auth interceptor (`pr#20847 `_, Volker Theile) +* mgr: mgr/dashboard: performance counter browsers (`issue#22521 `_, `pr#19922 `_, Rubab-Syed) +* mgr: mgr/dashboard: RBD management (backend) (`pr#21360 `_, Ricardo Dias) +* mgr: mgr/dashboard: Remove unused code (`pr#21045 `_, Volker Theile) +* mgr: mgr/dashboard: Remove useless code (`pr#20958 `_, Volker Theile) +* mgr: mgr/dashboard: show warnings if data is out of date or mons are down (`pr#18847 `_, John Spray) +* mgr: mgr/dashboard: sort servers and OSDs in OSD list (`issue#21572 `_, `pr#17993 `_, John Spray) +* mgr: mgr/dashboard: use rel="icon" for favicon (`pr#18013 `_, Kefu Chai) +* mgr: mgr/dashboard v2: Add CSS class for required form fields (`pr#20747 `_, Volker Theile) +* mgr: mgr/dashboard_v2: Add RBD create functionality to the Python backend (`pr#20751 `_, Tatjana Dehler) +* mgr: mgr/dashboard v2: Add units to performance counters (`pr#20742 `_, Volker Theile) +* mgr: mgr/dashboard v2: Display loading indicator in datatables during first load (`pr#20744 `_, Volker Theile) +* mgr: mgr/dashboard v2: Don't show details if multiple OSDs are selected (`pr#20772 `_, Volker Theile) +* mgr: mgr/dashboard v2: implement can_run method (`pr#20728 `_, John Spray) +* mgr: mgr/dashboard_v2: Initial submission of a web-based management UI (replacement for the existing dashboard) (`pr#20103 `_, Stephan Müller, Lenz Grimmer, Tiago Melo, Ricardo Marques, Sebastian Wagner, Patrick Nawracay, Ricardo Dias, Volker Theile, Kai Wagner, Tatjana Dehler) +* mgr: mgr/dashboard v2: Introduce CdTableSelection model (`pr#20746 `_, Volker Theile) +* mgr: mgr/dashboard_v2: Removed unused `tools.detail_route()` (`pr#20765 `_, Sebastian Wagner) +* mgr: mgr/influx: Added Additional Stats (`pr#21424 `_, mhdo2) +* mgr: mgr/influx: Add InfluxDB SSL Option (`pr#19374 `_, Tobias Gall) +* mgr: mgr/influx: Only split string on first occurence of dot (.) (`issue#23996 `_, `pr#21795 `_, Wido den Hollander) +* mgr: mgr/influx: PEP-8 and other fixes to Influx module (`pr#19229 `_, Wido den Hollander) +* mgr: mgr/influx: Various fixes and improvements (`pr#20187 `_, Wido den Hollander) +* mgr: mgr/influx: Various time fixes (`pr#20494 `_, Wido den Hollander) +* mgr: mgr/localpool: default to 3x; allow min_size adjustment (`pr#18089 `_, Sage Weil) +* mgr: mgr/MgrClient: guard send_pgstats() with lock (`issue#23370 `_, `pr#20909 `_, Kefu Chai) +* mgr: mgr/MgrClient: service registration filtered by service name instead of daemon name (`pr#21459 `_, runsisi) +* mgr: mgr/PGMap: drop REQUEST\_{SLOW,STUCK} HEALTH_WARNs (`pr#19114 `_, Kefu Chai) +* mgr: mgr/prometheus: add ceph_disk_occupation series (`issue#21594 `_, `pr#18021 `_, John Spray) +* mgr: mgr/prometheus: add missing 'deep' state to PG_STATES in ceph-mgr prometheus plugin (`issue#22116 `_, `pr#18890 `_, Peter Woodman) +* mgr: mgr/prometheus: Fix for MDS metrics (`issue#20899 `_, `pr#17318 `_, John Spray, Jeremy H Austin) +* mgr: mgr/prometheus: fix PG state names (`pr#21288 `_, John Spray) +* mgr: mgr/prometheus: Skip bogus entries (`pr#20456 `_, Boris Ranto) +* mgr: mgr/prometheus: skip OSD output if missing from CRUSH devices (`pr#20644 `_, John Spray) +* mgr: mgr/restful: A couple of restful fixes (`pr#18649 `_, Boris Ranto) +* mgr: mgr/restful: cleaner message when not configured (`issue#21292 `_, `pr#17573 `_, John Spray) +* mgr: mgr/smart: fix python3 module loading (`pr#21047 `_, Ricardo Dias) +* mgr: mgr/status: fix ceph fs status returns error (`issue#21752 `_, `pr#18233 `_, Yanhu Cao) +* mgr: mgr/status: format byte quantities in base 2 multiples (`issue#21189 `_, `pr#17380 `_, John Spray) +* mgr: mgr/telemetry: Add Ceph Telemetry module to send reports back to project (`pr#21970 `_, Wido den Hollander) +* mgr: mgr/zabbix: fix div by zero (`issue#21518 `_, `pr#17931 `_, John Spray) +* mgr: mgr/zabbix: ignore osd with 0 kb capacity (`issue#21904 `_, `pr#18809 `_, Ilja Slepnev) +* mgr: mgr/zabbix: Implement health checks (`pr#20198 `_, Wido den Hollander) +* mgr: mgr/zabbix: Send max, min and avg PGs of OSDs to Zabbix (`pr#21043 `_, Wido den Hollander) +* mgr: mgr/Zabbix: Various fixes to Zabbix module (`pr#19452 `_, Wido den Hollander) +* mgr: mimic: mgr/telegraf: Telegraf module for Ceph Mgr (`pr#22013 `_, Wido den Hollander) +* mgr: Modify mgr-influx module database check to not require admin privileges (`pr#18102 `_, Benjeman Meekhof) +* mgr: mon,mgr: improve 'mgr module disable' cmd (`pr#21188 `_, Gu Zhongyan) +* mgr: mon, mgr: move "osd pool stats" command to mgr and mgr python module (`pr#19985 `_, Chang Liu) +* mgr: mon/MgrStatMonitor: fix formatting of pending_digest (`issue#22991 `_, `pr#20426 `_, Patrick Donnelly) +* mgr,mon: mon/MgrMonitor: read cmd descs if empty on update_from_paxos() (`issue#21300 `_, `pr#17846 `_, Joao Eduardo Luis) +* mgr,mon: mon,mgr: remove single wildcard '\*' from ceph comand line description (`pr#21139 `_, Gu Zhongyan) +* mgr,mon: mon/mgr: sync "mgr_command_descs","osd_metadata" and "mgr_metadata" prefixes to new mons (`issue#21527 `_, `pr#17929 `_, huanwen ren) +* mgr,mon: mon/MonCommands: mgr metadata - improve parameter naming consistency (`issue#23330 `_, `pr#20866 `_, Jan Fajerski) +* mgr: preventing blank hostname in DaemonState (`issue#20887 `_, `issue#21060 `_, `pr#17138 `_, liuchang0812) +* mgr: prometheus: added osd commit/apply latency metrics (#22718) (`issue#22718 `_, `pr#19980 `_, Konstantin Shalygin) +* mgr: prometheus: Don't crash on OSDs without metadata (`pr#20539 `_, Christopher Blum) +* mgr: prometheus fix metadata labels (`pr#21557 `_, Jan Fajerski) +* mgr: prometheus: set metadata metrics value to '1' (#22717) (`issue#22717 `_, `pr#19979 `_, Konstantin Shalygin) +* mgr: pybind/mgr/balancer: add sanity check against empty adjusted_map (`pr#20836 `_, xie xingguo) +* mgr: pybind/mgr/balancer: fix pool-deletion vs auto-optimization race (`pr#20706 `_, xie xingguo) +* mgr: pybind/mgr/balancer: fix sanity check against empty weight-set (`pr#20278 `_, xie xingguo) +* mgr: pybind/mgr/balancer: increase bad_steps properly (`pr#20194 `_, xie xingguo) +* mgr: pybind/mgr/balancer: load weight-set from ms (`pr#20197 `_, xie xingguo) +* mgr: pybind/mgr/balancer: more specific command outputs (`pr#20305 `_, xie xingguo) +* mgr: pybind/mgr/balancer: remove optimization plan properly (`pr#20224 `_, xie xingguo) +* mgr: pybind/mgr/balancer: two more fixes (`pr#20788 `_, xie xingguo) +* mgr: pybind/mgr/dashboard: add url_prefix (`issue#20568 `_, `pr#17119 `_, Nick Erdmann) +* mgr: pybind/mgr/dashboard: fix duplicated slash in html href (`issue#22851 `_, `pr#20229 `_, Shengjing Zhu) +* mgr,pybind: mgr/dashboard: fix pool size base conversion (`pr#16771 `_, Yixing Yan) +* mgr: pybind/mgr/dashboard: fix reverse proxy support (`issue#22557 `_, `pr#19758 `_, Nick Erdmann) +* mgr,pybind: mgr/iostat: print output as a table (`pr#21338 `_, Mohamad Gebai) +* mgr: pybind/mgr/localpool: module to automagically create localized pools (`pr#17528 `_, Sage Weil) +* mgr: pybind/mgr/mgr_module: add default param for MgrStandbyModule.get_con… (`pr#19948 `_, Kefu Chai) +* mgr: pybind/mgr/mgr_module: make rados handle available to all modules (`pr#19972 `_, Sage Weil) +* mgr: pybind/mgr_module: move PRIO\_\* and PERFCOUNTER\_\* to MgrModule class (`pr#18251 `_, Jan Fajerski) +* mgr: pybind/mgr: new 'hello world' mgr module skeleton (`pr#19491 `_, Yaarit Hatuka) +* mgr: pybind/mgr/prometheus: add file_sd_config command (`pr#21061 `_, Jan Fajerski) +* mgr: pybind/mgr/prometheus: add osd_in/out metric; make osd_weight a metric (`pr#18243 `_, Jan Fajerski) +* mgr: pybind/mgr/prometheus: add StandbyModule and handle failed MON cluster (`pr#19744 `_, Jan Fajerski) +* mgr: pybind/mgr/prometheus: don't crash when encountering an unknown PG state (`pr#18903 `_, Jan Fajerski) +* mgr: pybind/mgr/prometheus: don't export metrics for dead daemon; new metrics (`pr#20506 `_, Jan Fajerski) +* mgr: pybind/mgr/prometheus: fix creation of osd_metadata metric (`pr#21530 `_, Jan Fajerski) +* mgr: pybind/mgr/prometheus: fix metric type undef -> untyped (`issue#22313 `_, `pr#19524 `_, Ilya Margolin) +* mgr: pybind/mgr/prometheus: fix metric type undef -> untyped (`pr#18208 `_, Jan Fajerski) +* mgr,pybind: pybing/mgr/prometheus: return default port if config-key get returns … (`pr#21696 `_, Jan Fajerski) +* mgr: python interface rework + enable modules to run in standby mode (`issue#21593 `_, `issue#17460 `_, `pr#16651 `_, John Spray, Sage Weil) +* mgr: quieten logging on missing OSD stats (`pr#20485 `_, John Spray) +* mgr,rbd: mgr/dashboard: added iSCSI IOPS/throughput metrics (`issue#21391 `_, `pr#18653 `_, Jason Dillaman) +* mgr,rbd: mgr/dashboard: fix duplicate images listed on iSCSI status page (`issue#21017 `_, `pr#17055 `_, Jason Dillaman) +* mgr: reconcile can_run checks and selftest (`pr#21607 `_, John Spray, Kefu Chai) +* mgr: remove a few junk lines (`pr#20005 `_, John Spray) +* mgr: remove unused static files from dashboard module (`pr#16762 `_, John Spray) +* mgr: request daemon's metadata when receiving a report from an unknown server (`issue#21687 `_, `pr#18484 `_, Chang Liu) +* mgr,rgw: mgr/dashboard: RGW page (`pr#19512 `_, Chang Liu) +* mgr,rgw: prometheus: Implement rgw_metadata metric (`pr#21383 `_, Boris Ranto) +* mgr: safety checks on pyThreadState usage (`pr#18093 `_, John Spray) +* mgr: set explicit thread name (`issue#21404 `_, `pr#17756 `_, John Spray) +* mgr: silence warning from -Wsign-compare (`pr#17881 `_, Jos Collin) +* mgr: skip first non-zero incremental in PGMap::apply_incremental() (`issue#21773 `_, `pr#18347 `_, Aleksei Gutikov) +* mgr/status: output to stdout, not stderr (`issue#24175 `_, `pr#22135 `_, John Spray) +* mgr: store declared_types in MgrSession (`issue#21197 `_, `pr#17932 `_, John Spray) +* mgr: systemd: Wait 10 seconds before restarting ceph-mgr (`issue#23083 `_, `pr#20533 `_, Wido den Hollander) +* mgr,tests: mgr/dashboard: skip data pool testcase for none-bluestore clusters (`pr#21004 `_, Tatjana Dehler) +* mgr,tests: mgr/dashboard_v2: fix test_perf_counters_mgr_get (`pr#20916 `_, Tiago Melo) +* mgr,tests: qa: add new prometheus test to rados/mgr suite (`pr#20047 `_, John Spray) +* mgr,tests: qa: configure zabbix properly before selftest (`issue#22514 `_, `pr#19634 `_, John Spray) +* mgr,tests: qa: fix mgr _load_module helper (`pr#18685 `_, John Spray) +* mgr,tools: mgr/iostat: implement 'ceph iostat' as a mgr plugin (`pr#20100 `_, Mohamad Gebai) +* mgr: use new style config opts + add metadata (`pr#17374 `_, John Spray) +* mgr/zabbix: Fix wrong log message (`pr#21237 `_, Gu Zhongyan) +* mgr/zabbix: monitoring template improvements (`pr#19901 `_, Marc Schoechlin) +* mon: Add `ceph osd get-require-min-compat-client` command (`pr#19015 `_, hansbogert) +* mon: add 'ceph osd pool get erasure allow_ec_overwrites' command (`pr#21102 `_, Mykola Golub) +* mon: add MMonHealth back (`issue#22462 `_, `pr#20528 `_, Kefu Chai) +* mon: add mon_health_preluminous_compat_warning (`pr#16902 `_, Sage Weil) +* mon: a few conversions to monotonic clock (`pr#18595 `_, Patrick Donnelly) +* mon: align lspools output (`pr#19597 `_, Jos Collin) +* mon: allow cluter and debug logs to go to stderr, with appropriate prefix (`pr#19385 `_, Sage Weil) +* mon: cache reencoded osdmaps (`issue#23713 `_, `pr#21605 `_, Sage Weil, Xiaoxi CHEN) +* mon: centralized config (`pr#20172 `_, Sage Weil) +* mon: "ceph osd crush rule rename" support (`pr#17029 `_, xie xingguo) +* mon: check monitor address configuration (`pr#18073 `_, Li Wang) +* mon: clean up cluster logging on mon events (`issue#22082 `_, `pr#18822 `_, John Spray) +* mon: cleanups to optracker code (`pr#21371 `_, John Spray) +* mon: cleanup unused option mon_health_data_update_interval (`pr#17728 `_, Yao Guotao) +* mon: common/options: set max_background_jobs instead of max_background_compactions (`pr#18397 `_, Kefu Chai) +* mon: Compress the warnings of pgs not scrubbed or deep-scrubbed (`pr#17295 `_, Zhi Zhang) +* mon: do not use per_pool_sum_delta to show recovery summary (`issue#22727 `_, `pr#20009 `_, Chang Liu) +* mon: don't blow away bootstrap-mgr on upgrades (`issue#20950 `_, `pr#18399 `_, John Spray) +* mon: double mon_mgr_mkfs_grace from 60s -> 120s (`pr#20955 `_, Sage Weil) +* mon: Drop redundant access specifier, etc (cleanup) (`pr#19028 `_, Shinobu Kinjo) +* mon: dump percent_used PGMap field as float (`pr#20439 `_, John Spray) +* mon: dump servicemap along with MgrStatMonitor dump info (`pr#18760 `_, Zhi Zhang) +* mon: expand cap validity check for mgr, osd, mds (`issue#22525 `_, `pr#21311 `_, Jing Li, Sage Weil) +* mon: final luminous compatset feature and osdmap flag (`pr#17333 `_, Sage Weil) +* mon: fix commands advertised during mon cluster upgrade (`pr#16871 `_, Sage Weil) +* mon: fix dropping mgr metadata for active mgr (#21260) (`issue#21260 `_, `pr#17571 `_, John Spray) +* mon: fix "fs new" pool metadata update, tests (`issue#20959 `_, `pr#16954 `_, Greg Farnum) +* mon: fix legacy health checks in 'ceph status' during upgrade; fix jewel-x upgrade combo (`pr#16967 `_, Sage Weil) +* mon: fix mgr using auth_client_required policy (`pr#20048 `_, John Spray) +* mon: fix `osd out` clog message (`issue#21249 `_, `pr#17525 `_, John Spray) +* mon: fix slow op warning on mon, improve slow op warnings (`issue#23769 `_, `pr#21684 `_, Sage Weil) +* mon: fix structure of 'features' command (`pr#20115 `_, Sage Weil) +* mon: fix two stray legacy get_health() callers (`pr#17269 `_, Sage Weil) +* mon: fix wrong mon-num counting logic of 'ceph features' command (`pr#16887 `_, xie xingguo) +* mon: handle bad snapshot removal reqs gracefully (`issue#18746 `_, `pr#20835 `_, Paul Emmerich) +* mon: handle monitor lag when killing mgrs (`issue#20629 `_, `pr#18268 `_, John Spray) +* mon: incorrect MAX AVAIL in "ceph df" (`issue#21243 `_, `pr#17513 `_, liuchang0812) +* mon: invalid JSON returned when querying pool parameters (`issue#23200 `_, `pr#20745 `_, Chang Liu) +* mon/LogMonitor: call no_reply() on ignored log message (`pr#22104 `_, Sage Weil) +* mon: mark mgr reports as no_reply (`issue#22114 `_, `pr#21057 `_, Kefu Chai) +* mon: mark mon_allow_pool_delete as observed (`pr#18125 `_, Dan van der Ster) +* mon: mark OSD beacons and pg_create messages as no_reply (`issue#22114 `_, `pr#20517 `_, Greg Farnum) +* mon: mon/AuthMonitor: don't validate `fs authorize` caps with `valid_caps()` (`pr#21418 `_, Joao Eduardo Luis) +* mon: mon/ConfigMonitor: clean up prepare_command() (`pr#20911 `_, Gu Zhongyan) +* mon: mon/Elector: force election epoch bump on start (`issue#20949 `_, `pr#16944 `_, Sage Weil) +* mon: mon/Elector: remove unused member fields start_stamp and ack_stamp (`pr#21091 `_, runsisi) +* mon: mon/LogMonitor: "log last" should return up to n entries (`pr#18759 `_, Kefu Chai) +* mon: mon/MDSMonitor: fix clang build failure (`pr#20637 `_, Willem Jan Withagen) +* mon: mon,mgr: make osd_metric more popular and report slow ops to mgr (`issue#23045 `_, `pr#20660 `_, lvshanchun) +* mon: mon/MgrMonitor: limit mgrmap history (`issue#22257 `_, `pr#19185 `_, Sage Weil) +* mon: mon/MonCommands: fix copy-and-paste error (`pr#17271 `_, xie xingguo) +* mon: mon,option: set default value for mon_dns_srv_name (`issue#21204 `_, `pr#17539 `_, Kefu Chai) +* mon: mon/OSDMonitor: add location option for "crush add-bucket" command (`pr#17125 `_, xie xingguo) +* mon: mon/OSDMonitor: add 'osd crush set-all-straw-buckets-to-straw2' (`pr#18460 `_, Sage Weil) +* mon: mon/OSDMonitor: add plain output for "crush class ls-osd" command (`pr#17034 `_, xie xingguo) +* mon: mon/OSDMonitor: add space after __func__ in log msg (`pr#19127 `_, Kefu Chai) +* mon: mon/OSDMonitor: Better prepare_command_pool_set E2BIG error message (`pr#19944 `_, Brad Hubbard) +* mon: mon/OSDMonitor.cc: fix expected_num_objects interpret error (`issue#22530 `_, `pr#19651 `_, Yang Honggang) +* mon: mon/OSDMonitor.cc : set erasure-code-profile to "" when create replicated pools (`pr#19673 `_, zouaiguo) +* mon: mon/OSDMonitor: check last_scan_epoch instead when sending creates (`issue#20785 `_, `pr#17248 `_, Kefu Chai) +* mon: mon/OSDMonitor: clean up cmd 'osd tree-from' (`pr#20839 `_, Gu Zhongyan) +* mon: mon/OSDMonitor: do not send_pg_creates with stale info (`issue#20785 `_, `pr#17065 `_, Kefu Chai) +* mon: mon/OSDMonitor: error out if setting ruleset-\* ec profile property (`pr#17848 `_, Sage Weil) +* mon: mon/OSDMonitor: fix improper input/testing range of crush somke testing (`pr#17179 `_, xie xingguo) +* mon: mon/OSDMonitor: fix 'osd pg temp' unable to cleanup pg-temp (`pr#16892 `_, xie xingguo) +* mon: mon/OSDMonitor: implement 'osd crush ls ' (`pr#16920 `_, Sage Weil) +* mon: mon/OSDMonitor: kill pending upmap changes too if pool is gone (`pr#20704 `_, xie xingguo) +* mon: mon/OSDMonitor: logging non-active osd id when handling osd beacon (`pr#21092 `_, runsisi) +* mon: mon/OSDMonitor: make 'osd crush rule rename' idempotent (`issue#21162 `_, `pr#17329 `_, xie xingguo) +* mon: mon/OSDMonitor: "osd pool application get" support (`issue#20976 `_, `pr#16955 `_, xie xingguo) +* mon: mon/OSDMonitor: txsize should be greater or eq to prune_interval - 1 (`pr#21430 `_, Kefu Chai) +* mon: mon/PGMap: drop DISK LOG column (`pr#17617 `_, Sage Weil) +* mon: mon/PGMap: fix "0 stuck requests are blocked > 4096 sec" warn (`pr#17099 `_, xie xingguo) +* mon: mon/PGMap: nice numbers for 'data' section of 'ceph df' command (`pr#17368 `_, xie xingguo) +* mon: mon/PGMap: Remove unnecessary header (`pr#18343 `_, Shinobu Kinjo) +* mon: mon/PGMap: reweight::by_utilization - skip DNE osds (`issue#20970 `_, `pr#17064 `_, xie xingguo) +* mon: mon/pgmap: update pool nearfull display (`pr#17043 `_, huanwen ren) +* mon: more aggressively convert crush rulesets -> distinct rules (`pr#17508 `_, John Spray, Sage Weil) +* mon: more constness (`pr#17748 `_, Kefu Chai) +* mon: node ls improvement (`pr#20820 `_, Gu Zhongyan) +* mon: 'node ls' mgr support (`pr#20711 `_, Gu Zhongyan) +* mon: NULL check of logger before use (`pr#18788 `_, Amit Kumar) +* mon,osd: dump "compression_algorithms" in "mon metadata" (`issue#24135 `_, `issue#22420 `_, `pr#22004 `_, Kefu Chai, Casey Bodley) +* mon: osd feature checks with 0 up osds (`issue#21471 `_, `issue#20751 `_, `pr#17831 `_, Brad Hubbard, Sage Weil) +* mon: osdmap prune (`pr#19331 `_, Joao Eduardo Luis) +* mon/OSDMonitor: cleanup: move bufferlist before use (`pr#18258 `_, Shinobu Kinjo) +* mon/OSDMonitor: use new style options (`pr#18209 `_, Kefu Chai) +* mon: osd/OSDMap.h: toss osd out if it has no more pending states (`pr#19642 `_, xie xingguo) +* mon: paxos cleanup (`pr#20078 `_, huanwen ren) +* mon/PGMap: let pg_string_state() return boost::optional<> (`issue#21609 `_, `pr#18218 `_, Kefu Chai) +* mon/PGMap: use new-style options and cleanup (`pr#18647 `_, Kefu Chai) +* mon: post-luminous cleanup (part 3 of ?) (`pr#17607 `_, Sage Weil) +* mon: rate limit on health check update logging (`issue#20888 `_, `pr#16942 `_, John Spray) +* mon: reenable timer to send digest when paxos is temporarily inactive (`issue#22142 `_, `pr#19404 `_, Jan Fajerski) +* mon: remove health service (`pr#20119 `_, Chang Liu) +* mon: remove_is_write_ready() (`pr#19191 `_, Kefu Chai) +* mon: remove pre-luminous compat cruft (2 of many) (`pr#17322 `_, Sage Weil) +* mon: remove unused waiting_for_commit (`pr#18617 `_, Kefu Chai) +* mon: return directly after health_events_cleanup (`pr#16964 `_, wang yang) +* mon: revert mds metadata argument name change (`issue#22527 `_, `pr#19926 `_, Patrick Donnelly) +* mon: show feature flags when printing MonSession (`pr#17535 `_, Paul Emmerich) +* mon: some cleanup (`pr#17067 `_, huanwen ren) +* mon,tests: vstart: set osd_pool_default_erasure_code_profile in initial ceph.conf (`pr#21008 `_, Mykola Golub) +* mon: update get_store_prefixes implementations (`issue#21534 `_, `pr#17940 `_, John Spray, huanwen ren) +* mon: update PaxosService::cached_first_committed in PaxosService::maybe_trim() (`issue#11332 `_, `pr#19397 `_, Xuehan Xu, yupeng chen) +* mon: use ceph_clock_now if message is self-generated (`pr#17311 `_, huangjun) +* mon: warn about using osd new instead of osd create (`issue#21023 `_, `pr#17242 `_, Neha Ojha) +* msg/async/AsyncConnection: remove legacy feature case handle (`pr#18469 `_, Haomai Wang) +* msg/async: avoid referencing the temporary string (`pr#20640 `_, Kefu Chai) +* msg/async: batch handle msg_iovlen (`pr#18415 `_, Jianpeng Ma) +* msg/async/dpdk: remove xsky copyright and LGPL copying (`pr#21121 `_, Kefu Chai) +* msg/async/EventKqueue: assert on OOM (`pr#21488 `_, Kefu Chai) +* msg/async: fix ms_dpdk_coremask and ms_dpdk_coremask conflict (`pr#18678 `_, chunmei) +* msg/async:fix the incoming parameter type of EventCenter::process_events() (`pr#20607 `_, shangfufei) +* msg/async misc cleanup (`pr#18531 `_, Jianpeng Ma) +* msg/async: misc cleanup (`pr#18575 `_, Jianpeng Ma) +* msg/async/rdma: a tiny typo fix (`pr#18660 `_, Yan Lei) +* msg/async/rdma: fix a coredump introduced by PR #18053 (`pr#18204 `_, Yan Lei) +* msg/async/rdma: fix a potential coredump when handling tx_buffers under heavy RDMA (`pr#18036 `_, Yan Lei) +* msg/async/rdma: fixes crash for multi rados client within one process (`pr#16981 `_, Alex Mikheev, Haomai Wang, Adir Lev) +* msg/async/rdma: fix Tx buffer leakage that can introduce "heartbeat no reply" (`pr#18053 `_, Yan Lei) +* msg/async/rdma: refactor rx buffer pool allocator (`pr#17018 `_, Alex Mikheev) +* msg/async/rdma: unnecessary reinitiliazation of an iterator (`pr#18190 `_, JustL) +* msg/async: size of EventCenter::file_events should be greater than fd (`issue#23253 `_, `pr#20764 `_, Yupeng Chen) +* msg/async: use bitset<> to do the popcnt (`pr#18681 `_, Kefu Chai) +* msg/async: use device before checking (`pr#19738 `_, Xiaoyan Li) +* msg: drop duplicate include (`pr#19623 `_, /bin/bash) +* msg: drop the unnecessary polling_stop() (`pr#17079 `_, Jos Collin) +* msg: Initialize lkey,bound,port_cnt,num_chunk,gid_idx (`pr#17797 `_, Amit Kumar) +* msg: Initializing class members in module msg (`pr#17568 `_, Amit Kumar) +* msg: reimplement sigpipe blocking (`pr#18105 `_, Greg Farnum) +* msg: remove the ),it's redundant (`pr#17544 `_, linxuhua) +* msg: resurrect support for !CEPH_FEATURE_MSG_AUTH (`pr#19044 `_, Ilya Dryomov) +* msgr: Optimization for connection establishment (`pr#16006 `_, shangfufei) +* msg/simple: pass a char for reading from shutdown_rd_fd (`pr#19094 `_, Kefu Chai) +* NVMDevice: fix issued caused by #17002 (`pr#17112 `_, Ziye Yang) +* objclass-sdk: expose __cls_init() to the world (`pr#21581 `_, Kefu Chai) +* objecter: minor cleanups (`pr#19994 `_, runsisi) +* os/bluestore/bluestore_tool: Move redundant code into one method (`pr#19160 `_, Shinobu Kinjo) +* os/bluestore: implement BlueRocksEnv::AreFilesSame() (`issue#21842 `_, `pr#18392 `_, Kefu Chai) +* os/bluestore: simplify and fix SharedBlob::put() (`issue#24211 `_, `pr#22170 `_, Sage Weil) +* osd: additional protection for out-of-bounds EC reads (`issue#21629 `_, `pr#18088 `_, Jason Dillaman) +* osd: add multiple objecter finishers (`pr#16521 `_, Myoungwon Oh) +* osd: add num_object_manifest (`pr#20690 `_, Myoungwon Oh) +* osd: add numpg_removing metric (`pr#18450 `_, Sage Weil) +* osd: add processed_subop_count for cls_cxx_subop_version() (`issue#21964 `_, `pr#18610 `_, Casey Bodley) +* osd: add scrub week day constraint (`pr#18368 `_, kungf) +* osd: adjust osd_min_pg_log_entries (`issue#21026 `_, `pr#17075 `_, J. Eric Ivancich) +* osd: allow FULL_TRY after failsafe (`pr#17177 `_, Pan Liu) +* osd: allow PG recovery scheduling preemption (`pr#17839 `_, Sage Weil) +* osd: async recovery (`pr#19811 `_, Neha Ojha) +* osd: avoid encoding the same log entries repeatedly for different peers (`pr#20201 `_, Jianpeng Ma) +* osd: avoid the config's get_val() overhead on the read path (`pr#20217 `_, Radoslaw Zarzynski) +* osd: avoid unnecessary ref-counting across PrimaryLogPG::get_rw_locks (`pr#21028 `_, Radoslaw Zarzynski) +* osd: be more precise about our asserts and cases when rebuilding missing sets (`issue#20985 `_, `pr#17000 `_, Greg Farnum) +* osd: bring in dmclock library changes (`pr#16755 `_, J. Eric Ivancich) +* osd: bring in latest dmclock library updates (`pr#17997 `_, J. Eric Ivancich) +* osd: cap snaptrimq_len at 2^32 (`pr#21107 `_, Kefu Chai) +* osd: change log level when withholding pg creation (`issue#22440 `_, `pr#20167 `_, Dan van der Ster) +* osd: change op delayed state to 'waiting for scrub' (`pr#19295 `_, kungf) +* osd: Change shard digests to hex like object info digests (`pr#21362 `_, David Zafman) +* osd: change the conditional in _update_calc_stats (`pr#13383 `_, Zhiqiang Wang) +* osd: check feature bits when encoding objectstore_perf_stat_t (`pr#20378 `_, Kefu Chai) +* osd: clean up dup index logic; maintain index flag logic in fewer places (`pr#16829 `_, J. Eric Ivancich) +* osd: clean up pre-luminous compat cruft (part 1 of many) (`pr#17247 `_, Sage Weil) +* osd: cleanups (`pr#17753 `_, Kefu Chai) +* osdc/Objecter: using coarse_mono instead (`pr#18473 `_, Haomai Wang) +* osdc/Objector: use std::shared_mutex instead of boost::shared_mutex (`issue#23910 `_, `pr#21702 `_, Abhishek Lekshmanan) +* osd: correct several spell errors in comments (`pr#21064 `_, songweibin) +* osdc: Remove a bit too redundant public label (`pr#19466 `_, Shinobu Kinjo) +* osdc: self-managed snapshot helper should catch decode exception (`issue#24103 `_, `issue#24000 `_, `pr#21958 `_, Jason Dillaman) +* osd: debug dispatch_context cases where queries not sent (`pr#20917 `_, Sage Weil) +* osd: Deleting dead code PrimaryLogPG.cc (`pr#17339 `_, Amit Kumar) +* osd: don't crash on empty snapset (`issue#23851 `_, `pr#21058 `_, Mykola Golub, Igor Fedotov) +* osd: Don't include same header twice (`pr#18319 `_, Shinobu Kinjo) +* osd: Don't initialze pointers by NULL or 0 (`pr#18311 `_, Shinobu Kinjo) +* osd: don't memcpy hobject_t in PrimaryLogPG::close_op_ctx() (`pr#21029 `_, Radoslaw Zarzynski) +* osd: don't process ostream strings when not debugging (`pr#20298 `_, Mark Nelson) +* osd: drop redundant comment (`pr#20347 `_, songweibin) +* osd: Drop the unused code in OSD::_collect_metadata (`pr#17131 `_, Luo Kexue) +* osd: drop unused osd_disk_tp related options (`pr#21339 `_, Gu Zhongyan) +* osd: eliminate ineffective container operations (`pr#19099 `_, Igor Fedotov) +* osd: enumerate device names in a simple way (`pr#18453 `_, Sage Weil) +* osd: exit(1) directly without lock if init fails (`pr#16647 `_, Kefu Chai) +* osd: fast dispatch of peering events and pg_map + osd sharded wq refactor (`pr#19973 `_, Sage Weil) +* osd: fine-grained statistics of logical object space usage (`pr#15199 `_, xie xingguo) +* osd: Fix assert when checking missing version (`issue#21218 `_, `pr#20410 `_, David Zafman) +* osd: fix a valgrind issue (conditional jump depends on uninitialized value) (`issue#22641 `_, `pr#19874 `_, Myoungwon Oh) +* osd: fix bug which cause can't erase OSDShardPGSlot (`pr#21771 `_, Jianpeng Ma) +* osd: fix build_initial_pg_history (`issue#21203 `_, `pr#17423 `_, w11979, Sage Weil) +* osd: fix crash caused by divide by zero in heartbeat code (`pr#21373 `_, Piotr Dałek) +* osd: fix dpdk memzon mz_name setting issue (`pr#19809 `_, chunmei Liu) +* osd: fix dpdk runtime issue based on spdk/dpdk libarary (`pr#19559 `_, chunmei Liu) +* osd: fix dpdk worker references issue (`pr#19886 `_, chunmei Liu) +* osd: Fixes for osd_scrub_during_recovery handling (`issue#18206 `_, `pr#17039 `_, David Zafman) +* osd: fix out of order caused by letting old msg from down osd be processed (`issue#22570 `_, `pr#19796 `_, Mingxin Liu) +* osd: fix _process handling for pg vs slot race (`pr#21745 `_, Sage Weil) +* osd: fix recovery reservation bugs, and implement remote reservation preemption (`pr#18485 `_, Sage Weil) +* osd: fix replica/backfill target handling of REJECT (`issue#21613 `_, `pr#18070 `_, Sage Weil) +* osd: fix reqid assignment for reply messages in OpRequest (`pr#17060 `_, Yingxin Cheng) +* osd: fix s390x build failure (`issue#23238 `_, `pr#20969 `_, Nathan Cutler) +* osd: fix typos and some cleanups (`pr#19211 `_, Enming Zhang) +* osd: fix unordered read bug (for chunked object) (`issue#22369 `_, `pr#19464 `_, Myoungwon Oh) +* osd: fix waiting_for_peered vs flushing (`issue#21407 `_, `pr#17759 `_, Sage Weil) +* osd: flush operations for chunked objects (`pr#19294 `_, Myoungwon Oh) +* osd: generalize queueing and lock interface for OpWq (`pr#16030 `_, Myoungwon Oh, Kefu Chai, Samuel Just) +* osd: get loadavg per cpu for scrub load threshold check (`pr#17718 `_, kungf) +* osd: get rid off extent map in object_info (`pr#19616 `_, Igor Fedotov) +* osd: hold lock while accessing recovery_needs_sleep (`issue#21566 `_, `pr#18022 `_, Neha Ojha) +* osd: Improve recovery stat handling by using peer_missing and missing_loc info (`issue#22837 `_, `pr#20220 `_, Sage Weil, David Zafman) +* osd: Improve size scrub error handling and ignore system attrs in xattr checking (`issue#20243 `_, `issue#18836 `_, `pr#16407 `_, David Zafman) +* osd: include front_iface+back_iface in metadata (`issue#20956 `_, `pr#16941 `_, John Spray) +* osd: Initialization of data members (`pr#17691 `_, Amit Kumar) +* osd: Initialization of pointer cls (`pr#17115 `_, amitkuma) +* osd: Initializing start_offset,last_offset,offset (`pr#19333 `_, Amit Kumar) +* osd: initial minimal efforts to clean up PG interface (`pr#17708 `_, Sage Weil) +* osd: introduce sub-chunks to erasure code plugin interface (`issue#19278 `_, `pr#15193 `_, Myna Vajha) +* osd: kill snapdirs (`pr#17579 `_, Sage Weil) +* osd: Make dmclock's anticipation timeout be configurable (`pr#18827 `_, Taewoong Kim) +* osd: make operations on ReplicatedBackend::in_progress_ops more effective (`pr#19035 `_, Igor Fedotov) +* osd: make PG::\*Force\* event structs public (`pr#21312 `_, Willem Jan Withagen) +* osd: make scrub no deadline when max interval is zero (`pr#18354 `_, kungf) +* osd: make scrub right now when pg stats_invalid is true (`pr#17884 `_, kungf) +* osd: make scrub wait for ec read/modify/writes to apply (`issue#23339 `_, `pr#20944 `_, Sage Weil) +* osd: make snapmapper warn+clean up instead of assert (`issue#22752 `_, `pr#20040 `_, Sage Weil) +* osd: make stat_bytes and stat_bytes_used counters PRIO_USEFUL (`issue#21981 `_, `pr#18637 `_, Yao Zongyou) +* osd: make the PG's SORTBITWISE assert a more generous shutdown (`issue#20416 `_, `pr#18047 `_, Greg Farnum) +* osd: Making use of find to reduce computational complexity (`pr#19732 `_, Shinobu Kinjo) +* osd: migrate PGLOG\_\* macros to constexpr (`issue#20811 `_, `pr#19352 `_, Jesse Williamson) +* osd: minor optimizations for op wq (`pr#17704 `_, Sage Weil, J. Eric Ivancich) +* osd: min_pg_log_entries == max == pg_log_dups_tracked (`pr#20394 `_, Sage Weil) +* osd: misc cleanups (`pr#17430 `_, songweibin) +* osd: miscellaneous cleanups (`pr#21431 `_, songweibin) +* osd: more debugging for snapmapper bug (`issue#21557 `_, `pr#19366 `_, Sage Weil) +* osd: object added to missing set for backfill, but is not in recovering, error! (`issue#18162 `_, `pr#18145 `_, David Zafman) +* osd: only exit if \*latest\* map(s) say we are destroyed (`issue#22673 `_, `pr#19988 `_, Sage Weil) +* osd: Only scan for omap corruption once (`issue#21328 `_, `pr#17705 `_, David Zafman) +* osd,os,io: Initializing C_ProxyChunkRead members,queue,request (`pr#19336 `_, amitkuma) +* osd: pass ops_blocked_by_scrub() to requeue_scrub() (`pr#20319 `_, Kefu Chai) +* osd: pass pool options to ObjectStore on pg create (`issue#22419 `_, `pr#19486 `_, Sage Weil) +* osd/PG: fix clang build vs private state events (`pr#18217 `_, Sage Weil) +* osd/PG: handle flushed event directly (`pr#19441 `_, wumingqiao) +* osd/PrimaryLogPG: derr when object size becomes over osd_max_object_size (`pr#19049 `_, Shinobu Kinjo) +* osd: process _scan_snaps() with all snapshots with head (`issue#22881 `_, `issue#23909 `_, `pr#21546 `_, David Zafman) +* osd: publish osdmap to OSDService before starting wq threads (`issue#21977 `_, `pr#21623 `_, Sage Weil) +* osd: pull latest dmclock subtree (`pr#19345 `_, J. Eric Ivancich) +* osd: put peering events in main sharded wq (`pr#18752 `_, Sage Weil) +* osd: put pg removal in op_wq (`pr#19433 `_, Sage Weil) +* osd: reduce all_info map find to get primary (`pr#19425 `_, kungf) +* osd: refcount for manifest object (redirect, chunked) (`pr#19935 `_, Myoungwon Oh) +* osd: remove cost from mclock op queues; cost not handled well in dmclock (`pr#21428 `_, J. Eric Ivancich) +* osd: Remove double space (`pr#19296 `_, Shinobu Kinjo) +* osd: remove duplicated "commit_queued_for_journal_write" in OpTracker (`issue#23440 `_, `pr#21018 `_, ashitakasam) +* osd: remove duplicated function ec_pool in pg_pool_t (`pr#18059 `_, Chang Liu) +* osd: Remove redundant local variable declaration (`pr#19812 `_, Shinobu Kinjo) +* osd: Remove unnecessary headers (`pr#19735 `_, Shinobu Kinjo) +* osd: remove unused ReplicatedBackend::objects_read_async() (`pr#18779 `_, Kefu Chai) +* osd: remove unused variable in do_proxy_write (`pr#17391 `_, Myoungwon Oh) +* osd: replace mclock subop opclass w/ rep_op opclass; combine duplicated code (`pr#18194 `_, J. Eric Ivancich) +* osd: replace vectors_equal() with operator==(vector<>, vector<>) (`pr#18064 `_, Kefu Chai) +* osd: request new map from PG when needed (`issue#21428 `_, `pr#17795 `_, Josh Durgin) +* osd: resend osd_pgtemp if it's not acked (`issue#23610 `_, `pr#21310 `_, Kefu Chai) +* osd: Revert use of dmclock message feature bit since not yet finalized (`pr#21398 `_, J. Eric Ivancich) +* osd,rgw,librbd: SCA fixes (`pr#18495 `_, Danny Al-Gaaf) +* osd: set min_version to newest version in maybe_force_recovery (`pr#17752 `_, Xinze Chi) +* osd: Sign in early SIGHUP signal (`issue#22746 `_, `pr#19958 `_, huanwen ren) +* osd: silence maybe-uninitialized false positives (`pr#19820 `_, Yao Zongyou) +* osd: silence warnings from -Wsign-compare (`pr#17872 `_, Jos Collin) +* osd: skip dumping logical devices (`pr#20740 `_, songweibin) +* osd: speed up get_key_name (`issue#21026 `_, `pr#17071 `_, J. Eric Ivancich) +* osd: s/random_shuffle()/shuffle()/ (`pr#19872 `_, Willem Jan Withagen, Kefu Chai, Greg Farnum) +* osd: subscribe osdmaps if any pending pgs (`issue#22113 `_, `pr#18916 `_, Kefu Chai) +* osd: subscribe to new osdmap while waiting_for_healthy (`issue#21121 `_, `pr#17244 `_, Sage Weil) +* osd: support class method whitelisting within caps (`pr#19786 `_, Jason Dillaman) +* osd: treat successful and erroroneous writes the same for log trimming (`issue#22050 `_, `pr#20827 `_, Josh Durgin) +* osd: two cleanups (`pr#20830 `_, songweibin) +* osd: update dmclock library w git subtree pull (`pr#17737 `_, J. Eric Ivancich) +* osd: update info only if new_interval (`pr#17437 `_, Kefu Chai) +* osd: update store with options after pg is created (`issue#22419 `_, `pr#20044 `_, Kefu Chai) +* osd: use dmclock library client_info_f function dynamically (`pr#17063 `_, bspark) +* osd: use existing osd_required variable for messenger policy (`pr#20223 `_, Yan Jun) +* osd: use prefix increment for non trivial iterator (`pr#19097 `_, Kefu Chai) +* osd: Use specializations, typedefs instead (`pr#19354 `_, Shinobu Kinjo) +* osd: Warn about objects with too many omap entries (`pr#16332 `_, Brad Hubbard) +* os/filestore/HashIndex.h: fixed a typo in comment (`pr#17685 `_, yaoguotao) +* os: Initializing uninitialized members aio_info (`pr#17066 `_, amitkuma) +* os: Removing dead code from LFNIndex.cc (`pr#17297 `_, Amit Kumar) +* prometheus: Handle the TIME perf counter type metrics (`pr#21749 `_, Boris Ranto) +* pybind: add return note in rbd.pyx (`pr#21768 `_, Zheng Yin) +* pybind/ceph_daemon: expand the order of magnitude of (`issue#23962 `_, `pr#21836 `_, Guan yunfei) +* pybind: fix chart size become bigger when refresh (`issue#20746 `_, `pr#16857 `_, Yixing Yan) +* pybind: mgr/dashboard: fix rbd's pool sub menu (`pr#16774 `_, yanyx) +* pybind,rbd: pybind/rbd: support open the image by image_id (`pr#19361 `_, songweibin) +* pybind: remove unused get_ceph_version() (`pr#17727 `_, Kefu Chai) +* qa: add cbt repo parameter (`pr#18543 `_, Neha Ojha) +* qa: Add cephmetrics suite (`pr#18451 `_, Zack Cerza) +* qa: add upgrade/luminous-x suite (`pr#17160 `_, Yuri Weinstein) +* qa/crontab: run the perf-basic suite every day (`pr#21252 `_, Neha Ojha) +* qa: Decreased amount of jobs on master, kraken, luminous runs (`pr#17069 `_, Yuri Weinstein) +* qa: install collectl with cbt task (`pr#19324 `_, Neha Ojha) +* qa: mimic-dev1 backports to avoid trusty nodes (`pr#19600 `_, Kefu Chai) +* qa: preserve cbt task results (`pr#19364 `_, Neha Ojha) +* qa: qa/ceph-disk: enlarge the simulated SCSI disk (`issue#22136 `_, `pr#19199 `_, Kefu Chai) +* qa/suites/perf-basic: add desc regarding test machines (`pr#21183 `_, Neha Ojha) +* qa/suites/rados/multimon/tasks/mon_lock_with_skew: whitelist PG (`pr#17004 `_, Sage Weil) +* qa/suites/rados/perf: add optimized settings (`pr#17786 `_, Neha Ojha) +* qa/suites/rados/perf: add workloads (`pr#18573 `_, Neha Ojha) +* qa/suites/rados/verify/validater/valgrind: whitelist PG (`pr#17005 `_, Sage Weil) +* qa/suites/upgrade/jewel-x/parallel: tolerate laggy mgr (`pr#17227 `_, Sage Weil) +* qa/suites/upgrade/kraken-x: fixes (`pr#16881 `_, Sage Weil) +* qa/suites/upgrade/luminous-x fixes (`pr#22101 `_, Sage Weil) +* qa/tests - Added options to use both cases: mon.a and installer.0 (`pr#19745 `_, Yuri Weinstein) +* qa/tests - Fixed typo in crontab entry (`pr#21482 `_, Yuri Weinstein) +* qa/tests: fixed typo (`pr#21728 `_, Yuri Weinstein) +* qa/tests - minor clean ups and made perf-suite run 3 times, so we can… (`pr#21309 `_, Yuri Weinstein) +* qa/tests - one more typo fixed :( (`pr#21483 `_, Yuri Weinstein) +* qa/tests: removed rest suite from the mix (`pr#21743 `_, Yuri Weinstein) +* qa: wait longer for osd to flush pg stats (`issue#24321 `_, `pr#22288 `_, Kefu Chai) +* qa/workunits/ceph-disk: --no-mon-config (`pr#21956 `_, Kefu Chai) +* rados: make ceph_perf_msgr_client work for multiple jobs (`issue#22103 `_, `pr#18877 `_, Jeegn Chen) +* rbd: add deep cp CLI method (`pr#19996 `_, songweibin) +* rbd: add group rename methods (`issue#22981 `_, `pr#20577 `_, songweibin) +* rbd: add notrim option to rbd map (`pr#21056 `_, Hitoshi Kamei) +* rbd: add parent info when moving child into trash bin (`pr#19280 `_, songweibin) +* rbd: adjusted "lock list" JSON and XML formatted output (`pr#19900 `_, Jason Dillaman) +* rbd: adjusted "showmapped" JSON and XML formatted output (`pr#19937 `_, Mykola Golub) +* rbd: allow remove all unprotected snapshots (`issue#23126 `_, `pr#20608 `_, songweibin) +* rbd: allow trash rm/purge when pool quota is full used (`pr#20697 `_, songweibin) +* rbd: backport of mimic bug fixes (`issue#24009 `_, `issue#24008 `_, `pr#21930 `_, Jason Dillaman) +* rbd: check if an image is already mapped before rbd map (`issue#20580 `_, `pr#16517 `_, Jing Li) +* rbd: children list should support snapshot id optional (`issue#23399 `_, `pr#20966 `_, Jason Dillaman) +* rbd: cleanup handling of IEC byte units (`pr#21564 `_, Jason Dillaman) +* rbd: clean up warnings when mirror commands used on non-setup pool (`issue#21319 `_, `pr#17636 `_, Jason Dillaman) +* rbd: cls/journal: ensure tags are properly expired (`issue#21960 `_, `pr#18604 `_, Jason Dillaman) +* rbd: cls/journal: fixed possible infinite loop in expire_tags (`issue#21956 `_, `pr#18592 `_, Jason Dillaman) +* rbd: cls/journal: possible infinite loop within tag_list class method (`issue#21771 `_, `pr#18270 `_, Jason Dillaman) +* rbd: cls/rbd: group_image_list incorrectly flagged as RW (`issue#23388 `_, `pr#20939 `_, Jason Dillaman) +* rbd: cls/rbd: metadata_list not honoring max_return parameter (`issue#21247 `_, `pr#17499 `_, Jason Dillaman) +* rbd: cls/rbd: Silence gcc7 maybe-uninitialized warning (`pr#18504 `_, Brad Hubbard) +* rbd: common/options,librbd/Utils: refactor RBD feature validation (`pr#20014 `_, Sage Weil) +* rbd: disk usage on empty pool no longer returns an error message (`issue#22200 `_, `pr#19045 `_, Jason Dillaman) +* rbd: do not show title if there is no group snapshot (`pr#20311 `_, songweibin) +* rbd: don't overwrite the error code from the remove action (`pr#20481 `_, Jason Dillaman) +* rbd: drop unnecessary using declaration, etc (`pr#19005 `_, Shinobu Kinjo) +* rbd: eager-thick provisioning support (`pr#18317 `_, Hitoshi Kamei) +* rbd: export/import image-meta when we export/import an image (`pr#17134 `_, PCzhangPC) +* rbd: filter out UserSnapshotNamespace in do_disk_usage (`pr#20532 `_, songweibin) +* rbd: fix crash during map when "rw" option is specified (`issue#21808 `_, `pr#18313 `_, Peter Keresztes Schmidt) +* rbd: fix logically dead code in function list_process_image (`pr#16971 `_, Luo Kexue) +* rbd: fix rbd children listing when child is in trash (`issue#21893 `_, `pr#18483 `_, songweibin) +* rbd: fix thread_offsets calculation of rbd bench (`pr#20590 `_, Hitoshi Kamei) +* rbd: group misc cleanup and update rbd man page (`pr#20199 `_, songweibin) +* rbd: group snapshot rename (`pr#12431 `_, Victor Denisov) +* rbd: implement image qos in tokenbucket algorithm (`pr#17032 `_, Dongsheng Yang) +* rbd: import with option --export-format 2 fails to protect snapshot (`issue#23038 `_, `pr#20613 `_, songweibin) +* rbd: improve 'import-diff' corrupt input error messages (`issue#18844 `_, `pr#21249 `_, Jason Dillaman) +* rbd: Initializing m_finalize_ctx (`pr#17563 `_, Amit Kumar) +* rbd: introduce commands of "image-meta ls/rm" (`pr#16591 `_, PCzhangPC) +* rbd: journal: limit number of appends sent in one librados op (`issue#23526 `_, `pr#21157 `_, Mykola Golub) +* rbd: journal: trivial cleanup (`pr#19317 `_, Shinobu Kinjo) +* rbd: krbd: include sys/sysmacros.h for major, minor and makedev (`pr#20773 `_, Ilya Dryomov) +* rbd: krbd: rewrite "already mapped" code (`pr#17638 `_, Ilya Dryomov) +* rbd: librados/snap_set_diff: don't assert on empty snapset (`pr#20648 `_, Mykola Golub) +* rbd: librbd: create+truncate for whole-object layered discards (`issue#23285 `_, `pr#20809 `_, Ilya Dryomov) +* rbd: librbd: make rename request complete with filtered code (`issue#23068 `_, `pr#20507 `_, Mykola Golub) +* rbd: librbd misc cleanup (`pr#18419 `_, Jianpeng Ma) +* rbd: librbd: skip head object map update when deep copying object beyond image size (`pr#21586 `_, Mykola Golub) +* rbd: librbd: sync flush should re-use existing async flush logic (`pr#18403 `_, Jason Dillaman) +* rbd: librbd,test: address coverity false positives (`pr#17825 `_, Amit Kumar) +* rbd: mimic: librbd: deep copy optionally support flattening cloned image (`issue#22787 `_, `pr#22038 `_, Mykola Golub) +* rbd: mimic: rbd-mirror: optionally support active/active replication (`pr#22105 `_, Jason Dillaman) +* rbd: mimic: rbd-mirror: potential deadlock when running asok 'flush' command (`issue#24141 `_, `pr#22039 `_, Mykola Golub) +* rbd-mirror: additional thrasher testing (`pr#21697 `_, Jason Dillaman) +* rbd-mirror: clean up spurious error log messages (`issue#21961 `_, `pr#18601 `_, Jason Dillaman) +* rbd-mirror: cluster watcher should ensure it has latest OSD map (`issue#22461 `_, `pr#19550 `_, Jason Dillaman) +* rbd-mirror: ensure unique service daemon name is utilized (`pr#19492 `_, Jason Dillaman) +* rbd-mirror: fix potential infinite loop when formatting status message (`issue#22932 `_, `pr#20349 `_, Mykola Golub) +* rbd-mirror: forced promotion can result in incorrect status (`issue#21559 `_, `pr#17979 `_, Jason Dillaman) +* rbd-mirror: ImageMap memory leak fixes (`pr#19163 `_, Venky Shankar) +* rbd-mirror: Improve data pool selection when creating images (`pr#18006 `_, Adam Wolfe Gordon) +* rbd-mirror: integrate image map policy as incremental step to active-active (`pr#21300 `_, Jason Dillaman) +* rbd-mirror: introduce basic image mapping policy (`issue#18786 `_, `pr#15691 `_, Venky Shankar) +* rbd-mirror: missing lock when re-sending update_sync_point (`pr#19011 `_, Mykola Golub) +* rbd-mirror: persist image map timestamp (`pr#19338 `_, Venky Shankar) +* rbd-mirror: primary image should register in remote, non-primary image's journal (`issue#21561 `_, `pr#18136 `_, Jason Dillaman) +* rbd-mirror: properly translate remote tag mirror uuid for local mirror (`issue#23876 `_, `pr#21657 `_, Jason Dillaman) +* rbd-mirror: removed dedicated thread from image deleter (`issue#15322 `_, `pr#19000 `_, Jason Dillaman) +* rbd-mirror: rename asok hook to match image name when not replaying (`issue#23888 `_, `pr#21682 `_, Jason Dillaman) +* rbd-mirror: rollback state transitions in image policy (`pr#19577 `_, Venky Shankar) +* rbd-mirror: Set the data pool correctly when creating images (`issue#20567 `_, `pr#17073 `_, Adam Wolfe Gordon) +* rbd-mirror: simplify notifications for image assignment (`issue#15764 `_, `pr#16642 `_, Jason Dillaman) +* rbd-mirror: strip environment/CLI overrides for remote cluster (`issue#21894 `_, `pr#18490 `_, Jason Dillaman) +* rbd-mirror: support deferred deletions of mirrored images (`pr#19536 `_, Jason Dillaman) +* rbd-mirror: sync image metadata when transfering remote image (`issue#21535 `_, `pr#18026 `_, Jason Dillaman) +* rbd-mirror: track images in policy map in support of A/A (`issue#18786 `_, `pr#15788 `_, Venky Shankar) +* rbd-mirror: update asok hook name on image rename (`issue#20860 `_, `pr#16998 `_, Mykola Golub) +* rbd-mirror: use next transition state to check transition completeness (`pr#18969 `_, Venky Shankar) +* rbd-nbd: allow to unmap by image or snap spec (`pr#19666 `_, Mykola Golub) +* rbd-nbd: bug fix when running in container (`issue#22012 `_, `issue#22011 `_, `pr#18663 `_, Li Wang) +* rbd-nbd: certain kernels may not discover resized block devices (`issue#22131 `_, `pr#18947 `_, Jason Dillaman) +* rbd-nbd: cleanup for NBDServer shut down (`pr#17283 `_, Pan Liu) +* rbd-nbd: fix ebusy when do map (`issue#23528 `_, `pr#21142 `_, Li Wang) +* rbd-nbd: fix generic option issue (`issue#20426 `_, `pr#17375 `_, Pan Liu) +* rbd-nbd: output format support for list-mapped command (`pr#19704 `_, Mykola Golub) +* rbd-nbd: support optionally setting device timeout (`issue#22333 `_, `pr#19436 `_, Mykola Golub) +* rbd: null check before pool_name use (`pr#18790 `_, Amit Kumar) +* rbd: output notifyOp request name when watching (`pr#20551 `_, shun-s) +* rbd: parallelize "rbd ls -l" (`pr#15579 `_, Piotr Dałek) +* rbd: pool_percent_used should not divided by 100 (`pr#20795 `_, songweibin) +* rbd: properly pass ceph global command line args to subprocess (`pr#19821 `_, Mykola Golub) +* rbd: pybind/rbd: add deep_copy method (`pr#19406 `_, Mykola Golub) +* rbd: pybind/rbd: fix metadata functions error handling (`issue#22306 `_, `pr#19337 `_, Mykola Golub) +* rbd: python bindings fixes and improvements (`issue#23609 `_, `pr#21304 `_, Ricardo Dias) +* rbd: rbd-ggate: fix parsing ceph global options (`pr#19822 `_, Mykola Golub) +* rbd: rbd-ggate: fix syntax error (`pr#19919 `_, Willem Jan Withagen) +* rbd: rbd-ggate: make list command produce valid xml format output (`pr#19823 `_, Mykola Golub) +* rbd: rbd-ggate: small fixes and improvements (`pr#19679 `_, Mykola Golub) +* rbd: rbd-ggate: tool to map images on FreeBSD via GEOM Gate (`pr#15339 `_, Mykola Golub) +* rbd: rbd:introduce rbd bench rw(for read and write mix) test (`pr#17461 `_, PCzhangPC) +* rbd: rbd: set a default value for options in `nbd map` (`pr#20529 `_, songweibin) +* rbd: replace positional_path parameter with arg_index in get_path() (`pr#19722 `_, songweibin) +* rbd: replace trash delay option, add rbd trash purge command (`pr#18323 `_, Theofilos Mouratidis) +* rbd: resource agent needs to be executable (`issue#22980 `_, `issue#22362 `_, `pr#20397 `_, Tim Bishop) +* rbd:rm unnecessary conversion from string to char\* in image-meta function (`pr#17184 `_, PCzhangPC) +* rbd: show read:write proportion in the infomation of readwrite bench test (`pr#18249 `_, PCzhangPC) +* rbd: snap limit should't be set smaller than the number of existing snaps (`pr#16597 `_, PCzhangPC) +* rbd: support cloning an image from a non-primary snapshot (`issue#18480 `_, `pr#19724 `_, Jason Dillaman) +* rbd: support iterating over metadata items when listing (`issue#21179 `_, `pr#17532 `_, Jason Dillaman) +* rbd: support lock_timeout in rbd mapping (`pr#21344 `_, Dongsheng Yang) +* rbd: support osd_request_timeout in rbd map command (`issue#23073 `_, `pr#20792 `_, Dongsheng Yang) +* rbd: switched from legacy to new-style configuration options (`issue#20737 `_, `pr#16737 `_, Jason Dillaman) +* rbd,tests: qa: additional krbd discard test cases (`pr#20499 `_, Ilya Dryomov) +* rbd,tests: qa: fix POOL_APP_NOT_ENABLED warning in krbd:unmap suite (`pr#16966 `_, Ilya Dryomov) +* rbd,tests: qa: introduce rbd-mirror thrasher to existing tests (`issue#18753 `_, `pr#21541 `_, Jason Dillaman) +* rbd,tests: qa: krbd_exclusive_option.sh: add lock_timeout test case (`pr#21522 `_, Ilya Dryomov) +* rbd,tests: qa: krbd_fallocate.sh: add notrim test case (`pr#21513 `_, Ilya Dryomov) +* rbd,tests: qa: krbd huge-image test (`pr#20692 `_, Ilya Dryomov) +* rbd,tests: qa: krbd latest-osdmap-on-map test (`pr#20591 `_, Ilya Dryomov) +* rbd,tests: qa: krbd msgr-segments test (`pr#20714 `_, Ilya Dryomov) +* rbd,tests: qa: krbd parent-overlap test (`pr#20721 `_, Ilya Dryomov) +* rbd,tests: qa: krbd whole-object-discard test (`pr#20750 `_, Ilya Dryomov) +* rbd,tests: qa/suites/krbd: add krbd BLKROSET test (`pr#18652 `_, Ilya Dryomov) +* rbd,tests: qa/suites/krbd: enable generic/050 and generic/448 (`pr#18795 `_, Ilya Dryomov) +* rbd,tests: qa/suites/krbd: enable xfstests blockdev tests (`pr#17621 `_, Ilya Dryomov) +* rbd,tests: qa/suites/krbd: exclude shared/298 (`pr#17971 `_, Ilya Dryomov) +* rbd,tests: qa/suites/krbd: rbd_xfstests job overhaul (`pr#17346 `_, Ilya Dryomov) +* rbd,tests: qa/suites/rbd: fewer socket failures (`pr#19617 `_, Sage Weil) +* rbd,tests: qa/suites/rbd: miscellaneous test fixes (`issue#21251 `_, `pr#17504 `_, Jason Dillaman) +* rbd,tests: qa/suites/rbd: segregated v1 image format tests (`issue#22738 `_, `pr#20729 `_, Jason Dillaman) +* rbd,tests: qa/suites/rbd: set qemu task time_wait param (`pr#21131 `_, Mykola Golub) +* rbd,tests: qa/tasks/cram: include /usr/sbin in the PATH for all commands (`pr#18793 `_, Ilya Dryomov) +* rbd,tests: qa/tasks/rbd: run all xfstests runs to completion (`pr#18583 `_, Ilya Dryomov) +* rbd,tests: qa/workunits/rbd: fix cli_generic test_purge for rbd default format 1 (`pr#20389 `_, Mykola Golub) +* rbd,tests: qa/workunits/rbd: fixed variable name for resync image id (`issue#21663 `_, `pr#18097 `_, Jason Dillaman) +* rbd,tests: qa/workunits/rbd: fix issues within permissions test (`issue#23043 `_, `pr#20491 `_, Jason Dillaman) +* rbd,tests: qa/workunits/rbd: pool create may fail for small cluster (`pr#18067 `_, Mykola Golub) +* rbd,tests: qa/workunits/rbd: potential race in mirror disconnect test (`issue#23938 `_, `pr#21733 `_, Mykola Golub) +* rbd,tests: qa/workunits/rbd: relax greps to support upgrade formatting change (`issue#21181 `_, `pr#17559 `_, Jason Dillaman) +* rbd,tests: qa/workunits/rbd: remove sanity check in journal.sh test (`pr#20490 `_, Jason Dillaman) +* rbd,tests: qa/workunits/rbd: remove sanity check in test_admin_socket.sh (`pr#21116 `_, Mykola Golub) +* rbd,tests: qa/workunits/rbd: remove "trash purge --threshold" test (`issue#22803 `_, `pr#20170 `_, Mykola Golub) +* rbd,tests: qa/workunits/rbd: simplify split-brain test to avoid potential race (`issue#22485 `_, `pr#19604 `_, Jason Dillaman) +* rbd,tests: qa/workunits/rbd: switch devstack tempest to 17.2.0 tag (`issue#22961 `_, `pr#20599 `_, Jason Dillaman) +* rbd,tests: qa/workunits/rbd: switch devstack to pike release (`pr#20124 `_, Jason Dillaman) +* rbd,tests: qa/workunits/rbd: test data pool is mirrored correctly (`pr#17062 `_, Mykola Golub) +* rbd,tests: qa/workunits/rbd: unnecessary sleep after failed remove (`pr#18619 `_, Mykola Golub) +* rbd,tests: qa/workunits/rbd: use command line option to specify watcher asok (`issue#20954 `_, `pr#16917 `_, Mykola Golub) +* rbd,tests: qa/workunits/rbd: wait for demote status is propagated (`pr#19073 `_, Mykola Golub) +* rbd,tests: qa/workunits/rbd: wait for status propagated only if daemon started (`pr#19082 `_, Mykola Golub) +* rbd,tests: rbd/test: add snap protection test for ex/import (`pr#20689 `_, songweibin) +* rbd,tests: stop.sh: use --no-mon-config when trying to unmap rbd devices (`pr#21020 `_, Mykola Golub) +* rbd,tests: test: address coverity false positives (`pr#17803 `_, Amit Kumar) +* rbd,tests: test/cls_rbd: mask newer feature bits to support upgrade tests (`issue#21217 `_, `pr#17509 `_, Jason Dillaman) +* rbd,tests: test/librados_test_stub: always create copy of buffers passed to operation (`pr#21074 `_, Mykola Golub) +* rbd,tests: test/librbd: added update_features RPC message to test_notify (`issue#21936 `_, `pr#18561 `_, Jason Dillaman) +* rbd,tests: test/librbd: clean up for several mock function tests (`pr#18952 `_, Jason Dillaman) +* rbd,tests: test/librbd: Do not instantiate TrimRequest template class (`pr#19402 `_, Boris Ranto) +* rbd,tests: test/librbd: ensure OutOfOrder test has enough concurrent management ops (`pr#21436 `_, Mykola Golub) +* rbd,tests: test/librbd: fix mock method macro of set_journal_policy (`pr#17216 `_, Yan Jun) +* rbd,tests: test/librbd: fix race condition with OSD map refresh (`issue#20918 `_, `pr#16877 `_, Jason Dillaman) +* rbd,tests: test/librbd: fix valgrind memory leak warning (`pr#17187 `_, Mykola Golub) +* rbd,tests: test/librbd: initialize on_finish,locker,force,snap_id (`pr#17800 `_, Amit Kumar) +* rbd,tests: test/librbd: make fsx build on non-linux platform (`pr#16939 `_, Mykola Golub) +* rbd,tests: test/librbd: memory leak in recently added test (`pr#18478 `_, Mykola Golub) +* rbd,tests: test/librbd: rbd-ggate mode for fsx (`pr#19315 `_, Mykola Golub) +* rbd,tests: test/librbd: test metadata_set/remove is applied (`pr#18288 `_, Mykola Golub) +* rbd,tests: test/librbd: TestMirroringWatcher unit tests should ignore duplicates (`issue#21029 `_, `pr#17078 `_, Jason Dillaman) +* rbd,tests: test/librbd: utilize unique pool for cache tier testing (`issue#11502 `_, `pr#20486 `_, Jason Dillaman) +* rbd,tests: test/librbd: valgrind warning in TestMockManagedLockBreakRequest.DeadLockOwner (`pr#18940 `_, Mykola Golub) +* rbd,tests: test/pybind/rbd: skip test_deep_copy_clone if layering not enabled (`pr#20295 `_, Mykola Golub) +* rbd,tests: test/rbd: cli_generic fails if v1 image format or deep-flatten disabled (`issue#22950 `_, `pr#20364 `_, songweibin) +* rbd,tests: test/rbd_mirror: fix valgrind warnings in unittest (`pr#19016 `_, Mykola Golub) +* rbd,tests: test/rbd-mirror: image map policy test (`pr#19320 `_, Venky Shankar) +* rbd,tests: test/rbd-mirror: improve coverage for dead instance handling (`pr#21403 `_, Jason Dillaman) +* rbd,tests: test/rbd_mirror: "use of uninitialised value" valgrind warning (`pr#19437 `_, Mykola Golub) +* rbd,tools: rbd-fuse: make sure PATH_MAX is defined (`pr#18615 `_, Roberto Oliveira) +* rbd,tools: rbd-replay: remove boost dependency (`pr#21202 `_, Kefu Chai) +* rbd: tools/rbd: use steady clock in bencher (`pr#20008 `_, Mohamad Gebai) +* rbd: 'trash list --long' will return a failure on non-cloned images (`pr#19540 `_, Jason Dillaman) +* rbd: 'trash ls -l' will display column titles if existed non-USER trash image only (`pr#21343 `_, songweibin) +* rbd: unified way to map images using different drivers (`pr#19711 `_, Mykola Golub) +* rbd: use different logic to disturb thread's offset in bench seq test (`pr#17218 `_, PCzhangPC) +* Revert "ceph-fuse: Delete inode's bufferhead was in Tx state would le… (`pr#21976 `_, "Yan, Zheng") +* Revert "msg/async/rdma: fix multi cephcontext confllicting" (`pr#16980 `_, Haomai Wang) +* Revert "os/bluestore: compensate for bad freelistmanager size/blocks metadata" (`pr#17275 `_, Xie Xingguo) +* rgw: ability to list bucket contents in unsorted order for efficiency (`pr#21026 `_, J. Eric Ivancich) +* rgw: abort multipart if upload meta object doesn't exist (`pr#19918 `_, fang yuxiang) +* rgw: Access RGWConf through RGWEnv (`pr#17432 `_, Jos Collin) +* rgw: add "Accept-Ranges" to response header of Swift API (`issue#21554 `_, `pr#17967 `_, Tone Zhang) +* rgw: add a default redirect field for zones (`pr#9571 `_, Yehuda Sadeh) +* rgw: add an option to clear all usage entries (`pr#19322 `_, Abhishek Lekshmanan) +* rgw: add an option to recalculate user stats (`issue#23335 `_, `pr#20853 `_, Abhishek Lekshmanan) +* rgw: add buffering filter to compression for fetch_remote_obj (`issue#23547 `_, `pr#21479 `_, Casey Bodley) +* rgw: add cors header rule check in cors option request (`issue#22002 `_, `pr#18556 `_, yuliyang) +* rgw: Add dynamic resharding documentation (`issue#21553 `_, `pr#15941 `_, Orit Wasserman) +* rgw: add logs if get_data returns error in RGWPutObj::execute (`pr#18642 `_, Zhang Shaowen) +* rgw: add metadata and data sync related cmd into radosgw-admin usage (`pr#18921 `_, lvshanchun) +* rgw: add missing override in list_keys_init() (`pr#17254 `_, Jos Collin) +* rgw: add radosgw-admin sync error trim to trim sync error log (`pr#19854 `_, fang yuxiang) +* rgw: add reshard commands (`issue#21617 `_, `pr#18180 `_, Orit Wasserman) +* rgw: address warnings due to incorrect format code (`pr#18796 `_, J. Eric Ivancich) + rgw: Add retry_raced_bucket_write +* rgw: add rewrite cmd and options into radosgw-admin usage and doc (`pr#18918 `_, Enming Zhang) +* rgw: add ssl support to beast frontend (`issue#22832 `_, `pr#20464 `_, Casey Bodley) +* rgw: add support for Swift's per storage policy statistics (`issue#17932 `_, `pr#12704 `_, Radoslaw Zarzynski) +* rgw: add support for Swift's reversed account listings (`issue#21148 `_, `pr#17320 `_, Radoslaw Zarzynski) +* rgw: add support for tagging and other conditionals in policy (`pr#17094 `_, Abhishek Lekshmanan) +* rgw: add tail tag to track tail instance (`issue#20234 `_, `pr#16145 `_, Yehuda Sadeh) +* rgw: add tenant to shard_id in RGWDeleteLC::execute() (`pr#10460 `_, Wei Qiaomiao) +* rgw: add time skew check in function parse_v4_auth_header (`issue#22418 `_, `pr#19476 `_, Bingyin Zhang) + rgw: Add try_refresh_bucket_info function +* rgw: add xml output header in RGWCopyObj_ObjStore_S3 response msg (`issue#22416 `_, `pr#19475 `_, Enming Zhang) +* rgw: adjust log format for lifecycle (`pr#19576 `_, Bingyin Zhang) +* rgw: admin api - add ability to sync user stats from admin api (`issue#21301 `_, `pr#17589 `_, Nathan Johnson) +* rgw: Admin API Support for bucket quota change (`issue#21811 `_, `pr#18324 `_, Jeegn Chen) +* rgw: admin rest api shouldn't return error when getting user's stats if the user hasn't create any bucket (`pr#21551 `_, Zhang Shaowen) +* rgw: allow beast frontend to listen on specific IP address (`issue#22778 `_, `pr#20000 `_, Yuan Zhou) +* rgw: Allow swift acls to be deleted (`issue#22897 `_, `pr#20471 `_, Marcus Watts) +* rgw: avoid logging keystone revocation messages when not configured (`issue#21400 `_, `pr#17775 `_, Abhishek Lekshmanan) +* rgw: aws4 auth supports PutBucketRequestPayment (`issue#23803 `_, `pr#21569 `_, Casey Bodley) +* rgw: AWS v4 authorization work when INIT_MULTIPART is chunked (`issue#22129 `_, `pr#18956 `_, Jeegn Chen) +* rgw: beast frontend can listen on multiple endpoints (`issue#22779 `_, `pr#20188 `_, Casey Bodley) +* rgw: beast frontend no longer experimental (`pr#21272 `_, Casey Bodley) +* rgw: Better ERANGE error message (`issue#22351 `_, `pr#20023 `_, Brad Hubbard) +* rgw: break sending data-log list infinitely (`issue#20951 `_, `pr#16926 `_, fang.yuxiang) +* rgw: bucket resharding should not update bucket ACL or user stats (`issue#22742 `_, `issue#22124 `_, `pr#20038 `_, Orit Wasserman) +* rgw: Cache on the barrelhead (`issue#22517 `_, `pr#19581 `_, Adam C. Emerson) +* rgw: Cache Register! (`issue#22604 `_, `issue#22603 `_, `pr#20144 `_, Adam C. Emerson) +* rgw: can't download object with range when compression enabled (`issue#22852 `_, `pr#20226 `_, fang yuxiang) +* rgw: ceph-dencoder: add missing begin_iter & end_iter item for RGWObjManifest (`pr#19509 `_, wangsongbo) +* rgw: ceph-dencoder: add support for cls_rgw_lc_obj_head (`pr#18920 `_, Yao Zongyou) +* rgw: ceph-dencoder: add support for RGWLifecycleConfiguration (`pr#18959 `_, wangsongbo) +* rgw: change ObjectCache::lru from deque back to list (`issue#22560 `_, `pr#19768 `_, Casey Bodley) +* rgw: changes to support ragweed (`pr#13644 `_, Yehuda Sadeh) +* rgw: Check bucket CORS operations in policy (`issue#21578 `_, `pr#18000 `_, Adam C. Emerson) +* rgw: Check bucket GetBucketLocation in policy (`issue#21582 `_, `pr#18002 `_, Adam C. Emerson) +* rgw: Check bucket Website operations in policy (`issue#21597 `_, `pr#18024 `_, Adam C. Emerson) +* rgw: check going_down() when lifecycle processing (`issue#22099 `_, `pr#18846 `_, Yao Zongyou) +* rgw: Check payment operations in policy (`issue#21389 `_, `pr#17742 `_, Adam C. Emerson) +* rgw: check read_op.read return value in RGWRados::copy_obj_data (`pr#18962 `_, Enming Zhang) +* rgw: civetweb fixes for v1.1 upgrade (`pr#21123 `_, Abhishek Lekshmanan) +* rgw: clean code with helper function dump_header_if_nonempty (`pr#18979 `_, Xinying Song) +* rgw: clean up and fix some bugs for encryption (`issue#21581 `_, `pr#17882 `_, Enming Zhang) +* rgw: cleanup MIN macro with std::min (`pr#17546 `_, Jiaying Ren) +* rgw: cleanup unused parameters in RGWRados::copy_obj_data (`pr#18917 `_, Enming Zhang) +* rgw: cloud sync fixes (`pr#21648 `_, Yehuda Sadeh) +* rgw: cls/log: cls_log_list always returns next marker (`issue#20906 `_, `pr#17024 `_, Casey Bodley) +* rgw: cls/rgw: fix bi_log_iterate_entries return wrong truncated (`issue#22737 `_, `pr#20021 `_, Tianshan Qu) +* rgw: cls/rgw: Initialization of uninitialized members (`pr#16932 `_, amitkuma) +* rgw: cls/rgw: mtime in rgw_bucket_dir_entry_meta not really decoded (`issue#22148 `_, `pr#18981 `_, Yao Zongyou) +* rgw: cls/rgw: remove unused variable bl (`pr#19570 `_, Yao Zongyou) +* rgw: cls/rgw: trim all usage entries in cls_rgw (`issue#22234 `_, `pr#19131 `_, Abhishek Lekshmanan) +* rgw: cls_rgw: use more effective container operations in get_obj_vals (`pr#19272 `_, Xinying Song) +* rgw: comparison between signed and unsigned integer expressions (`pr#21105 `_, ashitakasam) +* rgw: consolidate code that implements hashing algorithms (`pr#18248 `_, J. Eric Ivancich) +* rgw: copy object add response error messages (`pr#18291 `_, Enming Zhang) +* rgw: correct comment in function parse_credentials (`pr#19275 `_, Bingyin Zhang) +* rgw: correct log output for metadata section name in RGWListBucketIndexesCR (`pr#19508 `_, Xinying Song) +* rgw: Correct permission evaluation to allow only admin users to work with Roles (`pr#20332 `_, Pritha Srivastava) +* rgw: correct typo refity to refit (`pr#19064 `_, Bingyin Zhang) +* rgw: correct typo UNKOWN to UNKNOWN (`pr#19273 `_, Bingyin Zhang) +* rgw: create sync-module instance when execute radosgw-admin data sync run (`issue#22080 `_, `pr#18898 `_, lvshanchun) +* rgw: create sync-module instance when radosgw-admin sync run (`pr#20611 `_, lvshanchun) +* rgw: curl\* reuse and for debian, use openssl not gnutls (`pr#20635 `_, Marcus Watts) +* rgw: Data encryption is not follow the AWS agreement (`pr#15994 `_, hechuang) +* rgw: datalog list support --shard-id and --marker (`pr#20649 `_, Tianshan Qu) +* rgw: data sync: set num_shards when building full maps (`issue#22083 `_, `pr#18852 `_, Abhishek Lekshmanan) +* rgw: Delete to_string functions. stringify defined in include/stringify.h can provide the same feature (`pr#18522 `_, zhangwen) +* rgw: disable dynamic resharding in multisite environment (`issue#21725 `_, `pr#18184 `_, Orit Wasserman) +* rgw: do not reflect period if not current (`issue#22844 `_, `pr#20212 `_, Tianshan Qu) +* rgw: do not update all gateway caches upon creation of system obj w/ exclusive flag (`pr#19384 `_, J. Eric Ivancich) +* rgw: don't change rados object's mtime when update olh (`issue#21743 `_, `pr#18214 `_, Shasha Lu) +* rgw: don't hold data_lock over frontend io (`pr#20621 `_, Casey Bodley) +* rgw: don't leak S3 LDAPHelper (`pr#12427 `_, Matt Benjamin) +* rgw: dont log EBUSY errors in 'sync error list' (`issue#22473 `_, `pr#19580 `_, Casey Bodley) +* rgw: dont reuse stale RGWObjectCtx for get_bucket_info() (`issue#21506 `_, `pr#17916 `_, Casey Bodley) +* rgw: don't write bucket_header when it is not changed in bucket_link/unlink (`pr#17356 `_, Shasha Lu) +* rgw: don't write bucket_header when it is not changed in rgw_bucket_prepare_op (`pr#18763 `_, Xinying Song) +* rgw: download object might fail for local invariable uninitialized (`issue#23146 `_, `pr#20612 `_, fang yuxiang) +* rgw: drop a repeated statement for encode_xml() (`pr#20195 `_, luomuyao) +* rgw: drop commented functions (`pr#19671 `_, Jos Collin) +* rgw: drop dump_uri_from_state() which isn't used anymore (`pr#19924 `_, Radoslaw Zarzynski) +* rgw: drop iter in rgw_op.cc (`pr#19583 `_, Bingyin Zhang) +* rgw: drop marker in RGWLC::process() (`pr#19591 `_, Bingyin Zhang) +* rgw: drop outdated function doc (`pr#18370 `_, Jiaying Ren) +* rgw: drop "realm remove" in radosgw-admin (`pr#18212 `_, Shasha Lu) +* rgw: drop redundant RGW_OP_STAT_OBJ check (`pr#19933 `_, Bingyin Zhang) +* rgw: drop the unnecessary handling of Swift's X-Storage-Policy on objects (`pr#16383 `_, Jiaying Ren) +* rgw: drop the unused function init_anon_user() (`pr#16874 `_, Radoslaw Zarzynski) +* rgw: Drop unnecessary return (`pr#17520 `_, Jos Collin) +* rgw: drop unused function apply_epoch (`pr#17593 `_, Shasha Lu) +* rgw: drop unused iter in XMLObj::find_first (`pr#19709 `_, luomuyao) +* rgw: drop unused variable bucket_instance_ids (`pr#19708 `_, Bingyin Zhang) +* rgw: drop unused variable in copy_obj_data() (`pr#18477 `_, Enming Zhang) +* rgw: drop unused vector elements (`pr#19815 `_, Bingyin Zhang) +* rgw: drop useless includes in rgw\_{main.cc, common.h} (`pr#19109 `_, Jiaying Ren) +* rgw: drop useless lines (`pr#19817 `_, Bingyin Zhang) +* rgw: drop useless type conversion (`pr#19824 `_, Bingyin Zhang) +* rgw: drop variable bl in rgw_op.cc (`pr#19584 `_, Bingyin Zhang) +* rgw: Drop #warning TODO (`issue#19851 `_, `pr#17012 `_, Jos Collin) +* rgw: dump Last-Modified in Swift's responses for GET/HEAD on container (`issue#20883 `_, `pr#16757 `_, Radoslaw Zarzynski) +* rgw: enable 'qlen' & 'qactive' performance counters (`pr#20842 `_, Mark Kogan) +* rgw: encoding fixes (`issue#23779 `_, `pr#21500 `_, Yehuda Sadeh) +* rgw: Error check on return of read_line() (`pr#17880 `_, Amit Kumar) +* rgw: es module: set compression type correctly (`issue#22758 `_, `pr#20796 `_, Abhishek Lekshmanan) +* rgw: evaluate the correct bucket action for GetACL bucket operation (`issue#21013 `_, `pr#17050 `_, Abhishek Lekshmanan) +* rgw: exit early if rgw_bucket_set_attrs() fails (`pr#17041 `_, dengxiafubi) + rgw: Expire entries in bucket info cache +* rgw_file: fix write error when the write offset overlaps (`issue#21455 `_, `pr#17809 `_, Yao Zongyou) +* rgw: fix a bug in rgw cache in delete_system_obj and get_system_obj (`pr#10992 `_, zhangshaowen) +* rgw: fix accessing expired memory in PrefixableSignatureHelper (`issue#21085 `_, `pr#17206 `_, Radoslaw Zarzynski) +* rgw: fix a typo in comment (`pr#19608 `_, luomuyao) +* rgw: fix a typo in comment (`pr#20164 `_, luomuyao) +* rgw: fix a typo in comment (`pr#20355 `_, luomuyao) +* rgw: fix a typo in rgw_perms[] (`pr#20024 `_, luomuyao) +* rgw: fix bilog entries on multipart complete (`issue#21772 `_, `pr#18271 `_, Casey Bodley) +* rgw: fix BZ 1500904, stale bucket index entry remains after obj delete (`pr#18709 `_, J. Eric Ivancich) +* rgw: fix chained cache invalidation to prevent cache size growth (`issue#22410 `_, `pr#19455 `_, Mark Kogan) +* rgw: Fix closing tag for Prefix (`pr#17663 `_, Shasha Lu) +* rgw: fix cls_bucket_head result order consistency (`pr#18700 `_, Tianshan Qu) +* rgw: fix collect()'s return in coroutine (`pr#19606 `_, Xinying Song) +* rgw: fix command argument error for radosgw-admin (`issue#21723 `_, `pr#18175 `_, Yao Zongyou) +* rgw: fix 'copy part' without 'x-amz-copy-source-range' (`issue#22729 `_, `pr#20002 `_, Malcolm Lee) +* rgw: fix 'copy part' without 'x-amz-copy-source-range' when compression enabled (`issue#23196 `_, `pr#20686 `_, fang yuxiang) +* rgw: fix crash with rgw_run_sync_thread false (`issue#20448 `_, `pr#20769 `_, Orit Wasserman) +* rgw: Fix dereference of empty optional (`issue#21962 `_, `pr#18602 `_, Adam C. Emerson) +* rgw: fix error handling for GET with ?torrent (`issue#23506 `_, `pr#21576 `_, Casey Bodley) +* rgw: fix error handling in Browser Uploads (`pr#15054 `_, Radoslaw Zarzynski) +* rgw: fix error handling in ListBucketIndexesCR (`issue#21735 `_, `pr#18198 `_, Casey Bodley) +* rgw: fixes for multisite replication of encrypted objects (`issue#20668 `_, `issue#20671 `_, `pr#16612 `_, Casey Bodley) +* rgw: fix extra_data_len handling in PutObj filters (`issue#21895 `_, `pr#18489 `_, Casey Bodley) +* rgw: fix for empty query string in beast frontend (`issue#22797 `_, `pr#20120 `_, Casey Bodley) +* rgw: fix for issue #21647 (`issue#23859 `_, `pr#21647 `_, Yehuda Sadeh) +* rgw: fix for pause in beast frontend (`issue#21831 `_, `pr#18402 `_, Casey Bodley) +* rgw: fix for usage truncated flag (`pr#20926 `_, Yehuda Sadeh, Greg Farnum, Robin H. Johnson) +* rgw: Fix getter function names in RGWEnv (`pr#18377 `_, Jos Collin) +* rgw: fix GET website response error code (`issue#22272 `_, `pr#19236 `_, Dmitry Plyakin) +* rgw: fix handling of ENOENT in RGWRadosGetOmapKeysCR (`pr#19878 `_, Casey Bodley) +* rgw: fix index cancel op miss update header (`pr#20396 `_, Tianshan Qu) +* rgw: Fix infinite call for bi list when resharding a bucket (`issue#22721 `_, `pr#21584 `_, Orit Wasserman) +* rgw: fix lc process only schdule the first item of lc objects (`issue#21022 `_, `pr#17061 `_, Shasha Lu) +* rgw:fix list objects with marker wrong result when bucket is enable versioning (`issue#21500 `_, `pr#17934 `_, yuliyang) +* rgw: fix memory fragmentation problem reading data from client (`pr#20724 `_, Marcus Watts) +* rgw: Fix multisite Synchronization failed when read and write delete … (`issue#22804 `_, `pr#20814 `_, Niu Pengju) +* rgw: fix not responding when receiving SIGHUP signal (`pr#16854 `_, Yao Zongyou) +* rgw: fix null pointer crush (`pr#18861 `_, Sibei Gao) +* rgw: fix obj copied from remote gateway acl full_control issue (`issue#20658 `_, `pr#16127 `_, Enming Zhang) +* rgw: fix opslog cannot record remote_addr (`issue#20931 `_, `pr#16860 `_, Jiaying Ren) +* rgw: fix opslog can't record referrer when using curl as client (`issue#20935 `_, `pr#16863 `_, Jiaying Ren) +* rgw: fix opslog uri as per Amazon s3 (`issue#20971 `_, `pr#16958 `_, Jiaying Ren) +* rgw: fix radosgw-admin bucket rm with --purge-objects and --bypass-gc (`issue#22122 `_, `issue#19959 `_, `pr#18922 `_, Aleksei Gutikov) +* rgw: fix radosgw-admin quota enable return value bug (`issue#21608 `_, `pr#18057 `_, baixueyu) +* rgw: fix radosgw linkage with WITH_RADOSGW_BEAST_FRONTEND=OFF (`issue#23680 `_, `pr#21380 `_, Casey Bodley) +* rgw: fix recursive lock (`pr#19430 `_, Tianshan Qu) +* rgw: fix resource leak in rgw_bucket.cc and rgw_user.cc (`issue#21214 `_, `pr#17353 `_, Luo Kexue) +* rgw: fix return value of auth v2/v4 (`issue#22439 `_, `pr#19310 `_, Bingyin Zhang) +* rgw: fix rewrite a versioning object create a new object bug (`issue#21984 `_, `pr#18662 `_, Enming Zhang) +* rgw: fix rewrite options usage text (`pr#18968 `_, Jos Collin) +* rgw: fix RGWCompletionManager get_next stuck after going down (`issue#22799 `_, `pr#20095 `_, Tianshan Qu) +* rgw: fix RGWLibIO did not init RGWEnv (`pr#19065 `_, Tianshan Qu) +* rgw: fix s3 website redirection error (`pr#19252 `_, yuliyang) +* rgw: fix s3website redirect location string length (`pr#19826 `_, yuliyang) +* rgw: fix Swift container naming rules (`issue#19264 `_, `pr#13992 `_, Robin H. Johnson) +* rgw: Fix swift object expiry not deleting objects (`issue#22084 `_, `pr#18821 `_, Pavan Rallabhandi) +* rgw: fix sync status conflict with cloud sync (`pr#21425 `_, Casey Bodley) +* rgw: fix the bug of radowgw-admin zonegroup set requires realm (`issue#21583 `_, `pr#19061 `_, lvshanchun) +* rgw: fix the max-uploads parameter not work (`issue#22825 `_, `pr#20158 `_, Xin Liao) +* rgw: fix the return type is wrong (`pr#19773 `_, hechuang) +* rgw: fix total_time to msec as per AWS S3 (`pr#17541 `_, Jiaying Ren) +* rgw: fix typo anynoymous to anonymous (`pr#19281 `_, Bingyin Zhang) +* rgw: fix typo compete to complete (`pr#19675 `_, Bingyin Zhang) +* rgw: Fix typo in comment (`pr#21032 `_, Simran Singhal) +* rgw: fix typo in GetOmapKeysCR (`pr#19713 `_, lvshanchun) +* rgw: fix typo signle to single (`pr#19517 `_, Bingyin Zhang) +* rgw: fix typo woild to would (`pr#19472 `_, Bingyin Zhang) +* rgw: Fix use after free in IAM policy parser (`pr#16823 `_, Adam C. Emerson) +* rgw: fix use of libcurl with empty header values (`issue#23663 `_, `pr#21358 `_, Casey Bodley) +* rgw: format logs in file rgw_lc.cc (`pr#19615 `_, Bingyin Zhang) +* rgw: format rgw_bucket_dir_header in ceph-dencoder (`pr#19753 `_, Bingyin Zhang) +* rgw: gc use aio (`pr#20546 `_, Yehuda Sadeh) + rgw: Handle stale bucket info in RGWDeleteBucketPolicy + rgw: Handle stale bucket info in RGWDeleteBucketWebsite + rgw: Handle stale bucket info in RGWPutBucketPolicy + rgw: Handle stale bucket info in RGWPutMetadataBucket + rgw: Handle stale bucket info in RGWSetBucketVersioning + rgw: Handle stale bucket info in RGWSetBucketWebsite +* rgw: honor the tenant part of rgw_bucket during comparisons (`issue#20897 `_, `pr#16796 `_, Radoslaw Zarzynski) +* rgw: iam policy printing cleanups (`pr#18961 `_, Kefu Chai) +* rgw: Ignoring the returned error (`pr#17907 `_, Amit Kumar) +* rgw: implement ipv4 aws:SourceIp condition for bucket policy (`pr#19167 `_, yuliyang) +* rgw: improve handling of Swift's error messages and limits (`issue#17938 `_, `issue#21169 `_, `issue#17935 `_, `issue#17934 `_, `issue#17936 `_, `pr#15369 `_, Radoslaw Zarzynski) +* rgw: improve sync status: display behind bucket shards (`pr#20027 `_, lvshanchun) +* rgw: improve sync status (`pr#19573 `_, lvshanchun) +* rgw: include SSE-KMS headers in encrypted upload response (`issue#21576 `_, `pr#17999 `_, Casey Bodley) +* rgw: incorporate the Transfer-Encoding fix for CivetWeb (`issue#21015 `_, `pr#17072 `_, Radoslaw Zarzynski) +* rgw: Initialization of epoch,len (`pr#17722 `_, Amit Kumar) +* rgw: Initialize is_master, max_aio, size (`pr#16933 `_, amitkuma) +* rgw: Initializes uninitialized members (`pr#16855 `_, Amit Kumar) +* rgw: init oldest period after setting run_sync_thread (`issue#21996 `_, `pr#18664 `_, Orit Wasserman, Casey Bodley) +* rgw: keep compression type consistent between parts of s3 Multipart (`pr#19740 `_, fang yuxiang) +* rgw: keystone: bump up logging when error is received (`issue#22151 `_, `pr#18985 `_, Abhishek Lekshmanan) +* rgw:lc fix expiration time (`issue#21533 `_, `pr#17824 `_, Shasha Lu) +* rgw: lc support Content-MD5 request header and fix a rgw crash bug (`issue#21980 `_, `pr#18534 `_, Enming Zhang) +* rgw: lease_cr->go_down is called twice, remove the needless one (`pr#19394 `_, Zhang Shaowen) +* rgw: librgw: export multitenancy support (`pr#19358 `_, Tao Chen) +* rgw: librgw: fix shutdown err with resources uncleaned (`issue#22296 `_, `pr#19279 `_, Tao Chen) +* rgw: lifecycle omap entry was removed in abnormal situation (`pr#19921 `_, fang yuxiang) +* rgw: list_objects() honors end_marker regardless of namespace (`issue#18977 `_, `pr#15273 `_, Radoslaw Zarzynski) +* rgw: loadgen fix generate random object name rgw crash issue (`issue#22006 `_, `pr#18536 `_, Enming Zhang) +* rgw: log the right http status code in civetweb frontend's access log (`issue#22538 `_, `pr#19678 `_, Yao Zongyou) +* rgw: log unlink_instance mtime as object's mtime (`issue#18885 `_, `pr#20016 `_, Yehuda Sadeh) +* rgw: lttng: Trace rgw data transfer, bi entry and object header update processes (`pr#20556 `_, Yang Honggang) +* rgw: make init env methods return an error (`issue#23039 `_, `pr#20488 `_, Abhishek Lekshmanan) +* rgw: make radosgw object stat RGW_ATTR_COMPRESSION dump readable (`pr#19846 `_, fang yuxiang) +* rgw: mfa support (`pr#19283 `_, Yehuda Sadeh) +* rgw: mimic: rgw: policy: modify s3:ListBucketMultiPartUploads to s3:ListBucketMul (`issue#24062 `_, `pr#21916 `_, xiangxiang) +* rgw: modify s3 type subuser access permissions fail through admin rest api (`issue#21983 `_, `pr#18641 `_, yuliyang) +* rgw: move all pool creation into rgw_init_ioctx (`issue#23480 `_, `pr#21534 `_, Casey Bodley) +* rgw: mrgw.sh uses instance name 'client.rgw' (`pr#18404 `_, Casey Bodley) +* rgw: multisite log tracing (`pr#16492 `_, Yehuda Sadeh, Casey Bodley) +* rgw,nfs: Add hint to use -o sync when mouting (`pr#16210 `_, Adam Kupczyk) +* rgw: no need to deal with md5 header in get_data (`pr#19144 `_, Zhang Shaowen) +* rgw: optimize function abort_bucket_multiparts (`pr#19710 `_, Bingyin Zhang) +* rgw: optimize function bucket_lc_prepare (`pr#19613 `_, Bingyin Zhang) +* rgw: optimize function parse_raw_oid (`pr#19814 `_, Bingyin Zhang) +* rgw: optimize function RGWHandler::do_init_permissions (`pr#19700 `_, Bingyin Zhang) +* rgw: optimize memory usage in function rgw_bucket::get_key (`pr#19391 `_, Bingyin Zhang) +* rgw: optimize next start time for lifecycle (`pr#19596 `_, Bingyin Zhang) +* rgw: optimize the rgw-attr del code logic (`pr#18895 `_, wangsongbo) +* rgw: optimize time skew check (`pr#19511 `_, Bingyin Zhang) +* rgw: parse old rgw_obj with namespace correctly (`issue#22982 `_, `pr#20425 `_, Yehuda Sadeh) +* rgw: policy: support for s3 conditionals in ListBucket Op (`pr#16628 `_, Abhishek Lekshmanan) +* rgw: Potential fix for possible 500 on POST (`pr#18954 `_, Adam C. Emerson) +* rgw: Prevent overflow of cached stats values (`issue#20934 `_, `pr#17116 `_, Aleksei Gutikov) +* rgw: proper error message when tier_type does not exist (`issue#22469 `_, `pr#19575 `_, lvshanchun, Chang Liu) +* rgw: pull up beast submodule and update frontend (`pr#17923 `_, Casey Bodley) +* rgw: put bucket policy panics RGW process (`issue#22541 `_, `pr#19687 `_, Bingyin Zhang) +* rgw: radosgw-admin abort early for user stats for empty uids (`issue#23322 `_, `pr#20846 `_, Abhishek Lekshmanan) +* rgw: radosgw-admin should not use metadata cache for readonly commands (`issue#23468 `_, `pr#21129 `_, Orit Wasserman) +* rgw: radosgw-admin zonegroup get and zone get return defaults when there is no realm (`issue#21615 `_, `pr#18667 `_, lvshanchun) +* rgw: radosgw: fix awsv4 header line sort order (`issue#21607 `_, `pr#18046 `_, Marcus Watts) +* rgw: radosgw: usage: fix bytes_sent bug (`issue#19870 `_, `pr#16834 `_, Marcus Watts) +* rgw: raise log level on coroutine shutdown errors (`issue#23974 `_, `pr#21791 `_, Casey Bodley) +* rgw: Reinstating error codes mapping for Roles (`pr#20309 `_, Pritha Srivastava) +* rgw: reject encrypted object COPY before supported (`issue#23232 `_, `pr#20739 `_, Jeegn Chen) +* rgw: release cls lock if taken in RGWCompleteMultipart (`issue#21596 `_, `pr#18104 `_, Matt Benjamin) +* rgw: Remove assertions in IAM Policy (`pr#18225 `_, Adam C. Emerson) +* rgw: remove get_system_obj_attrs in function RGWDeleteLC::execute and RGWDeleteCORS::execute (`pr#19582 `_, Bingyin Zhang) +* rgw: remove placement_rule from rgw_link_bucket() (`issue#21990 `_, `pr#18657 `_, Casey Bodley) +* rgw: remove redundant parenthesis in logs (`pr#19375 `_, Bingyin Zhang) +* rgw: remove redundant S3AnonymousEngine (`pr#19474 `_, Bingyin Zhang) +* rgw: remove redundant signature compare in LocalEngine::authenticate (`pr#19676 `_, Bingyin Zhang) +* rgw: Remove the useless output when list zones (`pr#17434 `_, iliul) +* rgw: remove unused cls_user_add_bucket (`pr#19917 `_, Yao Zongyou) +* rgw: remove unused disable_signal_fd (`pr#18875 `_, Yao Zongyou) +* rgw: remove unused function get_system_obj_attrs (`pr#19852 `_, Yao Zongyou) +* rgw: Remove unused Parameter in Function RGWConf::init() (`pr#17129 `_, Wen Zhang) +* rgw: remove unused param in AWSGeneralAbstractor::get_auth_data_v4 (`pr#19250 `_, Bingyin Zhang) +* rgw: remove unused param in get_bucket_instance_policy_from_attr (`pr#19129 `_, Bingyin Zhang) +* rgw: remove unused variables (`pr#16649 `_, Zhang Lei) +* rgw: remove useless lines in RGWDeleteBucket::execute (`pr#19699 `_, Bingyin Zhang) +* rgw: reshard cancel command should clear bucket resharding flag (`issue#21619 `_, `pr#21120 `_, Orit Wasserman) +* rgw: reshard should not update stats when linking new bucket instance (`issue#22124 `_, `pr#19253 `_, Orit Wasserman) +* rgw: retry CORS put/delete operations on ECANCELLED (`issue#22517 `_, `pr#19601 `_, Adam C. Emerson) +* rgw: return 'Access-Control-Allow-Origin' header when the set and delete bucket website through XMLHttpRequest (`pr#17632 `_, yuliyang) +* rgw: return 'Access-Control-Allow-Origin' header when the set bucket versioning through XMLHttpRequest (`pr#17631 `_, yuliyang) +* rgw: return bucket's location no matter which zonegroup it located in (`issue#21125 `_, `pr#17250 `_, Shasha Lu) +* rgw: return EINVAL if max_keys can not convert correctly (`issue#23586 `_, `pr#21285 `_, yuliyang) +* rgw: Return Error if Bucket Policy Contians Undefined Action (`pr#17433 `_, zhangwen) +* rgw: Returning when dst_ioctx.operate() returns error (`pr#17873 `_, Amit Kumar) +* rgw: return valid Location element, CompleteMultipartUpload (`pr#19902 `_, Matt Benjamin) +* rgw: revert PR #8765 (`pr#16807 `_, fang.yuxiang) +* rgw: Revert "radosgw: fix awsv4 header line sort order." (`issue#21832 `_, `pr#18381 `_, Casey Bodley) +* rgw: Revert "rgw_file: disable FLAG_EXACT_MATCH enforcement" (`issue#22827 `_, `pr#20171 `_, Matt Benjamin) +* rgw: Revert "rgw: reshard should not update stats when linking new bucket instance" (`pr#20052 `_, Orit Wasserman) +* rgw: rework json/xml escape usage follow #19806 (`pr#19845 `_, fang yuxiang) +* rgw: rgw-admin: check input parameters for friendly prompt (`pr#17343 `_, Yao Zongyou) +* rgw: rgw-admin: check the data extra pool supports omap (`pr#18978 `_, Yao Zongyou) +* rgw: rgw-admin: properly filtering bucket stats by user_id or bucket_name (`pr#19401 `_, Yao Zongyou) +* rgw: rgw-admin: require --yes-i-really-mean-it when using --inconsistent_index (`issue#20777 `_, `pr#17185 `_, Orit Wasserman) +* rgw: rgw-admin: support for processing all gc objects including unexpired (`pr#17482 `_, Yao Zongyou) +* rgw: RGW: change function parameters from value to refrence (`pr#18355 `_, Sibei Gao) +* rgw: RGWCivetWeb::read_data: fix arguments to mg_read() call (`issue#23596 `_, `pr#21291 `_, Nathan Cutler) +* rgw: rgw clean-up: remove unreferenced pure virtual class StreamObjData (`pr#18799 `_, J. Eric Ivancich) +* rgw: rgw clean-up: remove unused var & func in RGWRados::SystemObject (`pr#18987 `_, J. Eric Ivancich) +* rgw: rgw cleanup: some unnecessary function called and repeated assignment (`pr#18817 `_, Enming Zhang) +* rgw: rgw cloud sync (`issue#21802 `_, `pr#18932 `_, lvshanchun, Yehuda Sadeh, Chang Liu, Abhishek Lekshmanan) +* rgw: RGWEnv::set() takes std::string (`issue#22101 `_, `pr#18866 `_, Casey Bodley) +* rgw: rgw_file: alternate fix deadlock on lru eviction (`pr#20034 `_, Matt Benjamin) +* rgw: rgw_file: avoid evaluating nullptr for readdir offset (`pr#20145 `_, Matt Benjamin) +* rgw: rgw_file: conditionally unlink handles when direct deleted (`issue#23299 `_, `pr#20834 `_, Matt Benjamin) +* rgw: rgw_file: explicit NFSv3 open() emulation (`pr#18365 `_, Matt Benjamin) +* rgw: rgw_file: fix LRU lane lock in evict_block() (`issue#21141 `_, `pr#17267 `_, Matt Benjamin) +* rgw: rgw_file: implement variant offset readdir processing (`pr#18335 `_, Matt Benjamin) +* rgw: rgw_file: introduce new fsid and rgw_mount (`pr#15330 `_, Gui Hecheng) +* rgw: rgw_file: set s->obj_size from bytes_written (`issue#21940 `_, `pr#18571 `_, Matt Benjamin) +* rgw: rgw_file: Silence unused-function warnings (`pr#19278 `_, Brad Hubbard) +* rgw: RGW: fix a bug about inconsistent unit of comparison (`issue#21590 `_, `pr#17958 `_, gaosibei) +* rgw: rgw.iam: change '1' to '1ULL' in function print_actions (`pr#18900 `_, Bingyin Zhang) +* rgw: rgw_lc: add support for optional filter argument and make ID optional (`issue#19587 `_, `issue#20872 `_, `pr#16818 `_, Abhishek Lekshmanan) +* rgw: rgw_lc: support for AWSv4 authentication (`pr#16734 `_, Abhishek Lekshmanan) +* rgw: rgw_log, rgw_file: account for new required envvars (`issue#21942 `_, `pr#18572 `_, Matt Benjamin) +* rgw: Rgw master fix plus (`issue#21000 `_, `issue#21003 `_, `issue#20501 `_, `pr#17040 `_, Zhang Shaowen, Marcus Watts) +* rgw: rgw, mon: normalize delete/remove in admin console (cleanup 22444) (`issue#14363 `_, `issue#22444 `_, `pr#19439 `_, Jesse Williamson) +* rgw: RGW: Multipart upload may double the quota (`issue#21586 `_, `pr#17959 `_, Sibei Gao) +* rgw: rgw multisite: automated trimming for bucket index logs (`issue#18229 `_, `pr#17761 `_, Casey Bodley) +* rgw: RGW NFS: mount cmdline example missing -osync (`pr#15855 `_, Matt Benjamin) +* rgw: RGW-NFS: Use rados cluster_stat to report filesystem usage (`issue#22202 `_, `pr#20093 `_, Supriti Singh) +* rgw: rgw_op: Drop the Old LifecycleConfiguration from logs (`pr#16821 `_, Abhishek Lekshmanan) +* rgw: rgw_op: exit early if object has no attrs in GetObjectTagging (`issue#21010 `_, `pr#17048 `_, Abhishek Lekshmanan) +* rgw: RGWPutLC return ERR_MALFORMED_XML when missing tag in lifecycle.xml (`issue#21377 `_, `pr#17683 `_, Shasha Lu) +* rgw: rgw_put_system_obj takes bufferlist (`pr#19897 `_, Casey Bodley) +* rgw: rgw_rados: set_attrs now sets the same time for BI & object (`issue#21200 `_, `pr#17400 `_, Abhishek Lekshmanan) +* rgw: rgw/rgw_op.cc: Fix error message in rgw_user_get_all_buckets_stats (`pr#18781 `_, iliul) +* rgw: rgw: source data in 'default.rgw.buckets.data' may not be deleted after inter-bucket copy (`issue#21819 `_, `pr#18369 `_, baixueyu) +* rgw: RGW: support for tagging in lifecycle policies (`pr#17305 `_, Abhishek Lekshmanan) +* rgw: RGW: update S3 POST policy handling of Content-Type (`issue#20201 `_, `pr#18658 `_, Matt Benjamin) +* rgw: rgw: use camelcase format in request headers (`pr#19210 `_, lvshanchun, Chang Liu) +* rgw: RGWUser::init no longer overwrites user_id (`issue#21685 `_, `pr#18137 `_, Casey Bodley) +* rgw: S3 Bucket Policy Conditions IpAddress and NotIpAddress do not work (`issue#20991 `_, `pr#17010 `_, John Gibson) +* rgw: s3website error handler uses original object name (`issue#23201 `_, `pr#20693 `_, Casey Bodley) +* rgw:send x-amz-version-id header when upload files (`pr#18935 `_, Xinying Song) +* rgw: set bucket versioninig donot change versioning status if missing status in xml (`issue#21364 `_, `pr#17662 `_, Shasha Lu) +* rgw: set num_shards on 'radosgw-admin data sync init' (`issue#22083 `_, `pr#18883 `_, Casey Bodley) +* rgw: set priority on perf counters (`pr#20006 `_, John Spray) +* rgw: set sync_from_all as true when no value is seen (`issue#22062 `_, `pr#18926 `_, Abhishek Lekshmanan) +* rgw: setup locks for libopenssl (`issue#22951 `_, `issue#23203 `_, `pr#20390 `_, Abhishek Lekshmanan, Jesse Williamson) +* rgw: share time skew check between v2 and v4 auth (`pr#20013 `_, Casey Bodley) +* rgw: Silence maybe-uninitialized false positives (`pr#19274 `_, Brad Hubbard) +* rgw: silence not allow register storage class specifier warning (`pr#19859 `_, Yao Zongyou) +* rgw: simplify use of map::emplace in iam (`pr#18706 `_, Casey Bodley) +* rgw: Small refactor and two bug fixes (`issue#21901 `_, `issue#21896 `_, `pr#18606 `_, Adam C. Emerson) +* rgw: some cleanup for sync status (`pr#20894 `_, Enming Zhang) +* rgw: stop/join TokenCache revoke thread only if started (`issue#21666 `_, `pr#18106 `_, Karol Mroz) +* rgw: stream metadata full sync init (`issue#18079 `_, `pr#12429 `_, Yehuda Sadeh) +* rgw: submodule: update Beast to ceph/ceph-master branch (`pr#19182 `_, Casey Bodley) +* rgw: switch beast frontend back to stackful coroutine (`issue#20048 `_, `pr#20449 `_, Casey Bodley) +* rgw: sync tracing fixes (`issue#22833 `_, `pr#20191 `_, Yehuda Sadeh) +* rgw: tenant fixes for dynamic resharding (`issue#22046 `_, `pr#18811 `_, Orit Wasserman) +* rgw,tests: fix s3atests that are failing for sometime (`pr#20678 `_, Vasu Kulkarni) +* rgw,tests: qa: fix overrides for openssl_keys task (`pr#20981 `_, Casey Bodley) +* rgw,tests: qa: re enable LC tests (`pr#17020 `_, Abhishek Lekshmanan) +* rgw,tests: qa/rgw: add beast frontend to some rgw suites (`pr#17977 `_, Casey Bodley) +* rgw,tests: qa/rgw: combine swift, s3tests, ragweed into single verify task (`pr#20756 `_, Casey Bodley) +* rgw,tests: qa/rgw: disable log trim in multisite suite (`pr#19438 `_, Casey Bodley) +* rgw,tests: qa/rgw: hadoop-s3a suite targets centos_latest (`pr#17777 `_, Casey Bodley) +* rgw,tests: qa/rgw: ignore errors from 'pool application enable' (`issue#21715 `_, `pr#18193 `_, Casey Bodley) +* rgw,tests: qa/rgw: remove some civetweb overrides for beast testing (`issue#23002 `_, `pr#20440 `_, Casey Bodley) +* rgw,tests: qa/rgw: renamed ssl task to openssl_keys (`pr#20863 `_, Ricardo Dias) +* rgw,tests: qa/rgw: use 'ceph osd pool application enable' on created pools (`pr#17162 `_, Casey Bodley) +* rgw,tests: qa/rgw: verify suite tests civetweb with ssl (`pr#20444 `_, Casey Bodley) +* rgw,tests: qa/smoke: add rgw crypto config for s3tests (`pr#17700 `_, Casey Bodley) +* rgw,tests: qa/tasks/swift: add support for the "force-branch" configurable (`pr#21027 `_, Radoslaw Zarzynski) +* rgw,tests: rgw, qa: integrate Tempest to verify RadosGW's compliance with Swift API (`pr#16344 `_, Radoslaw Zarzynski) +* rgw,tests: test/rgw: fix test_encrypted_object_sync for 3+ zones (`pr#17377 `_, Casey Bodley) +* rgw: the metavariables in frontends-related config won't be expanded (`pr#19689 `_, root) +* rgw,tools: tools/rgw: add script to inspect admin socket "cr dump" (`pr#15554 `_, Casey Bodley) +* rgw: Torrents are not supported for objects encrypted using SSE-C (`issue#21720 `_, `pr#17956 `_, Zhang Shaowen) +* rgw: trim all spaces inside a metadata value (`issue#23301 `_, `pr#20841 `_, Orit Wasserman) +* rgw: udpate radosgw-admin usage with bi purge (`pr#18245 `_, Yao Zongyou) +* rgw: unlink deleted bucket from bucket's owner (`issue#22248 `_, `pr#20017 `_, Casey Bodley) +* rgw: unreachable return in RGWRados::trim_bi_log_entries (`pr#17367 `_, Amit Kumar) +* rgw: update life cycle related log level (`pr#18845 `_, Yao Zongyou) +* rgw: update outdated debug func name (`pr#17440 `_, Jiaying Ren) +* rgw: update quota is inconsistent at add/del object with compression (`issue#22568 `_, `pr#19772 `_, fang yuxiang) +* rgw: update the usage read iterator in truncated scenario (`issue#21196 `_, `pr#17939 `_, Mark Kogan) +* rgw: update usage() with status (`pr#18178 `_, Jos Collin) +* rgw: update vstart.sh to support rgw ssl port notation : '--rgw_port 443s' (`issue#21151 `_, `pr#17989 `_, Mark Kogan) +* rgw: upldate the max-buckets when the quota is uploaded (`pr#20063 `_, zhaokun) +* rgw: URL-decode S3 and Swift object-copy URLs (`issue#22121 `_, `pr#19936 `_, Matt Benjamin) +* rgw: url_encode key name and instance in es sync module (`pr#20707 `_, Chang Liu) +* rgw: use explicit index pool placement (`issue#22928 `_, `pr#20352 `_, Yehuda Sadeh) +* rgw: Use namespace for lc_pool and roles_pool (`issue#20177 `_, `pr#16889 `_, Orit Wasserman) +* rgw: Various cleanups and options update in rgw_admin.cc (`pr#18302 `_, Jos Collin) +* rgw: vstart.sh: fix mstop.sh can not stop rgw (`pr#17438 `_, Jiaying Ren) +* rgw: 'zone placement' commands validate compression type (`issue#21775 `_, `pr#18273 `_, Casey Bodley) +* rocksdb: sync with upstream (`issue#21603 `_, `pr#18262 `_, Kefu Chai) +* rpm: rm macros in comments (`issue#22250 `_, `pr#17070 `_, Ken Dreyer) +* script/build-integration-branch: check errors (`pr#17578 `_, Sage Weil) +* script/build-integration-branch: python3 compatible and pep8 clean (`pr#18035 `_, Kefu Chai) +* scripts: new backport-create-issue script (`pr#21480 `_, Nathan Cutler) +* selinux: Allow ceph to execute ldconfig (`pr#21974 `_, Boris Ranto) +* selinux: Allow getattr on lnk sysfs files (`pr#17891 `_, Boris Ranto) +* spdk: advance to upstream dc82989d (`pr#20713 `_, Nathan Cutler) +* src: fix various log messages (`pr#21112 `_, Gu Zhongyan) +* src/msg/rdma: fixes failure on assert in notify() (`pr#17007 `_, Alex Mikheev) +* suites/cephmetrics: Add Centos 7 (`pr#18594 `_, Zack Cerza) +* test: assert check for negative returns (`pr#17296 `_, Amit Kumar) +* test/fio: generate db histogram to help debug rocksdb performance (`pr#16808 `_, Pan Liu, Xiaoyan Li) +* test: fix bash path in shebangs (part 2) (`pr#17955 `_, Alan Somers) +* test: fix CLI unit formatting tests (`pr#22260 `_, Jason Dillaman) +* test: Incorrect conversion to double (`pr#18963 `_, Amit Kumar) +* test/librados: reorder ASSERT_EQ() arguments (`pr#16625 `_, Yan Jun) +* test,osd,kvstore_tool: silence warnings and prepare test buffer in the right way (`pr#18406 `_, Adam C. Emerson) +* tests: bluestore/fio: Fixed problem with all objects having the same hash (`pr#17770 `_, Adam Kupczyk) +* tests: CentOS 7.4 is now the latest (`pr#17776 `_, Nathan Cutler) +* tests - ceph-ansible vars additions (`issue#21822 `_, `pr#18378 `_, Yuri Weinstein) +* tests: ceph-disk: ignore E722 in flake8 test (`issue#22207 `_, `pr#19072 `_, Nathan Cutler) +* tests: ceph-disk: mock get fsid (`pr#19254 `_, Kefu Chai) +* tests: ceph-disk: Remove sitepackages=True (`issue#22823 `_, `pr#20151 `_, Brad Hubbard) +* tests: ceph-objectstore-tool: don't destroy SnapMapper until the txn is completed (`issue#23121 `_, `pr#20593 `_, Kefu Chai) +* tests: Changes required for teuthology's systemd support (`pr#18380 `_, Zack Cerza) +* tests: Check for empty output in test_dump_pgstate_history (`pr#20838 `_, Brad Hubbard) +* tests: cleanup: drop calamari tasks (`pr#17531 `_, Nathan Cutler) +* tests: cleanup: drop upgrade/jewel-x/point-to-point-x (`issue#22888 `_, `pr#20245 `_, Nathan Cutler) +* tests: cmake,test/mgr: restructure dashboard tests and cmake related fixes (`pr#20768 `_, Kefu Chai) +* tests: common/obj_bencher: set {min,max}_iops if runtime < 1 sec (`pr#17182 `_, Kefu Chai) +* tests: c_read_operations.cc: Silence tautological-compare compiler warning (`pr#19953 `_, Brad Hubbard) +* tests: fix uninitialized value found by coverity scan (`pr#17895 `_, J. Eric Ivancich) +* tests: Increase sleep in test_pidfile.sh (`pr#17052 `_, David Zafman) +* tests: librgw_file: remove unused `using` statement (`pr#17085 `_, Yao Zongyou) +* tests: mark_unfound_lost fix and some other minor changes (`issue#21907 `_, `pr#18449 `_, David Zafman) +* tests: mgr/dashboard: Allow sourcing `run-backend-api-tests.sh` (`pr#20874 `_, Sebastian Wagner) +* tests: mgr/dashboard: create venv for running tox (`pr#21490 `_, Kefu Chai) +* tests: mgr/dashboard: notification queue: fix priority tests (`pr#21147 `_, Ricardo Dias) +* tests: mimic: qa: fix test on "ceph fs set cephfs allow_new_snaps" (`pr#21830 `_, Kefu Chai) +* tests: mimic: qa/workunits/rados/test_envlibrados_for_rocksdb: install g++ not g++-4.7 (`pr#22117 `_, Kefu Chai) +* tests: mimic: test: Need to escape parens in log-whitelist for grep (`pr#22075 `_, David Zafman) +* tests: mimic: test: wait_for_pg_stats() should do another check after last 13 secon… (`pr#22199 `_, David Zafman) +* tests: misc: Fix bash path in shebangs (`pr#16494 `_, Alan Somers) +* tests: mstart.sh: remove bashizm in /bin/sh script (`pr#18541 `_, Mykola Golub) +* tests: point-to-point-x: upgrade client.1 to -x along with cluster nodes (`issue#21499 `_, `pr#17910 `_, Nathan Cutler) +* tests: qa: add cbt task for performance testing (`pr#17583 `_, Neha Ojha) +* tests: qa: add cosbench workloads and override teuthology default settings (`pr#21710 `_, Neha Ojha) +* tests/qa: Adding $ distro mix - rgw (`pr#22070 `_, Yuri Weinstein) +* tests/qa: adding rados/.. dirs (`pr#22068 `_, Yuri Weinstein) +* tests: qa: add "restful" to ceph_mgr_modules in ceph-ansible suite (`pr#18634 `_, Kefu Chai) +* tests: qa: add simple and dirty script to find ports being used (`pr#19102 `_, Joao Eduardo Luis) +* tests: qa: big: add openstack.yaml (`pr#16864 `_, Nathan Cutler) +* tests: qa: clean up dnsmasq task and fix EPERM error (`pr#20680 `_, Casey Bodley) +* tests: qa: create_cache_pool no longer runs 'pool application enable' (`issue#21155 `_, `pr#17312 `_, Casey Bodley) +* tests: qa: decrease the msg_inject_socket_failures from 1/500 to 1/1000 (`issue#22093 `_, `pr#19542 `_, Kefu Chai) +* tests: qa: disable mon-health-to-clog in upgrade test (`pr#19233 `_, Kefu Chai) +* tests: qa: disable -Werror when compiling env_librados_test (`pr#21433 `_, Kefu Chai) +* tests: qa: do not "ceph fs get cephfs" w/o a cephfs fs (`pr#18533 `_, Kefu Chai) +* tests: qa: do not wait for down/out osd for pg convergence (`pr#18808 `_, Kefu Chai) +* tests/qa - enabled `ceph-deploy` runs on `mira` nodes (`pr#21253 `_, Yuri Weinstein) +* tests: qa: fix pool-quota related tests (`issue#21409 `_, `pr#17763 `_, xie xingguo) +* tests: qa: Fix shebangs on openstack scripts (`pr#16546 `_, Alan Somers) +* tests: qa: reduce "mon client hunt interval max multiple" to 2 for all clients (`pr#21658 `_, Kefu Chai) +* tests: qa: reduce mon-client-hunt-interval-max-multiple to 2 (`pr#18283 `_, Kefu Chai) +* tests: qa: revert "qa: use config_path property instead of literal" (`pr#17850 `_, Patrick Donnelly) +* tests: qa/run-standalone.sh: set PYTHONPATH for FreeBSD also (`pr#20646 `_, Kefu Chai) +* tests: qa: s/backfill/backfilling/ (`pr#18235 `_, Kefu Chai) +* tests: qa/stanalone: pass options using --= (`pr#19544 `_, Kefu Chai) +* tests: qa/standalone: Add trap for signals to restore the kernel core pattern (`pr#17026 `_, David Zafman) +* tests: qa/standalone/ceph-helpers.sh: provide argument to dirname (`issue#23805 `_, `pr#21552 `_, Nathan Cutler) +* tests: qa/standalone/ceph-helpers.sh: silence ceph-disk DEPRECATION_WARNING (`pr#19478 `_, Kefu Chai) +* tests: qa/standalone: extract delete_pool() (`pr#20634 `_, Kefu Chai) +* tests: qa/standalone: misc fixes (`issue#20465 `_, `issue#20921 `_, `pr#16709 `_, David Zafman) +* tests: qa/standalone/mon/misc.sh: Add osdmap-prune tests (`issue#23621 `_, `pr#21318 `_, Brad Hubbard) +* tests: qa/standalone/osd/osd-mark-down: create pool to get updated osdmap faster (`pr#18191 `_, huangjun) +* tests: qa/standalone: remove osd-map-max-advance related tests (`issue#22596 `_, `pr#19816 `_, Kefu Chai) +* tests: qa/standalone: respect $TEMPDIR (`pr#17747 `_, Kefu Chai) +* tests: qa/standalone/scrub/osd-scrub-repair.sh: add extents flag into object_info_t (`issue#21618 `_, `pr#18094 `_, xie xingguo) +* tests: qa/standalone/scrub/osd-scrub-repair.sh: drop omap_digest flag (`pr#18150 `_, xie xingguo, Sage Weil) +* tests: qa/standalone: s/delete_erasure_pool/delete_erasure_coded_pool/ (`pr#20667 `_, Kefu Chai) +* tests: qa: stop testing deprecated "ceph osd create" (`issue#21993 `_, `pr#18659 `_, Kefu Chai) +* tests: qa/suites: add minimal performance suite (`pr#21104 `_, Neha Ojha) +* tests: qa/suites/cephmetrics: Updates for new version (`pr#21146 `_, Zack Cerza) +* tests: qa/suites: change fixed-2.yaml users to get 4 openstack disks (`pr#16873 `_, Sage Weil) +* tests: qa/suites: mds.0 -> mds.a (`pr#20848 `_, Sage Weil) +* tests: qa/suites/rados: Disable scrub backoff (`issue#23578 `_, `pr#21295 `_, Brad Hubbard) +* tests: qa/suites/rados/mgr/tasks/dashboard: add MDS_ALL_DOWN to whitelist (`pr#21549 `_, Ricardo Dias) +* tests: qa/suites/rados/mgr/tasks/dashboard_v2: add fail_on_skip = false (`pr#20925 `_, Ricardo Dias) +* tests: qa/suites/rados/multimon: whitelist mgr down vs clock skew test (`pr#16996 `_, Sage Weil) +* tests: qa/suites/rados/singleton: more whitelist (`pr#19225 `_, Kefu Chai) +* tests: qa/suites/rados/thrash-old-clients: ms_type=simple (`issue#23922 `_, `pr#21739 `_, Kefu Chai) +* tests: qa/suites/rados/upgrade/jewel-x-singleton: tolerate sloppy past_intervals (`pr#17293 `_, Kefu Chai) +* tests: qa/suites/rest/basic/tasks/rest_test: more whitelisting (`issue#21425 `_, `pr#17794 `_, huangjun) +* tests: qa/suites/rest/basic/tasks/rest_test: whiltelist OSD_DOWN (`issue#21425 `_, `pr#18144 `_, huangjun) +* tests: qa/suites/upgarde/jewel-x/parallel: tolerate mgr warning (`pr#17203 `_, Sage Weil) +* tests: qa/suites/upgarde/jewel-x/point-to-point-x: disable app warnings (`pr#16947 `_, Sage Weil) +* tests: qa/suites: whitelist SLOW_OPS (`issue#23495 `_, `pr#21324 `_, Kefu Chai) +* tests: qa/tasks: Add default timeout for wait for pg clean task (`pr#21313 `_, Vasu Kulkarni) +* tests: qa/tasks/ceph_deploy: gatherkeys before mgr deploy (`pr#17224 `_, Sage Weil) +* tests: qa/tasks/ceph_manager: use set_config on revived osd (`pr#20901 `_, Neha Ojha) +* tests: qa/tasks/mgr/dashboard: Fix login expires too soon (`pr#21021 `_, Sebastian Wagner) +* tests: qa/tasks: prolong revive_osd() timeout to 6 min (`issue#21474 `_, `pr#17902 `_, Kefu Chai) +* tests: qa/tasks: prolong revive_osd() timeout to 6 min (`issue#21474 `_, `pr#19024 `_, Kefu Chai) +* tests: qa/tasks: run cosbench using the CBT task (`pr#21656 `_, Neha Ojha) +* tests: qa/tasks: update ceph-deploy task to use newer ceph-volume syntax (`pr#19244 `_, Vasu Kulkarni) +* tests: qa/tests: Add additional required ceph-ansible vars due to upstream changes (`pr#17757 `_, Vasu Kulkarni) +* tests: qa/tests: add ceph-deploy upgrade tests (`issue#20950 `_, `pr#16826 `_, Vasu Kulkarni) +* tests: qa/tests: add openstack volume info + lvs for ceph-volume (`pr#20243 `_, Vasu Kulkarni) +* tests: qa/tests: Fix get_system_type failure due to invalid remote name (`pr#17650 `_, Vasu Kulkarni) +* tests: qa/tests: fix rbd pool creation for systemd tests (`pr#17536 `_, Vasu Kulkarni) +* tests: [qa/tests]: misc ceph-ansible fixes and udpate (`pr#17096 `_, Vasu Kulkarni) +* tests: qa/tests/rados: Remove unsupported 2-size-1-min-size config (`pr#17576 `_, Vasu Kulkarni) +* tests: qa/tests: use ceph-deploy stable branch for single node tests (`pr#20979 `_, Vasu Kulkarni) +* tests: qa/tests: Various whitelists for smoke suite (`issue#21376 `_, `pr#17680 `_, Vasu Kulkarni) +* tests: qa/tests: Wip ceph deploy upgrade (`pr#17651 `_, Vasu Kulkarni) +* tests: qa/workunits/rados/test_large_omap_detection: Scrub pgs instead of OSDs (`pr#21410 `_, Brad Hubbard) +* tests: qa/workunits: silence py warnings for ceph-disk tests (`issue#22154 `_, `pr#19075 `_, Kefu Chai) +* tests: rados: Copy payload in ceph_perf_msgr_client (`issue#22100 `_, `pr#18862 `_, Jeegn Chen) +* tests: rados: Intializing members class StriperTest (`pr#16843 `_, amitkuma) +* tests: remove TestPGLog ASSERT_DEATH test (`issue#23504 `_, `pr#21117 `_, Nathan Cutler) +* tests: run-standalone.sh improve error message (`pr#17093 `_, David Zafman) +* tests: run-standalone.sh skip core_pattern if already set (`pr#17098 `_, David Zafman) +* tests: test/admin_socket_output: add --vstart=path/to/asok option (`pr#20371 `_, Kefu Chai) +* tests: test/admin_socket_output: better error reporting (`pr#20409 `_, Brad Hubbard) +* tests: test/admin_socket_output: switch to std::experimental::filesystem (`pr#20307 `_, Kefu Chai) +* tests: test/ceph_test_objectstore: make settings update and restore less error prone (`pr#21145 `_, Igor Fedotov) +* tests: test: checking negative returns from creat() (`pr#18090 `_, amitkuma) +* tests: test/CMakeLists: disable test_pidfile.sh (`issue#20975 `_, `pr#16977 `_, Sage Weil) +* tests: test/CMakeLists: disable test-pidfile.sh (`pr#17401 `_, Sage Weil) +* tests: test/coredumpctl: support freebsd (`pr#17447 `_, Kefu Chai) +* tests: test/dashboard: hardcode .coverage path to workaround tox bugs (`pr#21485 `_, Kefu Chai) +* tests: test/dashboard: specify workdir using tox.ini (`issue#23709 `_, `pr#21416 `_, Kefu Chai) +* tests: test: Don't dump core when using EXPECT_DEATH (`pr#17390 `_, Kefu Chai) +* tests: test/fio: extend fio objectstore plugin to better simulate OSD behavior (`pr#19101 `_, Igor Fedotov) +* tests: test/fio: fix building of the fio_ceph_objectstore plugin (`pr#18332 `_, Radoslaw Zarzynski) +* tests: test: Fix and enable test_pidfile.sh (`issue#20770 `_, `pr#16987 `_, David Zafman) +* tests: test: Fix ceph-objectstore-tool usage check (`pr#17785 `_, David Zafman) +* tests: test: fix misc fiemap testing (`issue#21716 `_, `pr#18240 `_, Kefu Chai, Ning Yao) +* tests: test: Initialization of \*comp_racing_read class CopyFromOp (`pr#17369 `_, Amit Kumar) +* tests: test: Initializing ChunkReadOp members (`pr#19334 `_, amitkuma) +* tests: test/journal: Initialize member variable m_work_queue (`pr#17089 `_, amitkuma) +* tests: test/librados: be more tolerant with timed lock tests (`issue#20086 `_, `pr#20161 `_, Kefu Chai) +* tests: test/librados: increase pgp_num along with pg_num (`issue#23763 `_, `pr#21555 `_, Kefu Chai) +* tests: test/librados: s/invoke_result_t/result_of_t/ (`pr#20379 `_, Kefu Chai) +* tests: test/librados_test_stub: pass snap context to zero op (`pr#17186 `_, Mykola Golub) +* tests: test/log: fix for crash with libc++ (`pr#20233 `_, Casey Bodley) +* tests: test: Make clearer by moving code out of loop (`pr#20759 `_, David Zafman) +* tests: test/objectstore/test_bluefs: cleanups (`pr#17909 `_, Kefu Chai) +* tests: test: only test dashboard_v2 when it is enabled (`pr#20777 `_, Willem Jan Withagen) +* tests: test: only test enabled python bindings (`pr#21293 `_, Kefu Chai) +* tests: test/osd: initialize Non-static class members in WeightedTestGenerator (`pr#15922 `_, Jos Collin) +* tests: test/osd: Non-static class members not initialized in UnsetRedirectOp (`pr#15921 `_, Jos Collin) +* tests: test/osd: silence warnings from -Wsign-compare (`pr#17027 `_, Jos Collin) +* tests: test: put new BlueStore tests un ifdef WITH_BLUESTORE (`pr#20576 `_, Willem Jan Withagen) +* tests: test:qa:infra - Run update daily and use bash (`pr#21218 `_, David Galloway) +* tests: test:qa:infra - teuthology crontab items as of 3/27/18 (`pr#21075 `_, Yuri Weinstein) +* tests: test: reduce the chance to have degraded PGs (`issue#22711 `_, `pr#20046 `_, Kefu Chai) +* tests: test: remove distro_version assert in distro detect test (`pr#21052 `_, Shengjing Zhu) +* tests: test: Replace bc command with printf command (`pr#21013 `_, David Zafman) +* tests: test: silence warning from -Wsign-compare (`pr#17790 `_, Jos Collin) +* tests: test: silence warnings from -Wsign-compare (`pr#17962 `_, Jos Collin) +* tests: tests - Replaced requests for "centos 7.3" to centos_latest (`pr#19262 `_, Yuri Weinstein) +* tests: test/store_test: fix FTBFS as Sequencer is removed (`pr#20382 `_, Kefu Chai) +* tests: test/store_test: update Many4KWritesTest\* test cases to finalize with… (`pr#20230 `_, Igor Fedotov) +* tests: test/throttle: kill tests exercising dtor of Throttle classes (`pr#17442 `_, Kefu Chai) +* tests: test/unittest_bufferlist: check retvals of syscalls (`pr#18238 `_, Kefu Chai) +* tests: test/unittest_pg_log: silence gcc warning (`pr#17328 `_, Kefu Chai) +* tests: test: Use jq in a compatible way and for easier diff analysis (`pr#21450 `_, David Zafman) +* tests: test: Whitelist corrections (`pr#22167 `_, David Zafman) +* tests,tools: crushtool: print error message to stderr not dout(1) (`issue#21758 `_, `pr#18242 `_, Kefu Chai) +* tests: unittest_crypto: Don't exceed limit for getentropy (`pr#18505 `_, Brad Hubbard) +* tests: vstart: fix initial start when there is no ceph.conf (`pr#21019 `_, Jianpeng Ma) +* The Day Has Come! (`pr#19657 `_, Adam C. Emerson) +* tools: Align use of uint64_t in service_daemon::AttributeType (`pr#16938 `_, James Page) +* tools: ceph-disk: erase 110MB for nuking existing bluestore (`issue#22354 `_, `pr#20400 `_, Kefu Chai) +* tools: ceph-disk: fix '--runtime' omission for ceph-osd service (`issue#21498 `_, `pr#17904 `_, Carl Xiong) +* tools: ceph-disk: fix signed integer is greater than maximum when call major (`pr#19196 `_, Song Shun) +* tools: ceph-disk: include output of failed command in exception (`pr#20497 `_, Kefu Chai) +* tools: ceph-disk: more precise error message when a disk is specified (`pr#18018 `_, Kefu Chai) +* tools: ceph-disk: reduce the scope of activate_lock (`pr#20114 `_, zhaokun) +* tools: ceph-disk: retry on OSError (`issue#21728 `_, `pr#18162 `_, Kefu Chai) +* tools: ceph-disk: unlock all partitions when activate (`pr#17363 `_, Kefu Chai) +* tools: ceph-disk: write log to /var/log/ceph not to /var/run/ceph (`pr#18375 `_, Kefu Chai) +* tools: ceph: fixes for "tell .\*" command (`issue#21230 `_, `pr#17463 `_, Kefu Chai) +* tools: ceph-kvstore-tool: make it a bit more friendly (`pr#21477 `_, Sage Weil) +* tools: ceph-kvstore-tool: use unique_ptr<> to manage the lifecycle of bluestore (`pr#18221 `_, Kefu Chai) +* tools: ceph-objectstore-tool: Add option "dump-import" to examine an export (`issue#22086 `_, `pr#19368 `_, David Zafman) +* tools: ceph-objectstore-tool: Fix set-size to clear data_digest if changing … (`pr#18885 `_, David Zafman) +* tools: ceph-objectstore-tool: "$OBJ get-omaphdr" and "$OBJ list-omap" scan all pgs instead of using specific pg (`issue#21327 `_, `pr#17985 `_, David Zafman) +* tools: ceph-objectstore-tool: skip object with generated version (`pr#18507 `_, huangjun) +* tools: ceph-syn: silence clang analyzer warning (`pr#18577 `_, Kefu Chai) +* tools: ceph-volume: Use a delimited CLI output parser instead of JSON (`pr#17097 `_, Alfredo Deza) +* tools: cleanup: rip out ceph-rest-api (`issue#21264 `_, `issue#22457 `_, `pr#17530 `_, Nathan Cutler) +* tools: correct total size formatting (`pr#21641 `_, Zheng Yin) +* tools: crushtool: add --add-bucket and --move options (`pr#20183 `_, Kefu Chai) +* tools: FreeBSD basic getopt does not use --options (`pr#21148 `_, Willem Jan Withagen) +* tools: Initialization of \*server, command variables (`pr#17135 `_, amitkuma) +* tools: make rados get/put/append command help txt clear (`issue#22958 `_, `pr#20363 `_, lvshuhua) +* tools: Modify "rados df" header's alignment (`pr#17549 `_, iliul) +* tools: rados add a cli option to clear omap keys (`issue#22255 `_, `pr#19180 `_, Abhishek Lekshmanan) +* tools: rados/tool: fixup rados stat command hint (`pr#16983 `_, huanwen ren) +* tools: script: build-integration-branch: avoid Unicode error (`issue#24003 `_, `pr#21918 `_, Nathan Cutler) +* tools: script: ceph-release-notes: minor fixes for split_component (`pr#16605 `_, Abhishek Lekshmanan) +* tools: Special scrub handling of hinfo_key errors (`issue#23428 `_, `issue#23364 `_, `pr#20947 `_, David Zafman) +* tools: src/vstart.sh: default os to filestore for FreeBSD (`pr#17454 `_, xie xingguo) +* tools: stop.sh: add ceph configure file location (`pr#20888 `_, Jianpeng Ma) +* tools: tools/ceph-conf: dump parsed config in plain text or as json (`issue#21862 `_, `pr#18350 `_, Piotr Dałek) +* tools: tools/ceph_monstore_tool: include mgrmap in initial paxos epoch (`issue#22266 `_, `pr#19780 `_, Kefu Chai) +* tools: tools/ceph_monstore_tool: rebuild initial mgrmap also (`issue#22266 `_, `pr#19238 `_, Kefu Chai) +* tools: tools/ceph-objectstore-tool: command to trim the pg log (`issue#23242 `_, `pr#20786 `_, Josh Durgin, David Zafman) +* tools: tools/ceph_objectstore_tool: fix 'dup' unable to duplicate meta PG (`pr#17572 `_, xie xingguo) +* tools: tools/rados: improve the ls command usage (`pr#21553 `_, Li Wang) +* tools: tools: rados: make -f be --format for consistency with ceph tool (`issue#15904 `_, `pr#20147 `_, Nathan Cutler) +* tools: tools/rados: use the monotonic clock in rados bench (`issue#21375 `_, `pr#18588 `_, Mohamad Gebai) +* tools: update monstore tool for fsmap, mgrmap (`issue#21577 `_, `pr#18005 `_, John Spray) +* tools: Use --no-mon-config so ceph_objectstore_tool.py test doesn't hang (`pr#21274 `_, David Zafman) +* tools: vstart.sh: move rgw configuration to client.rgw section (`pr#18331 `_, Yan Jun) +* tools: vstart.sh: use bluestore as default osd objectstore backend (`pr#17100 `_, mychoxin) +* vstart: fix option (due to quotes) and allow disabling dashboard (`issue#23345 `_, `pr#20986 `_, Joao Eduardo Luis) +* vstart.sh: fix a typo (`pr#18729 `_, iliul) +* vstart.sh: Fix help text in vstart.sh (`pr#21071 `_, Marc Koderer) +* vstart.sh: quote cmd params when display executing cmd (`pr#17057 `_, Jiaying Ren) +* vstart.sh: quote command only when necessary (`pr#18181 `_, Kefu Chai) +* vstart.sh: should quote the parameters to get them quoted (`pr#18523 `_, Kefu Chai) +* vstart.sh: simplify the objectstore related logic (`pr#17749 `_, Kefu Chai) -- cgit v1.2.3