diff --git a/PendingReleaseNotes b/PendingReleaseNotes index f4718eb179f10..6ef3e7245865e 100644 --- a/PendingReleaseNotes +++ b/PendingReleaseNotes @@ -1,35 +1,5 @@ >= 12.0.0 ------ -* 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. ..." * The "journaler allow split entries" config setting has been removed. 12.0.0 @@ -133,3 +103,37 @@ before:: ceph osd rm osd.123 + +12.0.2 +------ + +* 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. ..." diff --git a/doc/release-notes.rst b/doc/release-notes.rst index 9b657e622d394..e2b7e83d9c29c 100644 --- a/doc/release-notes.rst +++ b/doc/release-notes.rst @@ -2,6 +2,349 @@ Release Notes =============== +v12.0.3 Luminous (dev) +====================== + +This is the fourth development checkpoint release of Luminous, the next long +term stable release. This release introduces several improvements in bluestore, +monitor, rbd & rgw. + +Major changes from v12.0.2 +-------------------------- +* The "journaler allow split entries" config setting has been removed. + +Notable Changes +--------------- +* bluestore,core: osd/OSDMap: should update input param if osd dne (`pr#14863 `_, Kefu Chai) +* bluestore: include/intarith: templatize ctz/clz/cbits helpers (`pr#14862 `_, Kefu Chai) +* bluestore: os/bluestore: align reclaim size to bluefs_alloc_size (`pr#14744 `_, Haomai Wang) +* bluestore: os/bluestore: assert blob map returns success (`pr#14473 `_, shiqi) +* bluestore: os/bluestore: fix deferred write race (`issue#19880 `_, `pr#15004 `_, Sage Weil) +* bluestore: os/bluestore: fix typo(s/trasnaction/transaction/) (`pr#14890 `_, xie xingguo) +* bluestore: os/bluestore: fix use after free race with aio_wait (`pr#14956 `_, Sage Weil) +* bluestore: os/bluestore: pre-calculate number of ghost buffers to evict (`pr#15029 `_, xie xingguo) +* bluestore: os/bluestore: Record l_bluestore_state_kv_queued_lat for sync_submit_… (`pr#14448 `_, Jianpeng Ma) +* bluestore: os/bluestore: Remove ExtentFreeListManager. (`pr#14772 `_, Jianpeng Ma) +* bluestore: os/bluestore: remove unused condition variable (`pr#14973 `_, Igor Fedotov) +* bluestore: os/bluestore: rename/fix throttle options (`pr#14717 `_, Sage Weil) +* bluestore: os/bluestore: roundoff bluefs allocs to bluefs_alloc_size (`pr#14876 `_, Ramesh Chander) +* bluestore: os/bluestore: use correct bound encode size for unused (`pr#14731 `_, Haomai Wang) +* bluestore,performance: common/config_opts.h: compaction readahead for bluestore/rocksdb (`pr#14932 `_, Mark Nelson) +* bluestore,performance: os/bluestore/BlueFS: add bluefs_sync_write option (`pr#14510 `_, Sage Weil) +* bluestore,performance: os/bluestore: do not balance bluefs on every kv_sync_thread iteration (`pr#14557 `_, Sage Weil) +* bluestore,performance: os/bluestore: eliminate some excessive stuff (`pr#14675 `_, Igor Fedotov) +* bluestore,performance: os/bluestore: get rid off excessive lock at BitMapAllocator (`pr#14749 `_, Igor Fedotov) +* bluestore,performance: os/blueStore: In osd_tp_thread, call _txc_finalize_kv. (`pr#14709 `_, Jianpeng Ma) +* bluestore,performance: os/bluestore: make bluestore_max_blob_size parameter hdd/ssd case dependant (`pr#14434 `_, Igor Fedotov) +* bluestore,performance: os/bluestore: rewrite deferred write handling (`issue#16644 `_, `pr#14491 `_, Sage Weil) +* bluestore,performance: os/bluestore: use denc for varint encoding (`pr#14911 `_, Piotr Dałek) +* bluestore,performance: os/fs/aio: use small_vector for aio_t; clean up header location (`pr#14853 `_, Sage Weil) +* bluestore,tests: unittest_alloc: add test_alloc_big (`issue#16662 `_, `pr#14844 `_, Sage Weil) +* bluestore,tools: ceph-kvstore-tool: allow 'bluestore-kv' as kvdb type; add escaping, compaction (`pr#14718 `_, Sage Weil) +* build/ops: alpine: add alpine linux dev support (`pr#9853 `_, John Coyle) +* build/ops: arch: use __get_cpuid instead of do_cpuid (`issue#7869 `_, `pr#14857 `_, Jos Collin) +* build/ops: CMakeLists.txt: don't do crypto/isa-l if not Intel (`pr#14721 `_, Dan Mick) +* build/ops: compressor/zlib: fix plugin for non-Intel arches (`pr#14947 `_, Dan Mick) +* build/ops: debian/rpm: move radosgw-admin to ceph-common (`issue#19577 `_, `pr#14940 `_, Ali Maredia) +* build/ops: dmclock: error: ‘function’ in namespace ‘std’ does not name a template type (`pr#14909 `_, Jos Collin) +* build/ops: dmclock: initial commit of dmclock QoS library (`pr#14330 `_, J. Eric Ivancich) +* build/ops: init-ceph: add ceph libraries path to environment (`pr#14693 `_, Mohamad Gebai) +* build/ops: init-ceph: should have a space before "]" (`pr#14796 `_, Kefu Chai) +* build/ops: merge v12.0.2 release tag (`pr#15091 `_, Jenkins Build Slave User) +* build/ops,mgr: debian/ceph-base.dirs: create bootstrap-mgr dirs (`pr#14838 `_, Sage Weil) +* build/ops,mon: mon/ConfigKeyService: add 'config-key dump' to show keys and vals (`pr#14858 `_, Dan Mick) +* build/ops,performance,rbd: byteorder: use gcc intrinsics for byteswap (`pr#15012 `_, Kefu Chai) +* build/ops: rocksdb: sync with upstream (`pr#14818 `_, Nathan Cutler, Kefu Chai) +* build/ops: rpm: fix python-Sphinx package name for SUSE (`pr#15015 `_, Nathan Cutler, Jan Matejek) +* build/ops: rpm: gperftools-devel >= 2.4 (`issue#13522 `_, `pr#14870 `_, Nathan Cutler) +* build/ops: rpm: package crypto on x86_64 only (`pr#14779 `_, Nathan Cutler) +* build/ops: Signed-off-by: Nathan Cutler (`pr#14820 `_, Kefu Chai) +* build/ops: src/init-ceph.in: allow one((re)?start|stop) as commands (`pr#14560 `_, Willem Jan Withagen) +* build/ops: yasm-wrapper: strip -E (stops ccache trashing source files) (`pr#14633 `_, Tim Serong) +* cephfs: ceph-fuse: use user space permission check by default (`issue#19820 `_, `pr#14907 `_, "Yan, Zheng") +* cephfs: client: client_quota no longer optional (`pr#14978 `_, Dan van der Ster) +* cephfs: client: fix UserPerm::gid_in_group() (`issue#19903 `_, `pr#15039 `_, "Yan, Zheng") +* cephfs: client: getattr before returning quota/layout xattrs (`issue#17939 `_, `pr#14018 `_, John Spray) +* cephfs: fs/ceph-fuse: normalize file open flags on the wire (`pr#14822 `_, Jan Fajerski) +* cephfs: mds/Server.cc: Don't evict a slow client if... (`issue#17855 `_, `pr#12935 `_, Michal Jarzabek) +* cephfs: osdc/Filer: truncate large file party by party (`issue#19755 `_, `pr#14769 `_, "Yan, Zheng") +* cephfs: osdc: remove journaler_allow_split_entries option (`issue#19691 `_, `pr#14636 `_, John Spray) +* cephfs,performance: client: make seeky readdir more efficiency (`issue#19306 `_, `pr#14317 `_, "Yan, Zheng") +* cephfs: qa/cephfs: Fix for test_data_scan (`issue#19893 `_, `pr#15094 `_, Douglas Fuller) +* cephfs: qa/suites/fs: reserve more space for mds in full tests (`issue#19891 `_, `pr#15026 `_, "Yan, Zheng") +* cephfs,tests: qa: silence spurious insufficient standby health warnings (`pr#15035 `_, Patrick Donnelly) +* cephfs,tests: qa: Tidy up fs/ suite (`pr#14575 `_, John Spray) +* cleanup: dmclock: include missing header. (`pr#14923 `_, Jos Collin) +* cleanup: kill clang warnings (`pr#14549 `_, Kefu Chai) +* cleanup: test: c_write_operations.cc: silence warning from -Wsign-compare (`pr#14889 `_, Jos Collin) +* cmake: add "container" to required boost components (`pr#14850 `_, Kefu Chai) +* cmake: align cmake names of library packages (`issue#19853 `_, `pr#14951 `_, Nathan Cutler) +* cmake: Allow tests to build without NSS (`pr#13315 `_, Daniel Gryniewicz) +* cmake: do not compile crush twice (`pr#14725 `_, Kefu Chai) +* cmake: enable cross-compilation of boost (`issue#18938 `_, `pr#14881 `_, Kefu Chai) +* cmake: fix the linked lib reference of unittest_rgw_crypto (`pr#14869 `_, Willem Jan Withagen) +* cmake: kill duplicated cmake commands (`pr#14948 `_, liuchang0812) +* cmake: pass -d0 to b2 if not CMAKE_VERBOSE_MAKEFILE (`pr#14651 `_, Kefu Chai) +* cmake: should not compile crc32c_ppc.c on intel arch. (`pr#14423 `_, Kefu Chai) +* common: Better handling for missing/inaccessible ceph.conf files (`issue#19658 `_, `pr#14757 `_, Dan Mick) +* common: cls/log/cls_log.cc: reduce logging noise (`issue#19835 `_, `pr#14879 `_, Willem Jan Withagen) +* common: common/admin_socket: add config for admin socket permission bits (`pr#11684 `_, runsisi) +* common: common/ceph_context.cc: Use CEPH_DEV to reduce logfile noise (`pr#10384 `_, Willem Jan Withagen) +* common: common/config: Add /usr/local/etc/ceph to default paths (`pr#14797 `_, Willem Jan Withagen) +* common: common/config_opts: Set the HDD throttle cost to 1.5M (`pr#14808 `_, Mark Nelson) +* common: common/Finisher: fix uninitialized variable warning (`pr#14958 `_, Piotr Dałek) +* common: common/interval_set: return int64_t for size() (`pr#12898 `_, Xinze Chi) +* common: crypto: cleanup NSPR in main thread (`pr#14801 `_, Kefu Chai) +* common: fix building against libcryptopp (`pr#14949 `_, Shengjing Zhu) +* common: Fix unused variable references warnings (`pr#14790 `_, Willem Jan Withagen) +* common: msg/async: return right away in NetHandler::set_priority() if not supported (`pr#14795 `_, Kefu Chai) +* common: osdc/Objecter: fix pool dne corner case (`issue#19552 `_, `pr#14901 `_, Sage Weil) +* common: osdc/Objecter: handle command target that goes down (`issue#19452 `_, `pr#14302 `_, Sage Weil) +* common: osd/OSDMap: fix feature commit comment (`pr#15056 `_, Sage Weil) +* common,performance: common/Finisher: batch handle perfcounter && only send signal when waiter existed. (`pr#14363 `_, Jianpeng Ma) +* common: Remove redundant includes (`issue#19883 `_, `pr#15003 `_, Brad Hubbard) +* common: Remove redundant includes (`issue#19883 `_, `pr#15019 `_, Brad Hubbard) +* common: src/common: change last_work_queue to next_work_queue. (`pr#14738 `_, Pan Liu) +* core: ceph-disk: ceph-disk on FreeBSD should not use mpath-code (`pr#14837 `_, Willem Jan Withagen) +* core: ceph-disk: implement prepare --no-locking (`pr#14728 `_, Dan van der Ster, Loic Dachary) +* core: ceph-disk: separate ceph-osd --check-needs-* logs (`issue#19888 `_, `pr#15016 `_, Loic Dachary) +* core: erasure-code: sync jerasure/gf-complete submodules (`pr#14424 `_, Loic Dachary) +* core: introduce DirectMessenger (`pr#14755 `_, Casey Bodley, Matt Benjamin) +* core: messages: remove compat cruft (`pr#14475 `_, Sage Weil) +* core,mon: common/Finisher: fix uninitialized variable warning (`issue#19874 `_, `pr#14979 `_, Sage Weil) +* core: mon,osd: add require_min_compat_client setting to enforce and clarify client compatibility (`pr#14959 `_, Sage Weil) +* core: mon/OSDMonitor: skip prime_pg_temp if mapping is prior to osdmap (`pr#14826 `_, Kefu Chai) +* core: mon/PGMonitor: fix wrongly report "pg stuck in inactive" (`pr#14391 `_, Mingxin Liu) +* core: osd,librados: cmpext support (`pr#14715 `_, Zhengyong Wang, David Disseldorp, Mike Christie) +* core: osd/OSDMap: bump encoding version for require_min_compat_client (`pr#15046 `_, "Yan, Zheng") +* core: osd/PG.cc: Optimistic estimation on PG.last_active (`pr#14799 `_, Xiaoxi Chen) +* core: osd/PG.cc: unify the call of checking whether lock is held (`pr#15013 `_, Jin Cai) +* core: osd/PG: fix possible overflow on unfound objects (`pr#12669 `_, huangjun) +* core: osd/PrimaryLogPG: do not call on_shutdown() if (pg.deleting) (`issue#19902 `_, `pr#15040 `_, Kefu Chai) +* core: osd/PrimayLogPG: update modified range to include the whole object size for write_full op (`pr#15021 `_, runsisi) +* core: osd/ReplicatedBackend: remove MOSDSubOp cruft from repop_applied (`pr#14358 `_, Jianpeng Ma) +* core: os/filestore/FileJournal: Fix typo in the comment (`pr#14493 `_, Zhou Zhengping) +* core: os/filestore: fix infinit loops in fiemap() (`pr#14367 `_, Ning Yao) +* core,performance: osd, os: reduce fiemap burden (`pr#14640 `_, Piotr Dałek) +* core,performance: os/filestore: use new sleep strategy when io_submit gets EAGAIN. (`pr#14860 `_, Pan Liu) +* core,performance: os/kstore: Added rocksdb bloom filter settings (`pr#13053 `_, Ted-Chang) +* core,tests: ceph_test_rados_api_watch_notify: make LibRadosWatchNotify.Watch3Timeout tolerate thrashing (`issue#19433 `_, `pr#14899 `_, Sage Weil) +* core,tools: ceph: perfcounter priorities and daemonperf updates to use them (`pr#14793 `_, Sage Weil, Dan Mick) +* core,tools: kv: move 'bluestore-kv' hackery out of KeyValueDB into ceph-kvstore-tool (`issue#19778 `_, `pr#14895 `_, Sage Weil) +* crush: builder: legacy has chooseleaf_stable = 0 (`pr#14695 `_, Loic Dachary) +* crush: crush_init_workspace starts with struct crush_work (`pr#14696 `_, Loic Dachary) +* crush: update documentation for negative choose step (`pr#14970 `_, Loic Dachary) +* doc: AUTHORS: update tech leads (`pr#14350 `_, Patrick Donnelly) +* doc: correct and improve add user capability section (`pr#14055 `_, Chu, Hua-Rong) +* doc: Correcting the remove bucket example and adding bucket link/unlink examples (`pr#12460 `_, Uday Mullangi) +* doc: dev add a note about ccache (`pr#14478 `_, Abhishek Lekshmanan) +* doc: doc/dev: add some info about FreeBSD (`pr#14503 `_, Willem Jan Withagen) +* doc: fio: update README.md so only the fio ceph engine is built (`pr#15081 `_, Kefu Chai) +* doc: fix link that pointed to a nonexistent file (`pr#14740 `_, Peter Maloney) +* doc: Indicate how to add multiple admin capbabilies (`pr#13956 `_, Chu, Hua-Rong) +* doc: mailmap: add Alibaba into organization map (`pr#14900 `_, James Liu) +* doc: mailmap: update organization info (`pr#14747 `_, liuchang0812) +* doc: mailmap: V12.0.1 credits (`pr#14479 `_, M Ranga Swami Reddy) +* doc: mailmap: Weibing Zhang mailmap affiliation (`pr#15076 `_, Weibing Zhang) +* doc: mailmap: ztczll affiliation (`pr#15079 `_, zhanglei) +* doc: mention teuthology-worker security group (`pr#14748 `_, Nathan Cutler) +* doc: peoplemap: add pdonnell alias (`pr#14352 `_, Patrick Donnelly) +* doc: remove deprecated subcommand in man/8/ceph.rst (`pr#14928 `_, Drunkard Zhang) +* doc: Re-word the warnings about using git subtrees. (`pr#14999 `_, J. Eric Ivancich) +* doc: rgw: Clean up create subuser parameters (`pr#14335 `_, hrchu) +* doc: rgw: correct get usage parameter default value (`pr#14372 `_, hrchu) +* doc: rgw: Get user usage needs to specify user (`pr#14804 `_, hrchu) +* doc: rgw: note rgw_enable_usage_log option in adminops guide (`pr#14803 `_, hrchu) +* doc: rgw: Rewrite Java swift examples (`pr#14268 `_, Chu, Hua-Rong) +* doc: rgw: Rewrite the key management (`pr#14384 `_, hrchu) +* doc: style fix for doc/cephfs/client-config-ref.rst (`pr#14840 `_, Drunkard Zhang) +* doc: two minor fixes (`pr#14494 `_, Drunkard Zhang) +* doc: update the support status of swift static website (`pr#13824 `_, Jing Wenjun) +* doc: v12.0.2 (dev) release notes (`pr#14625 `_, Abhishek Lekshmanan) +* librados: fix rados_pool_list when buf is null (`pr#14859 `_, Sage Weil) +* librbd: cleanup logging code under librbd/io (`pr#14975 `_, runsisi) +* librbd: do not instantiate templates while building tests (`issue#18938 `_, `pr#14891 `_, Kefu Chai) +* librbd: minor fixes for image trash move (`pr#14834 `_, runsisi) +* librbd: remove redundant check for image id emptiness (`pr#14830 `_, runsisi) +* librbd: silence -Wunused-variable warning (`pr#14953 `_, Kefu Chai) +* mds: add perf counters for file system operations (`pr#14938 `_, Michael Sevilla) +* mds: change_attr++ and set ctime for set_vxattr (`issue#19583 `_, `pr#14726 `_, Patrick Donnelly) +* mds: fix mantle script to not fail for last rank (`issue#19589 `_, `pr#14704 `_, Patrick Donnelly) +* mds: fix use-after-free in Locker::file_update_finish() (`issue#19828 `_, `pr#14991 `_, "Yan, Zheng") +* mds: issue new caps when sending reply to client (`issue#19635 `_, `pr#14743 `_, "Yan, Zheng") +* mds: relocate PTRWAITER put near get (`pr#14921 `_, Patrick Donnelly) +* mds: remove boost::pool usage and use tcmalloc directly (`issue#18425 `_, `pr#12792 `_, Zhi Zhang) +* mds: remove "mds log" config option (`issue#18816 `_, `pr#14652 `_, John Spray) +* mds: support export pinning on directories (`issue#17834 `_, `pr#14598 `_, "Yan, Zheng", Patrick Donnelly) +* mds: use debug_mds for most subsys (`issue#19734 `_, `pr#15052 `_, Patrick Donnelly) +* mgr: add machinery for python modules to send MCommands to daemons (`pr#14920 `_, John Spray) +* mgr: add mgr allow * to client.admin (`pr#14864 `_, huanwen ren) +* mgr: do shutdown using finisher so we can do it in the right order (`issue#19743 `_, `pr#14835 `_, Kefu Chai) +* mgr: do the shutdown in the right order (`issue#19813 `_, `pr#14952 `_, Kefu Chai) +* mgr: fix crash on set_config from python module with insufficient caps (`issue#19629 `_, `pr#14706 `_, Tim Serong) +* mgr: fix metadata handling from old MDS daemons (`pr#14161 `_, John Spray) +* mgr: fix python module teardown & add tests (`issue#19407 `_, `issue#19412 `_, `issue#19258 `_, `pr#14232 `_, John Spray) +* mgr: fix session leak (`issue#19591 `_, `pr#14720 `_, Sage Weil) +* mgr: Misc. bug fixes (`issue#18994 `_, `pr#14883 `_, John Spray) +* mgr: mkdir bootstrap-mgr (`pr#14824 `_, huanwen ren) +* mgr,mon: mon/MgrMonitor: only propose if we updated (`pr#14645 `_, Sage Weil) +* mgr,mon: mon,mgr: trim osdmap without the help of pgmap (`pr#14504 `_, Kefu Chai) +* mgr: pybind/mgr/rest: completely terminate cherrypy in shutdown (`pr#14995 `_, Tim Serong) +* mgr: redirect python stdout,stderr to ceph log (`pr#14189 `_, Kefu Chai, Tim Serong, Dan Mick) +* mgr: release allocated PyString (`pr#14716 `_, Kefu Chai) +* mgr: remove non-existent MDS daemons from FSMap (`issue#17453 `_, `pr#14937 `_, Spandan Kumar Sahu) +* mgr,tests: qa/suites: move mgr tests into rados suite (`pr#14687 `_, John Spray) +* mgr: various cleanups (`pr#14802 `_, Kefu Chai) +* mon: check is_shutdown() in timer callbacks (`issue#19825 `_, `pr#14919 `_, Kefu Chai) +* mon: do not prime_pg_temp creating pgs; clean up pg create conditions (`issue#19826 `_, `pr#14913 `_, Sage Weil) +* mon: don't call propose_pending in prepare_update() (`issue#19738 `_, `pr#14711 `_, John Spray) +* mon: logclient: use the seq id of the 1st log entry when resetting session (`issue#19427 `_, `pr#14927 `_, Kefu Chai) +* mon: mon/OSDMonitor: check get()'s return value instead of bl's length (`pr#14805 `_, Kefu Chai) +* mon: mon/OSDMonitor: cleanup pending_created_pgs after done with it (`pr#14898 `_, Kefu Chai) +* mon: mon/OSDMonitor: do not alter the "created" epoch of a pg (`issue#19787 `_, `pr#14849 `_, Kefu Chai) +* mon: mon/OSDMonitor: fix output func name in can_mark_out (`pr#14758 `_, xie xingguo) +* mon: mon/OSDMonitor: increase last_epoch_clean's lower bound if possible (`pr#14855 `_, Kefu Chai) +* mon: mon/OSDMonitor: tolerate upgrade from post-kraken dev cluster (`pr#14442 `_, Sage Weil) +* mon: mon/OSDMonitor: update creating_pgs using pending_creatings (`issue#19814 `_, `pr#14897 `_, Kefu Chai) +* mon: mon/OSDMonitor: update pg_creatings even the new acting set is empty (`issue#19744 `_, `pr#14730 `_, Kefu Chai) +* mon: mon/PGMap: add up_primary pg number field for pg-dump cmd (`pr#13451 `_, xie xingguo) +* mon: mon/PGMap.cc: fix "osd_epochs" section of dump_basic (`pr#14996 `_, xie xingguo) +* mon: mon/PGMonitor: clean up min/max span warning (`pr#14611 `_, Sage Weil) +* mon: move 'pg map' to OSDMonitor (`pr#14559 `_, Sage Weil) +* mon: osd/PGMonitor: always update pgmap with latest osdmap (`issue#19398 `_, `pr#14777 `_, Kefu Chai) +* mon: show inactive % in ceph status (`pr#14810 `_, Sage Weil) +* msg: Increase loglevels on some messages (`pr#14707 `_, Willem Jan Withagen) +* msg: msg/async/net_handler: errno should be stored before calling next function (`pr#14985 `_, Zhou Zhengping) +* msg: msg/simple: use my addr when setting sock priority (`issue#19801 `_, `pr#14878 `_, Kefu Chai) +* msg: src/msg/async/AsyncConnect.cc: Use of sizeof() on a Pointer Type (`pr#14773 `_, Svyatoslav) +* msg: src/msg/simple/Pipe.cc: Fix the inclusion of '}' (`pr#14843 `_, Willem Jan Withagen) +* osd: check fsid is normal before osd mkfs (`pr#13898 `_, song baisen) +* osd: clean nonused work queue (`pr#14990 `_, Wei Jin) +* osd: eliminate snapdir objects and move clone snaps vector into SnapSet (`pr#13610 `_, Sage Weil) +* osd: fix occasional MOSDMap leak (`issue#18293 `_, `pr#14558 `_, Sage Weil) +* osd: fix typo in comment (`pr#13061 `_, Gu Zhongyan) +* osd: Implement asynchronous scrub sleep (`issue#19497 `_, `pr#14886 `_, Brad Hubbard) +* osd: Implement peering state timing (`pr#14627 `_, Brad Hubbard) +* osd: objclass sdk (`pr#14723 `_, Neha Ojha) +* osd: osdc/Objecter: more constness (`pr#14819 `_, Kefu Chai) +* osd: osdc: silence warning from `-Wsign-compare` (`pr#14729 `_, Jos Collin) +* osd: pglog trimming fixes (`pr#12882 `_, Zhiqiang Wang) +* osd: pglog: with config, don't assert in the presence of stale diverg… (`issue#17916 `_, `pr#14648 `_, Greg Farnum) +* osd: put osdmap in mempool (`pr#14780 `_, Sage Weil) +* osd: renamed the new vector name in OSDMap::build_simple_crush_map_from_conf (`pr#14583 `_, Jos Collin) +* osd: ReplicatedBackend::prep_push() remove redundant variable assignments (`pr#14817 `_, Jin Cai) +* osd: sched_scrub() lock pg only if all scrubbing conditions are fulfilled (`pr#14968 `_, Jin Cai) +* osd: simplify past_intervals representation (`pr#14444 `_, Samuel Just, Sage Weil) +* osd: stop mgrc earlier in shutdown() (`issue#19638 `_, `pr#14904 `_, Kefu Chai) +* osd: stop MgrClient callbacks on shutdown (`issue#19638 `_, `pr#14896 `_, Sage Weil) +* osd: strip pglog op name (`pr#14764 `_, liuchang0812) +* osd: support dumping long ops (`pr#13019 `_, Zhiqiang Wang) +* osd: switch filestore to default to rocksdb (`pr#14814 `_, Neha Ojha) +* osd: tag fast dispatch messages with min_epoch (`pr#13681 `_, Sage Weil) +* osd: use append(bufferlist &) to avoid unnecessary copy (`pr#12272 `_, Yunchuan Wen) +* osd: zipkin tracing (`pr#14305 `_, Sage Weil, Marios-Evaggelos Kogias, Victor Araujo, Casey Bodley, Andrew Shewmaker, Chendi.Xue) +* performance: buffer, osd: add missing crc cache miss perf counter (`pr#14957 `_, Piotr Dałek) +* performance: osd/PG.cc: loop invariant code motion (`pr#12720 `_, Li Wang) +* pybind: better error msg (`pr#14497 `_, Kefu Chai) +* pybind: fix open flags calculation (`issue#19890 `_, `pr#15018 `_, "Yan, Zheng") +* qa: qa/added overrides (`pr#14917 `_, Yuri Weinstein) +* qa: qa/suite: replace reference to fs/xfs.yaml (`pr#14756 `_, Yehuda Sadeh) +* qa: qa/suites/rados/singleton-bluestore: concat settings (`pr#14884 `_, Kefu Chai) +* rbd: cls_rbd: default initialize snapshot namespace for legacy clients (`issue#19413 `_, `pr#14903 `_, Jason Dillaman) +* rbd: common/bit_vector: utilize deep-copy during data decode (`issue#19863 `_, `pr#15017 `_, Jason Dillaman) +* rbd: import needs to sanity check auto-generated image name (`issue#19128 `_, `pr#14754 `_, Mykola Golub) +* rbd: info command should indicate if parent is in trash (`pr#14875 `_, Jason Dillaman) +* rbd-mirror: ensure missing images are re-synced when detected (`issue#19811 `_, `pr#14945 `_, Jason Dillaman) +* rbd-mirror: failover and failback of unmodified image results in split-brain (`issue#19858 `_, `pr#14963 `_, Jason Dillaman) +* rbd-mirror: image deletions should be handled by assigned instance (`pr#14832 `_, Jason Dillaman) +* rbd-mirror: remove tracking of image names from pool watcher (`pr#14712 `_, Jason Dillaman) +* rbd-mirror: resolve admin socket path names collision (`issue#19907 `_, `pr#15048 `_, Mykola Golub) +* rbd-nbd: relax size check for newer kernel versions (`issue#19871 `_, `pr#14976 `_, Mykola Golub) +* rbd: rbd/bench: add notes of default values, it's easy to use (`pr#14762 `_, Zheng Yin) +* rbd: rbd, librbd: migrate atomic_t to std::atomic (`pr#14656 `_, Jesse Williamson) +* rbd: rbd-mirror A/A: proxy InstanceReplayer APIs via InstanceWatcher RPC (`issue#18787 `_, `pr#13978 `_, Mykola Golub) +* rbd: recognize exclusive option (`pr#14785 `_, Ilya Dryomov) +* rbd: removed spurious error message from mirror pool commands (`pr#14935 `_, Jason Dillaman) +* rbd: stop indefinite thread waiting in krbd udev handling (`issue#17195 `_, `pr#14051 `_, Spandan Kumar Sahu) +* rbd,tests: qa: krbd write-after-checksum tests (`pr#14836 `_, Ilya Dryomov) +* rbd,tests: qa/workunits/rbd: increased trash deferment period (`pr#14846 `_, Jason Dillaman) +* rbd,tests: qa/workunits: switch to OpenStack Ocata release for RBD testing (`pr#14465 `_, Jason Dillaman) +* rbd,tests: test/librbd/test_librbd.cc: set *features even if RBD_FEATURES is unset (`issue#19865 `_, `pr#14965 `_, Dan Mick) +* rbd,tests: test/librbd/test_notify.py: don't disable feature in slave (`issue#19716 `_, `pr#14751 `_, Mykola Golub) +* rbd,tests: test/rbd_mirror: race in TestMockLeaderWatcher.AcquireError (`issue#19405 `_, `pr#14741 `_, Mykola Golub) +* rbd,tests: test: remove hard-coded image name from RBD metadata test (`issue#19798 `_, `pr#14848 `_, Jason Dillaman) +* rdma: msg/async/rdma: add inqueue rx chunks perf counter (`pr#14782 `_, Haomai Wang) +* rgw: add bucket size limit check to radosgw-admin (`issue#17925 `_, `pr#11796 `_, Matt Benjamin) +* rgw: add 'state==SyncState::IncrementalSync' condition when add item … (`pr#14552 `_, Shasha Lu) +* rgw: add support container and object levels of swift bulkupload (`pr#14775 `_, Jing Wenjun) +* rgw: add support for FormPost of Swift API (`issue#17273 `_, `pr#11179 `_, Radoslaw Zarzynski, Orit Wasserman) +* rgw: civetweb don't go past the array index while calling mg_start (`issue#19749 `_, `pr#14750 `_, Abhishek Lekshmanan, Jesse Williamson) +* rgw: clean unuse code in cls_statelog_check_state (`pr#10260 `_, weiqiaomiao) +* rgw: cleanup: fix variable name in RGWRados::create_pool() declaration (`pr#14547 `_, Nathan Cutler) +* rgw: cleanup lc continuation (`pr#14906 `_, Jiaying Ren) +* rgw: cls/rgw: list_plain_entries() stops before bi_log entries (`issue#19876 `_, `pr#14981 `_, Casey Bodley) +* rgw: custom user data header (`issue#19644 `_, `pr#14592 `_, Pavan Rallabhandi) +* rgw: deduplicate variants of rgw_make_bucket_entry_name(). (`pr#14299 `_, Radoslaw Zarzynski) +* rgw: don't do unneccesary write if buffer with zero length (`pr#14925 `_, fang yuxiang) +* rgw: dont spawn error_repo until lease is acquired (`issue#19446 `_, `pr#14714 `_, Casey Bodley) +* rgw: drop unused param "bucket" from select_bucket_placement (`pr#14390 `_, Shasha Lu) +* rgw: drop unused port var (`pr#14412 `_, Jiaying Ren) +* rgw: fix broken /crossdomain.xml, /info and /healthcheck of Swift API. (`issue#19520 `_, `pr#14373 `_, Radoslaw Zarzynski) +* rgw: fix forward request for bulkupload to be applied in multisite (`issue#19645 `_, `pr#14601 `_, Jing Wenjun) +* rgw: fix handling of --remote in radosgw-admin period commands (`issue#19554 `_, `pr#14407 `_, Casey Bodley) +* rgw: fix RadosGW hang during multi-chunk upload of AWSv4. (`issue#19754 `_, `pr#14770 `_, Radoslaw Zarzynski) +* rgw: migrate atomic_t to std::atomic<> (ebirah) (`pr#14839 `_, Jesse Williamson) +* rgw: radosgw-admin: warn that 'realm rename' does not update other clusters (`issue#19746 `_, `pr#14722 `_, Casey Bodley) +* rgw: rgw_file: cleanup virtual keyword on derived functions (`pr#14908 `_, Gui Hecheng) +* rgw: rgw_ldap: log the ldap err in case of bind failure (`pr#14781 `_, Abhishek Lekshmanan) +* rgw: rgw multisite: automated mdlog trimming (`pr#13111 `_, Casey Bodley) +* rgw: rgw multisite: fixes for meta sync across periods (`issue#18639 `_, `pr#13070 `_, Casey Bodley) +* rgw: rgw multisite: remove the redundant post in OPT_ZONEGROUP_MODIFY (`pr#14359 `_, Jing Wenjun) +* rgw: RGWPeriodPusher spawns http thread before cr thread (`issue#19834 `_, `pr#14936 `_, Casey Bodley) +* rgw: rgw_rados drop deprecated global var (`pr#14411 `_, Jiaying Ren) +* rgw: should delete in_stream_req if conn->get_obj(...) return not zero value (`pr#9950 `_, weiqiaomiao) +* rgw: swift: ability to update swift read and write acls separately. (`issue#19289 `_, `pr#14499 `_, Marcus Watts) +* rgw: swift: disable revocation thread if sleep == 0 (`issue#19499 `_, `issue#9493 `_, `pr#14501 `_, Marcus Watts) +* rgw,tests: qa/rgw: add cluster name to path when s3tests scans rgw log (`pr#14845 `_, Casey Bodley) +* rgw,tests: qa/rgw: don't scan radosgw logs for encryption keys on jewel upgrade test (`pr#14697 `_, Casey Bodley) +* rgw,tests: qa/rgw: fix assertions in radosgw_admin task (`pr#14842 `_, Casey Bodley) +* rgw,tests: test/rgw: fixes for test_multi_period_incremental_sync() (`pr#13067 `_, Casey Bodley) +* rgw,tests: test/rgw: fix for empty lists as default arguments (`pr#14816 `_, Casey Bodley) +* rgw: update Beast for streaming reads in asio frontend (`pr#14273 `_, Casey Bodley) +* rgw: using the same bucket num_shards as master zg when create bucket in secondary zg (`issue#19745 `_, `pr#14388 `_, Shasha Lu) +* rgw: when create_bucket use the same num_shards with info.num_shards (`issue#19745 `_, `pr#15010 `_, Shasha Lu) +* tests: ceph_test_rados_api_tier: tolerate ENOENT from 'pg scrub' (`pr#14807 `_, Sage Weil) +* tests: cephtool/test.sh error on full tests (`issue#19698 `_, `pr#14647 `_, Willem Jan Withagen, David Zafman) +* tests: Don't dump core when using EXPECT_DEATH (`pr#14821 `_, Kefu Chai, Brad Hubbard) +* tests: fio_ceph_objectstore: fixes improper write request data lifetime (`pr#14338 `_, Adam Kupczyk) +* tests: fix broken links in upgrade/hammer-jewel-x/stress-split (`issue#19793 `_, `pr#14831 `_, Nathan Cutler) +* tests: include/denc: support ENCODE_DUMP (`pr#14962 `_, Sage Weil) +* tests: libradosstriper: do not assign garbage to returned value (`pr#15009 `_, Kefu Chai) +* tests: qa/erasure-code: override min_size to 2 (`issue#19770 `_, `pr#14872 `_, Kefu Chai) +* tests: qa/suites/jewel-x/point-to-point: don't scane for keys on second s3tests either (`pr#14788 `_, Sage Weil) +* tests: qa/suites: Reduce fs combination tests for smoke, use bluestore (`pr#14854 `_, Vasu Kulkarni) +* tests: qa/suites: Revert "qa/suites: add mon-reweight-min-pgs-per-osd = 4" (`pr#14584 `_, Kefu Chai) +* tests: qa/suites/upgrade/jewel-x: add mgr.x role (`pr#14689 `_, Sage Weil) +* tests: qa/suites/upgrade/kraken-x: misc fixes (`pr#14887 `_, Sage Weil) +* tests: qa/tasks/ceph_manager: always fix pgp_num when done with thrashosd task (`issue#19771 `_, `pr#14931 `_, Kefu Chai) +* tests: qa/tasks: few fixes to get ceph-deploy 1node to working state (`pr#14400 `_, Vasu Kulkarni) +* tests: rados: move cephtool.yaml to new singleton/bluestore subsuite (`issue#19797 `_, `pr#14847 `_, Nathan Cutler) +* tests: set -x in suites/iozone.sh workunit (`issue#19740 `_, `pr#14713 `_, Nathan Cutler) +* tests: test/compressor: disable isal tests if not available (`pr#14929 `_, Kefu Chai) +* tests: test: c_read_operations.cc: silence warning from -Wsign-compare (`pr#14888 `_, Jos Collin) +* tests: test/fio_ceph_objectstore: fix fio plugin build failure by engine_data (`pr#15044 `_, lisali) +* tests: test: fixing assert that creates warning: comparison between signed and unsigned integer expressions (`pr#14794 `_, Jos Collin) +* tests: test/fsx: Remove the dead code associated with aio backend (`pr#14905 `_, Zhou Zhengping) +* tests: test/objectstore/: Check put_ref return value (`pr#15007 `_, zhanglei) +* tests: test/osd/osd-dup.sh: lower wb fd throttle limits (`pr#14984 `_, Dan Mick) +* tests: test: use 7130 for crush-classes.sh (`pr#14783 `_, Loic Dachary) +* tests: test: warning: comparison between signed and unsigned integer expressions (`pr#14705 `_, Jos Collin) +* tests,tools: test: kill warnings (`pr#14892 `_, Kefu Chai) +* tools: change compare_exchange_weak to compare_exchange_strong (`pr#15030 `_, Jesse Williamson) +* tools: rados: check for negative return value of rados_create_with_context() as its comment put (`pr#10893 `_, zhang.zezhu) +* tools: rados: out json 'df' values as numbers, not strings (`issue#15546 `_, `pr#14644 `_, Sage Weil) + + v12.0.2 Luminous (dev) ====================== This is the third development checkpoint release of Luminous, the next long term