From: Abhishek Lekshmanan Date: Wed, 11 Jul 2018 12:43:16 +0000 (+0200) Subject: doc: releases: release notes for v12.2.6 luminous X-Git-Tag: v14.0.1~858^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=4bbea56806defe7144851eb28180ba56cabc5973;p=ceph.git doc: releases: release notes for v12.2.6 luminous Signed-off-by: Abhishek Lekshmanan --- diff --git a/doc/releases/luminous.rst b/doc/releases/luminous.rst index 506de4c04b0..611f9afdeeb 100644 --- a/doc/releases/luminous.rst +++ b/doc/releases/luminous.rst @@ -1,3 +1,171 @@ +v12.2.6 Luminous +================ + +This is the sixth bugfix release of Luminous v12.2.x long term stable release +series. This release contains a range of bug fixes across all compoenents of +Ceph and a few security fixes. We recommend all the users of 12.2.x series +to update. + +Notable Changes +--------------- + +- *Auth*: + + * In 12.2.4 and earlier releases, keyring caps were not checked for validity, + so the caps string could be anything. As of 12.2.6, caps strings are + validated and providing a keyring with an invalid caps string to, e.g., + "ceph auth add" will result in an error. + * 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) + + +* 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 >>>``. + + +Other Notable Changes +--------------------- +* build/ops: build-integration-branch script (`issue#24003 `_, `pr#21919 `_, Nathan Cutler, Kefu Chai, Sage Weil) +* cephfs-journal-tool: wait prezero ops before destroying journal (`issue#20549 `_, `pr#21874 `_, "Yan, Zheng") +* cephfs: MDSMonitor: cleanup and protect fsmap access (`issue#23762 `_, `pr#21732 `_, Patrick Donnelly) +* cephfs: MDSMonitor: crash after assigning standby-replay daemon in multifs setup (`issue#23762 `_, `issue#23658 `_, `pr#22603 `_, "Yan, Zheng") +* cephfs: MDSMonitor: fix mds health printed in bad format (`issue#23582 `_, `pr#21447 `_, Patrick Donnelly) +* cephfs: MDSMonitor: initialize new Filesystem epoch from pending (`issue#23764 `_, `pr#21512 `_, Patrick Donnelly) +* ceph-fuse: missing dentries in readdir result (`issue#23894 `_, `pr#22119 `_, "Yan, Zheng") +* ceph-fuse: return proper exit code (`issue#23665 `_, `pr#21495 `_, Patrick Donnelly) +* ceph-fuse: trim ceph-fuse -V output (`issue#23248 `_, `pr#21600 `_, Jos Collin) +* ceph_test_rados_api_aio: fix race with full pool and osdmap (`issue#23917 `_, `issue#23876 `_, `pr#21778 `_, Sage Weil) +* ceph-volume: error on commands that need ceph.conf to operate (`issue#23941 `_, `pr#22746 `_, Andrew Schoen) +* ceph-volume: failed ceph-osd --mkfs command doesn't halt the OSD creation process (`issue#23874 `_, `pr#21746 `_, Alfredo Deza) +* client: add ceph_ll_sync_inode (`issue#23291 `_, `pr#21109 `_, Jeff Layton) +* client: add client option descriptions (`issue#22933 `_, `pr#21589 `_, Patrick Donnelly) +* client: anchor dentries for trimming to make cap traversal safe (`issue#24137 `_, `pr#22201 `_, Patrick Donnelly) +* client: avoid freeing inode when it contains TX buffer head (`issue#23837 `_, `pr#22168 `_, Guan yunfei, "Yan, Zheng", Jason Dillaman) +* client: dirty caps may never get the chance to flush (`issue#22546 `_, `pr#21278 `_, dongdong tao) +* client: fix issue of revoking non-auth caps (`issue#24172 `_, `pr#22221 `_, "Yan, Zheng") +* client: fix request send_to_auth was never really used (`issue#23541 `_, `pr#21354 `_, Zhi Zhang) +* client: Fix the gid_count check (`issue#23652 `_, `pr#21596 `_, Jos Collin) +* client: flush the mdlog in _fsync before waiting on unstable reqs (`issue#23714 `_, `pr#21542 `_, Jeff Layton) +* client: hangs on umount if it had an MDS session evicted (`issue#10915 `_, `pr#22018 `_, Rishabh Dave) +* client: void sending mds request while holding cap reference (`issue#24369 `_, `pr#22354 `_, "Yan, Zheng") +* cmake: fix the cepfs java binding build on Bionic (`issue#23458 `_, `issue#24012 `_, `pr#21872 `_, Kefu Chai, Shengjing Zhu) +* cmake/modules/BuildRocksDB.cmake: enable compressions for rocksdb (`issue#24025 `_, `pr#22215 `_, Kefu Chai) +* common: ARMv8 feature detection broken, leading to illegal instruction crashes (`issue#23464 `_, `pr#22567 `_, Adam Kupczyk) +* common: fix BoundedKeyCounter const_pointer_iterator (`issue#22139 `_, `pr#21083 `_, Casey Bodley) +* common: fix typo in rados bench write JSON output (`issue#24199 `_, `pr#22391 `_, Sandor Zeestraten) +* common: partially revert 95fc248 to make get_process_name work (`issue#24123 `_, `pr#22290 `_, Mykola Golub) +* core: Deleting a pool with active notify linger ops can result in seg fault (`issue#23966 `_, `pr#22143 `_, Kefu Chai, Jason Dillaman) +* core: mon/MgrMonitor: change 'unresponsive' message to info level (`issue#24222 `_, `pr#22331 `_, Sage Weil) +* core: Wip scrub omap (`issue#24366 `_, `pr#22375 `_, xie xingguo, David Zafman) +* crush: fix device_class_clone for unpopulated/empty weight-sets (`issue#23386 `_, `pr#22381 `_, Sage Weil) +* crush, osd: handle multiple parents properly when applying pg upmaps (`issue#23921 `_, `pr#22115 `_, xiexingguo) +* doc: Fix -d description in ceph-fuse (`issue#23214 `_, `pr#21616 `_, Jos Collin) +* doc:Update ceph-fuse doc (`issue#23084 `_, `pr#21603 `_, Jos Collin) +* fuse: wire up fuse_ll_access (`issue#23509 `_, `pr#21475 `_, Jeff Layton) +* kceph: umount on evicted client blocks forever (`issue#24053 `_, `issue#24054 `_, `pr#22208 `_, Yan, Zheng, "Yan, Zheng") +* librbd: commit IO as safe when complete if writeback cache is disabled (`issue#23516 `_, `pr#22370 `_, Jason Dillaman) +* librbd: prevent watcher from unregistering with in-flight actions (`issue#23955 `_, `pr#21938 `_, Jason Dillaman) +* lvm: when osd creation fails log the exception (`issue#24456 `_, `pr#22641 `_, Andrew Schoen) +* mds: avoid calling rejoin_gather_finish() two times successively (`issue#24047 `_, `pr#22171 `_, "Yan, Zheng") +* mds: broadcast quota to relevant clients when quota is explicitly set (`issue#24133 `_, `pr#22271 `_, Zhi Zhang) +* mds: crash when failover (`issue#23518 `_, `pr#21900 `_, "Yan, Zheng") +* mds: don't discover inode/dirfrag when mds is in 'starting' state (`issue#23812 `_, `pr#21990 `_, "Yan, Zheng") +* mds: fix occasional dir rstat inconsistency between multi-MDSes (`issue#23538 `_, `pr#21617 `_, "Yan, Zheng", Zhi Zhang) +* mds: fix some memory leak (`issue#24289 `_, `pr#22310 `_, "Yan, Zheng") +* mds: fix unhealth heartbeat during rejoin (`issue#23530 `_, `pr#21366 `_, dongdong tao) +* mds: handle imported session race (`issue#24072 `_, `issue#24087 `_, `pr#21989 `_, Patrick Donnelly) +* mds: include nfiles/nsubdirs of directory inode in MClientCaps (`issue#23855 `_, `pr#22118 `_, "Yan, Zheng") +* mds: kick rdlock if waiting for dirfragtreelock (`issue#23919 `_, `pr#21901 `_, Patrick Donnelly) +* mds: make rstat.rctime follow inodes' ctime (`issue#23380 `_, `pr#21448 `_, "Yan, Zheng") +* mds: mark damaged if sessions' preallocated inos don't match inotable (`issue#23452 `_, `pr#21372 `_, "Yan, Zheng") +* mds: mark new root inode dirty (`issue#23960 `_, `pr#21922 `_, Patrick Donnelly) +* mds: mds shutdown fixes and optimization (`issue#23602 `_, `pr#21346 `_, "Yan, Zheng") +* mds: misc load balancer fixes (`issue#21745 `_, `pr#21412 `_, "Yan, Zheng", Jianyu Li) +* mds: properly check auth subtree count in MDCache::shutdown_pass() (`issue#23813 `_, `pr#21844 `_, "Yan, Zheng") +* mds: properly dirty sessions opened by journal replay (`issue#23625 `_, `pr#21441 `_, "Yan, Zheng") +* mds: properly trim log segments after scrub repairs something (`issue#23880 `_, `pr#21840 `_, "Yan, Zheng") +* mds: set could_consume to false when no purge queue item actually exe… (`issue#24073 `_, `pr#22176 `_, Xuehan Xu) +* mds: trim log during shutdown to clean metadata (`issue#23923 `_, `pr#21899 `_, Patrick Donnelly) +* mds: underwater dentry check in CDir::_omap_fetched is racy (`issue#23032 `_, `pr#21187 `_, Yan, Zheng) +* mg_read() call has wrong arguments (`issue#23596 `_, `pr#21382 `_, Nathan Cutler) +* mgr/influx: Only split string on first occurence of dot (.) (`issue#23996 `_, `pr#21965 `_, Wido den Hollander) +* mgr: Module 'balancer' has failed: could not find bucket -14 (`issue#24167 `_, `pr#22308 `_, Sage Weil) +* mon: add 'ceph osd pool get erasure allow_ec_overwrites' command (`issue#23487 `_, `pr#21378 `_, Mykola Golub) +* mon: enable level_compaction_dynamic_level_bytes for rocksdb (`issue#24361 `_, `pr#22360 `_, Kefu Chai) +* mon: handle bad snapshot removal reqs gracefully (`issue#18746 `_, `pr#21717 `_, Paul Emmerich) +* mon: High MON cpu usage when cluster is changing (`issue#23713 `_, `pr#21968 `_, Sage Weil, Xiaoxi CHEN) +* mon/MDSMonitor: do not send redundant MDS health messages to cluster log (`issue#24308 `_, `pr#22558 `_, Sage Weil) +* msg/async/AsyncConnection: Fix FPE in process_connection (`issue#23618 `_, `pr#21376 `_, Brad Hubbard) +* os/bluestore: alter the allow_eio policy regarding kernel's error list (`issue#23333 `_, `pr#21405 `_, Radoslaw Zarzynski) +* os/bluestore/bluefs_types: make block_mask 64-bit (`issue#23840 `_, `pr#21740 `_, Sage Weil) +* os/bluestore: fix exceeding the max IO queue depth in KernelDevice (`issue#23246 `_, `pr#21407 `_, Radoslaw Zarzynski) +* os/bluestore: fix SharedBlobSet refcounting race (`issue#24319 `_, `pr#22650 `_, Sage Weil) +* os/bluestore: simplify and fix SharedBlob::put() (`issue#24211 `_, `pr#22351 `_, Sage Weil) +* osdc/Objecter: fix recursive locking in _finish_command (`issue#23940 `_, `pr#21939 `_, Sage Weil) +* osdc/Objecter: prevent double-invocation of linger op callback (`issue#23872 `_, `pr#21752 `_, Jason Dillaman) +* osd: do not crash on empty snapset (`issue#23851 `_, `pr#21638 `_, Mykola Golub, Igor Fedotov) +* osd: Don't evict even when preemption has restarted with smaller chunk (`issue#22881 `_, `issue#23909 `_, `issue#23646 `_, `pr#22044 `_, Sage Weil, fang yuxiang, Jianpeng Ma, kungf, xie xingguo, David Zafman) +* osd/ECBackend: only check required shards when finishing recovery reads (`issue#23195 `_, `pr#21911 `_, Josh Durgin, Kefu Chai) +* osd: increase default hard pg limit (`issue#24243 `_, `pr#22592 `_, Josh Durgin) +* osd/OSDMap: check against cluster topology changing before applying pg upmaps (`issue#23878 `_, `pr#21818 `_, xiexingguo) +* osd/PG: fix DeferRecovery vs AllReplicasRecovered race (`issue#23860 `_, `pr#21964 `_, Sage Weil) +* osd/PG: fix uninit read in Incomplete::react(AdvMap&) (`issue#23980 `_, `pr#21993 `_, Sage Weil) +* osd/PrimaryLogPG: avoid infinite loop when flush collides with write … (`issue#23664 `_, `pr#21764 `_, Sage Weil) +* osd: publish osdmap to OSDService before starting wq threads (`issue#21977 `_, `pr#21737 `_, Sage Weil) +* osd: Warn about objects with too many omap entries (`issue#23784 `_, `pr#21518 `_, Brad Hubbard) +* qa: disable -Werror when compiling env_librados_test (`issue#23786 `_, `pr#21655 `_, Kefu Chai) +* qa: fix blacklisted check for test_lifecycle (`issue#23975 `_, `pr#21921 `_, Patrick Donnelly) +* qa: remove racy/buggy test_purge_queue_op_rate (`issue#23829 `_, `pr#21841 `_, Patrick Donnelly) +* qa/suites/rbd/basic/msgr-failures: remove many.yaml (`issue#23789 `_, `pr#22128 `_, Sage Weil) +* qa: wait longer for osd to flush pg stats (`issue#24321 `_, `pr#22296 `_, Kefu Chai) +* qa/workunits/mon/test_mon_config_key.py fails on master (`issue#23622 `_, `pr#21368 `_, Sage Weil) +* qa/workunits/rbd: adapt import_export test to handle multiple units (`issue#24733 `_, `pr#22911 `_, Jason Dillaman) +* qa/workunits/rbd: potential race in mirror disconnect test (`issue#23938 `_, `pr#21869 `_, Mykola Golub) +* radosgw-admin sync status improvements (`issue#20473 `_, `pr#21908 `_, lvshanchun, Casey Bodley) +* rbd: improve 'import-diff' corrupt input error messages (`issue#18844 `_, `issue#23038 `_, `pr#21316 `_, PCzhangPC, songweibin, Jason Dillaman) +* rbd-mirror: ensure remote demotion is replayed locally (`issue#24009 `_, `pr#22142 `_, Jason Dillaman) +* rbd-nbd can deadlock in logging thread (`issue#23143 `_, `pr#21705 `_, Sage Weil) +* rbd: python bindings fixes and improvements (`issue#23609 `_, `pr#21725 `_, Ricardo Dias) +* rbd: [rbd-mirror] asok hook for image replayer not re-registered after bootstrap (`issue#23888 `_, `pr#21726 `_, Jason Dillaman) +* rbd: [rbd-mirror] local tag predecessor mirror uuid is incorrectly replaced with remote (`issue#23876 `_, `pr#21741 `_, Jason Dillaman) +* rbd: [rbd-mirror] potential deadlock when running asok 'flush' command (`issue#24141 `_, `pr#22180 `_, Mykola Golub) +* rbd: [rbd-mirror] potential races during PoolReplayer shut-down (`issue#24008 `_, `pr#22172 `_, Jason Dillaman) +* rgw: add buffering filter to compression for fetch_remote_obj (`issue#23547 `_, `pr#21758 `_, Casey Bodley) +* rgw: add configurable AWS-compat invalid range get behavior (`issue#24317 `_, `pr#22302 `_, Matt Benjamin) +* rgw: admin rest api shouldn't return error when getting user's stats if (`issue#23821 `_, `pr#21661 `_, Zhang Shaowen) +* rgw: Allow swift acls to be deleted (`issue#22897 `_, `pr#22465 `_, Marcus Watts) +* rgw: aws4 auth supports PutBucketRequestPayment (`issue#23803 `_, `pr#21660 `_, Casey Bodley) +* rgw: beast frontend can listen on multiple endpoints (`issue#22779 `_, `pr#21568 `_, Casey Bodley) +* rgw: Bucket lifecycles stick around after buckets are deleted (`issue#19632 `_, `pr#22551 `_, Wei Qiaomiao) +* rgw: Do not modify email if argument is not set (`issue#24142 `_, `pr#22352 `_, Volker Theile) +* rgw: do not reflect period if not current (`issue#22844 `_, `pr#21735 `_, Tianshan Qu) +* rgw: es module: set compression type correctly (`issue#22758 `_, `pr#21736 `_, Abhishek Lekshmanan) +* rgw_file: conditionally unlink handles when direct deleted (`issue#23299 `_, `pr#21438 `_, Matt Benjamin) +* rgw: fix bi_list to reset is_truncated flag if it skips entires (`issue#22721 `_, `pr#21669 `_, Orit Wasserman) +* rgw: fix 'copy part' without 'x-amz-copy-source-range' when compressi… (`issue#23196 `_, `pr#22438 `_, fang yuxiang) +* rgw: fix error handling for GET with ?torrent (`issue#23506 `_, `pr#21674 `_, Casey Bodley) +* rgw: fix use of libcurl with empty header values (`issue#23663 `_, `pr#21738 `_, Casey Bodley) +* rgw:lc: RGWPutLC return ERR_MALFORMED_XML when missing tag in… (`issue#21377 `_, `pr#19884 `_, Shasha Lu) +* rgw: making implicit_tenants backwards compatible (`issue#24348 `_, `pr#22363 `_, Marcus Watts) +* rgw: Misnamed S3 operation (`issue#24061 `_, `pr#21917 `_, xiangxiang) +* rgw: move all pool creation into rgw_init_ioctx (`issue#23480 `_, `pr#21675 `_, Casey Bodley) +* rgw: radosgw-admin should not use metadata cache for readonly commands (`issue#23468 `_, `pr#21437 `_, Orit Wasserman) +* rgw: raise log level on coroutine shutdown errors (`issue#23974 `_, `pr#21792 `_, Casey Bodley) +* rgw: return EINVAL if max_keys can not convert correctly (`issue#23586 `_, `pr#21435 `_, yuliyang) +* rgw: rgw_statfs should report the correct stats (`issue#22202 `_, `pr#21724 `_, Supriti Singh) +* rgw: trim all spaces inside a metadata value (`issue#23301 `_, `pr#22177 `_, Orit Wasserman) +* slow mon ops from osd_failure (`issue#24322 `_, `pr#22568 `_, Sage Weil) +* table of contents doesn't render for luminous/jewel docs (`issue#23780 `_, `pr#21502 `_, Alfredo Deza) +* test/librados: increase pgp_num along with pg_num (`issue#23763 `_, `pr#21556 `_, Kefu Chai) +* test/rgw: fix for bucket checkpoints (`issue#24212 `_, `pr#22541 `_, Casey Bodley) +* tests: filestore journal replay does not guard omap operations (`issue#22920 `_, `pr#21547 `_, Sage Weil) +* tools: ceph-disk: write log to /var/log/ceph not to /var/run/ceph (`issue#24041 `_, `pr#21870 `_, Kefu Chai) +* tools: ceph-fuse: getgroups failure causes exception (`issue#23446 `_, `pr#21687 `_, Jeff Layton) + + v12.2.5 Luminous ================