From ec9702f65abb65e3dcf9f0f1456a9edb83789fdb Mon Sep 17 00:00:00 2001 From: Abhishek Lekshmanan Date: Tue, 18 Apr 2017 23:53:30 +0200 Subject: [PATCH] doc: v12.0.2 (dev) release notes Also adding the commits after 12.0.1 tag merged back into the master Signed-off-by: Abhishek Lekshmanan --- doc/release-notes.rst | 383 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 383 insertions(+) diff --git a/doc/release-notes.rst b/doc/release-notes.rst index 324b11e206838..9b657e622d394 100644 --- a/doc/release-notes.rst +++ b/doc/release-notes.rst @@ -2,6 +2,389 @@ Release Notes =============== +v12.0.2 Luminous (dev) +====================== +This is the third development checkpoint release of Luminous, the next long term +stable release. + + +Major changes from v12.0.1 +-------------------------- +* The original librados rados_objects_list_open (C) and objects_begin + (C++) object listing API, deprecated in Hammer, has finally been + removed. Users of this interface must update their software to use + either the rados_nobjects_list_open (C) and nobjects_begin (C++) API or + the new rados_object_list_begin (C) and object_list_begin (C++) API + before updating the client-side librados library to Luminous. + + Object enumeration (via any API) with the latest librados version + and pre-Hammer OSDs is no longer supported. Note that no in-tree + Ceph services rely on object enumeration via the deprecated APIs, so + only external librados users might be affected. + + The newest (and recommended) rados_object_list_begin (C) and + object_list_begin (C++) API is only usable on clusters with the + SORTBITWISE flag enabled (Jewel and later). (Note that this flag is + required to be set before upgrading beyond Jewel.) +* CephFS clients without the 'p' flag in their authentication capability + string will no longer be able to set quotas or any layout fields. This + flag previously only restricted modification of the pool and namespace + fields in layouts. +* CephFS directory fragmentation (large directory support) is enabled + by default on new filesystems. To enable it on existing filesystems + use "ceph fs set allow_dirfrags". +* CephFS will generate a health warning if you have fewer standby daemons + than it thinks you wanted. By default this will be 1 if you ever had + a standby, and 0 if you did not. You can customize this using + ``ceph fs set standby_count_wanted ``. Setting it + to zero will effectively disable the health check. +* The "ceph mds tell ..." command has been removed. It is superceded + by "ceph tell mds. ..." +* RGW introduces server side encryption of uploaded objects with 3 options for + the management of encryption keys, automatic encryption (only recommended for + test setups), customer provided keys similar to Amazon SSE KMS specification & + using a key management service (openstack barbician) + +Notable Changes +--------------- +* bluestore: bluestore/NVMEDEVICE: update SPDK to version 17.03 (`pr#14585 `_, optimistyzy) +* bluestore: bluestore, NVMeDevice: use task' own lock for (random) read (`pr#14094 `_, optimistyzy) +* bluestore: common/config: set rocksdb_cache_size to OPT_U64 (`pr#13995 `_, liuhongtong) +* bluestore: os/bluestore: avoid nullptr in bluestore_extent_ref_map_t::bound_encode (`pr#14073 `_, Sage Weil) +* bluestore: os/bluestore: clean up flush logic (`pr#14162 `_, Jianpeng Ma) +* bluestore: os/bluestore: clean up Invalid return value judgment (`pr#14219 `_, shiqi) +* bluestore: os/bluestore: fix bug for calc extent_avg in reshard function (`pr#13931 `_, wangzhengyong) +* bluestore: os/bluestore: fix bug in _open_alloc() (`pr#13577 `_, yonghengdexin735) +* bluestore: os/bluestore: fix deferred writes vs collection split race (`issue#19379 `_, `pr#14157 `_, Sage Weil) +* bluestore: os/bluestore: fix narrow osr->flush() race (`pr#14489 `_, Sage Weil) +* bluestore: os/bluestore: fix perf counters (`pr#13965 `_, Sage Weil) +* bluestore: os/bluestore: fsck: verify blob.unused field (`pr#14316 `_, Sage Weil) +* bluestore: os/bluestore: implement collect_metadata (`pr#14115 `_, Sage Weil) +* bluestore: os/bluestore: make live changes for BlueStore throttle config work like initial config (`pr#14225 `_, J. Eric Ivancich) +* bluestore: os/bluestore: misc fixes (`pr#14333 `_, Sage Weil) +* bluestore: os/bluestore/NVMEDevice: Add multiple thread support for SPDK I/O thread (`pr#14420 `_, Ziye Yang) +* bluestore: os/bluestore/NVMEDevice: fix the compilation issue for collect_metadata (`pr#14455 `_, optimistyzy) +* bluestore,performance: kv/RocksDBStore: implement rm_range_keys operator interface and test (`pr#13855 `_, Haomai Wang) +* bluestore,performance: os/bluestore: avoid the VTABLE-related burden in BitMapAllocator's hotspot (`pr#14348 `_, Radoslaw Zarzynski) +* bluestore,performance: os/bluestore/BlueFS: optimize get_allocated (`pr#14121 `_, Jianpeng Ma) +* bluestore,performance: os/bluestore: memory and dereference clean-up in the BitAllocator (`pr#13811 `_, Radoslaw Zarzynski) +* bluestore,performance: os/bluestore: optimize blob usage when doing appends/overwrites (`pr#13337 `_, Igor Fedotov) +* bluestore,performance: os/bluestore: refactor small write handling to reuse blob more effect… (`pr#14399 `_, Igor Fedotov) +* bluestore,performance: os/bluestore: tune deferred_batch_ops separately for hdd and ssd (`pr#14435 `_, Sage Weil) +* bluestore,performance: os/bluestore: unify throttling model (`issue#19542 `_, `pr#14306 `_, Sage Weil) +* bluestore,tests: test/objectstore/store_test_fixture.cc: Exclude bluestore code if required. (`pr#14085 `_, Willem Jan Withagen) +* bluestore,tests: test/store_test: fix bluestore test cases disablement (`pr#14228 `_, Igor Fedotov) +* bluestore,tests: test/unittest_bluefs: check whether add_block_device success (`pr#14013 `_, shiqi) +* bluestore,tools: ceph-bluestore-tool: rename from bluefs-tool; improve usage (`pr#14258 `_, Sage Weil) +* build/ops: add 12.0.1 release tag in master (`pr#14690 `_, Jenkins Build Slave User) +* build/ops: arch: fix build on PowerPC with FreeBSD (`pr#14378 `_, Andrew Solomon) +* build/ops: arch: fix cmake's ARM CRC intrinsics test to handle duplicitous gcc 4.8.5 (`issue#19386 `_, `pr#14132 `_, Dan Mick) +* build/ops: build: Add Virtuozzo Linux support (`pr#14301 `_, Andrey Parfenov) +* build/ops,core: build: let FreeBSD build ceph-fuse (`pr#14282 `_, Willem Jan Withagen) +* build/ops,core: os: allow offline conversion of filestore -> bluestore (or anything else) (`pr#14210 `_, Sage Weil) +* build/ops: debian: package ceph.logroate properly (`issue#19390 `_, `pr#14600 `_, Kefu Chai) +* build/ops: debian/rules, ceph.spec.in: invoke cmake with -DBOOST_J (`pr#14114 `_, Dan Mick) +* build/ops: gitignore: Ignore rejects by patch (`pr#14405 `_, Willem Jan Withagen) +* build/ops,performance: crc32c: Add crc32c function optimized for ppc architecture (`pr#13909 `_, Andrew Solomon) +* build/ops: rocksdb: sync with upstream (`pr#14456 `_, Kefu Chai) +* build/ops: script: drop the -x arg for credits script (`pr#14296 `_, Abhishek Lekshmanan) +* build/ops: systemd/ceph-disk: make it possible to customize timeout (`issue#18740 `_, `pr#13197 `_, Alexey Sheplyakov) +* build/ops: systemd: remove ceph-create-keys from presets (`pr#14226 `_, Sébastien Han) +* build/ops: Tested-by: Andrew Solomon (`pr#14289 `_, Kefu Chai) +* build/ops,tests: test/osd/CMakeLists.txt: osd-dup.sh require BlueStore/AIO (`pr#14387 `_, Willem Jan Withagen) +* build/ops: vstart: do not start mgr if not start_all (`pr#13974 `_, Kefu Chai) +* cephfs: client/Client.cc: after reset session from MDS - reconnect (`issue#18757 `_, `pr#13522 `_, Henrik Korkuc) +* cephfs: client: drop cap snaps when auth mds session gets closed (`issue#19022 `_, `pr#13579 `_, "Yan, Zheng") +* cephfs: client: refine fsync/close writeback error handling (`pr#14589 `_, John Spray) +* cephfs: client: specify inode in get_caps log message (`pr#13966 `_, John Spray) +* cephfs,core: Add test for is_hacky_ecoverwrites in cephfs pool checks (`pr#13466 `_, John Spray) +* cephfs: fix mount point break off problem after mds switch occured (`issue#19437 `_, `pr#14267 `_, Guan yunfei) +* cephfs: fix write_buf's _len overflow problem (`issue#19033 `_, `pr#13587 `_, Yang Honggang) +* cephfs: Mitigation for #16842, validate sessions after load (`issue#16842 `_, `pr#14164 `_, John Spray) +* cephfs: Permit recovering metadata into a new RADOS pool (`issue#15069 `_, `issue#15068 `_, `pr#10636 `_, Douglas Fuller) +* cephfs: qa: whitelist new fullness messages in fs tests (`issue#19253 `_, `pr#13915 `_, John Spray) +* cephfs,tests: qa: fix test_standby_for_invalid_fscid with vstart_runner (`pr#14272 `_, John Spray) +* cephfs,tests: qa, mds: add checks for fragmentation, and enable it by default (`issue#16523 `_, `pr#13862 `_, john Spray, John Spray) +* cephfs,tests: qa: re-enable ENOSPC tests for kclient (`issue#19550 `_, `pr#14396 `_, John Spray) +* cephfs,tests: qa/vstart_runner: amend ps invocation (`pr#14254 `_, Ilya Dryomov) +* cephfs,tests: qa: whitelist another fullness log message (`issue#19253 `_, `pr#14221 `_, John Spray) +* cephfs: tools/cephfs: set dir_layout when injecting inodes (`issue#19406 `_, `pr#14234 `_, John Spray) +* cleanup: misc: Warning Elimination (`pr#14439 `_, Adam C. Emerson) +* cmake: Add simple recursive ctags target for Ceph source only (`pr#14334 `_, Kefu Chai, Dan Mick) +* cmake: build tracepoint libraries for vstart target (`pr#14354 `_, Mohamad Gebai) +* cmake: do not try to add submodule to exclude list if .git is not around (`pr#14495 `_, Kefu Chai) +* cmake: support optional argument for overriding default ctag excludes (`pr#14379 `_, Kefu Chai) +* common: common/ceph_context: fewer warnings about experimental features (`pr#14170 `_, Sage Weil) +* common: common/config: eliminate config_t::set_val unsafe option (`issue#19106 `_, `pr#13687 `_, liuchang0812) +* common: common/perf_counters: fix race condition with atomic variables (`pr#14227 `_, J. Eric Ivancich) +* common,core,tests: Wip cppcheck errors (`pr#14446 `_, Brad Hubbard) +* common: do not print error when asok is closed (`pr#14022 `_, Patrick Donnelly) +* common: Fix heap buffer overflow in do_request (`issue#19393 `_, `pr#14173 `_, Brad Hubbard) +* common: fix segfault in public IPv6 addr picking (`issue#19371 `_, `pr#14124 `_, Fabian Grünbichler) +* common: Implements simple_spin_t in terms of std::atomic_flag. (`pr#14370 `_, Jesse Williamson) +* common: include/denc: remove nullptr runtime magic boundedness check (`pr#13889 `_, Sage Weil) +* common: Make spinlock delay more conventional (`pr#14248 `_, Brad Hubbard) +* common: messages: fix return type name of MOSDMap (`pr#14382 `_, Leo Zhang) +* common: msg/async/rdma: Add fork safe on RDMA (`pr#13740 `_, Sarit Zubakov) +* common: msg/async/rdma: Update fix broken compilation (`pr#13940 `_, Sarit Zubakov) +* common: msg/SimpleMessenger: error out misplace in set_socket_options (`pr#13961 `_, wangzhengyong) +* common: .organizationmap: Updated authors (`pr#14360 `_, Jos Collin) +* common: rados: more info added to pool deletion error (`issue#19400 `_, `pr#14235 `_, Vedant Nanda) +* common,rbd,rgw: common/escape: do not escape / in json (`pr#14130 `_, Sage Weil) +* common,rdma: msg/async/rdma: Introduce RDMAConnMgr + Debug prints (`pr#14201 `_, Amir Vadai) +* common,rdma: msg/async/rdma: Move resource handling to Device (`pr#14088 `_, Sarit Zubakov, Amir Vadai) +* common,rdma: msg/async/rdma: RDMA-CM Initialize device on first connect (`pr#14179 `_, Amir Vadai) +* common: remove useless parameter (`pr#14096 `_, baiyanchun) +* common: support s390 and unknown architectures in spin-wait loop (`issue#19492 `_, `pr#14337 `_, Nathan Cutler) +* common: Tested-by: Andrew Solomon (`pr#14310 `_, Kefu Chai) +* common: tracing: fix segv (`issue#18576 `_, `pr#14304 `_, Anjaneya Chagam) +* core: ceph-disk: Adding retry loop in get_partition_dev() (`pr#14275 `_, Erwan Velu) +* core: ceph-disk/ceph_disk/main.py: fix calling of the bsdrc init scripts (`pr#14476 `_, Willem Jan Withagen) +* core: ceph-disk: enable directory backed OSD at boot time (`issue#19628 `_, `pr#14546 `_, Loic Dachary) +* core: ceph-disk,osd: add support for crush device classes (`issue#19513 `_, `pr#14436 `_, Loic Dachary) +* core: ceph-disk: Populate mount options when running "list" (`issue#17331 `_, `pr#14293 `_, Brad Hubbard) +* core: ceph-disk: Write 10M to all partitions before zapping (`issue#18962 `_, `pr#13766 `_, Wido den Hollander) +* core: client/SyntheticClient.cc: Fix warning in random_walk (`issue#19445 `_, `pr#14308 `_, Brad Hubbard) +* core: cls/timeindex: clean up cls_timeindex_client.h|cc (`pr#13987 `_, Shinobu Kinjo) +* core: common/TrackedOp: allow dumping historic ops sorted by duration (`pr#14050 `_, Piotr Dałek) +* core: Give requested scrub work a higher priority (`issue#15789 `_, `pr#14488 `_, David Zafman) +* core: include/denc: add {encode,decode}_nohead for denc_traits (`issue#18938 `_, `pr#14099 `_, Kefu Chai) +* core,mgr,mon: mon,mgr: tag some commands for ceph-mgr (`pr#13617 `_, Sage Weil) +* core: misc: SCA fixes (`pr#14426 `_, Danny Al-Gaaf) +* core,mon: mon,osd: decouple creating pgs from pgmap (`pr#13999 `_, Kefu Chai) +* core: mon/OSDMonitor: osd crush set-device-class (`issue#19307 `_, `pr#14039 `_, Loic Dachary) +* core: msg/async/AsyncConnection: keepalive objecter ping connection to avoid timeout (`pr#14009 `_, Haomai Wang) +* core: osdc/Objecter: respect epoch barrier in _op_submit() (`issue#19396 `_, `pr#14190 `_, Ilya Dryomov) +* core: osd,mon: misc full fixes and cleanups (`pr#13968 `_, David Zafman) +* core: osd/OSDMap: hide require_*_osd and sortbitwise flags (`pr#14440 `_, Sage Weil) +* core: osd/PG: only correct filestore collection bits on load (`issue#19541 `_, `pr#14397 `_, Sage Weil) +* core: osd/PG: some minor cleanups (`pr#14133 `_, runsisi) +* core: osd/PrimaryLogPG: do not expect FULL_TRY ops to get resent (`issue#19430 `_, `pr#14255 `_, Sage Weil) +* core: osd/PrimaryLogPG: set return value if sparse read failed (`pr#14093 `_, huangjun) +* core: osd/ReplicatedBackend: clear pull source once we are done with it (`issue#19076 `_, `pr#13879 `_, Samuel Just) +* core: os/filestore: handle error returned from write_fd() (`pr#10146 `_, yonghengdexin735) +* core: os/fs/FS.cc: remove the redundant code. (`pr#14362 `_, Jianpeng Ma) +* core: os/kstore: some error handling (`pr#13960 `_, wangzhengyong) +* core,performance: mon,osd: explicitly remap some pgs (`pr#13984 `_, Sage Weil) +* core: Prefix /proc/ with FreeBSD emulation (`pr#14290 `_, Willem Jan Withagen) +* core: Revert "msg/async/rdma: Debug prints for ibv_*" (`pr#14245 `_, Kefu Chai) +* core: test, osd: fix some coverity issues (`pr#13293 `_, liuchang0812) +* core,tests: ceph-disk/tests/test_main.py: FreeBSD does not do multipath (`pr#13847 `_, Willem Jan Withagen) +* core,tests: ceph_test_librados_api_misc: fix stupid LibRadosMiscConnectFailure.ConnectFailure test (`issue#15368 `_, `pr#14261 `_, Sage Weil) +* core,tests: os: allow 'osd objectstore = random' to pick either filestore or bluestore (`pr#13754 `_, Sage Weil) +* core,tests,tools: Fixes: http://tracker.ceph.com/issues/18533 (`pr#13423 `_, Samuel Just, David Zafman) +* crush: bucket: crush_add_uniform_bucket_item should check for uniformity (`pr#14208 `_, Sahid Orentino Ferdjaoui) +* crush: builder: clean the arguments of crush_reweight* methods (`pr#14110 `_, Sahid Orentino Ferdjaoui) +* crush: builder: creating crush map with optimal configurations (`pr#14209 `_, Sahid Orentino Ferdjaoui) +* crush: only encode class info if SERVER_LUMINOUS (`issue#19361 `_, `pr#14131 `_, Sage Weil) +* crush: weight_set and id remapping (`issue#15653 `_, `pr#14486 `_, Loic Dachary) +* doc: add 12.0.1 release notes (`pr#14106 `_, Abhishek Lekshmanan) +* doc: add changelog for v10.2.7 (`pr#14441 `_, Abhishek Lekshmanan) +* doc: add RGW ldap auth documentation (`pr#14339 `_, Harald Klein) +* doc: add some undocumented options to rbd-nbd (`pr#14134 `_, wangzhengyong) +* doc: change osd_op_thread_timeout default value to 15 (`pr#14199 `_, Andreas Gerstmayr) +* doc: correct arguments for ceph tell osd.N bench (`pr#14462 `_, Patrick Dinnen) +* doc: correct the quota section (`issue#19397 `_, `pr#14122 `_, Chu, Hua-Rong) +* doc: dev guide: how to run s3-tests locally against vstart (`pr#14508 `_, Nathan Cutler, Abhishek Lekshmanan) +* doc: doc/radosgw/s3/cpp.rst: update usage of libs3 APIs to make the examples work (`pr#10851 `_, Weibing Zhang) +* doc: doc/rgw: instructions for changing multisite master zone (`pr#14089 `_, Casey Bodley) +* doc: docs: Clarify the relationship of min_size to EC pool recovery (`pr#14419 `_, Brad Hubbard) +* doc: how to specify filesystem for cephfs clients (`pr#14087 `_, John Spray) +* doc: mailmap: shiqi affiliation (`pr#14361 `_, shiqi) +* doc: mention --show-mappings in crushtool manpage (`issue#19649 `_, `pr#14599 `_, Nathan Cutler, Loic Dachary) +* doc: PendingReleaseNotes: recent cephfs changes (`pr#14196 `_, John Spray) +* doc: radosgw-admin: new 'global quota' commands update period config (`issue#19409 `_, `pr#14252 `_, Casey Bodley) +* doc: README.FreeBSD: Update the status (`pr#14406 `_, Willem Jan Withagen) +* doc: README.md: fix build instructions inconsistent. (`pr#14555 `_, Yao Zongyou) +* doc: README.md: use github heading syntax to mark the headings (`pr#14591 `_, Kefu Chai) +* doc: release notes for v10.2.7 Jewel (`pr#14295 `_, Abhishek Lekshmanan) +* doc: rgw: remove mention of megabytes for quotas (`pr#14413 `_, Hans van den Bogert) +* doc: rgw server-side encryption and barbican (`pr#13483 `_, Adam Kupczyk, Casey Bodley) +* doc: script: build-doc/serve-doc fixes (`pr#14438 `_, Abhishek Lekshmanan) +* doc: script: ceph-release-notes: use https instead of http (`pr#14103 `_, Kefu Chai) +* doc: typo in hit_set_search_last_n (`pr#14108 `_, Sven Seeberg) +* doc: update packages mentioned by build-doc and related doc (`pr#14649 `_, Yu Shengzuo) +* doc: wip-doc-multisite ports downstream multisite document upstream. (`pr#14259 `_, John Wilkins) +* librados: set the flag CEPH_OSD_FLAG_FULL_TRY of Op in the right place. (`pr#14193 `_, Pan Liu) +* librbd: changed the return type of ImageRequestWQ::discard() (`issue#18511 `_, `pr#14032 `_, Jos Collin) +* librbd: corrected resize RPC message backwards compatibility (`issue#19636 `_, `pr#14615 `_, Jason Dillaman) +* librbd: deferred image deletion (`issue#18481 `_, `pr#13105 `_, Ricardo Dias) +* librbd: fix rbd_metadata_list and rbd_metadata_get (`issue#19588 `_, `pr#14471 `_, Mykola Golub) +* librbd: is_exclusive_lock_owner API should ping OSD (`issue#19287 `_, `pr#14003 `_, Jason Dillaman) +* librbd: Notifier::notify API improvement (`pr#14072 `_, Mykola Golub) +* librbd: pass an uint64_t to clip_io() as the third param (`issue#18938 `_, `pr#14159 `_, Kefu Chai) +* librbd: potential use of uninitialised value in ImageWatcher (`pr#14091 `_, Mykola Golub) +* librbd: random unit test failures due to shut down race (`issue#19389 `_, `pr#14166 `_, Jason Dillaman) +* mds: bump client_reply debug to match client_req (`pr#14036 `_, Patrick Donnelly) +* mds: don't assert on read errors in RecoveryQueue (`issue#19282 `_, `pr#14017 `_, John Spray) +* mds: drop partial entry and adjust write_pos when opening PurgeQueue (`issue#19450 `_, `pr#14447 `_, "Yan, Zheng") +* mds: fix mgrc shutdown (`issue#19566 `_, `pr#14505 `_, John Spray) +* mds: fix stray creation/removal notification (`issue#19630 `_, `pr#14554 `_, "Yan, Zheng") +* mds: ignore ENOENT on writing backtrace (`issue#19401 `_, `pr#14207 `_, John Spray) +* mds: include advisory `path` field in damage (`issue#18509 `_, `pr#14104 `_, John Spray) +* mds: make C_MDSInternalNoop::complete() delete 'this' (`issue#19501 `_, `pr#14347 `_, "Yan, Zheng") +* mds: miscellaneous multimds fixes (`issue#19022 `_, `pr#13698 `_, "Yan, Zheng") +* mds: pretty json from `tell` commands (`pr#14105 `_, John Spray) +* mds: remove legacy "mds tell" command (`issue#19288 `_, `pr#14015 `_, John Spray) +* mds: Return error message instead of asserting (`pr#14469 `_, Brad Hubbard) +* mds: set ceph-mds name uncond for external tools (`issue#19291 `_, `pr#14021 `_, Patrick Donnelly) +* mds: shut down finisher before objecter (`issue#19204 `_, `pr#13859 `_, John Spray) +* mds: use same inode count in health check as in trim (`issue#19395 `_, `pr#14197 `_, John Spray) +* mds: warn if insufficient standbys exist (`issue#17604 `_, `pr#12074 `_, Patrick Donnelly) +* mgr: always free allocated MgrPyModule (`issue#19590 `_, `pr#14507 `_, Kefu Chai) +* mgr: ceph-mgr: rotate logs on sighup (`issue#19568 `_, `pr#14437 `_, Dan van der Ster) +* mgr: fix bugs in init, beacons (`issue#19516 `_, `issue#19502 `_, `pr#14374 `_, Sage Weil) +* mgr: fix crash on missing 'ceph_version' in daemon metadata (fixes #18764) (`issue#18764 `_, `pr#14129 `_, Tim Serong) +* mgr: fix several init/re-init bugs (`issue#19491 `_, `pr#14328 `_, Sage Weil) +* mgr: mgr/MgrClient: fix reconnect event leak (`issue#19580 `_, `pr#14431 `_, Sage Weil) +* mgr,mon: mon,mgr: move reweight-by-* to mgr (`pr#14404 `_, Kefu Chai) +* mgr: move 'osd perf' and 'osd blocked-by' to mgr (`pr#14303 `_, Sage Weil) +* mgr: move "osd pool stats" to mgr (`pr#14365 `_, Kefu Chai) +* mgr: optimization some judgment and adjust the debug remove value in register_new_pgs (`pr#14046 `_, song baisen) +* mgr: pass through cluster log to plugins (`pr#13690 `_, John Spray) +* mgr: pybind/mgr/rest: don't set timezone to Chicago (`pr#14184 `_, Tim Serong) +* mgr: remove unused function declarations (`pr#14366 `_, Wei Jin) +* mgr: rm nonused main function (`pr#14313 `_, Wei Jin) +* mgr: shutdown py_modules in Mgr::shutdown() (`issue#19258 `_, `pr#14078 `_, Kefu Chai) +* mon: add mon_debug_no_require_luminous (`pr#14490 `_, Sage Weil) +* mon: avoid segfault in wait_auth_rotating (`issue#19566 `_, `pr#14430 `_, John Spray) +* mon: common/config_opts.h: kill mon_pg_create_interval (`pr#13800 `_, xie xingguo) +* mon: emit cluster log messages on MDS health changes (`issue#19551 `_, `pr#14398 `_, John Spray) +* mon: fix hiding mdsmonitor informative strings (`issue#16709 `_, `pr#13904 `_, John Spray) +* mon: fix synchronise pgmap with others (`pr#14418 `_, song baisen, z09440) +* mon: mon/MonClient: make get_mon_log_message() atomic (`issue#19427 `_, `pr#14422 `_, Kefu Chai) +* mon: mon/Monitor.h: add const to member function (`pr#10412 `_, Michal Jarzabek) +* mon: mon/OSDMonitor: check last_osd_report only when the whole cluster is lu… (`pr#14294 `_, Kefu Chai) +* mon: mon/OSDMonitor: Clean up: delete extra S signature for plural (`pr#14174 `_, Shinobu Kinjo) +* mon: mon/OSDMonitor: spinlock -> std::mutex (`pr#14269 `_, Sage Weil) +* mon: mon/OSDMonitor: transit creating_pgs from pgmap when upgrading (`issue#19584 `_, `pr#14551 `_, Kefu Chai) +* mon: mon/OSDMonitor: update creating epoch if target osd changed (`issue#19515 `_, `pr#14386 `_, Kefu Chai) +* mon: mon/PGMap: make si units more readable in PGMap summary (`pr#14185 `_, liuhong) +* mon: osd crush set crushmap need sanity check (`issue#19302 `_, `pr#14029 `_, Loic Dachary) +* mon: Tidy up removal of debug mon features (`pr#14467 `_, Brad Hubbard) +* mon: update mgrmap when active goes offline (`issue#19407 `_, `pr#14220 `_, John Spray) +* msg/async: Postpone bind if network stack is not ready (`pr#14414 `_, Amir Vadai, Haomai Wang) +* msg: src/msg/async: Update fix broken compilation for Posix (`pr#14336 `_, Sarit Zubakov) +* NVMEDevice: remove unnessary dpdk header file (`pr#14650 `_, optimistyzy) +* osd: add "heap *" admin command (`issue#15475 `_, `pr#13073 `_, Jesse Williamson) +* osd: add override in headers files (`pr#13962 `_, liuchang0812) +* osd: Cleanup-Updated OSDMap.cc with C++11 style range-for loops (`pr#14381 `_, Jos Collin) +* osd: combine unstable stats with info.stats when publish stats to osd (`pr#14060 `_, Mingxin Liu) +* osd: fix comments about pg refs and lock (`pr#14279 `_, tang.jin) +* osd: fix some osd beacon bugs (`pr#14274 `_, Sage Weil) +* osd: kill all remaining MOSDSubOp users (`pr#13401 `_, Sage Weil) +* osd: make ec overwrites ready to use (`pr#14496 `_, Josh Durgin) +* osd: new op for calculating an extent checksum (`pr#14256 `_, Jason Dillaman) +* osd: osd/PrimaryLogPG: nullptr not NULL (`pr#13973 `_, Shinobu Kinjo) +* osd: pg-remap -> pg-upmap (`pr#14556 `_, Sage Weil) +* osd: print pg_info_t::purged_snaps as array, not string (`issue#18584 `_, `pr#14217 `_, liuchang0812) +* qa: krbd_data_pool.sh: account for rbd_info metadata object (`pr#14631 `_, Ilya Dryomov) +* qa/objectstore: test bluestore with aggressive compression (`pr#14623 `_, Sage Weil) +* qa/tasks: assert on pg status with a timeout (`issue#19594 `_, `pr#14608 `_, Kefu Chai) +* qa/workunits/cephtool/test.sh: Be more liberal in testing health-output. (`pr#14614 `_, Willem Jan Withagen) +* rbd: correct issues with image importing (`pr#14401 `_, Jason Dillaman) +* rbd: error out if import image format failed (`pr#13957 `_, wangzhengyong) +* rbd: import-diff should discard any zeroed extents (`pr#14445 `_, Jason Dillaman) +* rbd: import real thin-provision image (`issue#15648 `_, `pr#12883 `_, yaoning, Ning Yao) +* rbd-mirror: pool watcher should track mirror uuid (`pr#14240 `_, Jason Dillaman) +* rbd-mirror: separate ImageReplayer handling from Replayer (`issue#18785 `_, `pr#13803 `_, Mykola Golub) +* rbd-nbd: clean up the doc and help information (`pr#14146 `_, Pan Liu) +* rbd-nbd: remove debug messages from do_unmap (`pr#14253 `_, Pan Liu) +* rbd-nbd: s/cpp_error/cpp_strerror/ to fix FTBFS (`pr#14223 `_, Kefu Chai) +* rbd-nbd: support signal handle for SIGHUP, SIGINT and SIGTERM. (`issue#19349 `_, `pr#14079 `_, Pan Liu) +* rbd: pybind/rbd: add image metadata methods (`issue#19451 `_, `pr#14463 `_, Mykola Golub) +* rbd,tests: qa/workunits: corrected issues with RBD cli test (`pr#14460 `_, Jason Dillaman) +* rbd,tests: qa/workunits/rbd: diff.sh failed removing nonexistent file (`pr#14482 `_, Mykola Golub) +* rbd,tests: test/librados_test_stub: fixed cls_cxx_map_get_keys/vals return value (`issue#19597 `_, `pr#14484 `_, Jason Dillaman) +* rbd,tests: test/rbd_mirror: race in TestMockInstanceWatcher on destroy (`pr#14453 `_, Mykola Golub) +* rbd: use min() explicitly (`issue#18938 `_, `pr#14202 `_, Kefu Chai) +* rbd: validate pool and snap name optionals (`issue#14535 `_, `pr#13836 `_, Gaurav Kumar Garg) +* rbd: warning, ‘devno’ may be used uninitialized in this function (`pr#14271 `_, Jos Collin) +* rdma: msg/async/rdma: Debug prints for ibv_* (`pr#14249 `_, Amir Vadai) +* rdma: msg/async/rdma: Device::last_poll_dev must be positive (`pr#14250 `_, Amir Vadai) +* rdma: msg/async/rdma: Fix small memory leaks detected by valgrind (`pr#14288 `_, Amir Vadai) +* rdma: msg/async/rdma: Make poll_blocking() poll for async events in additio… (`pr#14320 `_, Amir Vadai) +* rdma: msg/async/rdma: Make port number an attribute of the Connection not o… (`pr#14297 `_, Amir Vadai) +* rdma: msg/async/rdma: RDMA-CM, get_device() by ibv_context (`pr#14410 `_, Amir Vadai) +* rdma: msg/async/rdma: RDMA-CM, Pass specific ConnMgr info in constructor (`pr#14409 `_, Amir Vadai) +* rgw: Added code to correctly account for bytes sent/ received during a 'PUT' operation. (`pr#14042 `_, Pritha Srivastava) +* rgw: add --num-zonegroups option for multi test (`pr#14216 `_, lvshuhua) +* rgw: add pool namespace to cache's key so that system obj can have unique key (`issue#19372 `_, `pr#14125 `_, Zhang Shaowen) +* rgw: add support for multipart upload expiration. (`issue#19088 `_, `pr#13622 `_, Zhang Shaowen) +* rgw: add support for the BulkUpload of Swift API (`pr#12243 `_, Radoslaw Zarzynski) +* rgw: add the remove-x-delete feature to cancel swift object expiration (`issue#19074 `_, `pr#13621 `_, Jing Wenjun) +* rgw: Add --zonegroup-new-name in usage (`pr#12084 `_, Hans van den Bogert) +* rgw: allow larger payload for period commit (`issue#19505 `_, `pr#14355 `_, Casey Bodley) +* rgw: allow system users to read SLO parts (`issue#19027 `_, `pr#13561 `_, Casey Bodley) +* rgw: avoid listing user buckets for rgw_delete_user (`pr#13991 `_, liuchang0812) +* rgw: avoid using null pointer in rgw_file.cc (`pr#14474 `_, lihongjie) +* rgw: bucket stats display bucket index type (`pr#14466 `_, fang yuxiang) +* rgw: clean up the unneeded rgw::io::ChunkingFilter::has_content_length. (`pr#13504 `_, Radoslaw Zarzynski) +* rgw: cls/rgw: Clean up the "magic string" usage in the cls layer for RGW. (`pr#12536 `_, Ira Cooper) +* rgw: cls/user: cls_user_bucket backward compatibility (`issue#19367 `_, `pr#14128 `_, Yehuda Sadeh) +* rgw: cls_user don't clobber existing bucket stats when creating bucket (`issue#16357 `_, `pr#10121 `_, Abhishek Lekshmanan) +* rgw: continuation of the auth rework (`pr#12893 `_, Radoslaw Zarzynski, Matt Benjamin) +* rgw: delete non-empty buckets in slave zonegroup works not well (`issue#19313 `_, `pr#14043 `_, Zhang Shaowen) +* rgw: don't read all user input for a few param requests (`pr#13815 `_, Abhishek Lekshmanan) +* rgw: enable to update acl of bucket created in slave zonegroup (`issue#16888 `_, `pr#14082 `_, Guo Zhandong) +* rgw: error more verbosely in RGWRados::create_pool (`pr#14642 `_, Matt Benjamin) +* rgw: fix build of conflict after auth rework (`pr#14203 `_, Casey Bodley) +* rgw: fix configurable write obj window size (`pr#13934 `_, hechuang) +* rgw: fix for EINVAL errors on forwarded bucket put_acl requests (`pr#14376 `_, Casey Bodley) +* rgw: fix for null version_id in fetch_remote_obj() (`pr#14375 `_, Casey Bodley) +* rgw: fix memory leak in delete_obj_aio (`pr#13998 `_, wangzhengyong) +* rgw: fix memory leak in RGWGetObjLayout (`pr#14014 `_, liuchang0812) +* rgw: fix response header of Swift API (`issue#19443 `_, `pr#14280 `_, tone-zhang) +* rgw: fix slave zonegroup cannot enable the bucket versioning (`issue#18003 `_, `pr#12175 `_, lvshuhua) +* rgw: fix uninitialized fields (`pr#14120 `_, wangzhengyong) +* rgw: LCWorker's worktime is not the same as config rgw_lifecycle_work_time. (`issue#18087 `_, `pr#11963 `_, Zhang Shaowen) +* rgw: multisite enabled over multiple clusters (`pr#12535 `_, Ali Maredia) +* rgw: multisite: fixes for zonegroup redirect (`issue#19488 `_, `pr#14319 `_, Casey Bodley) +* rgw: radosgw-admin: use zone id when creating a zone (`issue#19498 `_, `pr#14340 `_, Orit Wasserman) +* rgw: Removed Unwanted headers (`pr#14183 `_, Jos Collin) +* rgw: remove duplicate flush formatter (`pr#12437 `_, Guo Zhandong) +* rgw: remove extra RGWMPObj in rgw_multi.h (`pr#14619 `_, Casey Bodley) +* rgw: rgw_file: fix missing unlock in unlink (`issue#19435 `_, `pr#14262 `_, Gui Hecheng) +* rgw: rgw_file: fix non-posix errcode EINVAL to ENAMETOOLONG (`pr#13764 `_, Gui Hecheng) +* rgw: rgw_file: fix readdir after dirent-change (`issue#19634 `_, `pr#14561 `_, Matt Benjamin) +* rgw: rgw_file: pre-compute unix attrs in write_finish() (`issue#19653 `_, `pr#14609 `_, Matt Benjamin) +* rgw: rgw_file: support readdir cb type hints (plus fixes) (`issue#19623 `_, `issue#19625 `_, `issue#19624 `_, `pr#14458 `_, Matt Benjamin) +* rgw: rgw_lc: drop a bunch of unused headers (`pr#14342 `_, Abhishek Lekshmanan) +* rgw: rgw/lifecycle: do not send lifecycle rules when GetLifeCycle failed (`issue#19363 `_, `pr#14160 `_, liuchang0812) +* rgw: rgw_op: remove unused variable iter (`pr#14276 `_, Weibing Zhang) +* rgw: s3 server-side encryption (SSE-C, SSE-KMS) (`pr#11049 `_, Adam Kupczyk, Casey Bodley, Radoslaw Zarzynski) +* rgw: stat requests skip compression, manifest handling, etc (`pr#14109 `_, Casey Bodley) +* rgw: switch from "timegm()" to "internal_timegm()" for better portability (`issue#12863 `_, `pr#14327 `_, Rishabh Kumar) +* rgw: switch to std::array in RGWBulkUploadOp due to C++11 and FreeBSD. (`pr#14314 `_, Radoslaw Zarzynski) +* rgw,tests: qa/rgw: add configuration for server-side encryption tests (`pr#13597 `_, Casey Bodley) +* rgw,tests: test/rgw: test_bucket_delete_notempty in test_multi.py (`pr#14090 `_, Casey Bodley) +* rgw: update is_truncated in function rgw_read_user_buckets (`issue#19365 `_, `pr#14343 `_, liuchang0812) +* rgw: verified f23 (`pr#14553 `_, Gui Hecheng) +* rgw: version id doesn't work in fetch_remote_obj (`pr#14010 `_, Zhang Shaowen) +* rgw: warning, output may be truncated before the last format character (`pr#14194 `_, Jos Collin) +* src/ceph-disk/ceph_disk/main.py: Make 'ceph-disk list' work on FreeBSD (`pr#14483 `_, Willem Jan Withagen) +* test/osd/osd-dup.sh: warn on low open file limit (`pr#14637 `_, Piotr Dałek) +* test: rbd master/slave notify test should test active features (`issue#19692 `_, `pr#14638 `_, Jason Dillaman) +* test/rgw: refactor test_multi.py for use in qa suite (`pr#14433 `_, Casey Bodley) +* tests: add MGR=1 so 'pg dump' won't be blocked (`pr#14266 `_, Kefu Chai) +* tests: ceph_objectstore_tool.py: kill all daemons (`pr#14428 `_, Kefu Chai) +* tests: qa: Add reboot case for systemd test (`pr#14229 `_, Vasu Kulkarni) +* tests: qa/suites: drop 'fs' facet, and add 'objectstore' facet where missing (`pr#14198 `_, Sage Weil) +* tests: qa/tasks: use sudo to check ceph health for systemd test (`pr#14464 `_, Vasu Kulkarni) +* tests: qa/tasks/workunit.py: use "overrides" as the default settings of workunit (`issue#19429 `_, `pr#14281 `_, Kefu Chai) +* tests: qa/workunits/ceph-helpers: display rejected string (`pr#14468 `_, Kefu Chai) +* tests: tasks/workunit.py: when cloning, use --depth=1 (`pr#14214 `_, Dan Mick) +* tests: test: add explicit braces to avoid ambiguous ‘else’ and to silence warnings (`pr#14472 `_, Jos Collin) +* tests: test: objectstore: chain_xattr: fix wrong memset usage to fill buf (`pr#14277 `_, Weibing Zhang) +* tests: Thrasher: handle "OSD has the store locked" gracefully (`issue#19556 `_, `pr#14415 `_, Nathan Cutler) +* tests: workunit: request branch when cloning (`pr#14260 `_, Kefu Chai, Dan Mick) +* tools: ceph-disk: Add fix subcommand (`pr#13310 `_, Boris Ranto) +* tools: ceph-release-notes: prefixes and pep8 compliance (`pr#14156 `_, Nathan Cutler) +* tools: ceph-release-notes: strip trailing punctuation (`pr#14385 `_, Nathan Cutler) +* tools: stop.sh: boilerplate error (don't stop mon when stopping mgr) (`pr#14461 `_, Dan Mick) +* tools: warning, ‘%.16x’ directive output truncated writing 16 bytes into a region of size 9. (`pr#14292 `_, Jos Collin) + + v12.0.1 Luminous (dev) ======================