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