Release Notes

v12.0.0 Luminous (dev)

This is the first development checkpoint release of Luminous series, the next long time release. We’re off to a good start to release Luminous in the spring of ‘17.

Major changes from Kraken

  • When assigning a network to the public network and not to the cluster network the network specification of the public network will be used for the cluster network as well. In older versions this would lead to cluster services being bound to 0.0.0.0:<port>, thus making the cluster service even more publicly available than the public services. When only specifying a cluster network it will still result in the public services binding to 0.0.0.0.
  • Some variants of the omap_get_keys and omap_get_vals librados functions have been deprecated in favor of omap_get_vals2 and omap_get_keys2. The new methods include an output argument indicating whether there are additional keys left to fetch. Previously this had to be inferred from the requested key count vs the number of keys returned, but this breaks with new OSD-side limits on the number of keys or bytes that can be returned by a single omap request. These limits were introduced by kraken but are effectively disabled by default (by setting a very large limit of 1 GB) because users of the newly deprecated interface cannot tell whether they should fetch more keys or not. In the case of the standalone calls in the C++ interface (IoCtx::get_omap_{keys,vals}), librados has been updated to loop on the client side to provide a correct result via multiple calls to the OSD. In the case of the methods used for building multi-operation transactions, however, client-side looping is not practical, and the methods have been deprecated. Note that use of either the IoCtx methods on older librados versions or the deprecated methods on any version of librados will lead to incomplete results if/when the new OSD limits are enabled.
  • In previous versions, if a client sent an op to the wrong OSD, the OSD would reply with ENXIO. The rationale here is that the client or OSD is clearly buggy and we want to surface the error as clearly as possible. We now only send the ENXIO reply if the osd_enxio_on_misdirected_op option is enabled (it’s off by default). This means that a VM using librbd that previously would have gotten an EIO and gone read-only will now see a blocked/hung IO instead.
  • When configuring ceph-fuse mounts in /etc/fstab, a new syntax is available that uses “ceph.<arg>=<val>” in the options column, instead of putting configuration in the device column. The old style syntax still works. See the documentation page “Mount CephFS in your file systems table” for details.

Notable Changes

  • bluestore: avoid unnecessary copy with coll_t (pr#12576, Yunchuan Wen)
  • bluestore: fixed compilation error when enable spdk (pr#12672, Pan Liu)
  • bluestore: os/bluestore: add a debug option to bypass block device writes for bl… (pr#12464, Igor Fedotov)
  • bluestore: os/bluestore: Add bluestore pextent vector to mempool (pr#12946, Igor Fedotvo, Igor Fedotov)
  • bluestore: os/bluestore: add perf variable for throttle info in bluestore (pr#12583, Pan Liu)
  • bluestore: os/bluestore: allow multiple SPDK BlueStore OSD instances (issue#16966, pr#12604, Orlando Moreno)
  • bluestore: os/bluestore/BitmapFreelistManager: readability improvements (pr#12719, xie xingguo)
  • bluestore: os/bluestore/BlueFS: fix reclaim_blocks (issue#18368, pr#12725, Sage Weil)
  • bluestore: os/bluestore: conditionally load crr option (pr#12877, xie xingguo)
  • bluestore: os/bluestore: fix Allocator::allocate() int truncation (issue#18595, pr#13010, Sage Weil)
  • bluestore: os/bluestore: fix min_alloc_size at mkfs time (pr#13192, Sage Weil)
  • bluestore: os/bluestore: fix NVMEDevice::open failure if serial number ends with a … (pr#12956, Hongtong Liu)
  • bluestore: os/bluestore: fix OnodeSizeTracking testing (pr#12684, xie xingguo)
  • bluestore: os/bluestore: fix potential assert in cache _trim method. (pr#13234, Igor Fedotov)
  • bluestore: os/bluestore: fix reclaim_blocks and clean up Allocator interface (issue#18573, pr#12963, Sage Weil)
  • bluestore: os/bluestore: include logical object offset in crc error (pr#13074, Sage Weil)
  • bluestore: os/bluestore/KernelDevice: fix debug message (pr#13135, Sage Weil)
  • bluestore: os/bluestore/KernelDevice: kill zeros (pr#12856, xie xingguo)
  • bluestore: os/bluestore: kill BufferSpace.empty() (pr#12871, xie xingguo)
  • bluestore: os/bluestore: kill orphan declaration of do_write_check_depth() (pr#12853, xie xingguo)
  • bluestore: os/bluestore: miscellaneous fixes to BitAllocator (pr#12696, xie xingguo)
  • bluestore: os/bluestore: nullptr in OmapIteratorImpl::valid (pr#12900, Xinze Chi)
  • bluestore: os/bluestore/NVMEDevice.cc: fix the random read issue. (pr#13055, optimistyzy)
  • bluestore: os/bluestore/NVMEdevice: fix the unrelease segs issue (pr#12862, optimistyzy)
  • bluestore: os/bluestore: preallocate object[extent_shard] key to avoid reallocate (pr#12644, xie xingguo)
  • bluestore: os/bluestore: put strings in mempool (pr#12651, Allen Samuels, Sage Weil)
  • bluestore: os/bluestore: refactor ExtentMap::update to avoid preceeding db updat… (pr#12394, Igor Fedotov)
  • bluestore: os/bluestore: remove a never read value (pr#12618, liuchang0812)
  • bluestore: os/bluestore: remove intermediate key var to avoid string copy (pr#12643, xie xingguo)
  • bluestore: os/bluestore: shrink buffer_map key into uint32_t (pr#12850, xie xingguo)
  • bluestore: os/bluestore: _txc_release_alloc when do wal cleaning (pr#12692, Xinze Chi)
  • bluestore: os: extend ObjectStore interface to dump store’s performance counters (pr#13203, Igor Fedotov)
  • bluestore: rocksdb: add option: writable_file_max_buffer_size = 0 (pr#12562, Jianpeng Ma)
  • build/ops: add sanity checks to run-make-check.sh (pr#12683, Nathan Cutler)
  • build/ops: build/cmake: provide asan, tsan, ubsan builds (pr#12615, Matt Benjamin)
  • build/ops: builds with dpdk v16.07 (pr#12707, Kefu Chai)
  • build/ops: ceph-detect-init: adding Arch Linux support (pr#12787, Jamin W. Collins)
  • build/ops,cleanup: auth: Let’s not use the deprecated cephx option (pr#12721, Dave Chen)
  • build/ops: CMakeLists.txt: boost_python.so requires libpython.*.so on FreeBSD (pr#12763, Willem Jan Withagen)
  • build/ops: common/module.c: do not use strerror_r the GNU way. (pr#12363, Willem Jan Withagen)
  • build/ops,core: ceph-disk: use correct user in check_journal_req (issue#18538, pr#12947, Samuel Matzek)
  • build/ops: mailmap: Update OVH contributors (pr#13063, Bartłomiej Święcki)
  • build/ops: packaging: install libceph-common.so* not libceph-common.so.* (issue#18692, pr#13148, Kefu Chai)
  • build/ops: Reviewd-by: Loic Dachary <ldachary@redhat.com> (issue#18635, pr#13057, Wido den Hollander)
  • build/ops,rgw: rgw_file: radosgw-admin can be built under FreeBSD (pr#12191, Willem Jan Withagen)
  • build/ops: rocksdb: build with ppc64 (pr#12908, Kefu Chai)
  • build/ops: script: adding contributor credits script (pr#13251, Patrick McGarry)
  • build/ops: script/sepia_bt.sh: download packages from shaman not gitbuilder (pr#12799, Kefu Chai)
  • build/ops: spdk: upgrade spdk to v16.12 (pr#12734, Pan Liu)
  • build/ops: src/CMakeLists.txt: disable -Werror on rocksdb (pr#12560, Willem Jan Withagen)
  • build/ops: src/CMakeLists.txt: Move parse_secret_objs setting within definition block (pr#12785, Willem Jan Withagen)
  • build/ops: test/fio_ceph_objectstore: fix fio plugin build failure caused by rec… (pr#12655, Igor Fedotov)
  • build/ops: tool: add some ceph relate processes to ps-ceph.pl (pr#12406, songbaisen)
  • build/ops: tracing: Fix error in including all files in osd_tp (pr#12501, Ganesh Mahalingam)
  • cephfs: ceph_fuse: pid_file default to empty (issue#18309, pr#12628, Nathan Cutler)
  • cephfs,cleanup: client: fix potential buffer overflow (pr#12515, Yunchuan Wen)
  • cephfs,cleanup: client: simplify remove_cap interface (pr#12161, John Spray)
  • cephfs,cleanup: libcephfs: cleanups (pr#12830, huanwen ren)
  • cephfs,cleanup: qa: unpin knfs from ubuntu (issue#16397, pr#13088, John Spray)
  • cephfs,cleanup: Rewrite mount.fuse.ceph (to python) and move ceph-fuse options to fs_mntops (pr#11448, Edgaras Lukosevicius)
  • cephfs: client/Client.cc: prevent segfaulting (issue#9935, pr#12550, Michal Jarzabek)
  • cephfs: client: don’t request lookup parent if ino is root (pr#12478, huanwen ren)
  • cephfs: client: fix clang warn of “argument is an uninitialized value” (pr#12580, liuchang0812)
  • cephfs: client: fix Client::handle_cap_flushsnap_ack() crash (issue#18460, pr#12859, Yan, Zheng)
  • cephfs: client: fix the cross-quota rename boundary check conditions (pr#12489, Greg Farnum)
  • cephfs: client: populate metadata during mount (issue#18361, pr#12915, John Spray)
  • cephfs: client: remove request from session->requests when handling forward (issue#18675, pr#13124, “Yan, Zheng”)
  • cephfs,common: include/fs_types: fix unsigned integer overflow (pr#12440, runsisi)
  • cephfs,common,rbd: osdc: cache should ignore error bhs during trim (issue#18436, pr#12966, Jason Dillaman)
  • cephfs,core,cleanup,common: librados,osdc: kill ack vs commit distinction (pr#12607, Sage Weil)
  • cephfs: libcephfs.cc: fix memory leak (pr#12557, Michal Jarzabek)
  • cephfs: libcephfs: fix cct refcount constructing from rados (pr#12831, John Spray)
  • cephfs: mon/MDSMonitor.cc:refuse fs new on pools with obj (issue#11124, pr#12825, Michal Jarzabek)
  • cephfs: mount: do not print “unknown” option to kclient (issue#18159, pr#12465, John Spray)
  • cephfs: qa: update remaining ceph.com to download.ceph.com (issue#18574, pr#12964, John Spray)
  • cephfs: tasks/cephfs: fix kernel force umount (issue#18396, pr#12833, Yan, Zheng)
  • cleanup,bluestore: os/bluestore: avoid unnecessary memory copy, use variable reference in BlockDevice::Open (pr#12942, liuchang0812)
  • cleanup,bluestore: os/bluestore: cleanup BitAllocator (pr#12661, xie xingguo)
  • cleanup,bluestore: os/bluestore: remove no use parameter in bluestore_blob_t::map_bl (pr#13013, wangzhengyong)
  • cleanup,common: auth: Enhancement for the supported auth methods (pr#12937, Dave Chen)
  • cleanup,common: bufferlist: cleanup semantical wrong for bufferlist::append (pr#12247, Yankun Li)
  • cleanup,common: common/BackTrace: add operator<< (pr#9028, Kefu Chai)
  • cleanup: common/config: fix return type of string::find and use string::npos (pr#9924, Yan Jun)
  • cleanup: common/config_opts.h: remove obsolete configuration option (pr#12659, Li Wang)
  • cleanup,common: global: we need to handle the init_on_startup return value when global_init. (pr#13018, song baisen)
  • cleanup,common: msg/async: assert if compiled code doesn’t support the configured ms_… (pr#12559, Avner BenHanoch)
  • cleanup,common: msg/async/rdma: clean line endings (pr#12688, Adir Lev)
  • cleanup,common: msg/async/rdma: Remove compilation warning (pr#13142, Sarit Zubakov)
  • cleanup,common: osd/OSDMap: get_previous_up_osd_before() may run into endless loop (pr#12976, Mingxin Liu)
  • cleanup,common: osd/osd_types: clean up OSDOp printers (pr#12980, Sage Weil)
  • cleanup: include/mempool: fix typo in comments (pr#12772, huangjun)
  • cleanup: mds,mon: Clean issues detected by cppcheck (pr#13199, Ilya Shipitsin)
  • cleanup: misc: fix code typos in header files (pr#12716, Xianxia Xiao)
  • cleanup: mon/PGMonitor: fix description for ceph pg ls (pr#12807, runsisi)
  • cleanup: Move code from .h into .cc (pr#12737, Amir Vadai)
  • cleanup: msg/async: avoid atomic variable overhead (pr#12809, Wei Jin)
  • cleanup: msg/async: cleanups (pr#12832, Wei Jin)
  • cleanup: msg/async/rdma: fix log line spacing (pr#13263, Adir Lev)
  • cleanup: msg/async: rm nonused thread variable in posixworker (pr#12777, Wei Jin)
  • cleanup: msg/Messenger.cc: add std::move (pr#9760, Michal Jarzabek)
  • cleanup: msg: Revert the change from assert(0)-> ceph_abort() where is not applicable (pr#12930, Dave Chen)
  • cleanup: msg/simple: Remove dead code in pipe.cc (issue#12684, pr#12601, Rishabh Kumar)
  • cleanup: os/bluestore/BlueStore.cc: remove unused variable (pr#12703, Li Wang)
  • cleanup: osdc/ObjectCacher: use state instead of get_state() (pr#12544, huangjun)
  • cmake: add RGW and MDS to libcephd (pr#12345, Bassam Tabbara)
  • cmake: cleanup the use of udev and blkid in target_link_lib() (pr#12811, Willem Jan Withagen)
  • cmake: disable mallinfo for jemalloc (pr#12469, Bassam Tabbara)
  • cmake: explictly call find_package(PythonInterp) first to fix build err (pr#12385, Yixun Lan)
  • cmake: Fix broken async/rdma compilation since move to libceph-common (pr#13122, Oren Duer)
  • cmake: fix broken RDMA compilation after merge PR #12878 (pr#13186, Oren Duer)
  • cmake: fix hard coded boost python lib (pr#12480, John Coyle)
  • cmake: fix rpath on shared libraries and binaries targets (pr#12927, Ricardo Dias)
  • cmake: link ceph-{mgr,mon,mds,osd} against libcommon statically (pr#12878, Kefu Chai)
  • cmake: remove Findpciaccess.cmake (pr#12776, optimistyzy)
  • cmake: search for Keyutils in default paths (pr#12769, Pascal Bach)
  • cmake: search for nspr include files for both suffixes: nspr4 and nspr (issue#18535, pr#12939, John Lin)
  • cmake: simplify find_package jemalloc (pr#12468, Bassam Tabbara)
  • cmake: support for external rocksdb (pr#12467, Bassam Tabbara)
  • cmake: turn libcommon into a shared library (pr#12840, Kefu Chai)
  • common/admin-socket: fix potential buffer overflow (pr#12518, Yunchuan Wen)
  • common: common/BackTrace: demangle on FreeBSD also (pr#12992, Kefu Chai)
  • common: common/buffer: close pipe fd if set nonblocking fails. (pr#12828, donglinpeng)
  • common: common/ceph_context: Show clear message if all features are enabled (pr#12676, Dave Chen)
  • common: common/xmlformatter: turn on underscored and add unittest (pr#12916, liuchang0812)
  • common: compressor/zstd: add zstd compression plugin (pr#13075, Kefu Chai, Sage Weil)
  • common: config: Improve warning for unobserved value (issue#18424, pr#12855, Brad Hubbard)
  • common/config_opts.h: FreeBSD timing changed due to no SO_REUSEADDR (pr#12594, Willem Jan Withagen)
  • common: delete unused conf “filestore_debug_disable_sharded_check” (pr#13051, Chuanhong Wang)
  • common: get rid of “warning: ignoring return value of ‘strerror_r’” (pr#12775, xie xingguo)
  • common: include/denc: improvements (pr#12626, Adam C. Emerson)
  • common: make attempts of auth rotating configurable (pr#12563, xie xingguo)
  • common: misc fixes detected by crypto shutdown assert (pr#12925, Sage Weil)
  • common: msg/async/rdma: reduce number of rdma rx/tx buffers (pr#13190, Adir Lev)
  • common: msg/async/rdma: Support for RoCE v2 and SL (pr#12556, Oren Duer)
  • common: msg/simple: call clear_pipe in wait() shutdown path (issue#15784, pr#12633, Sage Weil)
  • common: tracing: Fix handle leak in TracepointProvider (pr#12652, Brad Hubbard)
  • core,bluestore: NVMEDevice: fix bug in data_buf_next_sge (pr#12812, optimistyzy)
  • core,bluestore: os/bluestore: fix statfs to not include DB partition in free space (issue#18599, pr#13140, Sage Weil)
  • core,cephfs,cleanup: cleanup: use std::make_shared to replace new (pr#12276, Yunchuan Wen)
  • core,cleanup: msg/async/AsyncConnection: socket’s fd can be zero, avoid false assert (pr#13080, Haomai Wang)
  • core,cleanup: osd/ECBackend: cleanup for unnecessary copy with pg_stat_t (pr#12564, Yunchuan Wen)
  • core,cleanup: osd/ECBackend: only need check missing_loc when doing recovery (pr#12526, huangjun)
  • core,cleanup: osd/ECBackend: remove unused variable “ReadCB” (pr#12543, huangjun)
  • core,cleanup: osd,librados: remove clone_range and associated multi-object cruft (pr#13008, Samuel Just)
  • core,cleanup: osd/OpRequest: dump both name and addr for the client op (pr#12691, runsisi)
  • core,cleanup: osd/OSDMap: Uncomment code to enable private default constructors (pr#12597, Brad Hubbard)
  • core,cleanup: osd/osd_type: Fix logging output (pr#12778, Brad Hubbard)
  • core,cleanup: osd/osd_types: Move comment to more relevant position (pr#12779, Brad Hubbard)
  • core,cleanup: osd/osd_types: print notify-ack op properly (pr#12585, Sage Weil)
  • core,cleanup: osd/PG: add new have_unfound() function in MissingLoc (pr#12668, huangjun)
  • core,cleanup: osd/PG: check the connection first in fulfill_log (pr#12579, huangjun)
  • core,cleanup: osd/PG: simplify the logic of backfill_targets checking (pr#12519, huangjun)
  • core,cleanup: osd/PrimaryLogPG: optimal pick_newest_available (pr#12695, huangjun)
  • core,cleanup: osd/PrimaryLogPG: unify the access to primary pg (pr#12527, huangjun)
  • core,cleanup: os/filestore/JournalingObjectStore cleanup (pr#12528, Li Wang)
  • core,common: common/pick_address.cc: Copy public_netw to cluster_netw if cluster empty (pr#12929, Willem Jan Withagen)
  • core,common: mempool: put bloom_filter in mempool (pr#13009, Sage Weil)
  • core: global: start removing g_ceph_context (pr#12149, Adam C. Emerson)
  • core: messages/MOSDPGTrim: add the missed HEAD_VERSION AND COMPAT_VERSION (issue#18266, pr#12517, huangjun)
  • core: messages/MOSDSubOp: Make encode_payload can be reentrant (pr#12654, Haomai Wang)
  • core: mon/OSDMonitor: fixup sortbitwise flag warning (pr#12682, huanwen ren)
  • core: mon/OSDMonitor: make ‘osd crush move ...’ work on osds (issue#18587, pr#12981, Sage Weil)
  • core: mon/OSDMonitor: make snaps on tier pool should not be allowed (pr#9348, Mingxin Liu)
  • core: mon/OSDMonitor: set last_force_op_resend on overlay pool too (issue#18366, pr#12712, Sage Weil)
  • core: mon/OSDMonitor: should propose osdmap update when cluster addr changed (pr#11065, Mingxin Liu)
  • core: msg: allow different ms type for cluster network and public network (pr#12023, Haomai Wang)
  • core: msg/async/dpdk: fix compile errors (pr#12698, Haomai Wang)
  • core: msg/async/rdma: fix ceph_clock_now calls (pr#12711, Haomai Wang)
  • core: msg: client bind (pr#12901, Zengran Zhang, Haomai Wang)
  • core: osdc/Objecter: resend pg commands on interval change (issue#18358, pr#12869, Samuel Just)
  • core: osd/PG: publish PG stats when backfill-related states change (issue#18369, pr#12727, Sage Weil)
  • core: osd/PrimaryLogPG::failed_push: update missing as well (issue#18165, pr#12888, Samuel Just)
  • core: osd/PrimaryLogPG::try_lock_for_read: give up if missing (issue#18583, pr#13087, Samuel Just)
  • core: osd/ReplicatedBackend: take read locks for clone sources during recovery (issue#17831, pr#12844, Samuel Just)
  • core: os/filestore: fix clang static check warn “use-after-free“ (pr#12581, liuchang0812)
  • core: os/filestore: version will be uninitialized varible if store_version doesn’t exist (pr#12582, liuchang0812)
  • core,performance: common/TrackedOp: various cleanups and optimizations (pr#12537, Sage Weil)
  • core,performance: osd/ECBackend: Send write message to peers first, then do local write (pr#12522, huangjun)
  • core,performance: osd/pg: bound the portion of the log we request in GetLog::GetLog() (pr#12233, Jie Wang)
  • core: PrimaryLogPG: don’t update digests for objects with mismatched names (issue#18409, pr#12788, Samuel Just)
  • core: Revert “PrimaryLogPG::failed_push: update missing as well” (issue#18624, pr#13090, David Zafman)
  • core: test/pybind/test_rados.py: tolerate TimedOut in test_ping_monitor (issue#18529, pr#12934, Samuel Just)
  • core,tests: ceph_test_rados_api_misc: Fix trivial memory leak (pr#12680, Brad Hubbard)
  • core,tests: c_write_operations.cc: Fix trivial memory leak (pr#12663, Brad Hubbard)
  • core,tests: qa/suites/rados/basic: set low omap limit for rgw workload (pr#13071, Sage Weil)
  • core,tests: qa/workunits/rest: use unique pool names for cephfs test (pr#13188, Sage Weil)
  • core,tests: test/librados/cmd.cc: Fix trivial memory leaks (pr#12671, Brad Hubbard)
  • core,tests: test/librados/c_read_operations.cc: Fix trivial memory leak (pr#12656, Brad Hubbard)
  • core,tests: test/librados/c_read_operations.cc: Fix valgrind errors (issue#18354, pr#12657, Brad Hubbard)
  • core,tests: test/librados: Silence Coverity memory leak warnings (pr#12442, Brad Hubbard, Samuel Just)
  • core,tests: test/librados/snapshots.cc: Fix memory leak (pr#12690, Brad Hubbard)
  • core,tests: test/librados/tier.cc: Fix valgrind errors (issue#18360, pr#12705, Brad Hubbard)
  • core,tests: test_rados_watch_notify: Fix trivial memory leaks (pr#12713, Brad Hubbard)
  • crush: API documentation (pr#13205, Loic Dachary)
  • crush: verify weights is influenced by the number of replicas (issue#15653, pr#13083, Adam C. Emerson, Loic Dachary)
  • crush: when osd_location_hook does not exist, we should exit error. (pr#12961, song baisen)
  • doc: add 0.94.10 and hammer EOL to releases.rst (pr#13069, Nathan Cutler)
  • doc: add verbiage to rbdmap manpage (issue#18262, pr#12509, Nathan Cutler)
  • doc: build/install-deps.sh: Add sphinx package for building docs on FreeBSD (pr#13223, Willem Jan Withagen)
  • doc/cephfs/troubleshooting: fix broken bullet list (pr#12894, Dan Mick)
  • doc: clarify “ceph quorum” syntax (issue#17802, pr#11787, Nathan Cutler)
  • doc: clarify SubmittingPatches.rst (pr#12988, Nathan Cutler)
  • doc: clarify the path restriction mds cap example (pr#12993, John Spray)
  • doc: correct S3 lifecycle support explain (issue#18459, pr#12827, liuchang0812)
  • doc: doc/dev: update log_based_pg.rst, fix some display problem (pr#12730, liuchang0812)
  • doc: Doc:Fixes Python Swift client commands (issue#17746, pr#12887, Ronak Jain)
  • doc: doc/release-notes: final kraken notes (pr#12968, Sage Weil)
  • doc: document repair/scrub features (issue#15786, pr#9032, Kefu Chai, David Zafman)
  • doc: Document that osd_heartbeat_grace applies to MON and OSD (pr#13098, Wido den Hollander)
  • doc: explain about logging levels (pr#12920, liuchang0812)
  • doc: fix document about rados mon (pr#12662, liuchang0812)
  • doc: Fixes radosgw-admin ex: in swift auth section (issue#16687, pr#12646, SirishaGuduru)
  • doc: fix the librados c api can not compile problem (pr#9396, song baisen)
  • doc: mailmap: Michal Koutny affiliation (pr#13036, Nathan Cutler)
  • doc: mailmap updates for v11.1.0 (pr#12335, Abhishek Lekshmanan)
  • doc: minor change to a cloud testing paragraph (pr#13277, Jan Fajerski)
  • doc: min_size advice is not helpful (pr#12936, Brad Hubbard)
  • doc: organizationmap: add Xianxia Xiao to Kylin Cloud team (pr#12718, Yunchuan Wen)
  • doc: README.FreeBSD: update current status (pr#12096, Willem Jan Withagen)
  • doc: release notes for v11.1.1 (pr#12642, Abhishek Lekshmanan)
  • doc: Remove “splitting” state (pr#12636, Brad Hubbard)
  • doc: typo fix in s3_compliance (pr#12598, LiuYang)
  • doc: Update disk thread section to reflect that scrubbing is no longe… (pr#12621, Nick Fisk)
  • doc: Update keystone.rst (pr#12717, Chu, Hua-Rong)
  • librados: asynchronous selfmanaged_snap_create/selfmanaged_snap_remove APIs (issue#16180, pr#12050, Jason Dillaman)
  • librados: fix compile errors from simplified aio completions (pr#12849, xie xingguo)
  • librbd: added rbd_flatten_with_progress to API (issue#15824, pr#12905, Ricardo Dias)
  • librbd: allow to open an image without opening the parent image (issue#18325, pr#12885, Ricardo Dias)
  • librbd: avoid possible recursive lock when racing acquire lock (issue#17447, pr#12991, Jason Dillaman)
  • librbd: create fewer empty objects during copyup (issue#15028, pr#12326, Douglas Fuller, Venky Shankar)
  • librbd: delay mirror registration when creating clones (issue#17993, pr#12839, Jason Dillaman)
  • librbd: don’t continue to remove an image w/ incompatible features (issue#18315, pr#12638, Dongsheng Yang)
  • librbd: fixed initializer list ordering (pr#13042, Jason Dillaman)
  • librbd: initialize diff parent overlap to zero (pr#13077, Gu Zhongyan)
  • librbd: introduce new constants for tracking max block name prefix (issue#18653, pr#13141, Jason Dillaman)
  • librbd: managed lock refactoring (pr#12922, Mykola Golub)
  • librbd: metadata_set API operation should not change global config setting (issue#18465, pr#12843, Mykola Golub)
  • librbd: new API method to force break a peer’s exclusive lock (issue#18429, issue#16988, issue#18327, pr#12639, Jason Dillaman)
  • librbd: permit removal of image being bootstrapped by rbd-mirror (issue#16555, pr#12549, Mykola Golub)
  • librbd: possible deadlock with flush if refresh in-progress (issue#18419, pr#12838, Jason Dillaman)
  • librbd: prevent self-blacklisting during break lock (issue#18666, pr#13110, Jason Dillaman)
  • librbd: race initializing exclusive lock and configuring IO path (pr#13086, Jason Dillaman)
  • librbd: refactor exclusive lock support into generic managed lock (issue#17016, pr#12846, Ricardo Dias, Jason Dillaman)
  • librbd: remove unnecessary dependencies of ManagedLock (pr#12982, Jason Dillaman)
  • librbd: resolve static analyser warnings (pr#12863, Jason Dillaman)
  • librbd: support for shared locking in ManagedLock (pr#12886, Ricardo Dias)
  • librbd: support to list snapshot timestamp (issue#808, pr#12817, Pan Liu)
  • librbd: warning message for mirroring pool option (issue#18125, pr#12319, Gaurav Kumar Garg)
  • log: use one write system call per message (pr#11955, Patrick Donnelly)
  • mds: add authority check for delay dirfrag split (issue#18487, pr#12994, “Yan, Zheng”)
  • mds: check for errors decoding backtraces (issue#18311, pr#12588, John Spray)
  • mds: don’t modify inode that is not projected (issue#16768, pr#13052, “Yan, Zheng”)
  • mds: finish clientreplay requests before requesting active state (issue#18461, pr#12852, Yan, Zheng)
  • mds: fix incorrect assertion in Server::_dir_is_nonempty() (issue#18578, pr#12973, Yan, Zheng)
  • mds: fix null pointer dereference in Locker::handle_client_caps (issue#18306, pr#12808, Yan, Zheng)
  • mds: miscellaneous fixes (issue#18646, pr#12974, Yan, Zheng, “Yan, Zheng”)
  • mds: misc multimds fixes part2 (pr#12794, Yan, Zheng)
  • mds: misc multimds fixes (pr#12274, Yan, Zheng)
  • mds: propagate error encountered during opening inode by number (issue#18179, pr#12749, Yan, Zheng)
  • mds: skip fragment space check for replayed request (issue#18660, pr#13095, “Yan, Zheng”)
  • mgr: Make stats period configurable (issue#17449, pr#12732, liuchang0812)
  • mon: clean up some osdmon/pgmon interactions (pr#12403, Sage Weil)
  • mon: don’t set last_osd_report when the pg stats msg is ignored (pr#12975, Zhiqiang Wang)
  • mon: fix a few nits (pr#12670, Sage Weil)
  • mon: fix wrongly delete routed pgstats op (issue#18458, pr#12784, Mingxin Liu)
  • mon: no delay for single message MSG_ALIVE and MSG_PGTEMP (pr#12107, yaoning)
  • mon: optracker’s initiated_at timestamp should not be NULL (pr#12826, Mingxin Liu)
  • mon/OSDMonitor: fix process osd failure (pr#12938, Mingxin Liu)
  • mon: post-jewel cleanups (pr#13150, Kefu Chai)
  • msg/async: Fixed compilation error when enable -DWITH_DPDK (pr#12660, Pan Liu)
  • msg/async: fixed coredump when enable dpdk. (pr#12854, Pan Liu)
  • msg/async: fixed the error “Cause: Cannot create lock on ‘/var/run/.rte_c… (pr#12860, Pan Liu)
  • msg/async: fix file description leak in NetHandler (pr#13271, liuchang0812)
  • msg/async: NVMEDevice.cc: cleanup the logic in data_buf_next_sge (pr#13056, optimistyzy)
  • msg/async/rdma: Fix memory leak of OSD (pr#13101, Sarit Zubakov)
  • msg/async/rdma: fix RoCE v2 deafult value (pr#12648, Adir Lev, Oren Duer)
  • msg/RDMA: Fix broken compilation due to new argument in net.connect() (pr#13096, Amir Vadai)
  • os/bluestore: NVMEDevice: optimize sector_size usage (pr#12780, optimistyzy)
  • osd: add asock command to dump the scrub queue (issue#17861, pr#12728, liuchang0812)
  • osd: allow client throttler to be adjusted on-fly, without restart (issue#18791, pr#13213, Piotr Dałek)
  • osd: Calculate degraded and misplaced more accurately (issue#18619, pr#13031, David Zafman)
  • osd: cleanup: use string & to avoid unnecessary copy (pr#12336, Yunchuan Wen)
  • osd: condition object_info_t encoding on required (not up) features (issue#18644, pr#13114, Sage Weil)
  • osd: correct comment of perfcounter cached_crc in code (pr#13256, lvshuhua)
  • osd: do not send ENXIO on misdirected op by default (issue#18751, pr#13206, Sage Weil)
  • osd: _exit() intead of exit() for failure injection (issue#18372, pr#12726, Sage Weil)
  • osd: extend OMAP_GETKEYS and GETVALS to include a ‘more’ output field (pr#12950, Sage Weil)
  • osd: fix coverity warning for uninitialized members (pr#12724, Li Wang)
  • osd: Fix useless MAX(0, unsigned) to prevent out of wack misplaced (issue#18718, pr#13164, David Zafman)
  • osd: improve error message when FileStore op fails due to EPERM (issue#18037, pr#12181, Nathan Cutler)
  • osd: never send rados ack (only commit) (pr#12451, Sage Weil)
  • osd: osd/OSDMap: require OSD features only of OSDs (issue#18831, pr#13275, Ilya Dryomov)
  • osd: Return correct osd_objectstore in OSD metadata (issue#18638, pr#13072, Wido den Hollander)
  • osd: use separate waitlist for scrub (pr#13136, Sage Weil)
  • performance,bluestore: os/bluestore/bluestore_types: drop std::bitset for blob unused (pr#12569, Sage Weil)
  • performance,bluestore: os/bluestore: do not cache shard keys (pr#12634, Sage Weil)
  • performance,bluestore: os/bluestore: generate same onode extent-shard keys in a more efficient way (pr#12681, xie xingguo)
  • performance,bluestore: os/bluestore: kvdb histogram (pr#12620, Varada Kari)
  • performance,bluestore: os/bluestore: prevent lock for almost “flush” calls (pr#12524, Haomai Wang)
  • performance,bluestore: os/bluestore: replace Blob ref_map with reference counting (pr#12904, Igor Fedotov)
  • performance,bluestore: os/bluestore: set cache meta ratio to .9 (pr#12635, Sage Weil)
  • performance,bluestore: os/bluestore: use aio for reads (pr#13066, Sage Weil)
  • performance,bluestore: os/bluestore: use Best-Effort policy when evicting onode from cache (pr#12876, xie xingguo)
  • performance,bluestore: os/bluestore: various onode changes to reduce its in-memory footprint. (pr#12700, Igor Fedotov)
  • performance,bluestore: Tested-by: Chagam, Anjaneya <anjaneya.chagam@intel.com> (pr#13032, Sage Weil)
  • performance,cephfs: mds/server: skip unwanted dn in handle_client_readdir (pr#12870, Xiaoxi Chen)
  • performance,common,bluestore: common/Finisher: Using queue(list<context*>) instead queue(context*). (pr#8942, Jianpeng Ma)
  • performance: osd, messenger, librados: lttng oid tracing (pr#12492, Anjaneya Chagam)
  • performance: osd/ReplicatedBackend: do not set omap header if it is empty (pr#12612, fang yuxiang)
  • pybind: conditional compile the linux specific constant (pr#12198, Kefu Chai)
  • qa: Add openstack requirements to smoke suite (pr#12913, Zack Cerza)
  • qa: src/test/test_denc.cc: Fix errors in buffer overflow (pr#12653, Willem Jan Withagen)
  • rbd: add error prompt when input command ‘snap set limit’ is incomplete (pr#12945, Tang Jin)
  • rbd: additional validation for ‘bench’ optional parameters (pr#12697, Yunchuan Wen)
  • rbd: bench-write should return error if io-size >= 4G (issue#18422, pr#12864, Gaurav Kumar Garg)
  • rbd: cleanup: fix the typo in namespace comment (pr#12858, Dongsheng Yang)
  • rbd: correct coverity warnings (pr#12954, Jason Dillaman)
  • rbd: destination pool should be source pool if it is not specified (issue#18326, pr#13189, Gaurav Kumar Garg)
  • rbd: enable rbd on FreeBSD (without KRBD) (pr#12798, Willem Jan Withagen)
  • rbd: journal: don’t hold future lock during assignment (issue#18618, pr#13033, Jason Dillaman)
  • rbd: journal: stop processing removal after error (issue#18738, pr#13193, Jason Dillaman)
  • rbd: rbd-mirror: add support for active/passive daemon instances (issue#17018, issue#17019, issue#17020, pr#12948, Mykola Golub)
  • rbd: rbd-mirror: avoid processing new events after stop requested (issue#18441, pr#12837, Jason Dillaman)
  • rbd: rbd-mirror: check remote image mirroring state when bootstrapping (issue#18447, pr#12820, Mykola Golub)
  • rbd: rbd-mirror: delayed replication support (issue#15371, pr#11879, Mykola Golub)
  • rbd: remove direct linking to static boost libraries (pr#12962, Jason Dillaman)
  • rbd: remove unused condition within group action handler (pr#12723, Gaurav Kumar Garg)
  • rgw: Added a globbing method for AWS Policies. (pr#12445, Pritha Srivastava)
  • rgw: Added code for REST APIs for AWS Roles. (pr#12104, Pritha Srivastava)
  • rgw: add lifecycle validation according to S3. (issue#18394, pr#12750, Zhang Shaowen)
  • rgw: be aware abount tenants on cls_user_bucket -> rgw_bucket conversion (issue#18364, issue#16355, pr#13220, Radoslaw Zarzynski)
  • rgw: clear master_zonegroup when reseting RGWPeriodMap (issue#17239, pr#12658, Orit Wasserman)
  • rgw: complete versioning enablement after sending it to meta master (issue#18003, pr#12444, Orit Wasserman)
  • rgw: fix handling RGWUserInfo::system in RGWHandler_REST_SWIFT. (issue#18476, pr#12865, Radoslaw Zarzynski)
  • rgw: fix off-by-one in RGWDataChangesLog::get_info (issue#18488, pr#12884, Casey Bodley)
  • rgw: fix period update crash (issue#18631, pr#13054, Orit Wasserman)
  • rgw: fix use of marker in List::list_objects() (issue#18331, pr#13147, Yehuda Sadeh)
  • rgw: fix versioned bucket data sync fail when upload is busy (issue#18208, pr#12357, lvshuhua)
  • rgw: ldap: simple_bind() should set ldap version option on tldap (pr#12616, Weibing Zhang)
  • rgw: librgw shut (issue#18585, pr#12972, Matt Benjamin)
  • rgw: orphan: fix error messages (pr#12782, Weibing Zhang)
  • rgw: remove invalid read size4 (issue#18071, pr#12767, Matt Benjamin)
  • rgw: rgw_file: add timed namespace invalidation (issue#18651, pr#13038, Matt Benjamin)
  • rgw: rgw_file: fix RGWLibFS::setattr for directory objects (issue#18808, pr#13252, Matt Benjamin)
  • rgw: rgw_file: interned RGWFileHandle objects need parent refs (issue#18650, pr#13084, Matt Benjamin)
  • rgw: rgw_file: split last argv on ws, if provided (pr#12965, Matt Benjamin)
  • rgw: RGWMetaSyncShardCR drops stack refs on destruction (issue#18412, issue#18300, pr#12605, Casey Bodley)
  • rgw: rgw multisite: fix ref counting of completions (issue#18414, issue#18407, pr#12841, Casey Bodley)
  • rgw: rgw realm set fixes (issue#18333, pr#12731, Orit Wasserman)
  • rgw: swift: fix anonymous user’s error code of getting object (issue#18806, pr#13242, Jing Wenjun)
  • rgw: swift: the http referer acl in swift API should be shown (issue#18665, pr#13003, Jing Wenjun)
  • rgw: swift: The http referer should be parsed to compare in swift API (issue#18685, pr#13005, Jing Wenjun)
  • rgw: sync status compares the current master period (issue#18064, pr#12907, Abhishek Lekshmanan)
  • rgw: the swift container acl should support field .ref (issue#18484, pr#12874, Jing Wenjun)
  • rgw: Use decoded URI when verifying TempURL (issue#18590, pr#13007, Michal Koutný)
  • rgw: Wip rgw openssl 7 (issue#11239, issue#16535, pr#11776, Yehuda Sadeh, Marcus Watts)
  • tests,bluestore: ceph_test_objectstore: match clone_range src and dst offset (pr#13211, Sage Weil)
  • tests,cephfs: Improve vstart_runner to (optionally) create its own cluster (pr#12800, John Spray)
  • tests: ceph-helpers.sh reduce get_timeout_delays() verbosity (pr#13257, Kefu Chai)
  • tests: ceph_test_rados_api_watch_notify: move global variables into test class (issue#18395, pr#12751, Kefu Chai)
  • tests,cleanup,rbd: test: correct language mode in file headers (pr#12924, Jason Dillaman)
  • tests,cleanup: test: clean up unused variable (pr#12873, liuchang0812)
  • tests,cleanup: test: update test_rados_tool.sh, use POOL and OBJ var (pr#12706, liuchang0812)
  • tests: drop rbd_cli_tests.pl and RbdLib.pm (issue#14825, pr#12821, Nathan Cutler)
  • tests: drop unused rbd_functional_tests.pl script (issue#14825, pr#12818, Nathan Cutler)
  • tests: fix NULL references to be acceptable by Clang (pr#12880, Willem Jan Withagen)
  • tests: fix template specialization of PromoteRequest class (pr#12815, Ricardo Dias)
  • tests: ignore bogus ceph-objectstore-tool error in ceph_manager (issue#16263, pr#13194, Nathan Cutler)
  • tests: nosetests: use /usr/bin/env to find nosetests (pr#12091, Willem Jan Withagen)
  • tests: qa: Cleaned up distros to use latest versions (pr#12804, Yuri Weinstein)
  • tests: qa/distros: make centos_latest 7.3 (pr#12944, Sage Weil)
  • tests: qa: do not mention ceph branch explicitly (pr#13225, Tamil Muthamizhan)
  • tests: qa: fixed distros links (pr#12770, Yuri Weinstein)
  • tests: qa: specify client for fs workunit (pr#12914, Tamil Muthamizhan)
  • tests: qa/suite: Added a smoke suite for ceph-ansible (pr#12610, Tamil Muthamizhan)
  • tests: qa/suites/ceph-ansible: removing fs workunit (pr#12928, Tamil Muthamizhan)
  • tests: qa/tasks/ceph-deploy: create-keys explicitly (pr#12867, Vasu Kulkarni)
  • tests: qa/tasks/ceph-deploy: use the new create option during instantiation (pr#12892, Vasu Kulkarni)
  • tests: qa/test_rados_tool.sh: POSIX dd only accepts ‘k’ as multiplier (pr#12699, Willem Jan Withagen)
  • tests: qa: Using centos 7.2 for latest version (pr#12806, Yuri Weinstein)
  • tests: qa/workunits/ceph-helpers: wait_for_clean() races with pg creation (pr#12866, David Zafman)
  • tests,rbd: qa: integrate OpenStack ‘gate-tempest-dsvm-full-devstack-plugin-ceph’ (issue#18594, pr#13158, Jason Dillaman)
  • tests,rbd: qa/tasks/qemu: update default image url after ceph.com redesign (issue#18542, pr#12953, Jason Dillaman)
  • tests,rbd: test/librbd: add break_lock test (pr#12842, Mykola Golub)
  • tests: rbd/test_lock_fence.sh: fix rbdrw.py relative path (issue#18388, pr#12747, Nathan Cutler)
  • tests,rbd: test: use librados API to retrieve config params (issue#18617, pr#13076, Jason Dillaman)
  • tests: remove temporary file (pr#12919, Kefu Chai)
  • tests,rgw: test/rgw: add test for versioned object sync (pr#12474, Casey Bodley)
  • tests: subst repo and branch in git.ceph.com URL in qa/tasks/cram.py and qa/tasks/qemu.py (issue#18440, pr#12816, Nathan Cutler)
  • tests: test: librados_test_stub: tmap_update: return -ENOENT when removing nonexisent key (pr#12667, Mykola Golub)
  • tests: test: replace hard-code binary names with varibles (pr#12675, liuchang0812)
  • tests: Thrasher: eliminate a race between kill_osd and __init__ (issue#18799, pr#13237, Nathan Cutler)
  • tools: ceph-disk: convert none str to str before printing it (issue#18371, pr#12760, Kefu Chai)
  • tools: ceph-objectstore-tool: Handle object names that are also valid json (pr#12848, David Zafman)
  • tools: ceph-release-notes: ignore low-numbered PRs (issue#18695, pr#13151, Nathan Cutler)
  • tools,common: osdmaptool: show all the pg map to osds info (pr#9419, song baisen)
  • tools: script: ceph-release-notes check orig. issue only for backports (pr#12979, Abhishek Lekshmanan)
  • tools: support hammer in rbd_recover_tool (pr#12413, Bartłomiej Święcki)
  • tools: tools/rados: add a parameter “–offset” to rados put command (pr#12674, liuchang0812)

v11.2.0 Kraken

This is the first release of the Kraken series. It is suitable for use in production deployments and will be maintained until the next stable release, Luminous, is completed in the Spring of 2017.

Major Changes from Jewel

  • RADOS:
    • The new BlueStore backend now has a stable disk format and is passing our failure and stress testing. Although the backend is still flagged as experimental, we encourage users to try it out for non-production clusters and non-critical data sets.
    • RADOS now has experimental support for overwrites on erasure-coded pools. Because the disk format and implementation are not yet finalized, there is a special pool option that must be enabled to test the new feature.  Enabling this option on a cluster will permanently bar that cluster from being upgraded to future versions.
    • We now default to the AsyncMessenger (ms type = async) instead of the legacy SimpleMessenger.  The most noticeable difference is that we now use a fixed sized thread pool for network connections (instead of two threads per socket with SimpleMessenger).
    • Some OSD failures are now detected almost immediately, whereas previously the heartbeat timeout (which defaults to 20 seconds) had to expire.  This prevents IO from blocking for an extended period for failures where the host remains up but the ceph-osd process is no longer running.
    • There is a new ceph-mgr daemon.  It is currently collocated with the monitors by default, and is not yet used for much, but the basic infrastructure is now in place.
    • The size of encoded OSDMaps has been reduced.
    • The OSDs now quiesce scrubbing when recovery or rebalancing is in progress.
  • RGW:
    • RGW now supports a new zone type that can be used for metadata indexing via ElasticSearch.
    • RGW now supports the S3 multipart object copy-part API.
    • It is possible now to reshard an existing bucket. Note that bucket resharding currently requires that all IO (especially writes) to the specific bucket is quiesced.
    • RGW now supports data compression for objects.
    • Civetweb version has been upgraded to 1.8
    • The Swift static website API is now supported (S3 support has been added previously).
    • S3 bucket lifecycle API has been added. Note that currently it only supports object expiration.
    • Support for custom search filters has been added to the LDAP auth implementation.
    • Support for NFS version 3 has been added to the RGW NFS gateway.
    • A Python binding has been created for librgw.
  • RBD:
    • RBD now supports images stored in an erasure-coded RADOS pool using the new (experimental) overwrite support. Images must be created using the new rbd CLI “–data-pool <ec pool>” option to specify the EC pool where the backing data objects are stored. Attempting to create an image directly on an EC pool will not be successful since the image’s backing metadata is only supported on a replicated pool.
    • The rbd-mirror daemon now supports replicating dynamic image feature updates and image metadata key/value pairs from the primary image to the non-primary image.
    • The number of image snapshots can be optionally restricted to a configurable maximum.
    • The rbd Python API now supports asynchronous IO operations.
  • CephFS:
    • libcephfs function definitions have been changed to enable proper uid/gid control. The library version has been increased to reflect the interface change.
    • Standby replay MDS daemons now consume less memory on workloads doing deletions.
    • Scrub now repairs backtrace, and populates damage ls with discovered errors.
    • A new pg_files subcommand to cephfs-data-scan can identify files affected by a damaged or lost RADOS PG.
    • The false-positive “failing to respond to cache pressure” warnings have been fixed.

Upgrading from Kraken release candidate 11.1.0

  • The new BlueStore backend had an on-disk format change after 11.1.0. Any BlueStore OSDs created with 11.1.0 will need to be destroyed and recreated.

Upgrading from Jewel

  • All clusters must first be upgraded to Jewel 10.2.z before upgrading to Kraken 11.2.z (or, eventually, Luminous 12.2.z).
  • The sortbitwise flag must be set on the Jewel cluster before upgrading to Kraken. The latest Jewel (10.2.4+) releases issue a health warning if the flag is not set, so this is probably already set. If it is not, Kraken OSDs will refuse to start and will print and error message in their log.
  • You may upgrade OSDs, Monitors, and MDSs in any order. RGW daemons should be upgraded last.
  • When upgrading, new ceph-mgr daemon instances will be created automatically alongside any monitors. This will be true for Jewel to Kraken and Jewel to Luminous upgrades, but likely not be true for future upgrades beyond Luminous. You are, of course, free to create new ceph-mgr daemon instances and destroy the auto-created ones if you do not with them to be colocated with the ceph-mon daemons.

BlueStore

BlueStore is a new backend for managing data stored by each OSD on the directly hard disk or SSD. Unlike the existing FileStore implementation, which makes use of an XFS file system to store objects as files, BlueStore manages the underlying block device directly. Implements its own file system-like on-disk structure the is designed specifically for Ceph OSD workloads. Key features of BlueStore include:

  • Checksums on all data written to disk, with checksum verifications on all reads, enabled by default.
  • Inline compression support, which can be enabled on a per-pool or per-object basis via pool properties or client hints, respectively.
  • Efficient journaling. Unlike FileStore, which writes all data to its journal device, BlueStore only journals metadata and (in some cases) small writes, reducing the size and throughput requirements for its journal. As with FileStore, the journal can be colocated on the same device as other data or allocated on a smaller, high-performance device (e.g., an SSD or NVMe device). BlueStore journals are only 512 MB by default.

The BlueStore on-disk format is expected to continue to evolve. However, we will provide support in the OSD to migrate to the new format on upgrade.

In order to enable BlueStore, add the following to ceph.conf:

enable experimental unrecoverable data corrupting features = bluestore

To create a BlueStore OSD, pass the –bluestore option to ceph-disk or ceph-deploy during OSD creation.

Upgrade notes

  • The OSDs now avoid starting new scrubs while recovery is in progress. To revert to the old behavior (and do not let recovery activity affect the scrub scheduling) you can set the following option:

    osd scrub during recovery = true
  • The list of monitor hosts/addresses for building the monmap can now be obtained from DNS SRV records. The service name used in when querying the DNS is defined in the “mon_dns_srv_name” config option, which defaults to “ceph-mon”.

  • The ‘osd class load list’ config option is a list of object class names that the OSD is permitted to load (or ‘*’ for all classes). By default it contains all existing in-tree classes for backwards compatibility.

  • The ‘osd class default list’ config option is a list of object class names (or ‘*’ for all classes) that clients may invoke having only the ‘*’, ‘x’, ‘class-read’, or ‘class-write’ capabilities. By default it contains all existing in-tree classes for backwards compatibility. Invoking classes not listed in ‘osd class default list’ requires a capability naming the class (e.g. ‘allow class foo’).

  • The ‘rgw rest getusage op compat’ config option allows you to dump (or not dump) the description of user stats in the S3 GetUsage API. This option defaults to false. If the value is true, the reponse data for GetUsage looks like:

    "stats": {
                "TotalBytes": 516,
                "TotalBytesRounded": 1024,
                "TotalEntries": 1
             }

    If the value is false, the reponse for GetUsage looks as it did before:

    {
         516,
         1024,
         1
    }
    
  • The ‘osd out ...’ and ‘osd in ...’ commands now preserve the OSD weight. That is, after marking an OSD out and then in, the weight will be the same as before (instead of being reset to 1.0). Previously the mons would only preserve the weight if the mon automatically marked and OSD out and then in, but not when an admin did so explicitly.

  • The ‘ceph osd perf’ command will display ‘commit_latency(ms)’ and ‘apply_latency(ms)’. Previously, the names of these two columns are ‘fs_commit_latency(ms)’ and ‘fs_apply_latency(ms)’. We remove the prefix ‘fs_‘, because they are not filestore specific.

  • Monitors will no longer allow pools to be removed by default. The setting mon_allow_pool_delete has to be set to true (defaults to false) before they allow pools to be removed. This is a additional safeguard against pools being removed by accident.

  • If you have manually specified the monitor user rocksdb via the mon keyvaluedb = rocksdb option, you will need to manually add a file to the mon data directory to preserve this option:

    echo rocksdb > /var/lib/ceph/mon/ceph-`hostname`/kv_backend

    New monitors will now use rocksdb by default, but if that file is not present, existing monitors will use leveldb. The mon keyvaluedb option now only affects the backend chosen when a monitor is created.

  • The ‘osd crush initial weight’ option allows you to specify a CRUSH weight for a newly added OSD. Previously a value of 0 (the default) meant that we should use the size of the OSD’s store to weight the new OSD. Now, a value of 0 means it should have a weight of 0, and a negative value (the new default) means we should automatically weight the OSD based on its size. If your configuration file explicitly specifies a value of 0 for this option you will need to change it to a negative value (e.g., -1) to preserve the current behavior.

  • The osd crush location config option is no longer supported. Please update your ceph.conf to use the crush location option instead.

  • The static libraries are no longer included by the debian development packages (lib*-dev) as it is not required per debian packaging policy. The shared (.so) versions are packaged as before.

  • The libtool pseudo-libraries (.la files) are no longer included by the debian development packages (lib*-dev) as they are not required per https://wiki.debian.org/ReleaseGoals/LAFileRemoval and https://www.debian.org/doc/manuals/maint-guide/advanced.en.html.

  • The jerasure and shec plugins can now detect SIMD instruction at runtime and no longer need to be explicitly configured for different processors. The following plugins are now deprecated: jerasure_generic, jerasure_sse3, jerasure_sse4, jerasure_neon, shec_generic, shec_sse3, shec_sse4, and shec_neon. If you use any of these plugins directly you will see a warning in the mon log file. Please switch to using just ‘jerasure’ or ‘shec’.

  • The librados omap get_keys and get_vals operations include a start key and a limit on the number of keys to return. The OSD now imposes a configurable limit on the number of keys and number of total bytes it will respond with, which means that a librados user might get fewer keys than they asked for. This is necessary to prevent careless users from requesting an unreasonable amount of data from the cluster in a single operation. The new limits are configured with osd_max_omap_entries_per_request, defaulting to 131,072, and ‘osd_max_omap_bytes_per_request’, defaulting to 4MB.

  • Calculation of recovery priorities has been updated. This could lead to unintuitive recovery prioritization during cluster upgrade. In case of such recovery, OSDs in old version would operate on different priority ranges than new ones. Once upgraded, cluster will operate on consistent values.

Notable Changes

  • bluestore: add counter to trace blob splitting (pr#11718, xie xingguo)
  • bluestore: a few more cleanups (pr#11780, xie xingguo)
  • bluestore: avoid polluting shard info if need resharding (pr#11439, xie xingguo)
  • bluestore: avoid unnecessary call to init_csum() (pr#12015, xie xingguo)
  • bluestore: ceph-disk: adjust bluestore default device sizes (pr#12530, Sage Weil)
  • bluestore: ceph_test_objectstore: smaller device (pr#11591, Sage Weil)
  • bluestore: clean up Allocator::dump (issue#18054, pr#12282, Sage Weil)
  • bluestore: clear extent map on object removal (pr#11603, Sage Weil)
  • bluestore: compressor/ZLibCompressor: fix broken isal-l (pr#11445, Igor Fedotov)
  • bluestore: dedup if space overlap truly exists (pr#11986, xie xingguo)
  • bluestore: dedup omap_head, reuse nid instead (pr#12275, xie xingguo)
  • bluestore: deep fsck (pr#11724, Sage Weil)
  • bluestore: default bluestore_clone_cow=true (pr#11540, Sage Weil)
  • bluestore: drop inline_dirty from struct ExtentMap (pr#11377, xie xingguo)
  • bluestore: drop member “space” from Onode (pr#12185, xie xingguo)
  • bluestore: fix alloc release timing on sync submits (pr#11983, Sage Weil)
  • bluestore: fix bufferspace stats leak due to blob splitting (pr#12039, xie xingguo)
  • bluestore: fix collection_list end bound off-by-one (pr#11771, Sage Weil)
  • bluestore: fix compiler warnings (pr#11905, xie xingguo)
  • bluestore: fixes and cleanups (pr#11761, xie xingguo)
  • bluestore: fix escaping of chars > 0x80 (pr#11502, Sage Weil)
  • bluestore: fix extent shard span check (pr#11725, Sage Weil)
  • bluestore: fix has_aios (pr#11317, Sage Weil)
  • bluestore: Fix invalid compression statfs caused by clone op (pr#11351, Igor Fedotov)
  • bluestore: fix lack of resharding (pr#11597, Igor Fedotov)
  • bluestore: fix latency calculation (pr#12040, Pan Liu)
  • bluestore: fix onode vs extent key suffix (pr#11452, Sage Weil)
  • bluestore: fix potential memory leak (pr#11893, xie xingguo)
  • bluestore: fix race condtion during blob spliting (pr#11422, xiexingguo, xie xingguo)
  • bluestore: fix remove_collection to properly detect collection e… (pr#11398, Igor Fedotov)
  • bluestore: fix _split_collections race with osr_reap (pr#11748, Sage Weil)
  • bluestore: fix up compression tests and debug output (pr#11350, Sage Weil)
  • bluestore: fix writes that span existing shard boundaries (pr#11451, Sage Weil)
  • bluestore: flush before enumerating omap values (issue#18140, pr#12328, Sage Weil)
  • bluestore: formatting nits (pr#11514, xie xingguo)
  • bluestore: fsck: fix omap_head check (pr#11726, Sage Weil)
  • bluestore: GC infra refactor, more UTs and GC range calculation fixes (pr#11482, Igor Fedotov)
  • bluestore: KernelDevice: fix race in aio_thread vs aio_wait (issue#17824, pr#12204, Sage Weil)
  • bluestore: kv: dump rocksdb stats (pr#12287, Varada Kari, Jianpeng Ma, Sage Weil)
  • bluestore: kv/rocksdb: enable rocksdb write path breakdown (pr#11696, Haodong Tang)
  • bluestore: kv/RocksDBStore: rename option (pr#11769, Sage Weil)
  • bluestore: less code redundancy (pr#11740, xie xingguo)
  • bluestore: make 2q cache kin/kout size tunable (pr#11599, Haodong Tang)
  • bluestore: mark ops that can’t tolerate ENOENT (pr#12114, Sage Weil)
  • bluestore: mempool: changes for bitmap allocator (pr#11922, Ramesh Chander)
  • bluestore: misc. fixes and cleanups (pr#11964, xie xingguo)
  • bluestore: move bluefs into its own mempool (pr#11834, Sage Weil)
  • bluestore: no garbage collection for uncompressed blobs (pr#11539, Roushan Ali, Sage Weil)
  • bluestore: optional debug mode to identify aio stalls (pr#11818, Sage Weil)
  • bluestore: os/bluestore: a few cleanups (pr#11483, Sage Weil)
  • bluestore: os/bluestore: avoid resharding if the last shard size fall below shar… (pr#12447, Igor Fedotov)
  • bluestore: os/bluestore: bitmap allocator dump functionality (pr#12298, Ramesh Chander)
  • bluestore: os/bluestore: bluestore_sync_submit_transaction = false (pr#12367, Sage Weil)
  • bluestore: os/bluestore: cleanup around Blob::ref_map (pr#11896, Igor Fedotov)
  • bluestore: os/bluestore: clear omap flag if parent has none (pr#12351, xie xingguo)
  • bluestore: os/bluestore: don’t implicitly create the source object for clone (pr#12353, xie xingguo)
  • bluestore: os/bluestore: drop old bluestore preconditioning; replace with wal preextension of file size (pr#12265, Sage Weil)
  • bluestore: os/bluestore: fix global commit latency (pr#12356, xie xingguo)
  • bluestore: os/bluestore: fix ondisk encoding for blobs (pr#12488, Varada Kari, Sage Weil)
  • bluestore: os/bluestore: fix potential csum_order overflow (pr#12333, xie xingguo)
  • bluestore: os/bluestore: fix target_buffer value overflow in Cache::trim() (pr#12507, Igor Fedotov)
  • bluestore: os/bluestore: include modified objects in flush list even if onode unchanged (pr#12541, Sage Weil)
  • bluestore: os/bluestore: kill dead gc-related counters (pr#12065, xie xingguo)
  • bluestore: os/bluestore: kill overlay related options (pr#11557, xie xingguo)
  • bluestore: os/bluestore: misc coverity fixes/cleanups (pr#12202, Sage Weil)
  • bluestore: os/bluestore: preserve source collection cache during split (pr#12574, Sage Weil)
  • bluestore: os/bluestore: remove ‘extents’ from shard_info (pr#12629, Sage Weil)
  • bluestore: os/bluestore: simplified allocator interfaces to single apis (pr#12355, Ramesh Chander)
  • bluestore: os/bluestore: simplify allocator release flow (pr#12343, Sage Weil)
  • bluestore: os/bluestore: simplify can_split_at() (pr#11607, xie xingguo)
  • bluestore: os/bluestore: use iterator for erase() method directly (pr#11490, xie xingguo)
  • bluestore: os/kstore: rmcoll fix to satisfy store_test (pr#11533, Igor Fedotov)
  • bluestore: os: make filestore_blackhole -> objectstore_blackhole (pr#11788, Sage Weil)
  • bluestore: os: move_ranges_destroy_src (pr#11237, Manali Kulkarni, Sage Weil)
  • bluestore: readability improvements and doxygen fix (pr#11895, xie xingguo)
  • bluestore: reap collection after all pending ios done (pr#11797, Haomai Wang)
  • bluestore: reap ioc when stopping aio_thread. (pr#11811, Haodong Tang)
  • bluestore: refactor _do_write(); move initializaiton of csum out of loop (pr#11823, xie xingguo)
  • bluestore: remove duplicated namespace of tx state (pr#11845, xie xingguo)
  • bluestore: remove garbage collector staff (pr#12042, Igor Fedotov)
  • bluestore: set next object as ghobject_t::get_max() when start.hobj.i… (pr#11495, Xinze Chi, Haomai Wang)
  • bluestore: simplify blob status checking for small writes (pr#11366, xie xingguo)
  • bluestore: some more cleanups (pr#11910, xie xingguo)
  • bluestore: spdk: a few fixes (pr#11882, Yehuda Sadeh)
  • bluestore: speed up omap-key generation for same onode (pr#11807, xie xingguo)
  • bluestore: traverse buffer_map in reverse order when spliting BufferSpace (pr#11468, xie xingguo)
  • bluestore: update cache logger after ‘trim_cache’ operation (pr#11695, Haodong Tang)
  • bluestore: use bitmap allocator for bluefs (pr#12285, Sage Weil)
  • bluestore: use std::unordered_map for SharedBlob lookup (pr#11394, Sage Weil)
  • build/ops: AArch64: Detect crc32 extension support from assembler (issue#17516, pr#11391, Alexander Graf)
  • build/ops: boost: embedded (pr#11817, Sage Weil, Matt Benjamin)
  • build/ops: build: dump env during build (issue#18084, pr#12284, Sage Weil)
  • build/ops: ceph-detect-init: FreeBSD introduction of bsdrc (pr#11906, Willem Jan Withagen, Kefu Chai)
  • build/ops: ceph-disk: enable –runtime ceph-osd systemd units (issue#17889, pr#12241, Loic Dachary)
  • build/ops: ceph.spec: add pybind rgwfile (pr#11847, Haomai Wang)
  • build/ops,cleanup,bluestore: os/bluestore: remove build warning in a better way (pr#11920, Igor Fedotov)
  • build/ops: CMakeLists: add vstart-base target (pr#12476, Sage Weil)
  • build/ops: CMakeLists.txt: enable LTTNG by default (pr#11500, Sage Weil)
  • build/ops: common/buffer.cc: raw_pipe depends on splice(2) (pr#11967, Willem Jan Withagen)
  • build/ops,common: common/str_list.h: fix clang warning about std::move (pr#12570, Willem Jan Withagen)
  • build/ops,core: xio: fix build (pr#11768, Matt Benjamin)
  • build/ops: deb: add python dependencies where needed (issue#17579, pr#11507, Nathan Cutler, Kefu Chai)
  • build/ops: deb: add python-rgw packages (pr#11832, Sage Weil)
  • build/ops: debian: apply dh_python to python-rgw also (pr#12260, Kefu Chai)
  • build/ops: deb: update python-rgw dependencies to librgw2 (pr#11885, Casey Bodley)
  • build/ops: do_freebsd.sh: Build with SYSTEM Boost on FreeBSD (pr#11942, Willem Jan Withagen)
  • build/ops: do_freebsd.sh: Do not use LTTNG on FreeBSD (pr#11551, Willem Jan Withagen)
  • build/ops: do_freebsd.sh: Set options for debug building. (pr#11443, Willem Jan Withagen)
  • build/ops: FreeBSD: do_freebsd.sh (pr#12090, Willem Jan Withagen)
  • build/ops: FreeBSD:test/encoding/readable.sh”: fix nproc and ls -v calls (pr#11522, Willem Jan Withagen)
  • build/ops: FreeBSD: update require packages (pr#11512, Willem Jan Withagen)
  • build/ops: git-archive-all.sh: use an actually unique tmp dir (pr#12011, Dan Mick)
  • build/ops: include/enc: make clang happy (pr#11638, Kefu Chai, Sage Weil)
  • build/ops: install-deps.sh: allow building on SLES systems (pr#11708, Nitin A Kamble)
  • build/ops: install-deps.sh: JQ is needed in one script (pr#12080, Willem Jan Withagen)
  • build/ops: Log: Replace namespace log with logging (pr#11650, Willem Jan Withagen)
  • build/ops: Merging before make check because it clearly breaks the build and the build part is done (pr#11924, Sage Weil)
  • build/ops: ok, w/upstream acks, merging–jenkins build did succeed (this is a build-only change) (pr#12008, Matt Benjamin)
  • build/ops: qa: Add ceph-ansible installer. (issue#16770, pr#10402, Warren Usui)
  • build/ops: rocksdb: do not build with –march=native (pr#11677, Kefu Chai)
  • build/ops: rocksdb: update to latest (pr#12100, Kefu Chai)
  • build/ops: rpm: Remove trailing whitespace in usermod command (SUSE) (pr#10707, Tim Serong)
  • build/ops: scripts/release-notes: allow title guesses from gh tags & description update (pr#11399, Abhishek Lekshmanan)
  • build/ops: systemd: Fix startup of ceph-mgr on Debian 8 (pr#12555, Mark Korenberg)
  • build/ops: tracing/objectstore.tp: add missing move_ranges_... tp (pr#11484, Sage Weil)
  • build/ops: upstart: fix ceph-crush-location default (issue#6698, pr#803, Jason Dillaman)
  • build/ops: upstart: start ceph-all after static-network-up (issue#17689, pr#11631, Billy Olsen)
  • cephfs: add gid to asok status (pr#11487, Patrick Donnelly)
  • cephfs: API cleanup for libcephfs interfaces (issue#17911, pr#12106, Jeff Layton)
  • cephfs: ceph-fuse: start up log on parent process before shutdown (issue#18157, pr#12347, Greg Farnum)
  • cephfs: ceph_fuse: use sizeof get the buf length (pr#11176, LeoZhang)
  • cephfs,cleanup: ceph-fuse: start up log on parent process before shutdown (issue#18157, pr#12358, Kefu Chai)
  • cephfs: client: add pid to metadata (issue#17276, pr#11359, Patrick Donnelly)
  • cephfs: client: Client.cc: remove duplicated op type checking against CEPH_MD… (pr#11608, Weibing Zhang)
  • cephfs: client: don’t take extra target inode reference in ll_link (pr#11440, Jeff Layton)
  • cephfs: client: fix mutex name typos (pr#12401, Yunchuan Wen)
  • cephfs: client: get caller’s uid/gid on every libcephfs operation (issue#17591, pr#11526, Yan, Zheng)
  • cephfs: client: get gid from MonClient (pr#11486, Patrick Donnelly)
  • cephfs: client: improve failure messages/debugging (pr#12110, Patrick Donnelly)
  • cephfs: client/mds: Clear setuid bits when writing or truncating (issue#18131, pr#12412, Jeff Layton)
  • cephfs: client: put CapSnap not ptr in cap_snaps map (pr#12111, Patrick Donnelly)
  • cephfs: client: remove redundant initialization (pr#12028, Patrick Donnelly)
  • cephfs: client: remove unnecessary bufferptr[] for writev (pr#11836, Patrick Donnelly)
  • cephfs: client: remove unneeded layout on MClientCaps (pr#11790, John Spray)
  • cephfs: client: set metadata[“root”] from mount method when it’s called with … (pr#12505, Jeff Layton)
  • cephfs: client: trim_caps() do not dereference cap if it’s removed (pr#12145, Kefu Chai)
  • cephfs: client: use unique_ptr (pr#11837, Patrick Donnelly)
  • cephfs: common/ceph_string: add ceph string constants for CEPH_SESSION_FORCE_RO (pr#11516, Zhi Zhang)
  • cephfs: Fix #17562 (backtrace check fails when scrubbing directory created by fsstress) (issue#17562, pr#11517, Yan, Zheng)
  • cephfs: fix missing ll_get for ll_walk (issue#18086, pr#12061, Gui Hecheng)
  • cephfs: get new fsmap after marking clusters down (issue#7271, issue#17894, pr#1262, Patrick Donnelly)
  • cephfs: Have ceph clear setuid/setgid bits on chown (issue#18131, pr#12331, Jeff Layton)
  • cephfs: libcephfs: add ceph_fsetattr&&ceph_lchmod&&ceph_lutime (pr#11191, huanwen ren)
  • cephfs: libcephfs: add readlink function in cephfs.pyx (pr#12384, huanwen ren)
  • cephfs: libcephfs and test suite fixes (issue#18013, issue#17982, pr#12228, Jeff Layton)
  • cephfs: libcephfs client API overhaul and update (pr#11647, Jeff Layton)
  • cephfs: lua: use simpler lua_next traversal structure (pr#11958, Patrick Donnelly)
  • cephfs: mds/Beacon: move C_MDS_BeaconSender class to .cc (pr#10940, Michal Jarzabek)
  • cephfs: mds/CDir.cc: remove unneeded use of count (pr#11613, Michal Jarzabek)
  • cephfs: mds/CInode.h: remove unneeded use of count (pr#11371, Michal Jarzabek)
  • cephfs: mds/DamageTable.cc: move shared ptrs (pr#11435, Michal Jarzabek)
  • cephfs: mds/DamageTable.cc: remove unneeded use of count (pr#11625, Michal Jarzabek)
  • cephfs: mds/DamageTable: move classes to .cc file (pr#11450, Michal Jarzabek)
  • cephfs: mds/flock: add const to member functions (pr#11692, Michal Jarzabek)
  • cephfs: mds/FSMap.cc: remove unneeded use of count (pr#11402, Michal Jarzabek)
  • cephfs: mds/FSMapUser.h: remove copy ctr and assign op (pr#11509, Michal Jarzabek)
  • cephfs: mds/InfoTable.h: add override to virtual functs (pr#11496, Michal Jarzabek)
  • cephfs: mds/InoTable.h: add override to virtual functs (pr#11604, Michal Jarzabek)
  • cephfs: mds/Mantle.h: include correct header files (pr#11886, Michal Jarzabek)
  • cephfs: mds/Mantle: pass parameters by const ref (pr#11713, Michal Jarzabek)
  • cephfs: mds/MDCache.h: remove unneeded call to clear func (pr#11954, Michal Jarzabek)
  • cephfs: mds/MDCache.h: remove unused functions (pr#11908, Michal Jarzabek)
  • cephfs: mds/MDLog: add const to member functions (pr#11663, Michal Jarzabek)
  • cephfs: mds/MDSMap.h: add const to member functions (pr#11511, Michal Jarzabek)
  • cephfs: mds/MDSRank: add const to member functions (pr#11752, Michal Jarzabek)
  • cephfs: mds/MDSRank.h: add override to virtual function (pr#11727, Michal Jarzabek)
  • cephfs: mds/MDSRank.h: make destructor protected (pr#11651, Michal Jarzabek)
  • cephfs: mds/MDSTableClient.h: add const to member funct (pr#11681, Michal Jarzabek)
  • cephfs: mds/Migrator.cc: remove unneeded use of count (pr#11523, Michal Jarzabek)
  • cephfs: mds/Migrator.h: add const to member functions (pr#11819, Michal Jarzabek)
  • cephfs: mds/Migrator.h: remove unneeded use of count (pr#11833, Michal Jarzabek)
  • cephfs: mds/Mutation.h: add const to member functions (pr#11670, Michal Jarzabek)
  • cephfs: mds/Mutation.h: simplify constructors (pr#11455, Michal Jarzabek)
  • cephfs: MDS: reduce usage of context wrapper (pr#11560, Yan, Zheng)
  • cephfs: mds/ScrubHeader.h: pass string by const reference (pr#11904, Michal Jarzabek)
  • cephfs: mds/server: merge the snapshot request judgment (pr#11150, huanwen ren)
  • cephfs: mds/SessionMap: add const to member functions (pr#11541, Michal Jarzabek)
  • cephfs: mds/SessionMap.cc: avoid copying and add const (pr#11297, Michal Jarzabek)
  • cephfs: mds/SessionMap.cc:put classes in unnamed namespace (pr#11316, Michal Jarzabek)
  • cephfs: mds/SessionMap.cc: remove unneeded use of count (pr#11338, Michal Jarzabek)
  • cephfs: mds/SessionMap.h: remove unneeded function (pr#11565, Michal Jarzabek)
  • cephfs: mds/SessionMap.h: remove unneeded use of count (pr#11358, Michal Jarzabek)
  • cephfs: mds/SnapRealm: remove unneeded use of count (pr#11609, Michal Jarzabek)
  • cephfs: mds/SnapServer.h: add override to virtual functs (pr#11380, Michal Jarzabek)
  • cephfs: mds/SnapServer.h: add override to virtual functs (pr#11583, Michal Jarzabek)
  • cephfs: mon/MDSMonitor: fix iterating over mutated map (issue#18166, pr#12395, John Spray)
  • cephfs: multimds: fix state check in Migrator::find_stale_export_freeze() (pr#12098, Yan, Zheng)
  • cephfs: osdc: After write try merge bh. (issue#17270, pr#11545, Jianpeng Ma)
  • cephfs: Partial organization of mds/ header sections (pr#11959, Patrick Donnelly)
  • cephfs: Port/bootstrap (pr#827, Yan, Zheng)
  • cephfs: Revert “osdc: After write try merge bh.” (issue#17270, pr#11262, John Spray)
  • cephfs: Small pile of random cephfs fixes and cleanup (pr#11421, Jeff Layton)
  • cephfs: src/mds: fix MDSMap upgrade decoding (issue#17837, pr#12097, John Spray)
  • cephfs: systemd: add ceph-fuse service file (pr#11542, Patrick Donnelly)
  • cephfs: test fragment size limit (issue#16164, pr#1069, Patrick Donnelly)
  • cephfs: test readahead is working (issue#16024, pr#1046, Patrick Donnelly)
  • cephfs: test: temporarily remove fork()ing flock tests (issue#16556, pr#11211, John Spray)
  • cephfs: tool/cephfs: displaying “list” in journal event mode (pr#11236, huanwen ren)
  • cephfs: tools/cephfs: add pg_files command (issue#17249, pr#11026, John Spray)
  • cephfs: tools/cephfs: add scan_links command which fixes linkages errors (pr#11446, Yan, Zheng)
  • cephfs: update tests to enable multimds when needed (pr#933, Greg Farnum)
  • cleanup: build: The Light Clangtastic (pr#11921, Adam C. Emerson)
  • cleanup,common: common/blkdev: use realpath instead of readlink to resolve the recurs… (pr#12462, Xinze Chi)
  • cleanup,common: common/throttle: simplify Throttle::_wait() (pr#11165, xie xingguo)
  • cleanup,common: src/common: remove nonused config option (pr#12311, Wei Jin)
  • cleanup: coverity fix: fixing few coverity issue (pr#9624, Gaurav Kumar Garg)
  • cleanup: deprecate readdir_r() with readdir() (pr#11805, Kefu Chai)
  • cleanup: erasure-code: fix gf-complete warning (pr#12150, Kefu Chai)
  • cleanup: fix typos (pr#12502, xianxiaxiao)
  • cleanup: mds/FSMap.cc: prevent unneeded copy of map entry (pr#11798, Michal Jarzabek)
  • cleanup: mds/FSMap.h: add const and reference (pr#11802, Michal Jarzabek)
  • cleanup: mds/FSMap: pass shared_ptr by const ref (pr#11383, Michal Jarzabek)
  • cleanup: mds/SnapServer: add const to member function (pr#11688, Michal Jarzabek)
  • cleanup: mon/MonCap.h: add std::move for std::string (pr#10722, Michal Jarzabek)
  • cleanup: mon/OSDMonitor: only show interesting flags in health warning (issue#18175, pr#12365, Sage Weil)
  • cleanup: msg/async: assert(0) -> ceph_abort() (pr#12339, Li Wang)
  • cleanup: msg/AsyncMessenger: remove unneeded include (pr#9846, Michal Jarzabek)
  • cleanup: msg/async/rdma: fix disconnect log line (pr#12254, Adir Lev)
  • cleanup: msg/async: remove unused member variable (pr#12387, Kefu Chai)
  • cleanup: msg: fix format specifier for unsigned value id (pr#11145, Weibing Zhang)
  • cleanup: msg/Pipe: move DelayedDelivery class to cc file (pr#10447, Michal Jarzabek)
  • cleanup: msg/test: fix the guided compile-command to ceph_test_msgr (pr#10490, Yan Jun)
  • cleanup: osd/PGBackend: build_push_op segment fault (pr#9357, Zengran Zhang)
  • cleanup: osd/PG.h: change PGRecoveryStats struct to class (pr#11178, Michal Jarzabek)
  • cleanup: osd/PG.h: remove unneeded forward declaration (pr#12135, Li Wang)
  • cleanup: osd/ReplicatedPG: remove unneeded use of count (pr#11251, Michal Jarzabek)
  • cleanup: os/filestore: clean filestore perfcounters (pr#11524, Wei Jin)
  • cleanup: os/fs/FS.cc: condition on WITH_AIO for FreeBSD (pr#11913, Willem Jan Withagen)
  • cleanup,rbd: cls_rbd: silence compiler warnings (pr#11363, xiexingguo)
  • cleanup,rbd: journal: avoid logging an error when a watch is blacklisted (issue#18243, pr#12473, Jason Dillaman)
  • cleanup,rbd: journal: prevent repetitive error messages after being blacklisted (issue#18243, pr#12497, Jason Dillaman)
  • cleanup,rbd: librbd/ImageCtx: no need for virtual dtor (pr#12220, Sage Weil)
  • cleanup,rbd: rbd-mirror: configuration overrides for hard coded timers (pr#11840, Dongsheng Yang)
  • cleanup,rbd: rbd-mirror: set SEQUENTIAL and NOCACHE advise flags on image sync (issue#17127, pr#12280, Mykola Golub)
  • cleanup: remove unneeded forward declaration (pr#12257, Li Wang, Yunchuan Wen)
  • cleanup: remove unused declaration (pr#12466, Li Wang, Yunchuan Wen)
  • cleanup,rgw: rgw multisite: move lease up to RunBucketSync instead of child crs (pr#11598, Casey Bodley)
  • cleanup,rgw: rgw/rest: don’t print empty x-amz-request-id (pr#10674, Marcus Watts)
  • cleanup,rgw: verified: f23 (pr#12103, Radoslaw Zarzynski)
  • cleanup: src/common/perf_counters.h: fix wrong word (pr#11690, zhang.zezhu)
  • cleanup: Wip ctypos (pr#12495, xianxiaxiao)
  • cleanup: xio: provide dout_prefix for XioConnection (pr#9444, Avner BenHanoch)
  • cleanup: yasm-wrapper: translate “-isystem $1” to “-i $1” (pr#12093, Kefu Chai)
  • cmake: add -Wno-unknown-pragmas to CMAKE_CXX_FLAGS (pr#12128, Kefu Chai)
  • cmake: check WITH_RADOSGW for fcgi and expat dependencies (pr#11481, David Disseldorp)
  • cmake: compile C code with c99 (pr#12369, Kefu Chai)
  • cmake: detect keyutils if WITH_LIBCEPHFS OR WITH_RBD (pr#12359, Kefu Chai)
  • cmake: do not link erasure tests again libosd (pr#11738, Kefu Chai)
  • cmake: find gperftools package for tcmalloc_minimal too (pr#11403, Bassam Tabbara)
  • cmake: fix boost build on ubuntu 16.10 yakkety (pr#12143, Bassam Tabbara)
  • cmake: Fix for cross compiling (pr#11404, Bassam Tabbara)
  • cmake: fix git version string, cleanup (pr#11661, Sage Weil)
  • cmake: librbd cleanup (pr#11842, Kefu Chai)
  • cmake: link tests against static librados (issue#17260, pr#11575, Kefu Chai)
  • cmake: pass CMAKE_BUILD_TYPE down to rocksdb (pr#11767, Kefu Chai)
  • cmake: remove include/Makefile.am (pr#11666, Kefu Chai)
  • cmake: replace civetweb symlink w/file copy (pr#11900, Matt Benjamin)
  • cmake: should link against ${ALLOC_LIBS} (pr#11978, Kefu Chai)
  • cmake: src/test/CMakeLists.txt: Exclude test on HAVE_BLKID (pr#12301, Willem Jan Withagen)
  • cmake: Support for embedding Ceph Daemons (pr#11764, Bassam Tabbara)
  • cmake: use external project for rocksdb (pr#11385, Bassam Tabbara)
  • common: Add throttle_get_started perf counter (pr#12163, Bartłomiej Święcki)
  • common: assert(0) -> ceph_abort() (pr#12031, Sage Weil)
  • common: auth: fix NULL pointer access when trying to delete CryptoAESKeyHandler instance (pr#11614, runsisi)
  • common,bluestore: compressor: fixes and tests; disable zlib isal (it’s broken) (pr#11349, Sage Weil)
  • common,bluestore: mempool: mempool infrastructure, bluestore changes to use it (pr#11331, Allen Samuels, Sage Weil)
  • common: buffer: add advance(unsigned) back (issue#17809, pr#11993, Kefu Chai)
  • common: buffer: add copy(unsigned, ptr) back (issue#17809, pr#12246, Kefu Chai)
  • common: client/Client.cc: fix/silence “logically dead code” CID-Error (pr#291, Yehuda Sadeh)
  • common: common/strtol.cc: Get error testing also to work on FreeBSD (pr#12034, Willem Jan Withagen)
  • common: fix clang compilation error (pr#12565, Mykola Golub)
  • common: FreeBSD/EventKqueue.{h,cc} Added code to restore events on (thread)fork (pr#11430, Willem Jan Withagen)
  • common: log/LogClient: fill seq & who for syslog and graylog (issue#16609, pr#10196, Xiaoxi Chen)
  • common: make l_finisher_complete_lat more accurate (pr#11637, Pan Liu)
  • common: msg/simple/Accepter.cc: replace shutdown() with selfpipe event in poll() (FreeBSD) (pr#10720, Willem Jan Withagen)
  • common: osdc/Objecter: fix relock race (issue#17942, pr#12234, Sage Weil)
  • common: osdc/Objecter: handle race between calc_target and handle_osd_map (issue#17942, pr#12055, Sage Weil)
  • common: osd/osdmap: fix divide by zero error (pr#12521, Yunchuan Wen)
  • common: release g_ceph_context before returns (issue#17762, pr#11733, Kefu Chai)
  • common: Remove the runtime dependency on lsb_release (issue#17425, pr#11365, Brad Hubbard)
  • common: test/fio: fix global CephContext life cycle (pr#12245, Igor Fedotov)
  • core: auth: tolerate missing MGR keys during upgrade (pr#11401, Sage Weil)
  • core,bluestore: os/bluestore: fix warning and uninit variable (pr#12032, Sage Weil)
  • core,bluestore: os: fix offsets for move_ranges operation (pr#11595, Sage Weil)
  • core,bluestore: os: remove move_ranges_destroy_src (pr#11791, Sage Weil)
  • core: ceph-disk: allow using a regular file as a journal (issue#17662, pr#11619, Jayashree Candadai, Loic Dachary)
  • core: ceph-disk: resolve race conditions (issue#17889, issue#17813, pr#12136, Loic Dachary)
  • core,cephfs: osdc/ObjectCacher: wake up dirty stat waiters after removing buffers (issue#17275, pr#11593, Yan, Zheng)
  • core: ceph.in: allow ‘flags’ to not be present in cmddescs (issue#18297, pr#12540, Dan Mick)
  • core,cleanup: ceph-disk: do not create bluestore wal/db partitions by default (issue#18291, pr#12531, Loic Dachary)
  • core,cleanup,common: common/TrackedOp: remove unused ‘now’ in _dump() (pr#12007, John Spray)
  • core,cleanup: FileStore: Only verify split when it has been really done and done correctly (pr#11731, Li Wang)
  • core,cleanup: kv: remove snapshot iterator (pr#12049, Sage Weil)
  • core,cleanup: mon/MonClient.h: remove repeated searching of map (pr#10601, Michal Jarzabek)
  • core,cleanup: msg: Fix typos in socket creation error message (pr#11907, Brad Hubbard)
  • core,cleanup: osd/command tell: check pgid at the right time (pr#11547, Javeme)
  • core,cleanup: osd/OSDMap.cc: fix duplicated assignment for new_blacklist_entries (pr#11799, Ker Liu)
  • core,cleanup: osd/PG.cc: prevent repeated searching of map/set (pr#11203, Michal Jarzabek)
  • core,cleanup: osd/ReplicatedPG: remove redundant check for balance/localize read (pr#10209, runsisi)
  • core,cleanup: osd/ReplicatedPG: remove unneeded use of count (pr#11242, Michal Jarzabek)
  • core,cleanup: os/filestore: handle EINTR returned by io_getevents() (pr#11890, Pan Liu)
  • core,cleanup: os/ObjectStore: remove legacy tbl support (pr#11770, Jianpeng Ma)
  • core,cleanup: scan build fixes (pr#12148, Kefu Chai)
  • core,cleanup: src: rename ReplicatedPG to PrimaryLogPG (pr#12487, Samuel Just)
  • core,cleanup: Wip scrub misc (pr#11397, David Zafman)
  • core,common: buffer: put buffers in buffer_{data,meta} mempools (pr#11839, Sage Weil)
  • core,common: msg: add entity_addr_t types; add new entity_addrvec_t type (pr#9825, Zhao Junwang, Sage Weil)
  • core,common: msg/simple/Pipe: handle addr decode error (issue#18072, pr#12221, Sage Weil)
  • core: compress: Fix compilation failure from missing header (pr#12108, Adam C. Emerson)
  • core: denc: don’t pass null instances into encoder fns (issue#17636, pr#11577, John Spray)
  • core: erasure-code: synchronize with upstream gf-complete (issue#18092, pr#12382, Loic Dachary)
  • core: FreeBSD/OSD.cc: add client_messenger to the avoid_ports set. (pr#12463, Willem Jan Withagen)
  • core: include/object: pass “snapid_t&” to bound_encode() (pr#11552, Kefu Chai)
  • core: kv/RocksDBStore: Don’t update rocksdb perf_context if rocksdb_perf di… (pr#12064, Jianpeng Ma)
  • core: librados-dev: install inline_memory.h (issue#17654, pr#11730, Josh Durgin)
  • core: messages/MForward: reencode forwarded message if target has differing features (pr#11610, Sage Weil)
  • core,mgr: messages: fix out of range assertion (pr#11345, John Spray)
  • core: mon,ceph-disk: add lockbox permissions to bootstrap-osd (issue#17849, pr#11996, Loic Dachary)
  • core: mon: make it more clearly to debug for paxos state (pr#12438, song baisen)
  • core: mon/OSDMonitor: encode full osdmaps with features all OSDs can understand (pr#11284, Sage Weil)
  • core: mon/OSDMonitor: encode OSDMap::Incremental with same features as OSDMap (pr#11596, Sage Weil)
  • core: mon/OSDMonitor: newly created osd should not be wrongly marked in (pr#11795, runsisi)
  • core: mon/OSDMonitor: remove duplicate jewel/kraken flag warning (pr#11775, Josh Durgin)
  • core: mon/PGMap: PGs can be stuck more than one thing (issue#17515, pr#11339, Sage Weil)
  • core: mon: print the num_pools and num_objects in ‘ceph -s -f json/json-p… (issue#17703, pr#11654, huangjun)
  • core: msg/async/AsyncConnection: dispatch write handler on keepalive2 (issue#17664, pr#11601, Ilya Dryomov)
  • core: msg/async: DPDKStack as AsyncMessenger backend (pr#10748, Haomai Wang)
  • core: msg/async/rdma: change log level: 0 -> 1 (pr#12334, Avner BenHanoch)
  • core: msg/async/rdma: don’t use more buffers than what device capabilities … (pr#12263, Avner BenHanoch)
  • core: msg/async/rdma: ensure CephContext existed (pr#12068, Haomai Wang)
  • core: msg/async/rdma: event polling thread can block on event (pr#12270, Haomai Wang)
  • core: msg/async/rdma: fixup memory free (pr#12236, gongchuang)
  • core: msg/async/rdma: set correct value to memory manager (pr#12299, Adir Lev)
  • core: msg/async: set nonce before starting the workers (pr#12390, Kefu Chai)
  • core: msg: make loopback Connection feature accurate all the time (pr#11183, Sage Weil)
  • core: msg: seed random engine used for ms_type=”random” (pr#11880, Casey Bodley)
  • core: msg/simple/Pipe: avoid returning 0 on poll timeout (issue#18184, pr#12375, Sage Weil)
  • core: msg/simple/Pipe::stop_and_wait: unlock pipe_lock for stop_fast_dispatching() (issue#18042, pr#12307, Samuel Just)
  • core: msg/simple: save the errno in case being changed by subsequent codes (pr#10297, Yan Jun)
  • core: osd/ECTransaction: only write out the hinfo if not delete (issue#17983, pr#12141, Samuel Just)
  • core: OSDMonitor: only reject MOSDBoot based on up_from if inst matches (issue#17899, pr#12003, Samuel Just)
  • core: osd,mon: require sortbitwise flag to upgrade beyond jewel (pr#11772, Sage Weil)
  • core: osd/osd_types: fix the osd_stat_t::decode() (pr#12235, Kefu Chai)
  • core: osd/PG: add “down” pg state (distinct from down+peering) (pr#12289, Sage Weil)
  • core: osd/PGLog::proc_replica_log,merge_log: fix bound for last_update (issue#18127, pr#12340, Samuel Just)
  • core: osd/ReplicatedPG: do_update_log_missing: take the pg lock in the callback (issue#17789, pr#11754, Samuel Just)
  • core: osd/ReplicatedPG::record_write_error: don’t leak orig_reply on cancel (issue#18180, pr#12450, Samuel Just)
  • core: os/filestore: avoid to get the wrong hardlink number. (pr#11841, huangjun)
  • core: os/filestore/chain_xattr.h:uses ENODATA, so include compat.h (pr#12279, Willem Jan Withagen)
  • core: os/filestore: Fix erroneous WARNING: max attr too small (issue#17420, pr#11246, Brad Hubbard)
  • core: os/FileStore: fix fiemap issue in xfs when #extents > 1364 (pr#11554, Ning Yao)
  • core: os/filestore: fix journal logger (pr#12099, Wei Jin)
  • core: os/filestore: fix potential result code overwriting (pr#11491, xie xingguo)
  • core: os/filestore/HashIndex: fix list_by_hash_* termination on reaching end (issue#17859, pr#11898, Sage Weil)
  • core: os/ObjectStore: properly clear object map when replaying OP_REMOVE (issue#17177, pr#11388, Yan, Zheng)
  • core,performance: msg/async: ibverbs/rdma support (pr#11531, Haomai Wang, Zhi Wang)
  • core,performance: osd/OSDMap.cc: remove unneeded use of count (pr#11221, Michal Jarzabek)
  • core,performance: osd/PrimaryLogPG: don’t truncate if we don’t have to for WRITEFULL (pr#12534, Samuel Just)
  • core,performance: os/fs/FS: optimize aio::pwritev which make caller provide length. (pr#9062, Jianpeng Ma)
  • core,pybind,common: python-rados: implement new aio_execute (pr#12140, Iain Buclaw)
  • core,rbd,bluestore,rgw,performance,cephfs: fast denc encoding (pr#11027, Sage Weil)
  • core: remove spurious executable permissions on source code files (pr#1061, Samuel Just)
  • core: ReplicatedPG::failed_push: release read lock on failure (issue#17857, pr#11914, Kefu Chai)
  • core: rocksdb: update to latest, and make it the default for the mons (pr#11354, Sage Weil)
  • core: set dumpable flag after setuid (issue#17650, pr#11582, Patrick Donnelly)
  • core: systemd/ceph-disk: reduce ceph-disk flock contention (issue#18049, issue#13160, pr#12200, David Disseldorp)
  • core: tchaikov (issue#17713, pr#11382, Haomai Wang)
  • core,tests: ceph_test_rados_api_tier: dump hitset that we fail to decode (issue#17945, pr#12057, Sage Weil)
  • core,tests: common osd: Improve scrub analysis, list-inconsistent-obj output and osd-scrub-repair test (issue#18114, pr#9613, Kefu Chai, David Zafman)
  • core,tests: test,cmake: turn unit.h into unit.cc to speed up compilation (pr#12194, Kefu Chai)
  • core,tests: test/rados/list.cc: Memory leak in ceph_test_rados_api_list (issue#18250, pr#12479, Brad Hubbard)
  • core,tests: workunits/ceph-helpers.sh: Fixes for FreeBSD (pr#12085, Willem Jan Withagen)
  • core,tools: Added append functionality to rados tool. (pr#11036, Tomy Cheru)
  • core,tools: Tested-by: Huawen Ren <ren.huanwen@zte.com.cn> (issue#17400, pr#11276, Kefu Chai)
  • core,tools: vstart: decrease pool size if <3 OSDs (pr#11528, John Spray)
  • crush: make counting of choose_tries consistent (issue#17229, pr#10993, Vicente Cheng)
  • crush: remove the crush_lock (pr#11830, Adam C. Emerson)
  • crush: Silence coverity warnings for test/crush/crush.cc (pr#12436, Brad Hubbard)
  • doc: Add doc about osd scrub {during recovery|chunk {min|max}| sleep} (pr#12176, Paweł Sadowski)
  • doc: Add docs about looking up Monitors through DNS (issue#14527, pr#10852, Wido den Hollander)
  • doc: add docs for raw compression (pr#12244, Casey Bodley)
  • doc: Add documentation about mon_allow_pool_delete before pool remove (pr#11943, Wido den Hollander)
  • doc: add infernalis EOL date (pr#11925, Ken Dreyer)
  • doc: adding changelog for v10.2.4 (pr#12346, Abhishek Lekshmanan)
  • doc: Add MON docs about pool flags and pool removal config settings (pr#10853, Wido den Hollander)
  • doc: add python-rgw doc (pr#11859, Kefu Chai)
  • doc: change the osd_max_backfills default to 1 (issue#17701, pr#11658, huangjun)
  • doc: clarify file deletion from OSD restricted pool behaviour (issue#17937, pr#12054, David Disseldorp)
  • doc: clarify mds deactivate purpose (pr#11957, Patrick Donnelly)
  • doc: common/Throttle: fix typo for BackoffThrottle (pr#12129, Wei Jin)
  • doc: correcting the object name (pr#12354, Uday Mullangi)
  • doc: Correcting the sample python tempurl generation script. (issue#15258, pr#8712, Diwakar Goel)
  • doc: Coverity and SCA fixes (pr#7784, Danny Al-Gaaf)
  • doc: doc/dev/osd_internals: add pgpool.rst (pr#12500, Brad Hubbard)
  • doc: doc/dev/perf: a few notes on perf (pr#12168, Sage Weil)
  • doc: doc/dev/perf: fix dittography (pr#12317, xie xingguo)
  • doc: doc/man: avoid file builtin to solve build error (pr#11984, Patrick Donnelly)
  • doc: doc/rados/configuration/ms-ref.rst: document a few async msgr options (pr#12126, Piotr Dałek)
  • doc: doc/rados/configuration/osd-config-ref.rst: document the fast mark down (pr#12124, Piotr Dałek)
  • doc: doc/release-notes: kraken release notes (draft) (pr#12338, Sage Weil)
  • doc: doc/releases: add links to kraken and v10.2.4 (pr#12409, Kefu Chai)
  • doc: doc/start/hardware-recommentdations: cosmetic (pr#10585, Zhao Junwang)
  • doc: Documentation syntax cleanup (pr#11784, John Spray)
  • doc: document osd tell bench (issue#5431, pr#16, Sage Weil)
  • doc: drop –journal-check from ceph-mds man page (issue#17747, pr#11912, Nathan Cutler)
  • doc: explain rgw_fcgi_socket_backlog in rgw/config-ref.rst (pr#12548, liuchang0812)
  • doc: final additions to 11.1.0-rc release notes (pr#12448, Abhishek Lekshmanan)
  • doc: Fix broken link for caps (issue#17587, pr#11546, Uday Mullangi)
  • doc: fix broken links (issue#17587, pr#11518, Uday Mullangi)
  • doc: fix dead link “Hardware Recommendations” (pr#11379, Leo Zhang)
  • doc: fix dead link of “os-recommendations” in troubleshooting-osd (pr#11454, Leo Zhang)
  • doc: Fixed mapping error in legacy mds command (pr#11668, Malte Fiala)
  • doc: Fix for worker arguments to cephfs-data-scan tool (pr#12360, Wido den Hollander)
  • doc: fix grammar/spelling in RGW sections (pr#12329, Ken Dreyer)
  • doc: Fixing the broken hyperlinks by pointing to correct documentation. (pr#11617, Uday Mullangi)
  • doc: fix librados example programs (pr#11302, Alexey Sheplyakov)
  • doc: fix mgr literal block rST syntax (pr#11652, Ken Dreyer)
  • doc: fix start development cluster operation in index.rst (pr#11233, Leo Zhang)
  • doc: fix the script for rebuild monitor db (pr#11962, Kefu Chai)
  • doc: fix typos (pr#8751, Li Peng)
  • doc: Flag deprecated mds commands and omit deprecated mon commands in help output (pr#11434, Patrick Donnelly)
  • doc: mailmap: change personal info (pr#12310, Wei Jin)
  • doc: mailmap updates sept (pr#10955, Yann Dupont)
  • doc: mds: fixup “mds bal mode” Description (pr#12127, huanwen ren)
  • doc: mention corresponding libvirt section in nova.conf (pr#12584, Marc Koderer)
  • doc: Modify documentation for mon_osd_down_out_interval (pr#12408, Brad Hubbard)
  • doc: network-protocol typos (pr#9837, Zhao Junwang)
  • doc: openstack glance mitaka uses show_multiple_locations (pr#12020, Sébastien Han)
  • doc: README.FreeBSD: update to match the bimonthly FreeBSD status report (pr#11442, Willem Jan Withagen)
  • doc: README: hint at where to look to diagnose test failures (pr#11903, Dan Mick)
  • doc: reformat SubmittingPatches with more rst syntax (pr#11570, Kefu Chai)
  • doc: release notes for 10.2.4 (pr#12053, Abhishek Lekshmanan)
  • doc: release notes for 10.2.5 (issue#18207, pr#12410, Loic Dachary)
  • doc: release notes for 11.0.2 (pr#11369, Abhishek Lekshmanan)
  • doc: Remove duplicate command for Ubuntu (pr#12186, chrone)
  • doc: reviewed-by: John Wilkins <jowilkin@redhat.com> (issue#17526, pr#11352, Loic Dachary)
  • doc: reviewed-by: John Wilkins <jowilkin@redhat.com> (issue#17665, pr#11602, Jason Dillaman)
  • doc: rgw: fix a typo in S3 java api example (pr#11762, Weibing Zhang)
  • doc: rm “type=rpm-md” from yum repositories (pr#10248, Ken Dreyer)
  • doc: Small styling fix to mirror documentation (pr#9714, Wido den Hollander)
  • doc: src/doc: fix class names in exports.txt (pr#12000, John Spray)
  • doc: standardize EPEL instructions (pr#11653, Ken Dreyer)
  • doc: update cinder key permissions for mitaka (pr#12211, Sébastien Han)
  • doc: Update crush-map.rst, fix a typo mistake (pr#11785, whu_liuchang)
  • doc: Update filestore xattr config documentation. (pr#11826, Bartłomiej Święcki)
  • doc: Update install-ceph-gateway.rst (pr#11432, Hans van den Bogert)
  • doc: Update keystone doc about v3 options (pr#11392, Proskurin Kirill)
  • doc: Update layout.rst, move commands to CODE block (pr#11987, liuchang0812)
  • doc: we can now run multiple MDS, so qualify warning (issue#18040, pr#12184, Nathan Cutler)
  • fs: add snapshot tests to mds thrashing (pr#1073, Yan, Zheng)
  • fs: enable ceph-fuse permission checking for all pjd suites (pr#1187, Greg Farnum)
  • fs: fix two frag_enable fragments (issue#6143, pr#656, Sage Weil)
  • fs: fix up dd testing again (issue#10861, pr#373, Greg Farnum)
  • fs: fuse_default_permissions = 0 for kernel build test (pr#1109, Patrick Donnelly)
  • fs: Mantle: A Programmable Metadata Load Balancer (pr#10887, Michael Sevilla)
  • fs: unify common parts of sub-suites (issue#1737, pr#1282, Patrick Donnelly)
  • librados: Add rados_aio_exec to the C API (pr#11709, Iain Buclaw)
  • librados: add timeout to watch/notify (pr#11378, Ryne Li)
  • librados: do not request osd ack if no completed completion is set (pr#11204, Sage Weil)
  • librados: For C-API, expose LIBRADOS_OPERATION_FULL_FORCE flag (pr#9172, Jianpeng Ma)
  • librados: improvements async IO in librados and libradosstriper (pr#10049, Sebastien Ponce)
  • librados: Memory leaks in object_list_begin and object_list_end (issue#18252, pr#12482, Brad Hubbard)
  • librados: postpone cct deletion (pr#11659, Kefu Chai)
  • librados: remove new setxattr overload to avoid breaking the C++ ABI (issue#18058, pr#12206, Josh Durgin)
  • librados: remove unused bufferlist from rados_write_op_rmxattr (pr#12030, Piotr Dałek)
  • librbd: add support for snapshot namespaces (pr#11160, Victor Denisov)
  • librbd: API changes to support separate data pool (pr#11353, Jason Dillaman)
  • librbd: batch object map updates during trim (issue#17356, pr#11510, Venky Shankar)
  • librbd: bug fixes for optional data pool support (pr#11960, Venky Shankar)
  • librbd: cannot access non-primary image when mirroring force disabled (issue#16740, issue#17588, pr#11568, Jason Dillaman)
  • librbd: cls_rbd updates for separate data pool (issue#17422, pr#11327, Jason Dillaman)
  • librbd: default features should be negotiated with the OSD (issue#17010, pr#11808, Mykola Golub)
  • librbd: diffs to clone’s first snapshot should include parent diffs (issue#18068, pr#12218, Jason Dillaman)
  • librbd: do not create empty object map object on image creation (issue#17752, pr#11704, Jason Dillaman)
  • librbd: enabling/disabling rbd feature should report missing dependency (issue#16985, pr#12238, Gaurav Kumar Garg)
  • librbd: ensure consistency groups will gracefully fail on older OSDs (pr#11623, Jason Dillaman)
  • librbd: exclusive lock incorrectly initialized when switching to head revision (issue#17618, pr#11559, Jason Dillaman)
  • librbd: fix rollback if failed to disable mirroring for image (pr#11260, runsisi)
  • librbd: ignore error when object map is already locked by current client (issue#16179, pr#12484, runsisi)
  • librbd: ignore notify errors on missing image header (issue#17549, pr#11395, Jason Dillaman)
  • librbd: keep rbd_default_features setting as bitmask (issue#18247, pr#12486, Jason Dillaman)
  • librbd: mark request as finished after failed refresh (issue#17973, pr#12160, Venky Shankar)
  • librbd: minor cleanup (pr#12078, Dongsheng Yang)
  • librbd: new API method to force break a peer’s exclusive lock (issue#18429, issue#16988, issue#18327, pr#12889, Jason Dillaman)
  • librbd: parse rbd_default_features config option as a string (pr#11175, Alyona Kiseleva, Alexey Sheplyakov)
  • librbd: possible assert failure creating image when using data pool (pr#11641, Venky Shankar)
  • librbd: proper check for get_data_pool compatibility (issue#17791, pr#11755, Mykola Golub)
  • librbd: properly order concurrent updates to the object map (issue#16176, pr#12420, Jason Dillaman)
  • librbd: release lock after demote (issue#17880, pr#11940, Mykola Golub)
  • librbd: remove consistency group rbd cli and API support (issue#18231, pr#12475, Jason Dillaman)
  • librbd: remove image header lock assertions (issue#18244, pr#12472, Jason Dillaman)
  • librbd: remove unused local variable (pr#12388, Yunchuan Wen)
  • librbd: silence the unused variable warning (pr#11678, Kefu Chai)
  • librbd: snap_get_limit compatibility check (pr#11766, Mykola Golub)
  • librbd: update internals to use optional separate data pool (pr#11356, Jason Dillaman)
  • librbd: use proper snapshot when computing diff parent overlap (issue#18200, pr#12396, Xiaoxi Chen)
  • log: optimize header file dependency (pr#9768, Xiaowei Chen)
  • mds: add debug assertion for issue #17636 (pr#11576, Yan, Zheng)
  • mds: add tests for mantle (programmable balancer) (pr#1145, Michael Sevilla)
  • mds: check if down mds is known (issue#17670, pr#11611, Patrick Donnelly)
  • mds: don’t access mdsmap from log submit thread (issue#18047, pr#12208, Yan, Zheng)
  • mds: don’t maintain bloom filters in standby replay (issue#16924, pr#12133, John Spray)
  • mds: enable rmxattr on pool_namespace attrs (issue#17797, pr#11783, John Spray)
  • mds: fix dropping events in standby replay (issue#17954, pr#12077, John Spray)
  • mds: fix EMetaBlob::fullbit xattr dump (pr#11536, Sage Weil)
  • mds: fix false “failing to respond to cache pressure” warning (pr#11373, Yan, Zheng)
  • mds: force client flush snap data before truncating objects (issue#17193, pr#11994, Yan, Zheng)
  • mds: handle bad standby_for_fscids in fsmap (issue#17466, pr#11281, John Spray)
  • mds: ignore ‘session evict’ when mds is replaying log (issue#17801, pr#11813, Yan, Zheng)
  • mds: include legacy client fsid in FSMap print (pr#11283, John Spray)
  • mds: more deterministic timing on frag split/join (issue#17853, pr#12022, John Spray)
  • mds: more unique_pointer changes (pr#11635, Patrick Donnelly)
  • mds: properly commit new dirfrag before splitting it (issue#17990, pr#12125, Yan, Zheng)
  • mds: release pool allocator memory after exceeding size limit (issue#18225, pr#12443, John Spray)
  • mds: remove duplicated log in handle_client_readdir (pr#11806, Zhi Zhang)
  • mds: remove “–journal-check” help text (issue#17747, pr#11739, Nathan Cutler)
  • mds: remove unused EFragment::OP_ONESHOT (pr#11887, John Spray)
  • mds: repair backtraces during scrub (issue#17639, pr#11578, John Spray)
  • mds: require MAY_SET_POOL to set pool_ns (issue#17798, pr#11789, John Spray)
  • mds: respawn using /proc/self/exe (issue#17531, pr#11362, Patrick Donnelly)
  • mds: revert “mds/Mutation: remove redundant _dump method” (issue#17906, pr#11985, Patrick Donnelly)
  • mds: use parse_filesystem in parse_role to handle exceptions and reuse parsing code (issue#17518, pr#11357, Patrick Donnelly)
  • mds: use projected path construction for access (issue#17858, pr#12063, Patrick Donnelly)
  • mds: use unique_ptr to simplify resource mgmt (pr#11543, Patrick Donnelly)
  • mgr: doc/mgr: fix mgr how long to wait to failover (pr#11550, huanwen ren)
  • mgr: init() return when connection daemons failed && add some err info (pr#11424, huanwen ren)
  • mgr: misc minor changes (issue#17455, pr#11386, xie xingguo)
  • mgr: PyModules.cc: remove duplicated if condition for fs_map (pr#11639, Weibing Zhang)
  • mgr: remove unnecessary C_StdFunction (pr#11883, John Spray)
  • mon: add missing space in warning message (pr#11361, Patrick Donnelly)
  • mon: clean legacy code (pr#9643, Wei Jin)
  • mon: clear duplicated logic in MDSMonitor (pr#11209, Zhi Zhang)
  • mon: Do not allow pools to be deleted by default (pr#11665, Wido den Hollander)
  • mon: fix “OSDs marked OUT wrongly after monitor failover” (issue#17719, pr#11664, Dong Wu)
  • mon: Forbidden copy and assignment function in monoprequest (pr#9513, song baisen)
  • mon: have mon-specific features & rework internal monmap structures (pr#10907, Joao Eduardo Luis)
  • mon: if crushtool config is empty use internal crush test (pr#11765, Bassam Tabbara)
  • mon: make MDSMonitor tolerant of slow mon elections (issue#17308, pr#11167, John Spray)
  • mon: MonmapMonitor: return success when monitor will be removed (issue#17725, pr#11747, Joao Eduardo Luis)
  • mon: move case CEPH_MSG_POOLOP to OSDs group (pr#11848, Javeme)
  • mon: osdmap’s epoch should be more than 0 (pr#9859, Na Xie)
  • mon: OSDMonitor: fix the check error of pg creating (issue#17169, pr#10916, DesmondS)
  • mon: paxos add the timeout function when peon recovery (pr#10359, song baisen)
  • mon: preserve osd weight when marking osd out, then in (pr#11293, Sage Weil)
  • mon: prevent post-jewel OSDs from booting if require_jewel_osds is not set (pr#11498, Sage Weil)
  • mon: remove ceph-create-keys from mon startup (issue#16036, pr#9345, Owen Synge)
  • mon: remove the redudant jugement in LogMonitor tick function (pr#10474, song baisen)
  • mon: remove utime_t param in _dump (pr#12029, Patrick Donnelly)
  • mon: send updated monmap to its subscribers (issue#17558, pr#11456, Kefu Chai)
  • mon: small change on the HealthMonitor start_epoch function (pr#10296, songbaisen)
  • mon: support for building without leveldb + mon mkfs bug fix (pr#11800, Bassam Tabbara)
  • osd: add a pg _fastinfo attribute to reduce per-io metadata updates (pr#11213, Sage Weil)
  • osd: Add config option to disable new scrubs during recovery (issue#17866, pr#11874, Wido den Hollander)
  • osd: a few fast dispatch optimizations (pr#12052, Sage Weil)
  • osd: cleanup C_CompleteSplits::finish() (pr#12094, Jie Wang)
  • osd: clean up PeeringWQ::_dequeue(), remove unnecessary variable (pr#12117, Jie Wang)
  • osd: clean up process_peering_events (pr#12009, Jie Wang)
  • osdc/Objecter: resend pg commands on interval change (issue#18358, pr#12910, Samuel Just)
  • osd: condition OSDMap encoding on features (pr#12166, Sage Weil)
  • osd: default osd_scrub_during_recovery=false (pr#12402, Sage Weil)
  • osd: do not open pgs when the pg is not in pg_map (issue#17806, pr#11803, Xinze Chi)
  • osd: drop stray debug message (pr#11296, Sage Weil)
  • osd: EC Overwrites (issue#17668, pr#11701, Tomy Cheru, Samuel Just)
  • osd: enhance logging for osd network error (pr#12458, liuchang0812)
  • osd: fix CEPH_OSD_FLAG_RWORDERED (pr#12603, Sage Weil)
  • osd: fix duplicated id of incompat feature “fastinfo” (pr#11588, xie xingguo)
  • osd: fix ec scrub errors (issue#17999, pr#12306, Samuel Just)
  • osd: fixes to make rbd on ec work (pr#12305, Samuel Just)
  • osd: Fix map gaps again (bug 15943) (issue#15943, pr#12571, Samuel Just)
  • osd: fix memory leak from EC write workload (issue#18093, pr#12256, Sage Weil)
  • osd: fix rados write op hang (pr#11143, Yunchuan Wen)
  • osd: Fix read error propogation in ECBackend (issue#17966, pr#12142, Samuel Just)
  • osd: fix scrub boundary to not include a SnapSet (pr#11255, Samuel Just)
  • osd: fix signed/unsigned comparison warning (pr#12400, Greg Farnum)
  • osd: fix typo in PG::clear_primary_state (pr#11513, Brad Hubbard)
  • osd: Fix typos in PG::find_best_info (pr#11515, Brad Hubbard)
  • osd: fix typos in “struct OSDOp” comments (pr#12350, Chanyoung Park)
  • osd: Flush Journal on shutdown (pr#11249, Wido den Hollander)
  • osd: force watch PING to be write ordered (issue#18310, pr#12590, Samuel Just)
  • osd: handle EC recovery read errors (issue#13937, pr#9304, David Zafman)
  • osd: heartbeat peers need to be updated when a new OSD added into an existed cluster (issue#18004, pr#12069, Pan Liu)
  • osd: Increase priority for inactive PGs backfill (pr#12389, Bartłomiej Święcki)
  • osd: kill PG_STATE_SPLITTING (pr#11824, xie xingguo)
  • osd: mark queued flag for op (pr#12352, Yunchuan Wen)
  • osd: osdc: pass a string reference type to “osdmap->lookup_pg_pool_name” (pr#12219, Leo Zhang)
  • osd: osd/OSDMonitor: accept ‘osd pool set ...’ value as string (pr#911, David Zafman)
  • osd: PGLog: initialize writeout_from in PGLog constructor (issue#12973, pr#558, Sage Weil)
  • osd/PrimaryLogPG: don’t update digests for objects with mismatched names (issue#18409, pr#12803, Samuel Just)
  • osd/PrimaryLogPG::failed_push: update missing as well (issue#18165, pr#12911, Samuel Just)
  • osd: print log when osd want to kill self (pr#9288, Haomai Wang)
  • osd: Remove extra call to reg_next_scrub() during splits (issue#16474, pr#11206, David Zafman)
  • osd: remove redudant call of heartbeat_check (pr#12130, Pan Liu)
  • osd: remove the lock heartbeat_update_lock, and change heatbeat_need_… (pr#12461, Pan Liu)
  • osd: remove the redundant clear method in consume_map function (pr#10553, song baisen)
  • osd: Remove unused ‘_lsb_release_’ declarations (pr#11364, Brad Hubbard)
  • osd: replace hb_out and hb_in with a single hb_peers (issue#18057, pr#12178, Pan Liu)
  • osd: ReplicatedPG: don’t bless C_OSD_SendMessageOnConn (issue#13304, pr#669, Jason Dillaman)
  • osd: set server-side limits on omap get operations (pr#12059, Sage Weil)
  • osd: When deep-scrub errors present upgrade regular scrubs (pr#12268, David Zafman)
  • performance,bluestore: kv/MemDB: making memdb code adapt to generic maps (pr#11436, Ramesh Chander)
  • performance,bluestore: os/bluestore: allow default to buffered write (pr#11301, Sage Weil)
  • performance,bluestore: os/bluestore: bluestore_cache_meta_ratio = .5 (pr#11919, Sage Weil)
  • performance,bluestore: os/bluestore: reduce Onode in-memory footprint (pr#12568, Igor Fedotov)
  • performance,bluestore: os/bluestore: refactor bluestore_sync_submit_transaction (pr#11537, Sage Weil)
  • performance,bluestore: os/bluestore: speed up omap-key generation for same onode(the read paths) (pr#11894, xie xingguo)
  • performance,bluestore: os/bluestore: speedup the performance of multi-replication flow by switc… (pr#11844, Pan Liu)
  • performance,cephfs: Fix long stalls when calling ceph_fsync() (issue#17563, pr#11710, Jeff Layton)
  • performance,cleanup: Context: std::move the callback param in FunctionContext’s ctor (pr#11892, Kefu Chai)
  • performance,cleanup: osd/PG.h: move shared ptr instead of copying it (pr#11154, Michal Jarzabek)
  • performance,common: common/config_opts.h: Optimized RocksDB WAL settings. (pr#11530, Mark Nelson)
  • performance,common: osd/OSDMap: improve the performance of pg_to_acting_osds (pr#12190, Pan Liu)
  • performance: msg/async: set ms_async_send_inline to false to improve small randread iops (pr#11521, Mark Nelson)
  • performance,tools: rados: add hints to rados bench (pr#12169, Sage Weil)
  • pybind: avoid “exception ‘int’ object is not iterable” (pr#11532, Javeme)
  • pybind,cephfs: ceph_volume_client: fix recovery from partial auth update (issue#17216, pr#11304, Ramana Raja)
  • pybind,cephfs: ceph_volume_client: set an existing auth ID’s default mon caps (issue#17800, pr#11917, Ramana Raja)
  • pybind: ceph-rest-api: understand the new style entity_addr_t representation (issue#17742, pr#11686, Kefu Chai)
  • pybind: clean up mgr stuff for flake8 (pr#11314, John Spray)
  • pybind: fix build failure of rgwfile binding (pr#11825, Kefu Chai)
  • pybind: pybind/rados: add missing “length” requires for aio_execute() (pr#12439, Kefu Chai)
  • pybind: pybind/rados: Add @requires for all aio methods (pr#12327, Iain Buclaw)
  • qa: fixed distros links (pr#12773, Yuri Weinstein)
  • qa: Fixed link to centos distro (pr#12768, Yuri Weinstein)
  • qa/suites: switch from centos 7.2 to 7.x (pr#12632, Sage Weil)
  • qa/tasks/peer: update task based on current peering behavior (issue#18330, pr#12614, Sage Weil)
  • qa/tasks/workunit: clear clone dir before retrying checkout (issue#18336, pr#12630, Sage Weil)
  • qa: update Ubuntu image url after ceph.com refactor (issue#18542, pr#12960, Jason Dillaman)
  • qa/workunits/rbd/test_lock_fence.sh fails (issue#18388, pr#12752, Nathan Cutler)
  • rbd: added rbd-nbd fsx test case (pr#1049, Jason Dillaman)
  • rbd: add fsx journal replay test case (pr#821, Jason Dillaman)
  • rbd: add singleton to assert no rbdmap regression (issue#14984, pr#902, Nathan Cutler)
  • rbd: add some missing workunits (pr#870, Josh Durgin)
  • rbd: add support for separate image data pool (issue#17424, pr#11355, Jason Dillaman)
  • rbd: expose rbd unmap options (issue#17554, pr#11370, Ilya Dryomov)
  • rbd: fix json formatting for image and journal status output (issue#18261, pr#12525, Mykola Golub)
  • rbd: fix parsing of group and image specific pools (pr#11632, Victor Denisov)
  • rbd: journal: do not prematurely flag object recorder as closed (issue#17590, pr#11520, Jason Dillaman)
  • rbd: krbd: kernel client expects ip[:port], not an entity_addr_t (pr#11902, Ilya Dryomov)
  • rbd: –max_part and –nbds_max options for nbd map (issue#18186, pr#12379, Pan Liu)
  • rbd: move nbd test workload to separate client host from OSDs (pr#1170, Jason Dillaman)
  • rbd: provision volumes to format as XFS (issue#6693, pr#1028, Loic Dachary)
  • rbd: rbd-mirror: fix sparse read optimization in image sync (issue#18146, pr#12368, Mykola Golub)
  • rbd: rbd-mirror HA: move librbd::image_watcher::Notifier to librbd::object_watcher (issue#17017, pr#11290, Mykola Golub)
  • rbd: rbd-mirror: recovering after split-brain (issue#16991, issue#18051, pr#12212, Mykola Golub)
  • rbd: rbd-mirror: snap protect of non-layered image results in split-brain (issue#16962, pr#11744, Mykola Golub)
  • rbd: rbd-nbd: disallow mapping images >2TB in size (issue#17219, pr#11741, Mykola Golub)
  • rbd: rbd-nbd: invalid error code for “failed to read nbd request” messages (issue#18242, pr#12483, Mykola Golub)
  • rbd: rbd-nbd: restart parent process logger after forking (issue#18070, pr#12222, Jason Dillaman)
  • rbd: rbd-nbd: support disabling auto-exclusive lock transition logic (issue#17488, pr#11438, Mykola Golub)
  • rbd: rbd-nbd: support partition for rbd-nbd mapped raw block device (issue#18115, pr#12259, Pan Liu)
  • rbd: tests with rbd_skip_partial_discard option enabled (pr#1077, Mykola Golub)
  • rbd,tools: rbd : make option –stripe-unit w/ B/K/M work (pr#12407, Jianpeng Ma)
  • rbd: updated tests to use new rbd default feature set (pr#842, Jason Dillaman)
  • rbd: use snap_remove implementation from internal (pr#12035, Victor Denisov)
  • rgw: add default zone name (issue#7009, pr#954, Orit Wasserman)
  • rgw: add documentation for upgrading with rgw_region_root_pool (pr#12138, Orit Wasserman)
  • rgw: add option to log custom HTTP headers (rgw_log_http_headers) (pr#7639, Matt Benjamin)
  • rgw: add recovery procedure for upgrade to older version of jewel (issue#17820, pr#11827, Orit Wasserman)
  • rgw: add rgw_compression_type=random for teuthology testing (pr#11901, Casey Bodley)
  • rgw: add sleep to let the sync agent init (pr#1136, Orit Wasserman)
  • rgw: add suport for creating S3 type subuser of admin rest api (issue#16682, pr#10325, snakeAngel2015)
  • rgw: add support for the prefix parameter in account listing of Swift API (issue#17931, pr#12047, Radoslaw Zarzynski)
  • rgw: allow fastcgi idle timeout to be adjusted (pr#230, Sage Weil)
  • rgw: also approve, passed teuthology (many false positives in several classes) (issue#17985, pr#12224, Yehuda Sadeh, Sage Weil)
  • rgw: Anonymous users shouldn’t be able to access requester pays buckets. (issue#17175, pr#11719, Zhang Shaowen)
  • rgw: aws4: add presigned url bugfix in runtime (issue#16463, pr#10160, Javier M. Mellid)
  • rgw: bucket resharding (issue#17550, pr#11230, Yehuda Sadeh)
  • rgw:bugfix for deleting objects name beginning and ending with underscores of one bucket using POST method of AWS’s js sdk. (issue#17888, pr#11982, root)
  • rgw: Class member cookie is not initialized correctly in some coroutine’s constructor. (pr#11673, Zhang Shaowen)
  • rgw: clean up RGWShardedOmapCRManager on early return (issue#17571, pr#11505, Casey Bodley)
  • rgw: clear data_sync_cr if RGWDataSyncControlCR fails (issue#17569, pr#11506, Casey Bodley)
  • rgw: compilation of the ASIO front-end is enabled by default. (pr#12073, Radoslaw Zarzynski)
  • rgw: compression uses optional::emplace instead of in-place factories (pr#12021, Radoslaw Zarzynski)
  • rgw: conform to the standard usage of string::find (pr#10086, Yan Jun)
  • rgw: data_extra_pool is unique per zone (issue#17025, pr#1119, Orit Wasserman)
  • rgw: delete entries_index in RGWFetchAllMetaCR (issue#17812, pr#11816, Casey Bodley)
  • rgw: do not abort when accept a CORS request with short origin (pr#12381, LiuYang)
  • rgw: do not enable both tcp and uds for fastcgi (issue#5797, pr#479, Andrew Schoen)
  • rgw: don’t error out on empty owner when setting acls (issue#6892, pr#877, Loic Dachary, Nathan Cutler)
  • rgw: Don’t loop forever when reading data from 0 sized segment. (issue#17692, pr#11567, Marcus Watts)
  • rgw: dont set CURLOPT_UPLOAD for GET requests (issue#17822, pr#12105, Casey Bodley)
  • rgw: don’t store empty chains in gc (issue#17897, pr#11969, Yehuda Sadeh)
  • rgw: do quota tests on ubuntu (issue#6382, pr#635, Sage Weil)
  • rgw: dump objects in RGWBucket::check_object_index() (issue#14589, pr#11324, Yehuda Sadeh)
  • rgw: dump remaining coroutines when cr deadlock is detected (pr#11580, Casey Bodley)
  • rgw: extract host name from host:port string (issue#17788, pr#11751, Yehuda Sadeh)
  • rgw: Fixed problem with PUT with x-amz-copy-source when source object is compressed. (pr#12253, Adam Kupczyk)
  • rgw: fixes for virtual hosting of buckets (issue#17440, issue#15975, issue#17136, pr#11280, Casey Bodley, Robin H. Johnson)
  • rgw: fix etag in multipart complete (issue#17794, issue#6830, issue#16129, issue#17872, pr#1269, Casey Bodley, Orit Wasserman)
  • rgw: fix for bucket delete racing with mdlog sync (issue#17698, pr#11648, Casey Bodley)
  • rgw: fix for passing temporary in InitBucketSyncStatus (issue#17661, pr#11594, Casey Bodley)
  • rgw: fix for unsafe change of rgw_zonegroup (issue#17962, pr#12075, Casey Bodley)
  • rgw: fix indentation for cache_pools (issue#8295, pr#251, Sage Weil)
  • rgw: fix missing master zone for a single zone zonegroup (issue#17364, pr#11965, Orit Wasserman)
  • rgw: fix osd crashes when execute “radosgw-admin bi list –max-entries=1” command (issue#17745, pr#11697, weiqiaomiao)
  • rgw: fix put_acls for objects starting and ending with underscore (issue#17625, pr#11566, Orit Wasserman)
  • rgw: fix RGWSimpleRadosLockCR set_description() (pr#11961, Tianshan Qu)
  • rgw: fix the field ‘total_time’ of log entry in log show opt (issue#17598, pr#11425, weiqiaomiao)
  • rgw: fix uncompressed object size deduction in RGWRados::copy_obj_data. (issue#17803, pr#11794, Radoslaw Zarzynski)
  • rgw: frontend subsystem rework (pr#10767, Radoslaw Zarzynski, Casey Bodley, Matt Benjamin)
  • rgw: ftw (issue#17888, pr#12262, Casey Bodley)
  • rgw: get_system_obj does not use result of get_system_obj_state (issue#17580, pr#11444, Casey Bodley)
  • rgw: get_zonegroup() uses “default” zonegroup if empty (issue#17372, pr#11207, Yehuda Sadeh)
  • rgw: handle empty POST condition (issue#17635, pr#11581, Yehuda Sadeh)
  • rgw: handle Swift auth errors in a way compatible with new Tempests. (issue#16590, pr#10021, Radoslaw Zarzynski)
  • rgw: json encode/decode index_type, allow modification (issue#17755, pr#11707, Yehuda Sadeh)
  • rgw: loses realm/period/zonegroup/zone data: period overwritten if somewhere in the cluster is still running Hammer (issue#17371, pr#11426, Orit Wasserman)
  • rgw: make RGWLocalAuthApplier::is_admin_of() aware about system users. (issue#18106, pr#12283, Radoslaw Zarzynski)
  • rgw: metadata sync info should be shown at master zone of slave zoneg… (issue#18091, pr#12187, Jing Wenjun)
  • rgw: minor cleanup (pr#10057, Yan Jun)
  • rgw: move compression config into zone placement (pr#12113, Casey Bodley)
  • rgw: move xfs to a seperate directory (pr#969, Orit Wasserman)
  • rgw: multipart upload copy (issue#12790, pr#11269, Yehuda Sadeh, Javier M. Mellid)
  • rgw: need to close_section in lc list op (pr#12232, weiqiaomiao)
  • rgw: policy acl format should be xml (pr#946, Orit Wasserman)
  • rgw: radosgw-admin: more on placement configuration (issue#18078, pr#12242, Casey Bodley)
  • rgw: region conversion respects pre-existing rgw_region_root_pool (issue#17963, pr#12076, Casey Bodley)
  • rgw: remove a redundant judgement when listng objects. (pr#10849, zhangshaowen)
  • rgw: remove circular reference in RGWAsyncRadosRequest (issue#17793, issue#17792, pr#11815, Casey Bodley)
  • rgw: remove suggestion to upgrade libcurl (pr#11630, Casey Bodley)
  • rgw: remove unused variable “ostr” in rgw_b64.h and fix the comment (pr#11329, Weibing Zhang)
  • rgw: Replacing ‘+’ with “%20” in canonical uri for s3 v4 auth. (issue#17076, pr#10919, Pritha Srivastava)
  • rgw: revert unintentional change to civetweb (pr#12004, Bassam Tabbara)
  • rgw: rgw-admin: new commands to control placement (issue#18078, pr#12230, Yehuda Sadeh)
  • rgw: RGWBucketSyncStatusManager uses existing async_rados (issue#18083, pr#12229, Casey Bodley)
  • rgw: rgw_file: apply missed base64 try-catch (issue#17663, pr#11671, Matt Benjamin)
  • rgw: RGWHTTPArgs::get_str() - return argument string that was set. (pr#10672, Marcus Watts)
  • rgw: rgw multisite: fix the increamtal bucket sync init (issue#17624, pr#11553, Zengran Zhang)
  • rgw: rgw multisite: use a rados lock to coordinate data log trimming (pr#10546, Casey Bodley)
  • rgw: RGW Python bindings - use explicit array (pr#11831, Daniel Gryniewicz)
  • rgw: rgw_rados.cc fix shard_num format for snprintf (pr#11493, Weibing Zhang)
  • rgw: rgw/rgw_file.cc: Add compat.h to allow CLOCK_MONOTONE (pr#12309, Willem Jan Withagen)
  • rgw: RGWSimpleRadosReadCR tolerates empty reads (issue#17568, pr#11504, Casey Bodley)
  • rgw: [RGW] Wip rgw compression (pr#11494, Alyona Kiseleva, Adam Kupczyk, Casey Bodley)
  • rgw: set duration for lifecycle lease (issue#17965, pr#12231, Yehuda Sadeh)
  • rgw: should assign ‘olh_bl” to state.attrset[RGW_ATTR_OLH_ID_TAG] instead of ‘bl’ (pr#10239, weiqiaomiao)
  • rgw: skip empty http args in method parse() to avoid extra effort (pr#11989, Guo Zhandong)
  • rgw: split osd’s in 2 nodes (issue#15612, pr#1019, Vasu Kulkarni)
  • rgw: support for x-robots-tag header (issue#17790, pr#11753, Yehuda Sadeh)
  • rgw: sync modules, metadata search (pr#10731, Yehuda Sadeh)
  • rgw: Update version of civetweb to 1.8 (pr#11343, Marcus Watts)
  • rgw: use civetweb if no frontend was configured (pr#958, Orit Wasserman)
  • rgw: use explicit flag to cancel RGWCoroutinesManager::run() (issue#17465, pr#12452, Casey Bodley)
  • rgw: valgrind fixes for kraken (issue#18414, issue#18407, issue#18412, issue#18300, pr#12949, Casey Bodley)
  • rgw: verified that failed check is in osd-scrub-repair.sh (issue#17850, pr#11881, Matt Benjamin)
  • rgw: we don’t support btrfs any more (pr#1132, Orit Wasserman)
  • rgw: Wip rgwfile pybind (pr#11624, Haomai Wang)
  • tests,bluestore: os/bluestore: add UT for an estimation of Onode in-memory size (pr#12532, Igor Fedotov)
  • tests,bluestore: os/test/store_test: fix legacy bluestore cache settings application (pr#11915, Igor Fedotov)
  • tests: ceph-disk: force debug monc = 0 (issue#17607, pr#11534, Loic Dachary)
  • tests: ceph_objectstore_tool.py: Don’t use btrfs on FreeBSD (pr#10507, Willem Jan Withagen)
  • tests: ceph_test_objectstore: fix Rename test (pr#12261, Sage Weil)
  • tests: check hostname –fqdn sanity before running make check (issue#18134, pr#12297, Nathan Cutler)
  • tests,cleanup,rbd: test/librbd: in test_notify set object-map and fast-diff features by default (pr#11821, Mykola Golub)
  • tests,cleanup: test_bloom_filter.cc: Fix a mismatch for the random_seed parameter (pr#11774, Willem Jan Withagen)
  • tests,cleanup: test/osd/osd-fast-mark-down.sh: remove unnecessary teardown() calls (pr#12101, Kefu Chai)
  • tests,cleanup: test/osd-scrub-repair.sh: use repair() instead of “ceph pg repair” (pr#12036, Kefu Chai)
  • tests,cleanup: test/rados: remove unused bufferlist variable (pr#10221, Yan Jun)
  • tests,common: test: add perf-reset test in test/perf_counters.cc (pr#8948, wangsongbo)
  • tests: disable failing tests (issue#17561, issue#17757, pr#11714, Loic Dachary)
  • tests: disable the echo when running get_timeout_delays() (pr#12180, Kefu Chai)
  • tests: do not use memstore.test_temp_dir in two tests (issue#17743, pr#12281, Loic Dachary)
  • tests: erasure-code: add k=2, m=2 for isa & jerasure (issue#18188, pr#12383, Loic Dachary)
  • tests: facilitate background process debug in ceph-helpers.sh (issue#17830, pr#12183, Loic Dachary)
  • tests: fix ceph-helpers.sh wait_for_clean delays (issue#17830, pr#12095, Loic Dachary)
  • tests: fix osd-scrub-repair.sh (pr#12072, David Zafman)
  • tests: Fix racey test by setting noout flag (tracker 17757) (issue#17757, pr#11715, David Zafman)
  • tests: merge ceph-qa-suite
  • tests: Minor clean-ups (pr#12048, David Zafman)
  • tests: minor make check cleanup (pr#12146, David Zafman)
  • tests: no python3 tests for ceph-disk (issue#17923, pr#12025, Loic Dachary)
  • tests: osd-crush.sh must retry crush dump (issue#17919, pr#12016, Loic Dachary)
  • tests: osd-scrub-repair.sh abort if add_something fails (pr#12172, Loic Dachary)
  • tests: os/memstore: fix a mem leak in MemStore::Collection::create_object() (pr#12201, Kefu Chai)
  • tests: os/memstore, os/filestore: fix store_test’s to satisfy rm_coll behavi… (pr#11558, Igor Fedotov)
  • tests: paxos fixes (issue#11913, pr#457, John Spray)
  • tests: pin flake8 to avoid behavior changes (issue#17898, pr#11971, Loic Dachary)
  • tests: qa: fixed script to schedule rados and other suites with –subset option (pr#12587, Yuri Weinstein)
  • tests: qa/tasks/admin_socket: subst in repo name (pr#12508, Sage Weil)
  • tests: qa/tasks/ceph_deploy: use dev option instead of dev-commit (pr#12514, Vasu Kulkarni)
  • tests: qa/tasks/osd_backfill.py: wait for osd.[12] to start (issue#18303, pr#12577, Sage Weil)
  • tests: qa/workunits/cephtool/test.sh: FreeBSD has no distro. (pr#11702, Willem Jan Withagen)
  • tests: qa/workunits: include extension for nose tests (pr#12572, Sage Weil)
  • tests: qa/workunits/rados/test_envlibrados_for_rocksdb: force librados-dev install (pr#11941, Sage Weil)
  • tests,rbd: qa/workunits/rbd: fix (issue#18271, pr#12511, Sage Weil)
  • tests,rbd: qa/workunits/rbd: removed qemu-iotest case 077 (issue#10773, pr#12366, Jason Dillaman)
  • tests,rbd: qa/workunits/rbd: simplify running nbd test under build env (pr#11781, Mykola Golub)
  • tests,rbd: qa/workunits/rbd: use image id when probing for image presence (issue#18048, pr#12195, Mykola Golub)
  • tests,rbd: qa/workunits/rbd: use more recent qemu-iotests that support Xenial (issue#18149, pr#12371, Jason Dillaman)
  • tests,rbd: rbd-mirror: fix gmock warnings in bootstrap request unit tests (issue#18156, pr#12344, Mykola Golub)
  • tests,rbd: rbd-mirror: improve resiliency of stress test case (issue#17416, pr#11326, Jason Dillaman)
  • tests,rbd: test: new librbd discard after write test case (pr#11645, Jason Dillaman)
  • tests,rbd: test: skip TestLibRBD.DiscardAfterWrite if skip partial discard enabled (issue#17750, pr#11703, Jason Dillaman)
  • tests,rbd: test: TestJournalReplay test cases need to wait for event commit (issue#17566, pr#11480, Jason Dillaman)
  • tests: remove TestPGLog EXPECT_DEATH tests (issue#18030, pr#12361, Loic Dachary)
  • tests: save 9 characters for asok paths (issue#16014, pr#12066, Loic Dachary)
  • tests: sync ceph-erasure-code-corpus for using ‘arch’ not ‘uname -p’ (pr#12024, Kefu Chai)
  • tests: test/ceph_crypto: do not read ceph.conf in global_init() (issue#18128, pr#12318, Kefu Chai)
  • tests: test: ceph-objectstore-tool: should import platform before using it (pr#12038, Kefu Chai)
  • tests: test/ceph_test_msgr: do not use Message::middle for holding transient… (issue#17728, pr#11680, Kefu Chai)
  • tests: test: disable osd-scrub-repair and test-erasure-eio (issue#17830, pr#12058, Loic Dachary, Dan Mick)
  • tests: test: disable osd-scrub-repair and test-erasure-eio (pr#11979, Dan Mick)
  • tests: test: Don’t write to a poolid that this test might not have created (pr#12378, David Zafman)
  • tests: test: enable unittest_dns_resolve (pr#12209, Kefu Chai)
  • tests: test/encoding/readable.sh: fix shell script warning (pr#11527, Willem Jan Withagen)
  • tests: TestErasureCodePluginJerasure must stop the log thread (issue#17561, pr#11721, Loic Dachary)
  • tests: test: fix test-erasure-eio and osd-scrub-repair races (17830) (pr#11926, David Zafman)
  • tests: test/osd-fast-mark-down.sh: wrong assumption on first subtest (pr#12123, Piotr Dałek)
  • tests: test/osd/osd-fast-mark-down.sh: introduce large timeout (issue#17918, pr#12019, Piotr Dałek)
  • tests: test/osd-scrub-repair.sh: Use test case specific object names to help… (pr#11449, David Zafman)
  • tests: test/store_test: fix errors on the whole test suite run caused by the… (pr#11427, Igor Fedotov)
  • tests: test_subman.sh: Don’t use –tmpdir (pr#11384, Willem Jan Withagen)
  • tests: test: test-erasure-eio.sh fix recovery testing and enable it (pr#12170, David Zafman)
  • tests: The default changed to disallow pool delete as of #11665; the tests assume it’s allowed. (pr#11897, Sage Weil)
  • tests: Turn off tests again due to Jenkins failures (pr#12217, David Zafman)
  • tests: unittest_throttle avoid ASSERT_DEATH (issue#18036, pr#12393, Loic Dachary)
  • tests: update rbd/singleton/all/formatted-output.yaml to support ceph-ci (issue#18440, pr#12823, Nathan Cutler)
  • tests: use shorter directories for tests (issue#16014, pr#12046, Loic Dachary)
  • tests: vstart.sh: fix bashism in the script (pr#11889, Mykola Golub)
  • tests: workunits/ceph-helpers.sh: FreeBSD returns a different errorstring. (pr#12005, Willem Jan Withagen)
  • tools: Adding ceph-lazy tool (pr#11055, gcharot)
  • tools: ceph-create-keys should not try forever to do things (issue#17753, issue#12649, issue#16255, pr#11749, Alfredo Deza)
  • tools: ceph_detect_init: add support for Alpine (pr#8316, John Coyle)
  • tools: ceph-disk: fix flake8 errors (issue#17898, pr#11973, Ken Dreyer)
  • tools: ceph-disk: prevent unnecessary tracebacks from subprocess.check_call (issue#16125, pr#12414, Alfredo Deza)
  • tools: ceph-post-file: single command to upload a file to cephdrop (pr#505, Dan Mick, Travis Rhoden)
  • tools: cleanup phase of cephfs-data-scan (pr#12337, Vishal Kanaujia)
  • tools: osdmaptool: additional tests (pr#1196, Sage Weil)
  • tools: osdmaptool: fix divide by zero error (pr#12561, Yunchuan Wen)
  • tools: rados: fix segfaults when run without –pool (issue#17684, pr#11633, David Disseldorp)
  • tools: rados: optionally support reading omap key from file (issue#18123, pr#12286, Jason Dillaman)
  • tools: script/run-coverity: update (pr#12162, Sage Weil)
  • tools: script/sepia_bt.sh: a script to prepare for debugging on teuthology@sepia (pr#12012, Kefu Chai)
  • tools: src/vstart.sh: Only execute btrfs if it is available (pr#11683, Willem Jan Withagen)
  • tools: tools/ceph-monstore-update-crush.sh: FreeBSD getopt is not compatible… (pr#11525, Willem Jan Withagen)

v11.0.2 Kraken

This development checkpoint release includes a lot of changes and improvements to Kraken. This is the first release introducing ceph-mgr, a new daemon which provides additional monitoring & interfaces to external monitoring/management systems. There are also many improvements to bluestore, RGW introduces sync modules, copy part for multipart uploads and metadata search via elastic search as a tech preview.

Notable Changes

  • bluestore: os/bluestore: misc fixes (pr#10953, Sage Weil)
  • bluestore: os/bluestore/BlueFS: do not op_file_update deleted files (pr#10686, Sage Weil)
  • bluestore: bluestore/BitAllocator: Fix deadlock with musl libc (pr#10634, John Coyle)
  • bluestore: bluestore/BlueFS: revert direct IO for WRITER_WAL (pr#11059, Mark Nelson)
  • bluestore: ceph-disk: support creating block.db and block.wal with customized size for bluestore (pr#10135, Zhi Zhang)
  • bluestore: compressor/zlib: switch to raw deflate (pr#11122, Piotr Dałek)
  • bluestore: do not use freelist to track bluefs_extents (pr#10698, Sage Weil)
  • bluestore: initialize csum_order properly (pr#10728, xie xingguo)
  • bluestore: kv/rocksdb: dump transactions on error (pr#11042, Somnath Roy)
  • bluestore: kv: In memory keyvalue db implementation (pr#9933, Ramesh Chander)
  • bluestore: os/bluestore/BitAllocator: batch is_allocated bit checks (pr#10704, Ramesh Chander)
  • bluestore: os/bluestore/BlueFS: For logs of rocksdb & bluefs only use directio. (pr#11012, Jianpeng Ma)
  • bluestore: os/bluestore/BlueFS: async compaction (pr#10717, Varada Kari, Sage Weil)
  • bluestore: os/bluestore/BlueFS: do not hold internal lock while waiting for IO (pr#9898, Varada Kari, Sage Weil)
  • bluestore: os/bluestore/BlueFS: do not start racing async compaction (pr#11010, Sage Weil)
  • bluestore: os/bluestore/BlueFS: don’t inc l_bluefs_files_written_wal if overwrite. (pr#10143, Jianpeng Ma)
  • bluestore: os/bluestore/BlueFS: factor unflushed log into runway calculation (pr#10966, Sage Weil)
  • bluestore: os/bluestore/BlueFS: fix async compaction logging bug (pr#10964, Sage Weil)
  • bluestore: os/bluestore/BlueFS: log dirty files at sync time (pr#11108, Sage Weil)
  • bluestore: os/bluestore/BlueFS: only extend extent on same bdev (pr#11023, Sage Weil)
  • bluestore: os/bluestore/BlueFS: prevent concurrent async compaction (pr#11095, Sage Weil)
  • bluestore: os/bluestore/BlueFS: release completed aios (pr#11268, Sage Weil)
  • bluestore: os/bluestore/BlueFS: use StupidAllocator; fix async compaction bug (pr#11087, Sage Weil)
  • bluestore: os/bluestore/bluefs: add file refs check (pr#10863, xie xingguo)
  • bluestore: os/bluestore/bluefs: use map to track dirty files (pr#10923, xie xingguo)
  • bluestore: os/bluestore/bluefs_types: fix extent operator<< (pr#10685, Sage Weil)
  • bluestore: os/bluestore/bluestore_types: uint64_t for ref_map (pr#11267, Sage Weil)
  • bluestore: os/bluestore: Hint based allocation in bitmap Allocator (pr#10978, Ramesh Chander)
  • bluestore: os/bluestore: Remove bit alloc Woverloaded-virtual warnings (pr#10082, Ramesh Chander)
  • bluestore: os/bluestore: a few cleanups (pr#11192, xie xingguo)
  • bluestore: os/bluestore: a few fixes about the global csum setting (pr#11195, xie xingguo)
  • bluestore: os/bluestore: add assert to compress_extent_map (pr#11240, Sage Weil)
  • bluestore: os/bluestore: add cache-related stats (pr#10961, xie xingguo)
  • bluestore: os/bluestore: add checks and kill unreachable code (pr#11077, xie xingguo)
  • bluestore: os/bluestore: add error injection (pr#11151, Sage Weil)
  • bluestore: os/bluestore: add max blob size; fix compressed min blob size logic (pr#11239, Sage Weil)
  • bluestore: os/bluestore: add multiple finishers to bluestore (pr#10780, Ilsoo Byun)
  • bluestore: os/bluestore: add perf counters for compression effectiveness and space utilization measurements (pr#10449, Igor Fedotov)
  • bluestore: os/bluestore: apply “small encoding” for onode_t::extents map (pr#10018, Igor Fedotov)
  • bluestore: os/bluestore: avoid blob_t reencode when unchanged (pr#10768, Sage Weil)
  • bluestore: os/bluestore: binary search specified shard (pr#11245, xie xingguo)
  • bluestore: os/bluestore: change algorithm of compression header from string to int (pr#10137, xie xingguo)
  • bluestore: os/bluestore: compaction fixes (pr#11279, Sage Weil)
  • bluestore: os/bluestore: drop redundant call of get_blob (pr#11275, xie xingguo)
  • bluestore: os/bluestore: drop unreferenced spanning blobs (pr#11212, Sage Weil)
  • bluestore: os/bluestore: fix a few leaks (pr#11068, Sage Weil)
  • bluestore: os/bluestore: fix a few memory utilization leaks and wasters (pr#11011, Sage Weil)
  • bluestore: os/bluestore: fix crash in decode_some() (pr#11312, Sage Weil)
  • bluestore: os/bluestore: fix decoding hash of bnode (pr#10773, xie xingguo)
  • bluestore: os/bluestore: fix fsck() won’t catch stray shard sometimes (pr#11219, xie xingguo)
  • bluestore: os/bluestore: fix gc when blob extends past eof (pr#11282, Sage Weil)
  • bluestore: os/bluestore: fix improper local var variable in collection_list meth… (pr#10680, Igor Fedotov)
  • bluestore: os/bluestore: fix incorrect pool decoding of bnode (pr#10117, xie xingguo)
  • bluestore: os/bluestore: fix leak of result-checking of _fsck_check_extents (pr#11040, xie xingguo)
  • bluestore: os/bluestore: fix leaks in our use of rocksdb (pr#11250, Sage Weil)
  • bluestore: os/bluestore: fix memory leak during bit_alloc testing (pr#9935, xie xingguo)
  • bluestore: os/bluestore: fix offset bug in _do_write_small. (pr#11030, amoxic)
  • bluestore: os/bluestore: fix onode cache addition race (pr#11300, Sage Weil)
  • bluestore: os/bluestore: fix potential access violation (pr#10362, xie xingguo)
  • bluestore: os/bluestore: fix potential access violation during rename (pr#11033, xie xingguo)
  • bluestore: os/bluestore: fix shard_info::dump() (pr#11061, xie xingguo)
  • bluestore: os/bluestore: fix spanning blob leak from ~ExtentMap (pr#11223, Somnath Roy)
  • bluestore: os/bluestore: fix statfs tests (pr#10910, Sage Weil)
  • bluestore: os/bluestore: fix when block device is not a multiple of the block size (pr#10844, Sage Weil)
  • bluestore: os/bluestore: fix write_big counter and some more cleanups (pr#11344, xie xingguo)
  • bluestore: os/bluestore: fix/improve csum error message (pr#10938, Sage Weil)
  • bluestore: os/bluestore: garbage collect partially overlapped blobs (pr#11232, Roushan Ali)
  • bluestore: os/bluestore: get rid off “isa-l” type in ZLibCompressor ctor (pr#10931, xie xingguo)
  • bluestore: os/bluestore: gifting bluefs more carefully (pr#10950, xie xingguo)
  • bluestore: os/bluestore: honour allow-eio flag; use global compressor if possible (pr#10970, xie xingguo)
  • bluestore: os/bluestore: improve required compression threshold (pr#10080, xie xingguo)
  • bluestore: os/bluestore: include bluefs space in statfs result (pr#10795, Sage Weil)
  • bluestore: os/bluestore: introduce power 2 macros for block alignment and rounding (pr#10128, xie xingguo)
  • bluestore: os/bluestore: make assert conditional with macro for allocator (pr#11014, Ramesh Chander)
  • bluestore: os/bluestore: make cache settings process-wide (pr#11295, Sage Weil)
  • bluestore: os/bluestore: make clone_range copy-on-write (pr#11106, Sage Weil)
  • bluestore: os/bluestore: make onode keys more efficient (and sort correctly) (pr#11009, xie xingguo, Sage Weil)
  • bluestore: os/bluestore: make trim() of 2Q cache more fine-grained (pr#9946, xie xingguo)
  • bluestore: os/bluestore: make zone/span size of bitmap-allocator configurable (pr#10040, xie xingguo)
  • bluestore: os/bluestore: misc cleanup and test fixes (pr#11346, Igor Fedotov)
  • bluestore: os/bluestore: misc cleanups (pr#10201, xie xingguo)
  • bluestore: os/bluestore: misc cleanups (pr#11197, Haomai Wang)
  • bluestore: os/bluestore: misc fixes (pr#9999, xie xingguo)
  • bluestore: os/bluestore: misc fixes (pr#10771, xie xingguo)
  • bluestore: os/bluestore: misc. fixes (pr#11129, xie xingguo)
  • bluestore: os/bluestore: more cleanups (pr#11235, xie xingguo)
  • bluestore: os/bluestore: more cleanups and fixes (pr#11210, xie xingguo)
  • bluestore: os/bluestore: narrow condition of sanity check when get_object_key() (pr#11149, xie xingguo)
  • bluestore: os/bluestore: narrow lock scope for cache trim() (pr#10410, xie xingguo)
  • bluestore: os/bluestore: optimize intrusive sets for size. (pr#11319, Mark Nelson)
  • bluestore: os/bluestore: pack a few more in-memory types (pr#11328, Sage Weil)
  • bluestore: os/bluestore: precondition rocksdb/bluefs during mkfs (pr#10814, Sage Weil)
  • bluestore: os/bluestore: prevent extent merging across shard boundaries (pr#11216, Sage Weil)
  • bluestore: os/bluestore: print bluefs_extents in hex (pr#10689, Sage Weil)
  • bluestore: os/bluestore: proper handling for csum enable/disable settings (pr#10431, Igor Fedotov)
  • bluestore: os/bluestore: refactor dirty blob tracking along with some related fixes (pr#10215, Igor Fedotov)
  • bluestore: os/bluestore: remove cmake warning from extent alloc functions (issue#16766, pr#10492, Ramesh Chander)
  • bluestore: os/bluestore: remove deferred_csum machinery (pr#11243, Sage Weil)
  • bluestore: os/bluestore: remove some copy-pastes (pr#11017, Igor Fedotov)
  • bluestore: os/bluestore: replace store with logger in Cache (pr#10969, xie xingguo)
  • bluestore: os/bluestore: shard extent map (pr#10963, Sage Weil)
  • bluestore: os/bluestore: simplify LRUCache::trim() (pr#10109, xie xingguo)
  • bluestore: os/bluestore: simplify calculation of collection key range (pr#11166, xie xingguo)
  • bluestore: os/bluestore: sloppy reshard boundaries to avoid spanning blobs (pr#11263, Sage Weil)
  • bluestore: os/bluestore: still more cleanups (pr#11274, xie xingguo)
  • bluestore: os/bluestore: switch spanning_blob_map to std::map (pr#11336, Sage Weil)
  • bluestore: os/bluestore: trim cache on reads (pr#10095, Sage Weil)
  • bluestore: os/bluestore: try to split blobs instead of spanning them (pr#11264, Sage Weil)
  • bluestore: os/bluestore: upgrade compression settings to atomics (pr#11244, xie xingguo)
  • bluestore: os/bluestore: use small encoding for bluefs extent and fnode (pr#10375, xie xingguo)
  • bluestore: os/bluestore: yet another statfs test fix (pr#10926, Igor Fedotov)
  • bluestore: os/bluestore:Fix size calculation in bitallocator (pr#10377, Ramesh Chander)
  • bluestore: os/bluestore: fix error handling of posix_fallocate() (pr#10277, xie xingguo)
  • bluestore: os/bluestore: use BE for gifting and reclaiming from bluefs (pr#10294, xie xingguo)
  • bluestore: os/bluestore: get rid off blob’s ref_map for non-shared objects (pr#9988, Igor Fedotov)
  • bluestore: kv/MemDB: fix wrong output target and add sanity checks (pr#10358, xie xingguo)
  • bluestore: os/bluestore: add a boundary check of cache read (pr#10349, xie xingguo)
  • bluestore: os/bluestore: fix bitmap allocating failure if max_alloc_size is 0 (pr#10379, xie xingguo)
  • bluestore: os/bluestore: misc fixes (pr#10327, xie xingguo)
  • bluestore: kv/MemDB: misc fixes and cleanups (pr#10295, xie xingguo)
  • bluestore: rocksdb: pull up to master (4.12 + a few patches) (pr#11069, Sage Weil)
  • bluestore: test/store_test: extend Bluestore compression test to verify compress… (pr#11080, Igor Fedotov)
  • bluestore: test/store_test: fix statfs results check to consider SSD min_alloc_size (pr#11096, Igor Fedotov)
  • bluestore: unittest_bluestore_types: a few more types for sizeof (pr#11323, Sage Weil)
  • bluestore: ceph_test_objectstore: test clone_range and fix a few bugs (pr#11103, Sage Weil)
  • bluestore: kv: fix some bugs in memdb (pr#10550, Haodong Tang)
  • bluestore: os/bluestore/BlueFS: disable buffered io (pr#10766, Sage Weil)
  • build/ops,bluestore: test/objectstore/CMakeLists.txt: fix libaio conditional (pr#11008, Sage Weil)
  • build/ops,cephfs: client: added def for ACCESSPERMS when undefined (pr#9835, John Coyle)
  • build/ops,cephfs: deb: merge ceph-fs-common into ceph-common (issue#16808, pr#10433, Nathan Cutler)
  • build/ops,cephfs: man/Makefile-client.am: drop legacy cephfs tool (pr#10444, Nathan Cutler)
  • build/ops,cephfs: test: break out librados-using cephfs test (issue#16556, pr#10452, John Spray)
  • build/ops,common: common/dns_resolve: use ns_name_uncompress instead of ns_name_ntop (pr#9755, John Coyle)
  • build/ops,common: msg/async/net_handler.cc: make it more compatible with BSDs (pr#10029, Willem Jan Withagen)
  • build/ops,pybind: Include Python 3 bindings into the cmake build and make packages for them (pr#10208, Oleh Prypin)
  • build/ops,rbd: systemd: add install section to rbdmap.service file (pr#10942, Jelle vd Kooij)
  • build/ops,rbd: test: fix rbd-mirror workunit test cases for cmake (pr#10076, Jason Dillaman)
  • build/ops,rgw: rgw-ldap: add ldap lib to rgw lib deps based on build config (pr#9852, John Coyle)
  • build/ops: .gitignore: Add .pyc files globally (pr#11076, Brad Hubbard)
  • build/ops: Allow compressor build without YASM (pr#10937, Daniel Gryniewicz)
  • build/ops: CMake - stop pip checking for updates (pr#10161, Daniel Gryniewicz)
  • build/ops: CMakeList.txt: link ceph_objectstore_tool against fuse only if WITH_FUSE (pr#10149, Willem Jan Withagen)
  • build/ops: Cmake: fix using CMAKE_DL_LIBS instead of dl (pr#10317, Willem Jan Withagen)
  • build/ops: CmakeLists.txt: use LIB_RESOLV instead of resolv. (pr#10972, Willem Jan Withagen)
  • build/ops: Enable builds without ceph-test subpackage (issue#16776, pr#10872, Ricardo Dias)
  • build/ops: Fix libatomic_ops-devel in SUSE and specfile cleanup (issue#16645, pr#10363, Nathan Cutler)
  • build/ops: FreeBSD: Define CLOCK_REALTIME_COARSE in compat.h (pr#10506, Willem Jan Withagen)
  • build/ops: Gentoo support for ceph-disk / ceph-detect-init; pip speedup (pr#8317, Robin H. Johnson)
  • build/ops: LTTng-UST disabled for openSUSE (issue#16937, pr#10592, Michel Normand)
  • build/ops: Port ceph-brag to Python 3 (+ small fixes) (pr#10064, Oleh Prypin)
  • build/ops: Removes remaining reference to WITH_MDS (pr#10286, J. Eric Ivancich)
  • build/ops: Stop hiding errors from run-tox.sh (issue#17267, pr#11071, Dan Mick)
  • build/ops: Wip kill warnings (pr#10881, Kefu Chai)
  • build/ops: autogen: Fix rocksdb error when make dist (pr#10988, tianqing)
  • build/ops: autotools: remove a few other remaining traces (pr#11019, Sage Weil)
  • build/ops: build scripts: Enable dnf for Fedora >= 22 (pr#11105, Brad Hubbard)
  • build/ops: build: drop dryrun of autogen.sh from run-cmake-check.sh script (pr#11013, xie xingguo)
  • build/ops: ceph-disk tests: Let missing python interpreters be non-fatal (pr#11072, Dan Mick)
  • build/ops: ceph-disk: Compatibility fixes for Python 3 (pr#9936, Anirudha Bose)
  • build/ops: ceph-disk: do not activate device that is not ready (issue#15990, pr#9943, Boris Ranto)
  • build/ops: ceph-osd-prestart.sh: check existence of OSD data directory (issue#17091, pr#10809, Nathan Cutler)
  • build/ops: ceph-osd-prestart.sh: drop Upstart-specific code (issue#15984, pr#9667, Nathan Cutler)
  • build/ops: ceph-post-file replace DSA with RSA ssh key (issue#14267, pr#10800, David Galloway)
  • build/ops: ceph.spec.in: don’t try to package __pycache__ for SUSE (issue#17106, pr#10805, Tim Serong)
  • build/ops: ceph.spec.in: fix rpm package building error (pr#10115, runsisi)
  • build/ops: changes for Clang and yasm (pr#10417, Willem Jan Withagen)
  • build/ops: cmake changes (pr#10351, Kefu Chai)
  • build/ops: cmake changes (pr#10059, Kefu Chai)
  • build/ops: cmake changes (pr#10279, Kefu Chai)
  • build/ops: cmake changes (issue#16804, pr#10391, Kefu Chai)
  • build/ops: cmake changes (pr#10361, Kefu Chai)
  • build/ops: cmake changes (pr#10112, Kefu Chai)
  • build/ops: cmake changes (pr#10489, Kefu Chai)
  • build/ops: cmake changes (pr#10283, Kefu Chai)
  • build/ops: cmake changes (issue#16504, pr#9995, Kefu Chai, Sage Weil, Dan Mick)
  • build/ops: cmake changes (pr#9975, Kefu Chai)
  • build/ops: cmake changes related to LTTng-UST (pr#10917, Kefu Chai)
  • build/ops: common/compressor: add libcommon as a dependency for zlib and snappy p… (pr#11083, Igor Fedotov)
  • build/ops: compat: add abstractions for non portable pthread name funcs (pr#9763, John Coyle)
  • build/ops: configure.ac: Use uname instead of arch. (pr#9766, John Coyle)
  • build/ops: configure.ac: add _LIBS variables for boost_system and boost_iostreams (pr#9848, John Coyle)
  • build/ops: configure.ac: fix res_query detection (pr#9820, John Coyle)
  • build/ops: debian and cmake cleanups (pr#10788, Kefu Chai)
  • build/ops: debian: bump compat to 9 (issue#16744, pr#10366, Kefu Chai)
  • build/ops: debian: python related changes (pr#10322, Kefu Chai)
  • build/ops: debian: replace SysV rbdmap with systemd service (pr#10435, Ken Dreyer)
  • build/ops: debian: set libexec dir to correct value as autotools did (pr#10096, Daniel Gryniewicz)
  • build/ops: do_cmake.sh: set up initial plugin dir (pr#10067, Sage Weil)
  • build/ops: fix /etc/os-release parsing in install-deps.sh (pr#10981, Nathan Cutler)
  • build/ops: fix the rpm build for centos (pr#10289, Oleh Prypin, Josh Durgin)
  • build/ops: force Python 3 packages to build in SUSE (issue#17106, pr#10894, Dominique Leuenberger, Nathan Cutler)
  • build/ops: install-deps.sh based on /etc/os-release (issue#16522, pr#10017, Jan Fajerski)
  • build/ops: install-deps: exit non-zero when we cannot match distro (pr#10941, Gregory Meno)
  • build/ops: isa-l: add isa-l library as a submodule (pr#10066, Alyona Kiseleva)
  • build/ops: jerasure: include generic objects in neon jerasure lib (like sse3/4) (pr#10879, Dan Mick)
  • build/ops: logrotate: Run as root/ceph (pr#10587, Boris Ranto)
  • build/ops: lttng: build the tracepoint provider lib from .c files in repo (pr#11196, Kefu Chai)
  • build/ops: make-dist: generate ceph.spec (issue#16501, pr#9986, Sage Weil)
  • build/ops: make-dist: set rpm_release correctly for release builds (pr#11334, Dan Mick)
  • build/ops: make-srpm.sh: A simple script to make the srpm for ceph. (pr#11064, Ira Cooper)
  • build/ops: makefile: change librgw_file_* as check_PROGRAMS (issue#16646, pr#10229, Brad Hubbard)
  • build/ops: remove autotools (pr#11007, Sage Weil)
  • build/ops: rpm: Do not start targets on update (pr#9968, Nathan Cutler, Boris Ranto)
  • build/ops: rpm: ExclusiveArch for suse_version (issue#16936, pr#10594, Michel Normand)
  • build/ops: rpm: Fix creation of mount.ceph symbolic link for SUSE distros (pr#10353, Ricardo Dias)
  • build/ops: rpm: add udev BuildRequires to provide /usr/lib/udev directory (issue#16949, pr#10608, Nathan Cutler)
  • build/ops: rpm: build rpm with cmake (pr#10016, Kefu Chai)
  • build/ops: rpm: drop obsolete libs-compat and python-ceph-compat metapackages (issue#16353, pr#9757, Nathan Cutler)
  • build/ops: rpm: fix permissions for /etc/ceph/rbdmap (issue#17395, pr#11217, Ken Dreyer)
  • build/ops: rpm: fix shared library devel package names and dependencies (issue#16345, issue#16346, pr#9744, Nathan Cutler, Ken Dreyer)
  • build/ops: rpm: move mount.ceph from ceph-base to ceph-common and add symlink in /sbin for SUSE (issue#16598, pr#10147, Nathan Cutler)
  • build/ops: run-cmake-check.sh: Remove redundant calls (pr#11116, Brad Hubbard)
  • build/ops: script: improve ceph-release-notes regex (pr#10729, Nathan Cutler)
  • build/ops: src/CMakeLists.txt: remove double flag -Wno-invalid-offsetof (pr#10443, Willem Jan Withagen)
  • build/ops: src/CMakeLists.txt: remove unneeded libraries from ceph-dencoder target (pr#10478, Willem Jan Withagen)
  • build/ops: src/global/pidfile.cc: Assign elements in structures individually (pr#10516, Willem Jan Withagen)
  • build/ops: src/kv/CMakeLists.txt: force rocksdb/include to first include directory (pr#11194, Willem Jan Withagen)
  • build/ops: test/common/test_util.cc: FreeBSD does not have distro information (pr#10547, Willem Jan Withagen)
  • build/ops: test: make check using cmake (pr#10116, Kefu Chai, Sage Weil)
  • build/ops: verfied f23 (pr#10222, Kefu Chai)
  • build/ops: yasm-wrapper: dont echo the yasm command line (pr#10819, Casey Bodley)
  • build/ops: .gitignore: exclude coredumps, logfiles and temporary testresults (pr#8150, Willem Jan Withagen)
  • build/ops: this fixes the broken build (pr#9992, Haomai Wang)
  • build/ops: mrgw: search for cmake build dir. (pr#10180, Abhishek Lekshmanan)
  • build/ops: mrun, mstart.sh, mstop.sh: search for cmake build directory (pr#10097, Yehuda Sadeh)
  • build/ops: arm64 fixes(pr#10438, Dan Mick)
  • build/ops: Wip kill warnings (pr#10934, Kefu Chai)
  • build/ops: systemd: add osd id to service description (pr#10091, Ruben Kerkhof)
  • build/ops: fix wrong indent caused compile warning (pr#10014, Wanlong Gao)
  • build/ops: ceph-detect-init: fix the py3 test (pr#10266, Kefu Chai)
  • build/ops: ceph.spec: fix ceph-mgr version requirement (pr#11285, Sage Weil)
  • build/ops: make-dist/ceph.spec.in: Fix srpm build breakage. (pr#10404, Ira Cooper)
  • build/ops: master: remove SYSTEMD_RUN from initscript (issue#16440, issue#7627, pr#9871, Vladislav Odintsov)
  • build/ops: rocksdb: revert the change introduced by dc41731 (pr#10595, Kefu Chai)
  • build/ops: do_freebsd*.sh: rename do_freebsd-cmake.sh to do_freebsd.sh (pr#11088, Kefu Chai)
  • build/ops: gcc 6.1.1 complains about missing include: <random>. 4.8.3 does not c… (pr#10747, Daniel Oliveira)
  • build/ops: selinux: Allow ceph to manage tmp files (issue#17436, pr#11259, Boris Ranto)
  • build/ops: selinux: allow read /proc/<pid>/cmdline (issue#16675, pr#10339, Kefu Chai)
  • cephfs,common: osdc/Journaler: move C_DelayFlush class to .cc (pr#10744, Michal Jarzabek)
  • cephfs,core,rbd: ObjectCacher: fix bh_read_finish offset logic (issue#16002, pr#9606, Greg Farnum)
  • cephfs,core,rbd: osdc/ObjectCacher: move C_ReadFinish, C_RetryRead (pr#10781, Michal Jarzabek)
  • cephfs: Add ceph_ll_setlk and ceph_ll_getlk (pr#9566, Frank S. Filz)
  • cephfs: CephFS: misc. cleanups and remove legacy cephfs tool (issue#16195, issue#16035, issue#15923, pr#10243, John Spray)
  • cephfs: Clean up handling of “/..” in ceph client (pr#10691, Jeff Layton)
  • cephfs: Client: fixup param type and return value (pr#10463, gongchuang)
  • cephfs: Client: pass “UserPerm” struct everywhere for security checks (issue#16367, issue#17368, pr#11218, Greg Farnum)
  • cephfs: First pile of statx patches (pr#10922, Sage Weil, Jeff Layton)
  • cephfs: Fix attribute handling at lookup time (issue#16668, pr#10386, Jeff Layton)
  • cephfs: Inotable repair during forward scrub (pr#10281, Vishal Kanaujia)
  • cephfs: Server: drop locks and auth pins if wait for pending truncate (pr#9716, xie xingguo)
  • cephfs: Small interface cleanups for struct ceph_statx (pr#11093, Jeff Layton)
  • cephfs: build ceph-fuse on OSX (pr#9371, Yan, Zheng)
  • cephfs: ceph-fuse: link to libtcmalloc or jemalloc (issue#16655, pr#10258, Yan, Zheng)
  • cephfs: ceph_volume_client: store authentication metadata (issue#15406, issue#15615, pr#9864, John Spray, Ramana Raja)
  • cephfs: client/barrier: move C_Block_Sync class to .cc (pr#11001, Michal Jarzabek)
  • cephfs: client/filer: cleanup the redundant judgments of _write&&_fallocate (pr#10062, huanwen ren)
  • cephfs: client: add missing client_lock for get_root (pr#10027, Patrick Donnelly)
  • cephfs: client: discard mds map if it is identical to ours (pr#9774, xie xingguo)
  • cephfs: client: fast abort if underlying statsf() call failed; end scope of std::hex properly (pr#9803, xie xingguo)
  • cephfs: client: fix access violation (pr#9793, xie xingguo)
  • cephfs: client: fix readdir vs fragmentation race (issue#17286, pr#11147, Yan, Zheng)
  • cephfs: client: fix segment fault in Client::_invalidate_kernel_dcache(). (issue#17253, pr#11170, Yan, Zheng)
  • cephfs: client: fix shutdown with open inodes (issue#16764, pr#10419, John Spray)
  • cephfs: client: include COMPLETE and ORDERED states in cache dump (pr#10485, Greg Farnum)
  • cephfs: client: kill compiling warning (pr#9994, xie xingguo)
  • cephfs: client: misc fixes (pr#9838, xie xingguo)
  • cephfs: client: move Inode specific cleanup to destructor (pr#10168, Patrick Donnelly)
  • cephfs: client: note order of member init in cons (pr#10169, Patrick Donnelly)
  • cephfs: client: properly set inode number of created inode in replay request (issue#17172, pr#10957, Yan, Zheng)
  • cephfs: client: protect InodeRef with client_lock (issue#17392, pr#11225, Yan, Zheng)
  • cephfs: doc/mds: fixup mds doc (pr#10573, huanwen ren)
  • cephfs: fuse_ll: fix incorrect error settings of fuse_ll_mkdir() (pr#9809, xie xingguo)
  • cephfs: include/ceph_fs.h: guard #define CEPH_SETATTR_* with #ifndef (pr#10265, Kefu Chai)
  • cephfs: libcephfs: Fix the incorrect integer conversion in libcephfs_jni.cc (pr#10640, wenjunhuang)
  • cephfs: libcephfs: add unmount function in cephfs.pyx (pr#10774, huanwen ren)
  • cephfs: libcephfs: fix portability-related error settings (pr#9794, xie xingguo)
  • cephfs: libcephfs: kill compiling warning (pr#10622, xie xingguo)
  • cephfs: mds/CDir: remove the part of judgment for _next_dentry_on_set (pr#10476, zhang.zezhu)
  • cephfs: mds/CInode: fix potential fin hanging (pr#9773, xie xingguo)
  • cephfs: mds/MDBalancer: cleanup (pr#10512, huanwen ren)
  • cephfs: mds/MDCache: kill a comipler warning (pr#11254, xie xingguo)
  • cephfs: mds/MDSMap default metadata pool to -1 (was: output None instead of 0 when no fs present.) (issue#16588, pr#10202, Xiaoxi Chen)
  • cephfs: mds/MDSTable: add const to member functions (pr#10846, Michal Jarzabek)
  • cephfs: mds/SessionMap.h: change statement to assertion (pr#11289, Michal Jarzabek)
  • cephfs: mds/SnapRealm.h: add const to member functions (pr#10878, Michal Jarzabek)
  • cephfs: mds/server: clean up handle_client_open() (pr#11120, huanwen ren)
  • cephfs: mon/MDSMonitor: move C_Updated class to .cc file (pr#10668, Michal Jarzabek)
  • cephfs: osdc/mds: fixup pos parameter in the journaler (pr#10200, huanwen ren)
  • cephfs: reduce unnecessary mds log flush (pr#10393, Yan, Zheng)
  • cephfs: tools/cephfs: Remove cephfs-data-scan tmap_upgrade (issue#16144, pr#10100, Douglas Fuller)
  • cephfs: ceph_fuse: use sizeof get the buf length (pr#11176, LeoZhang)
  • cli: retry when the mon is not configured (issue#16477, pr#11089, Loic Dachary)
  • cmake: Add -pie to CMAKE_EXE_LINKER_FLAGS (pr#10755, Tim Serong)
  • cmake: Fix FCGI include directory (pr#9983, Tim Serong)
  • cmake: Fix mismatched librgw VERSION / SOVERSION (pr#10754, Tim Serong)
  • cmake: FreeBSD specific excludes in CMakeLists.txt (pr#10973, Willem Jan Withagen)
  • cmake: FreeBSD specific excludes in CMakeLists.txt files (pr#10517, Willem Jan Withagen)
  • cmake: Really add FCGI_INCLUDE_DIR to include_directories for rgw (pr#10139, Tim Serong)
  • cmake: Removed README.cmake.md, edited README.md (pr#10028, Ali Maredia)
  • cmake: Support tcmalloc_minimal allocator (pr#11111, Bassam Tabbara)
  • cmake: add dependency from ceph_smalliobenchrbd to cls libraries (pr#10870, J. Eric Ivancich)
  • cmake: add_subdirectory(include) (pr#10360, Kefu Chai)
  • cmake: ceph_test_rbd_mirror does not require librados_test_stub (pr#10164, Jason Dillaman)
  • cmake: cleanup Findgperftools.cmake (pr#10670, Kefu Chai)
  • cmake: correct ceph_test_librbd/ceph_test_rbd_mirror linkage (issue#16882, pr#10598, Jason Dillaman)
  • cmake: disable -fvar-tracking-assignments for ceph_dencoder.cc (pr#10275, Kefu Chai)
  • cmake: disable unittest_async_compressor (pr#10394, Kefu Chai)
  • cmake: do not link against unused objects or libraries (pr#10837, Kefu Chai)
  • cmake: enable ccache for rocksdb too (pr#11100, Bassam Tabbara)
  • cmake: exclude non-public symbols in shared libraries (issue#16556, pr#10472, Kefu Chai)
  • cmake: fix incorrect dependencies to librados (pr#10145, Jason Dillaman)
  • cmake: fix the FTBFS introduced by dc8b3ba (pr#10282, Kefu Chai)
  • cmake: fix the build of unittest_async_compressor (pr#10400, Kefu Chai)
  • cmake: fix the tracing header dependencies (pr#10906, Kefu Chai)
  • cmake: fix unittest_rbd_mirror failures under non-optimized builds (pr#9990, Jason Dillaman)
  • cmake: fix wrong path introduced by bb163e9 (pr#10643, Kefu Chai)
  • cmake: fixes (pr#10092, Daniel Gryniewicz)
  • cmake: fixes for pypi changes (pr#10204, Kefu Chai)
  • cmake: include(SIMDExt) in src/CMakeLists.txt (pr#11003, Kefu Chai)
  • cmake: install ceph_test_cls_rgw (pr#10025, Kefu Chai)
  • cmake: install ceph_test_rados_striper_api_* (pr#10541, Kefu Chai)
  • cmake: install platlib into a subdir of build-base dir (pr#10666, Kefu Chai)
  • cmake: make py3 a nice-to-have (issue#17103, pr#11015, Kefu Chai)
  • cmake: pass -DINTEL* to gf-complete cflags (pr#10956, tone.zhang, Kefu Chai)
  • cmake: pass cmake’s compiler and flags to compile RocksDB into build (pr#10418, Willem Jan Withagen)
  • cmake: recompile erasure src for different variants (pr#10772, Kefu Chai)
  • cmake: remove WITH_MDS option (pr#10186, Ali Maredia)
  • cmake: remove more autotools hacks (pr#11229, Sage Weil)
  • cmake: remove unnecessary linked libs from libcephfs (issue#16556, pr#10081, Kefu Chai)
  • cmake: rework NSS and SSL (pr#9831, Matt Benjamin)
  • cmake: set ARM_CRC_FLAGS from the CRC test rather than ARM_NEON_FLAGS (issue#17250, pr#11028, Dan Mick)
  • cmake: specify distutils build path explicitly (pr#10568, Kefu Chai)
  • cmake: supress more warnings (pr#10469, Willem Jan Withagen)
  • cmake: use PERF_LOCAL_FLAGS only if defined (issue#17104, pr#10828, Michel Normand)
  • cmake: use stock Find* modules. (pr#10178, Kefu Chai)
  • cmake: work to get inital FreeBSD stuff (pr#10352, Willem Jan Withagen)
  • cmake: find GIT_VER variables if there is no .git dir (pr#11499, Ali Maredia)
  • common,bluestore: Isa-l extention for zlib compression plugin (pr#10158, Alyona Kiseleva, Dan Mick)
  • common,bluestore: compressor/zlib: zlib wrapper fix (pr#11079, Igor Fedotov)
  • common: auth/cephx: misc fixes (pr#9679, xie xingguo)
  • common: common/PluginRegistry: improve error output for shared library load fa… (pr#11081, Igor Fedotov)
  • common: common/Throttle.h: remove unneeded class (pr#10902, Michal Jarzabek)
  • common: common/Timer.h: delete copy constr and assign op (pr#11046, Michal Jarzabek)
  • common: common/WorkQueue: add std move (pr#9729, Michal Jarzabek)
  • common: compressor: zlib compressor plugin cleanup (pr#9782, Alyona Kiseleva)
  • common: erasure-code: Runtime detection of SIMD for jerasure and shec (pr#11086, Bassam Tabbara)
  • common: global: log which process/command sent a signal (pr#8964, song baisen)
  • common: include/assert: clean up ceph assertion macros (pr#9969, Sage Weil)
  • common: instantiate strict_si_cast<long> not strict_si_cast<int64_t> (issue#16398, pr#9934, Kefu Chai)
  • common: lockdep: verbose even if no logging is set (pr#10576, Willem Jan Withagen)
  • common: messages/MOSDMap: mark as enlighten OSDMap encoder (pr#10843, Sage Weil)
  • common: mon/Monitor.cc:replce lock/unlock with Mutex:Lockr (pr#9792, Michal Jarzabek)
  • common: msg/AsyncMessenger.cc: remove code duplication (pr#10030, Michal Jarzabek)
  • common: msg/async: less verbose debug messages at debug_ms=1 (pr#11205, Sage Weil)
  • common: msg/async: remove static member variable (issue#16686, pr#10440, Kefu Chai)
  • common: only call crypto::init once per CephContext (issue#17205, pr#10965, Casey Bodley)
  • common: osdc/ObjectCacher: change iterator to const_iterator and add const to member functions (pr#9644, Michal Jarzabek)
  • common: preforker: prevent call to ‘write’ on an fd that was already closed (pr#10949, Avner BenHanoch)
  • common: remove basename() dependency (pr#9845, John Coyle)
  • common: src/common/buffer.cc fix judgment for lseek (pr#10130, zhang.zezhu)
  • common: unknown hash type of judgment modification (pr#9510, huanwen ren)
  • common: Timer.cc: replace long types with auto (pr#11067, Michal Jarzabek)
  • common: TrackedOp: move ShardedTrackingData to .cc (pr#10639, Michal Jarzabek)
  • common: config_opts: fix comment(radio -> ratio) (pr#10783, xie xingguo)
  • common: src/common/dns_resolve.cc: reorder the includes (pr#10505, Willem Jan Withagen)
  • common: global/signal_handler: use sig_str instead of sys_siglist (pr#10633, John Coyle)
  • core,cephfs: Revert “osd/ReplicatedPG: for sync-read it don’t cacl l_osd_op_r_prep… (issue#16908, pr#10875, Samuel Just)
  • core,cephfs: mon/mds: add err info when load_metadata is abnormal (pr#10176, huanwen ren)
  • core,common: osd/OSD.cc: remove unneeded returns (pr#11043, Michal Jarzabek)
  • core,pybind: python-rados: extends ReadOp/WriteOp API (pr#9944, Mehdi Abaakouk)
  • core,pybind: python-rados: implement new aio_stat. (pr#11006, Iain Buclaw)
  • core,pybind: qa/workunits/rados/test_python.sh: Allow specifying Python executable (pr#10782, Oleh Prypin)
  • core: os/filestore/LFNIndex: remove unused variable ‘subdir_path’ (pr#8959, huangjun)
  • core: Create ceph-mgr (pr#10328, John Spray, Tim Serong)
  • core: FileJournal: Remove obsolete _check_disk_write_cache function (pr#11073, Brad Hubbard)
  • core: Lua object class support (pr#7338, Noah Watkins)
  • core: OSD crash with Hammer to Jewel Upgrade: void FileStore::init_temp_collections() (issue#16672, pr#10565, David Zafman)
  • core: OSD.cc: remove unneeded return (pr#9701, Michal Jarzabek)
  • core: OSD: avoid FileStore finisher deadlock in osd_lock when shutdown OSD (pr#11052, Haomai Wang)
  • core: ObjectCacher: fix last_write check in bh_write_adjacencies() (issue#16610, pr#10304, Yan, Zheng)
  • core: ReplicatedPG: call op_applied for submit_log_entries based repops (pr#9489, Samuel Just)
  • core: Wip 16998 (issue#16998, pr#10688, Samuel Just)
  • core: ceph-create-keys: add missing argument comma (pr#11123, Patrick Donnelly)
  • core: ceph-create-keys: fix existing-but-different case (issue#16255, pr#10415, John Spray)
  • core: ceph-disk: partprobe should block udev induced BLKRRPART (issue#15176, pr#9330, Marius Vollmer, Loic Dachary)
  • core: ceph-disk: timeout ceph-disk to avoid blocking forever (issue#16580, pr#10262, Loic Dachary)
  • core: ceph-objectstore-tool: add a way to split filestore directories offline (issue#17220, pr#10776, Josh Durgin)
  • core: ceph.in: python 3 compatibility of the ceph CLI (pr#9702, Oleh Prypin)
  • core: ceph_mon: use readdir() as readdir_r() is deprecated (pr#11047, Kefu Chai)
  • core: cephx: Fix multiple segfaults due to attempts to encrypt or decrypt (issue#16266, pr#9703, Brad Hubbard)
  • core: https://github.com/ceph/ceph/pull/11052 (pr#10371, Yan Jun)
  • core: include write error codes in the pg log (issue#14468, pr#10170, Josh Durgin)
  • core: kv/MemDB: fix assert triggerred by m_total_bytes underflow (pr#10471, xie xingguo)
  • core: kv/RocksDB: add perfcounter for submit_transaction_sync operation (pr#9770, Haodong Tang)
  • core: logmon: check is_leader() before doing any work on get_trim_to() (pr#10342, song baisen)
  • core: memstore: clone zero-fills holes from source range (pr#11157, Casey Bodley)
  • core: message: optimization for message priority strategy (pr#8687, yaoning)
  • core: messages/MForward: fix encoding features (issue#17365, pr#11180, Sage Weil)
  • core: mgr/MgrClient: fix ms_handle_reset (pr#11298, Sage Weil)
  • core: mgr/MgrMap: initialize all fields (issue#17492, pr#11308, Sage Weil)
  • core: mon/ConfigKeyService: pass strings by const ref (pr#10618, Michal Jarzabek)
  • core: mon/LogMonitor: move C_Log struct to cc file (pr#10721, Michal Jarzabek)
  • core: mon/MonClient.h: pass strings by const reference (pr#10605, Michal Jarzabek)
  • core: mon/MonDBStore: fix assert which never fires (pr#10706, xie xingguo)
  • core: mon/MonitorDBStore: do not use snapshot iterator; close on close (pr#10102, Sage Weil)
  • core: mon/OSDMonitor.cc: remove use of boost assign (pr#11060, Michal Jarzabek)
  • core: mon/PGMonitor: batch filter pg states; add sanity check (pr#9394, xie xingguo)
  • core: mon/PGMonitor: calc the %USED of pool using used/(used+avail) (issue#16933, pr#10584, Kefu Chai)
  • core: mon/PGMonitor: move C_Stats struct to cc file (pr#10719, Michal Jarzabek)
  • core: mon/PaxosService: make the return value type inconsistent (pr#10231, zhang.zezhu)
  • core: mon/osdmonitor: fix incorrect output of “osd df” due to osd out (issue#16706, pr#10308, xie xingguo)
  • core: msg/AsyncMessenger: change return type to void (pr#10230, Michal Jarzabek)
  • core: msg/Messenger: add const and override to function (pr#10183, Michal Jarzabek)
  • core: msg/async/AsyncConnection: replace Mutex with std::mutex for peformance (issue#16714, issue#16715, pr#10340, Haomai Wang)
  • core: msg/async/Event: ensure not refer to member variable which may destroyed (issue#16714, pr#10369, Haomai Wang)
  • core: msg/async/kqueue: avoid remove nonexist kqueue event (pr#9869, Haomai Wang)
  • core: msg/async: Support close idle connection feature (issue#16366, pr#9783, Haomai Wang)
  • core: msg/async: allow other async backend implementations (pr#10264, Haomai Wang)
  • core: msg/async: avoid set out of range ms_async_op_threads option (pr#11200, Haomai Wang)
  • core: msg/async: connect authorizer fix + recv_buf size (pr#9784, Ilya Dryomov)
  • core: msg/async: harden error logic handle (pr#9781, Haomai Wang)
  • core: msg/async: remove fd output in log prefix (pr#11199, Haomai Wang)
  • core: msg/async: remove file event lock (issue#16554, issue#16552, pr#10090, Haomai Wang)
  • core: msg/simple/Pipe: eliminating casts for the comparing of len and recv_max_prefetch (pr#10273, zhang.zezhu)
  • core: msg/simple: fix wrong condition checking of writing TAG_CLOSE on closing (pr#10343, xie xingguo)
  • core: msg/simple: wait dispatch_queue until all pipes closed (issue#16472, pr#9930, Haomai Wang)
  • core: msg: make async backend default (pr#10746, Haomai Wang)
  • core: msg: mark daemons down on RST + ECONNREFUSED (pr#8558, Piotr Dałek)
  • core: os/FuseStore: fix several FuseStore issues (pr#10723, Sage Weil)
  • core: os/MemStore: move BufferlistObject to .cc file (pr#10833, Michal Jarzabek)
  • core: os/ObjectStore: fix return code of collection_empty() method (pr#11050, xie xingguo)
  • core: os/RocksDBStore: use effective Get API instead of iterator api (pr#9411, Jianjian Huo, Haomai Wang, Mark Nelson)
  • core: os/filestore/FDCache: fix bug when filestore_fd_cache_shards = 0 (pr#11048, jimifm)
  • core: os/filestore/FileJournal: error out if FileJournal is not a file (issue#17307, pr#11146, Kefu Chai)
  • core: os/filestore: add sanity checks and cleanups for mount() process (pr#9734, xie xingguo)
  • core: os/filestore: disable use of splice by default (pr#11113, Haomai Wang)
  • core: osd/OSD.cc: remove repeated searching of map (pr#10986, Michal Jarzabek)
  • core: osd/OSD.cc: remove unneeded searching of maps (pr#11039, Michal Jarzabek)
  • core: osd/OSD.h: add const to member functions (pr#11114, Michal Jarzabek)
  • core: osd/OSD.h: move some members under private (pr#11121, Michal Jarzabek)
  • core: osd/OSD.h: remove unneeded line (pr#8980, Michal Jarzabek)
  • core: osd/OSDMonitor: misc. cleanups (pr#10739, xie xingguo)
  • core: osd/OSDMonitor: misc. fixes (pr#10491, xie xingguo)
  • core: osd/ReplicatedBackend: add sanity check during build_push_op() (pr#9491, Yan Jun)
  • core: osd/ReplicatedPG: for sync-read it don’t cacl l_osd_op_r_prepare_lat. (pr#10365, Jianpeng Ma)
  • core: osd/ReplicatedPG: remove class redeclaration (pr#11041, Michal Jarzabek)
  • core: osd/ReplicatedPG: remove unused param “op” from generate_subop() (pr#10811, jimifm)
  • core: osd/Watch: add consts to member functions (pr#10251, Michal Jarzabek)
  • core: osd/osd_type: check if pool is gone during check_new_interval() (pr#10859, xie xingguo)
  • core: osd/osdmonitor: pool of objects and bytes beyond quota should all be warn (pr#9085, huanwen ren)
  • core: osdc/objecter: misc fixes (pr#10826, xie xingguo)
  • core: pass string by const ref and add override to virtual function (pr#9082, Michal Jarzabek)
  • core: qa/workunits/objectstore/test_fuse.sh: make test_fuse.sh work with filestore (pr#11057, Sage Weil)
  • core: rados: add option to include clones when doing flush or evict (pr#9698, Mingxin Liu)
  • core: subman: use replace instead of format (issue#16961, pr#10620, Loic Dachary)
  • core: test/common/Throttle.cc: fix race in shutdown (pr#10094, Samuel Just)
  • core: test: add the necessary judgment (pr#9694, huanwen ren)
  • core: tox.ini: remove extraneous coverage –omit option (pr#10943, Josh Durgin)
  • core: udev: always populate /dev/disk/by-parttypeuuid (issue#16351, pr#9885, Loic Dachary)
  • core: os/FuseStore: remove unneeded header file (pr#10799, Michal Jarzabek)
  • core: os/MemStore: move OmapIteratorImpl to cc file (pr#10803, Michal Jarzabek)
  • core: os/Memstore.h: add override to virtual functions (pr#10801, Michal Jarzabek)
  • core: os/Memstore: move PageSetObject class to .cc file (pr#10817, Michal Jarzabek)
  • core: os/bluestore: remove unused head file. (pr#11186, Jianpeng Ma)
  • core: safe_io: Improve portability by replacing loff_t type usage with off_t. (pr#9767, John Coyle)
  • core: src/kv/MemDB.cc: the type of the parameter of push_back() does not match the ops’s value_type (pr#10455, Willem Jan Withagen)
  • core: msg/simple: apply prefetch policy more precisely (pr#10344, xie xingguo)
  • core: CompatSet.h: remove unneeded inline (pr#10071, Michal Jarzabek)
  • core: Objclass perm feedback (pr#10313, Noah Watkins)
  • core: arch/arm.c: remove unnecessary variable read for simplicity (pr#10821, Weibing Zhang)
  • crush: don’t normalize input of crush_ln iteratively (pr#10935, Piotr Dałek)
  • crush: reset bucket->h.items[i] when removing tree item (issue#16525, pr#10093, Kefu Chai)
  • crush: CrushCompiler.cc:884 (pr#10952, xu biao)
  • crush: CrushCompiler: error out as long as parse fails (issue#17306, pr#11144, Kefu Chai)
  • doc: Add documentation about snapshots (pr#10436, Greg Farnum)
  • doc: Add two options to radosgw-admin.rst manpage (issue#17281, pr#11134, Thomas Serlin)
  • doc: Changed config parameter “rgw keystone make new tenants” in radosgw multitenancy (issue#17293, pr#11127, SirishaGuduru)
  • doc: Modification for “TEST S3 ACCESS” section in “INSTALL CEPH OBJECT GATEWAY” page (pr#9089, la-sguduru)
  • doc: Update developer docs for cmake paths (pr#11163, John Spray)
  • doc: add “–orphan-stale-secs” to radosgw-admin(8) (issue#17280, pr#11097, Ken Dreyer)
  • doc: add $pid metavar conf doc (pr#11172, Patrick Donnelly)
  • doc: add Backporting section to Essentials chapter (issue#15497, pr#10457, Nathan Cutler)
  • doc: add Prepare tenant section to Testing in the cloud chapter (pr#10413, Nathan Cutler)
  • doc: add Upload logs to archive server section... (pr#10414, Nathan Cutler)
  • doc: add client config ref (issue#16743, pr#10434, Patrick Donnelly)
  • doc: add graphic for cap bit field (pr#10897, Patrick Donnelly)
  • doc: add missing PR to hammer 0.94.8 release notes (pr#10900, Nathan Cutler)
  • doc: add openSUSE instructions to quick-start-preflight (pr#10454, Nathan Cutler)
  • doc: add rgw_enable_usage_log option in Rados Gateway admin guide (issue#16604, pr#10159, Mike Hackett)
  • doc: add troubleshooting steps for ceph-fuse (pr#10374, Ken Dreyer)
  • doc: admin/build-doc: bypass sanity check if building doc (issue#16940, pr#10623, Kefu Chai)
  • doc: ceph-authtool man page option is –print-key not –print (pr#9731, Brad Hubbard)
  • doc: ceph-deploy mon add doesn’t take multiple nodes (pr#10085, Chengwei Yang)
  • doc: clarify rbd size units (pr#11303, Ilya Dryomov)
  • doc: cleanup outdated radosgw description (pr#11248, Jiaying Ren)
  • doc: describe libvirt client logging (pr#10542, Ken Dreyer)
  • doc: do not list all major versions in get-packages.rst (pr#10899, Nathan Cutler)
  • doc: doc/cephfs: explain the various health messages (pr#10244, John Spray)
  • doc: doc/dev: Fix missing code section due to no lexer for “none” (pr#9083, Brad Hubbard)
  • doc: doc/radosgw: fix description of response elements ‘Part’ (pr#10641, weiqiaomiao)
  • doc: doc/radosgw: rename config.rst to config-fcgi.rst (pr#10381, Nathan Cutler)
  • doc: extend the CephFS troubleshooting guide (pr#10458, Greg Farnum)
  • doc: fix broken link in SHEC erasure code plugin (issue#16996, pr#10675, Albert Tu)
  • doc: fix description for rsize and rasize (pr#11101, Andreas Gerstmayr)
  • doc: fix rados/configuration/osd-config-ref.rst (pr#10619, Chengwei Yang)
  • doc: fix singleton example in Developer Guide (pr#10830, Nathan Cutler)
  • doc: fix some nits in release notes and releases table (pr#10903, Nathan Cutler)
  • doc: fix standby replay config (issue#16664, pr#10268, Patrick Donnelly)
  • doc: fix wrong osdkeepalive name in mount.ceph manpage (pr#10840, Zhi Zhang)
  • doc: fix/add changelog for 10.2.2, 0.94.7, 0.94.8 (pr#10895, Sage Weil)
  • doc: format 2 now is the default image format (pr#10705, Chengwei Yang)
  • doc: lgtm (build verified f23) (pr#9745, weiqiaomiao)
  • doc: mailmap updates for upcoming 11.0.0 (pr#9301, Yann Dupont)
  • doc: manual instructions to set up mds daemon (pr#11115, Peter Maloney)
  • doc: missing “make vstart” in quick_guide.rst (pr#11226, Leo Zhang)
  • doc: more details for pool deletion (pr#10190, Ken Dreyer)
  • doc: peering.rst, fix typo (pr#10131, Brad Hubbard)
  • doc: perf_counters.rst fix trivial typo (pr#10292, Brad Hubbard)
  • doc: rbdmap: specify bash shell interpreter (issue#16608, pr#10733, Jason Dillaman)
  • doc: release-notes.rst: draft 0.94.8 release notes (pr#10730, Nathan Cutler)
  • doc: remove btrfs contradiction (pr#9758, Nathan Cutler)
  • doc: remove i386 from minimal hardware recommendations (pr#10276, Kefu Chai)
  • doc: remove old references to inktank premium support (pr#11182, Alfredo Deza)
  • doc: remove the description of deleted options (issue#17041, pr#10741, MinSheng Lin)
  • doc: rgw, doc: fix formatting around Keystone-related options. (pr#10331, Radoslaw Zarzynski)
  • doc: rgw/doc: fix indent (pr#10676, Yan Jun)
  • doc: rm SysV instructions, add systemd (pr#10184, Ken Dreyer)
  • doc: silence sphinx warnings (pr#10621, Kefu Chai)
  • doc: small standby doc edits (pr#10479, Patrick Donnelly)
  • doc: update CephFS “early adopters” info (pr#10068, John Spray)
  • doc: update canonical tarballs URL (pr#9695, Ken Dreyer)
  • doc: update rbd glance configuration notes (pr#10629, Jason Dillaman)
  • doc: update s3 static webiste feature support status (pr#10223, Jiaying Ren)
  • doc: changelog: add v10.2.3 (pr#11238, Abhishek Lekshmanan)
  • doc: install: Use https:// for download.ceph.com (pr#10709, Colin Walters)
  • doc: release-notes: v0.94.9 (pr#10927, Sage Weil)
  • doc: release-notes: v10.2.3 jewel (pr#11234, Abhishek Lekshmanan)
  • doc: Add UK mirror and update copyright (pr#10531, Patrick McGarry)
  • doc: README.md: replace package build instructions with tarball instructions (pr#10829, Sage Weil)
  • doc: Removed reference about pool ownership based on BZ#1368528 (pr#11063, Bara Ancincova)
  • librados: use bufferlist instead of buffer::list in public header (pr#10632, Ryne Li)
  • librados: Rados-stripper: Flexible string matching for not found attributes (pr#10577, Willem Jan Withagen)
  • librados: librados examples: link and include from current source tree by default. (issue#15100, pr#8189, Jesse Williamson)
  • librbd: API methods to directly acquire and release the exclusive lock (issue#15632, pr#9592, Mykola Golub)
  • librbd: add consistency groups operations with images (pr#10034, Victor Denisov)
  • librbd: add explicit shrink check while resizing images (pr#9878, Vaibhav Bhembre)
  • librbd: asynchronous v2 image creation (issue#15321, pr#9585, Venky Shankar)
  • librbd: backward/forward compatibility for update_features (issue#17330, pr#11155, Jason Dillaman)
  • librbd: block name prefix might overflow fixed size C-string (issue#17310, pr#11148, Jason Dillaman)
  • librbd: cache was not switching to writeback after first flush (issue#16654, pr#10762, Jason Dillaman)
  • librbd: corrected use-after-free in ImageWatcher (issue#17289, pr#11112, Jason Dillaman)
  • librbd: deadlock when replaying journal during image open (issue#17188, pr#10945, Jason Dillaman)
  • librbd: delay acquiring lock if image watch has failed (issue#16923, pr#10574, Jason Dillaman)
  • librbd: discard hangs when ‘rbd_skip_partial_discard’ is enabled (issue#16386, pr#10060, Mykola Golub)
  • librbd: extract group module from librbd/internal (pr#11070, Victor Denisov)
  • librbd: failed assertion after shrinking a clone image twice (issue#16561, pr#10072, Jason Dillaman)
  • librbd: fix missing return statement if failed to get mirror image state (pr#10136, runsisi)
  • librbd: fix possible inconsistent state when disabling mirroring fails (issue#16984, pr#10711, Jason Dillaman)
  • librbd: ignore partial refresh error when acquiring exclusive lock (issue#17227, pr#11044, Jason Dillaman)
  • librbd: initial hooks for client-side, image-extent cache in IO path (pr#9121, Jason Dillaman)
  • librbd: interlock image refresh and exclusive lock operations (issue#16773, issue#17015, pr#10770, Jason Dillaman)
  • librbd: memory leak in MirroringWatcher::notify_image_updated (pr#11306, Mykola Golub)
  • librbd: optimize away unnecessary object map updates (issue#16707, issue#16689, pr#10332, Jason Dillaman)
  • librbd: optionally unregister “laggy” journal clients (issue#14738, pr#10378, Mykola Golub)
  • librbd: permit disabling journaling if in corrupt state (issue#16740, pr#10712, Jason Dillaman)
  • librbd: possible deadlock if cluster connection closed after image (issue#17254, pr#11037, Jason Dillaman)
  • librbd: potential deadlock closing image with in-flight readahead (issue#17198, pr#11152, Jason Dillaman)
  • librbd: potential double-unwatch of watch handle upon error (issue#17210, pr#10974, Jason Dillaman)
  • librbd: potential seg fault when blacklisting an image client (issue#17251, pr#11034, Jason Dillaman)
  • librbd: prevent creation of clone from non-primary mirrored image (issue#16449, pr#10123, Mykola Golub)
  • librbd: prevent creation of v2 image ids that are too large (issue#16887, pr#10581, Jason Dillaman)
  • mds: Add path filtering for dump cache (issue#11171, pr#9925, Douglas Fuller)
  • mds: Kill C_SaferCond in evict_sessions() (issue#16288, pr#9971, Douglas Fuller)
  • mds: Return “committing” rather than “committed” member in get_committing (pr#10250, Greg Farnum)
  • mds: Set mds_snap_max_uid to 4294967294 (pr#11016, Wido den Hollander)
  • mds: add assertion in handle_slave_rename_prep (issue#16807, pr#10429, John Spray)
  • mds: add assertions for standby_daemons invariant (issue#16592, pr#10316, Patrick Donnelly)
  • mds: add health warning for oversized cache (issue#16570, pr#10245, John Spray)
  • mds: add maximum fragment size constraint (issue#16164, pr#9789, Patrick Donnelly)
  • mds: add perf counters for MDLog replay and SessionMap (pr#10539, John Spray)
  • mds: catch duplicates in DamageTable (issue#17173, pr#11137, John Spray)
  • mds: fix Session::check_access() (issue#16358, pr#9769, Yan, Zheng)
  • mds: fix daemon selection when starting ranks (pr#10540, John Spray)
  • mds: fix shutting down mds timed-out due to deadlock (issue#16396, pr#9884, Zhi Zhang)
  • mds: fix up _dispatch ref-counting semantics (pr#10533, Greg Farnum)
  • mds: fixup dump Formatter’ type error; add path_ino and is_primary in the CDentry::dump() (pr#10119, huanwen ren)
  • mds: handle blacklisting during journal recovery (issue#17236, pr#11138, John Spray)
  • mds: log path with CDir damage messages (issue#16973, pr#10996, John Spray)
  • mds: move Finisher to unlocked shutdown (issue#16042, pr#10142, Patrick Donnelly)
  • mds: populate DamageTable from scrub and log more quietly (issue#16016, pr#11136, John Spray)
  • mds: remove fail-safe queueing replay request (issue#17271, pr#11078, Yan, Zheng)
  • mds: remove max_mds config option (issue#17105, pr#10914, Patrick Donnelly)
  • mds: remove unused MDSDaemon::objecter (pr#10566, Patrick Donnelly)
  • mds: snap failover fixes (pr#9955, Yan, Zheng)
  • mds: trim null dentries proactively (issue#16919, pr#10606, John Spray)
  • mds: unuse Class and cleanup (pr#10399, huanwen ren)
  • mds: use reference to avoid copy (pr#10191, Patrick Donnelly)
  • mds: MDCache.h: remove unneeded access specifier (pr#10901, Michal Jarzabek)
  • mds: MDSDaemon: move C_MDS_Tick class to .cc file (pr#11220, Michal Jarzabek)
  • mgr: implement con reset handling (pr#11299, Sage Weil)
  • mgr: squash compiler warnings (pr#11307, John Spray)
  • mon: MonClient may hang on pinging an unresponsive monitor (pr#9259, xie xingguo)
  • mon: Monitor: validate prefix on handle_command() (issue#16297, pr#9700, You Ji)
  • mon: OSDMonitor: Missing nearfull flag set (pr#11082, Igor Podoski)
  • mon: change osdmap flags set and unset messages (issue#15983, pr#9252, Vikhyat Umrao)
  • mon: clear list in better way (pr#9718, song baisen)
  • mon: do not recalculate ‘to_remove’ when it’s known (pr#9717, song baisen)
  • mon: misc cleanups (pr#10591, xie xingguo)
  • mon: remove the redundant cancel_probe_timeout function (pr#10261, song baisen)
  • mon: remove the redundant is_active judge in PaxosService (pr#9749, song baisen)
  • mon: tear down standby replays on MDS rank stop (issue#16909, pr#10628, John Spray)
  • mon: use clearer code structure (pr#10192, Patrick Donnelly)
  • mon: validate states transmitted in beacons (issue#16592, pr#10428, John Spray)
  • mon: wait 10m (not 5m) before marking down OSDs out (pr#11184, Sage Weil)
  • mon: write fsid use the right return value (pr#10197, song baisen)
  • mon: Elector:move C_ElectionExpire class to cc file (pr#10416, Michal Jarzabek)
  • mon: HealthMonitor: add override to virtual functs (pr#10549, Michal Jarzabek)
  • mon: HealthMonitor: remove unneeded include (pr#10563, Michal Jarzabek)
  • mon: MonClient.h: delete copy constr and assing op (pr#10599, Michal Jarzabek)
  • mon: MonClient: move C_CancelMonCommand to cc file (pr#10392, Michal Jarzabek)
  • mon: MonClient: move C_Tick struct to cc file (pr#10383, Michal Jarzabek)
  • mon: Monitor.h: add override to virtual functions (pr#10515, Michal Jarzabek)
  • mon: Monitor: move C_Scrub, C_ScrubTimeout to .cc (pr#10513, Michal Jarzabek)
  • mon: OSDMonitor.cc: remove unneeded casts (pr#10575, Michal Jarzabek)
  • mon: Paxos: move classes to .cc file (pr#11215, Michal Jarzabek)
  • mon: PaxosService: move classes to cc file (pr#10529, Michal Jarzabek)
  • mon: remove the redundant list swap in paxos commit_proposal (pr#10011, song baisen)
  • msgr: set close on exec flag (issue#16390, pr#9772, Kefu Chai)
  • msgr: Accepter.h: add override to virtual function (pr#10422, Michal Jarzabek)
  • msgr: Accepter: move include to cc file (pr#10441, Michal Jarzabek)
  • msgr: AsyncConnection: add const to mem functions (pr#10302, Michal Jarzabek)
  • msgr: AsyncMessenger.cc: remove unneeded cast (pr#10141, Michal Jarzabek)
  • msgr: AsyncMessenger: add const to function (pr#10114, Michal Jarzabek)
  • msgr: AsyncMessenger: move C_handle_reap class to cc (pr#10113, Michal Jarzabek)
  • msgr: AsyncMessenger: move C_processor_accept class (pr#9991, Michal Jarzabek)
  • msgr: AsyncMessenger: remove unneeded include file (pr#10195, Michal Jarzabek)
  • msgr: AsyncMessenger: remove unused function (pr#10163, Michal Jarzabek)
  • msgr: EventKqueue.h: add override to virtual func (pr#10318, Michal Jarzabek)
  • msgr: EventPoll.h: add override to virtual functions (pr#10314, Michal Jarzabek)
  • msgr: EventSelect.h: add override to virtual funct (pr#10321, Michal Jarzabek)
  • msgr: EventSelect: move includes to cc file (pr#10333, Michal Jarzabek)
  • msgr: FastStrategy.h: add override to virtual funct (pr#10482, Michal Jarzabek)
  • msgr: Message.h: add const to member function (pr#10354, Michal Jarzabek)
  • msgr: Message.h: remove code duplication (pr#10356, Michal Jarzabek)
  • msgr: QueueStrategy: add override to virtual functs (pr#10503, Michal Jarzabek)
  • msgr: Stack.h: delete copy constr and assign op (pr#11107, Michal Jarzabek)
  • msgr: async/Event.h: add const to member function (pr#10224, Michal Jarzabek)
  • msgr: async: remove unused code. (pr#11247, Jianpeng Ma)
  • osd: bail out if transaction size overflows (issue#16982, pr#10753, Kefu Chai)
  • osd: cleanup options and other redundancies (pr#10450, xie xingguo)
  • osd: drop unused variables/methods (pr#10559, xie xingguo)
  • osd: fix the mem leak of RepGather (issue#16801, pr#10423, Kefu Chai)
  • osd: fixups to explicitly persistenting missing sets (pr#10405, Samuel Just)
  • osd: increment stats on recovery pull also (issue#16277, pr#10152, Kefu Chai)
  • osd: limit omap data in push op (issue#16128, pr#9894, Wanlong Gao)
  • osd: minor performance improvements (pr#10470, xie xingguo)
  • osd: minor performance improvements and fixes (pr#10526, xie xingguo)
  • osd: misc fixes and cleanups (pr#10610, xie xingguo)
  • osd: miscellaneous fixes (pr#10572, xie xingguo)
  • osd: more cleanups (pr#10548, xie xingguo)
  • osd: object class loading and execution permissions (pr#9972, Noah Watkins)
  • osd: pass shared_ptr by const reference (pr#11266, Michal Jarzabek)
  • osd: persist the missing set explicitly (pr#10334, Samuel Just)
  • osd: remove dispatch queue check since we don’t queue hb message to this (pr#9947, Haomai Wang)
  • osd: remove duplicated function (pr#9117, Wei Jin)
  • osd: replace ceph:atomic_t with std::atomic in osd module. (pr#9138, Xiaowei Chen)
  • osd: should not look up an empty pg (issue#17380, pr#11208, Kefu Chai, Loic Dachary)
  • osd: small cleanups (pr#9980, Wanlong Gao)
  • osd: subscribe for old osdmaps when pause flag is set (issue#17023, pr#10725, Kefu Chai)
  • osd:preserve allocation hint attribute during recovery (pr#9452, yaoning)
  • osd: osd-fast-mark-down.sh: fix typo in variable assignments (pr#11224, Willem Jan Withagen)
  • osd: OSD.cc: initialise variable at definition (pr#11099, Michal Jarzabek)
  • osd: OSD.cc: remove unneeded searching of map (pr#11000, Michal Jarzabek)
  • osd: OSD.h: make some members private (pr#11085, Michal Jarzabek)
  • osd: PG.cc: remove unneeded use of count (pr#11228, Michal Jarzabek)
  • osd: PGBackend.h: move structs to .cc file (pr#10975, Michal Jarzabek)
  • osd: ReplicatedBackend: move classes to cc file (pr#10967, Michal Jarzabek)
  • osd: ReplicatedPG.h: add override to virtual funct (pr#11271, Michal Jarzabek)
  • osd: ReplicatedPG: move classes to .cc file (pr#10971, Michal Jarzabek)
  • osd: ReplicatedPG:move C_OSD_OnApplied class to cc (pr#11288, Michal Jarzabek)
  • osd: Watch.h: remove unneeded forward declaration (pr#10269, Michal Jarzabek)
  • osd: osdc/ObjectCacher.h: add const to member functions (pr#9569, Michal Jarzabek)
  • osd: osdc/ObjectCacher.h: add const to member functions (pr#9652, Michal Jarzabek)
  • osd: osdc/Objecter: move RequestStateHook class to .cc (pr#10734, Michal Jarzabek)
  • pybind: Port Python-based tests and remaining Python bindings to Python 3 (pr#10177, Oleh Prypin)
  • pybind: Rework cephfs/setup.py for PyPI (pr#10315, Anirudha Bose)
  • pybind: Rework rbd/setup.py for PyPI (issue#16940, pr#10376, Anirudha Bose)
  • pybind: global/signal_handler: dump cmdline instead of arg[0] (pr#10345, Kefu Chai)
  • pybind: make rados ready for PyPI (pr#9833, Anirudha Bose)
  • pybind: pybind/ceph_argparse: handle non ascii unicode args (issue#12287, pr#8943, Kefu Chai)
  • pybind: Python 3 compatibility for workunits (pr#10815, Anirudha Bose)
  • rbd: Allow user to remove snapshot with –force to auto flatten children (pr#10087, Dongsheng Yang)
  • rbd: Reviewed-off-by: Ilya Dryomov <idryomov@gmail.com> (issue#16171, pr#10481, Jason Dillaman)
  • rbd: Reviewed-off-by: Ilya Dryomov <idryomov@gmail.com> (issue#17030, pr#10735, Jason Dillaman)
  • rbd: bench io-size should not be larger than image size (issue#16967, pr#10708, Jason Dillaman)
  • rbd: cleanup - Proxied operations shouldn’t result in error messages if replayed (issue#16130, pr#9724, Vikhyat Umrao)
  • rbd: cls_rbd: clean up status from rbd-mirror if image removed (pr#11142, Huan Zhang)
  • rbd: cls_rbd: set omap values in batch during image creation (pr#9981, Dongsheng Yang)
  • rbd: inherit the parent image features when cloning an image (issue#15388, pr#9334, Dongsheng Yang)
  • rbd: journal: ensure in-flight ops are complete destroying journaler (issue#17446, pr#11257, Mykola Golub, Jason Dillaman)
  • rbd: journal: increase concurrency/parallelism of journal recorder (issue#15259, pr#10445, Ricardo Dias)
  • rbd: journal: move JournalTrimmer::C_RemoveSet struct (pr#10912, Michal Jarzabek)
  • rbd: qa/workunits/rbd: before removing image make sure it is not bootstrapped (issue#16555, pr#10155, Mykola Golub)
  • rbd: qa/workunits/rbd: check status also in pool dir after asok commands (pr#11291, Mykola Golub)
  • rbd: qa/workunits/rbd: set image-meta on primary image and wait it is replicated (pr#11294, Mykola Golub)
  • rbd: qa/workunits/rbd: small fixup and improvements for rbd-mirror tests (pr#10483, Mykola Golub)
  • rbd: qa/workunits/rbd: wait for image deleted before checking health (pr#10545, Mykola Golub)
  • rbd: qa/workunits: support filtering cls_rbd unit test cases (issue#16529, pr#10714, Jason Dillaman)
  • rbd: rbd-mirror: ‘wait_for_scheduled_deletion’ callback might deadlock (issue#16491, pr#9964, Jason Dillaman)
  • rbd: rbd-mirror: Add sparse read for sync image (issue#16780, pr#11005, tianqing)
  • rbd: rbd-mirror: add additional test scenarios (pr#10488, lande1234)
  • rbd: rbd-mirror: concurrent access of event might result in heap corruption (issue#17283, pr#11104, Jason Dillaman)
  • rbd: rbd-mirror: force-promoted image will remain R/O until rbd-mirror daemon restarted (issue#16974, pr#11090, Jason Dillaman)
  • rbd: rbd-mirror: gracefully fail if object map is unavailable (issue#16558, pr#10065, Jason Dillaman)
  • rbd: rbd-mirror: gracefully handle being blacklisted (issue#16349, pr#9970, Jason Dillaman)
  • rbd: rbd-mirror: image deleter should use pool id + global image uuid for key (issue#16538, issue#16227, pr#10484, Jason Dillaman)
  • rbd: rbd-mirror: improve split-brain detection logic (issue#16855, pr#10703, Jason Dillaman)
  • rbd: rbd-mirror: include local pool id in resync throttle unique key (issue#16536, pr#10254, Jason Dillaman)
  • rbd: rbd-mirror: non-primary image is recording journal events during image sync (pr#10462, Jason Dillaman)
  • rbd: rbd-mirror: potential IO stall when using asok flush request (issue#16708, pr#10432, Jason Dillaman)
  • rbd: rbd-mirror: potential assertion failure during error-induced shutdown (issue#16956, pr#10613, Jason Dillaman)
  • rbd: rbd-mirror: potential race condition during failure shutdown (issue#16980, pr#10667, Jason Dillaman)
  • rbd: rbd-mirror: quiesce in-flight event commits before shut down (issue#17355, pr#11185, Jason Dillaman)
  • rbd: rbd-mirror: reduce memory footprint during journal replay (issue#16223, pr#10341, Jason Dillaman)
  • rbd: rbd-mirror: remove ceph_test_rbd_mirror_image_replay test case (issue#16539, pr#10083, Mykola Golub)
  • rbd: rbd-mirror: replaying state should include flush action (issue#16970, pr#10627, Jason Dillaman)
  • rbd: rbd-mirror: replicate dynamic feature updates (issue#16213, pr#10980, Mykola Golub)
  • rbd: rbd-mirror: replicate image metadata settings (issue#16212, pr#11168, Mykola Golub)
  • rbd: rbd-mirror: snap rename does not properly replicate to peers (issue#16622, pr#10249, Jason Dillaman)
  • rbd: rbd-nbd does not properly handle resize notifications (issue#15715, pr#9291, Mykola Golub)
  • rbd: rbd-nbd: fix kernel deadlock during teuthology testing (issue#16921, pr#10985, Jason Dillaman)
  • rbd: recognize lock_on_read option (pr#11313, Ilya Dryomov)
  • rbd: return error if we specified a wrong image name for rbd du (issue#16987, pr#11031, Dongsheng Yang)
  • rbd: test/librbd/fsx: enable exclusive-lock feature in krbd mode (pr#10984, Ilya Dryomov)
  • rbd: test/rbd: fix possible mock journal race conditions (issue#17317, pr#11153, Jason Dillaman)
  • rbd: test: cmake related fixups for rbd tests (pr#10124, Mykola Golub)
  • rbd: test: run-rbd-tests test cmake fixup (pr#10134, Mykola Golub)
  • rbd: test: use wrapper that respects RBD_FEATURES when creating rbd image (issue#16717, pr#10348, Mykola Golub)
  • rbd: udev: add krbd readahead placeholder (pr#10841, Nick Fisk)
  • rbd: rbd_mirror/ImageSynceThrottler: move struct to .cc (pr#10928, Michal Jarzabek)
  • rgw: (build verified, provably unused/not aliased) (pr#9993, weiqiaomiao)
  • rgw: Add documentation for the Multi-tenancy feature (pr#9570, Pete Zaitcev)
  • rgw: Clean up lifecycle thread (pr#10480, Daniel Gryniewicz)
  • rgw: Do not archive metadata by default (issue#17256, pr#11051, Pavan Rallabhandi)
  • rgw: Fix Host->bucket fallback logic inversion (issue#15975, issue#17136, pr#10873, Robin H. Johnson)
  • rgw: Fix for using port 443 with pre-signed urls. (issue#16548, pr#10088, Pritha Srivastava)
  • rgw: Fix incorrect content length and range for zero sized objects during range requests (issue#16388, pr#10207, Pavan Rallabhandi)
  • rgw: Got rid of recursive mutex. (pr#10562, Adam Kupczyk)
  • rgw: RGW : setting socket backlog for via ceph.conf (issue#16406, pr#9891, Feng Guo)
  • rgw: RGWMetaSyncCR holds refs to stacks instead of crs (issue#16666, pr#10301, Casey Bodley)
  • rgw: Reviewed by: Pritha Srivastava <prsrivas@redhat.com> (issue#16188, pr#9584, Albert Tu)
  • rgw: Rgw lifecycle testing (pr#11131, Daniel Gryniewicz)
  • rgw: Rgw nfs 28 (pr#10611, Matt Benjamin)
  • rgw: add configurables for {data,meta} sync error injection (pr#10388, Yehuda Sadeh)
  • rgw: add deadlock detection to RGWCoroutinesManager::run() (pr#10032, Casey Bodley)
  • rgw: add lc_pool when decode or encode struct RGWZoneParams (pr#10439, weiqiaomiao)
  • rgw: add missing master_zone when running with old default region config (issue#16627, pr#10205, Orit Wasserman)
  • rgw: add pg_ver to tombstone_cache (pr#9851, Casey Bodley)
  • rgw: add reinit/rebind logic (ldap) (pr#10532, Matt Benjamin)
  • rgw: add return value checking to avoid possible subsequent parse exception (pr#10241, Yan Jun)
  • rgw: add suport for Swift-at-root dependent features of Swift API (issue#16673, pr#10280, Pritha Srivastava, Radoslaw Zarzynski)
  • rgw: add support for Static Website of Swift API (pr#9844, Radoslaw Zarzynski)
  • rgw: add tenant support to multisite sync (issue#16469, pr#10075, Casey Bodley)
  • rgw: back off bucket sync on failures, don’t store marker (issue#16742, pr#10355, Yehuda Sadeh)
  • rgw: better error message when user has no bucket created yet (issue#16444, pr#10162, Gaurav Kumar Garg)
  • rgw: clean-up in the authentication infrastructure (pr#10212, Radoslaw Zarzynski)
  • rgw: clear realm watch on failed watch_restart (issue#16817, pr#10446, Casey Bodley)
  • rgw: collect skips a specific coroutine stack (issue#16665, pr#10274, Yehuda Sadeh)
  • rgw: cosmetic changes only–build verified, f23 (pr#9931, Yan Jun)
  • rgw: delete region map after upgrade to zonegroup map (issue#17051, pr#10831, Casey Bodley)
  • rgw: do not try to encode or decode time_t and fix compiling warnings (pr#10751, Kefu Chai)
  • rgw: don’t fail if lost race when setting acls (issue#16930, pr#11286, Yehuda Sadeh)
  • rgw: drop create_bucket in fwd_request log message (pr#10214, Abhishek Lekshmanan)
  • rgw: eradicate dynamic memory allocation in RGWPostObj. (pr#11054, Radoslaw Zarzynski)
  • rgw: file setattr (pr#8618, Matt Benjamin)
  • rgw: finish error_repo cr in stop_spawned_services() (issue#16530, pr#10031, Yehuda Sadeh)
  • rgw: fix RGWAccessControlPolicy_SWIFT::create return value check error (issue#17090, pr#10727, weiqiaomiao)
  • rgw: fix compilation (pr#10252, Josh Durgin)
  • rgw: fix decoding of creation_time and last_update. (issue#17167, pr#11132, Orit Wasserman)
  • rgw: fix error_repo segfault in data sync (issue#16603, pr#10157, Casey Bodley)
  • rgw: fix failed to create bucket if a non-master zonegroup has a single zone (pr#10991, weiqiaomiao)
  • rgw: fix flush_read_list() error msg (pr#10749, Jiaying Ren)
  • rgw: fix for issue 16494 (issue#16494, pr#10077, Yehuda Sadeh)
  • rgw: fix for s3tests failure when ldap auth is not applied (pr#10669, Casey Bodley)
  • rgw: fix get object instance returned NoSuchKey error (issue#17111, pr#10820, Yang Honggang)
  • rgw: fix is_admin handling in RGWLDAPAuthEngine and introduce acct_privilege_t (pr#10687, Radoslaw Zarzynski)
  • rgw: fix issue 16435 (issue#16435, pr#10193, Yehuda Sadeh)
  • rgw: fix multi-delete query param parsing. (issue#16618, pr#10187, Robin H. Johnson)
  • rgw: fix period update –commit return error (issue#17110, pr#10836, weiqiaomiao)
  • rgw: fix radosgw daemon core when reopen logs (issue#17036, pr#10737, weiqiaomiao)
  • rgw: fix regression with handling double underscore (issue#16856, pr#10939, Orit Wasserman)
  • rgw: fix rgw_bucket_dir_entry decode v (pr#10918, Tianshan Qu)
  • rgw: fix the error return variable in log message and cleanups (pr#10138, Yan Jun)
  • rgw: fix the missing return value (pr#10122, Yan Jun)
  • rgw: fix upgrade from old multisite to new multisite configuration (issue#16751, pr#10368, Orit Wasserman)
  • rgw: fix wrong variable definition in cls_version_check func (pr#10233, weiqiaomiao)
  • rgw: fix wrong variable definition in rgw_cls_lc_set_entry function (pr#10408, weiqiaomiao)
  • rgw: for the create_bucket api, if the input creation_time is zero, we should set it to ‘now” (issue#16597, pr#10118, weiqiaomiao)
  • rgw: kill a compile warning for rgw_sync (pr#10425, Casey Bodley, Abhishek Lekshmanan)
  • rgw: lgtm (pr#9941, weiqiaomiao)
  • rgw: lgtm (build verified, f23) (pr#9754, John Coyle)
  • rgw: lgtm, build verified f23 (pr#10035, Yan Jun)
  • rgw: lgtm–build verified, f23 (pr#10002, Yan Jun)
  • rgw: lgtm–build verified, f23 (pr#9985, Yan Jun)
  • rgw: lgtm–should backport (pr#9979, Yan Jun)
  • rgw: log mp upload failures due to parts mismatch (pr#10424, Abhishek Lekshmanan)
  • rgw: merge setting flags operation together and cleanups (pr#10203, Yan Jun)
  • rgw: miscellaneous cleanups (pr#10299, Yan Jun)
  • rgw: multiple fixes for Swift’s object expiration (issue#16705, issue#16684, pr#10330, Radoslaw Zarzynski)
  • rgw: need to ‘open_object_section’ before dump stats in ‘RGWGetUsage_… (issue#17499, pr#11325, weiqiaomiao)
  • rgw: obsolete ‘radosgw-admin period prepare’ command (issue#17387, pr#11278, Gaurav Kumar Garg)
  • rgw: radosgw-admin: add “–orphan-stale-secs” to –help (issue#17280, pr#11098, Ken Dreyer)
  • rgw: radosgw-admin: zone[group] modify can change realm id (issue#16839, pr#10477, Casey Bodley)
  • rgw: raise log levels for common radosgw-admin errors (issue#16935, pr#10602, Shilpa Jagannath)
  • rgw: register the correct handler for cls_user_complete_stats (issue#16624, pr#10151, Orit Wasserman)
  • rgw: remove bucket index objects when deleting the bucket (issue#16412, pr#10120, Orit Wasserman)
  • rgw: remove possible duplicate setting (pr#10110, Yan Jun)
  • rgw: remove the field ret from class RGWPutLC (pr#10726, weiqiaomiao)
  • rgw: remove unused bufferlist variable (pr#10194, Yan Jun)
  • rgw: remove unused realm from radosgw-admin zone modify (issue#16632, pr#10211, Orit Wasserman)
  • rgw: remove unused variables (pr#10589, Yan Jun)
  • rgw: return “NoSuchLifecycleConfiguration” if lifecycle config does not exist (pr#10442, weiqiaomiao)
  • rgw: revert a commit that broke s3 signature validation (issue#17279, pr#11102, Casey Bodley)
  • rgw: rgw file: remove busy-wait in RGWLibFS::gc() (pr#10638, Matt Benjamin)
  • rgw: rgw ldap: protect rgw::from_base64 from non-base64 input (pr#10777, Matt Benjamin)
  • rgw: rgw ldap: enforce simple_bind w/LDAPv3 (pr#10593, Matt Benjamin)
  • rgw: rgw multisite: RGWCoroutinesManager::run returns status of last cr (issue#17047, pr#10778, Casey Bodley)
  • rgw: rgw multisite: RGWDataSyncCR fails on errors from RGWListBucketIndexesCR (issue#17073, pr#10779, Casey Bodley)
  • rgw: rgw multisite: fix for assertion in RGWMetaSyncCR (issue#17044, pr#10743, Casey Bodley)
  • rgw: rgw multisite: fixes for period puller (issue#16939, pr#10596, Casey Bodley)
  • rgw: rgw multisite: trim data logs as peer zones catch up (pr#10372, Casey Bodley)
  • rgw: rgw nfs v3 completions (pr#10745, Matt Benjamin)
  • rgw: rgw-admin: allow unsetting user’s email (issue#13286, pr#11340, Yehuda Sadeh, Weijun Duan)
  • rgw: rgw/admin: fix some return values and indents (pr#9170, Yan Jun)
  • rgw: rgw/rados: remove confused error printout (pr#9351, Yan Jun)
  • rgw: rgw/rgw_common.cc: modify the end check in RGWHTTPArgs::sys_get (pr#9136, zhao kun)
  • rgw: rgw/rgw_lc.cc: fix sleep time according to the error message (pr#10930, Weibing Zhang)
  • rgw: rgw/rgw_main: fix unnecessary variables defined (pr#10475, zhang.zezhu)
  • rgw: rgw/swift: remove redundant assignment operation (pr#11292, Yan Jun)
  • rgw: rgw_file: pre-assign times (issue#17367, pr#11181, Matt Benjamin)
  • rgw: rgw_file: fix rename cases and unify unlink (pr#10271, Matt Benjamin)
  • rgw: rgw_file: fix set_attrs operation (pr#11159, Matt Benjamin)
  • rgw: rgw_file: refuse partial, out-of-order writes (pr#10284, Matt Benjamin)
  • rgw: rgw_file: restore local definition of RGWLibFS gc interval (pr#10756, Matt Benjamin)
  • rgw: rgw_file: unlock() must precede out label (pr#10635, Matt Benjamin)
  • rgw: right parenthesis is missing in radosgw-admin help message on caps (pr#10947, Weibing Zhang)
  • rgw: set correct instance on the object (issue#17443, pr#11270, Yehuda Sadeh)
  • rgw: store oldest mdlog period in rados (issue#16894, pr#10558, Casey Bodley)
  • rgw: test/multi.py add a destructive attr to tests (pr#10401, Abhishek Lekshmanan)
  • rgw: test/rgw: add –gateways-per-zone to test_multi.py (pr#10742, Casey Bodley)
  • rgw: test_multi.py avoid creating mds (pr#10174, Abhishek Lekshmanan)
  • rgw: test_rgw_bencode: null terminate strings before checking (issue#16861, pr#10510, Yehuda Sadeh)
  • rgw: use endpoints from master zone instead of zonegroup (issue#16834, pr#10456, Casey Bodley)
  • rgw: use the standard usage of string.find (pr#10226, Yan Jun)
  • rgw: verfied: f23, subset of s3tests (pr#10448, Pritha Srivastava)
  • rgw: verified (pr#10000, weiqiaomiao)
  • rgw: verified non-regression (MS AD) (pr#10597, Pritha Srivastava)
  • rgw: verified: autobuild (issue#16928, pr#10579, Robin H. Johnson)
  • rgw: verified: MS AD (pr#10307, Pritha Srivastava)
  • rgw: verified: f23 (pr#10882, Michal Jarzabek)
  • rgw: verified: f23 (pr#10858, Weibing Zhang)
  • rgw: verified: f23 (pr#10822, Yan Jun)
  • rgw: verified: f23 (pr#10929, Weibing Zhang)
  • rgw: wip: rgw multisite: preserve zone’s extra pool (issue#16712, pr#10397, Abhishek Lekshmanan)
  • rgw: work around curl_multi_wait bug with non-blocking reads (issue#15915, issue#16695, pr#10998, Casey Bodley)
  • rgw:add a s3 API of make torrent for a object (pr#10396, zhouruisong)
  • rgw:add a s3 API of make torrent for a object (pr#9589, zhouruisong)
  • rgw:bucket check remove _multipart_ prefix (pr#6501, Weijun Duan)
  • rgw:clean unuse bufferlist (pr#10232, weiqiaomiao)
  • rgw:fix rgw boot failed after upgrade to master latest version (pr#10409, weiqiaomiao)
  • rgw:lifecycle feature [rebased] (pr#9737, Ji Chen, Daniel Gryniewicz)
  • rgw: rgw/rgw_rados.h: remove unneeded class C_Tick (pr#10954, Michal Jarzabek)
  • rgw: ext_mime_map_init add string describing for error number (pr#9807, Yan Jun)
  • tests: Add test for global static non-POD segfault (pr#10486, Brad Hubbard)
  • tests: populate /dev/disk/by-partuuid for scsi_debug (issue#17100, pr#10824, Loic Dachary)
  • tests: use a fixture for memstore clone testing (pr#11190, Kefu Chai)
  • tests: run-*make-check.sh: Make DRY_RUN actually mean a dry run (pr#11074, Brad Hubbard)
  • tests: run-cmake-check.sh: Actually run the tests (pr#11075, Brad Hubbard)
  • tests: run-cmake-check.sh: Init submodules (pr#11091, Brad Hubbard)
  • tests: run-make-check.sh: Make DRY_RUN actually do a dry run (pr#11092, Brad Hubbard)
  • tests: run-make-check.sh: pass args to do_cmake.sh (pr#10701, John Coyle)
  • tests: unittest_chain_xattr: account for existing xattrs (issue#16025, pr#11109, Dan Mick)
  • tests: src/test/cli/* tests: POSIX Convert grep -P to grep -E (pr#10319, Willem Jan Withagen)
  • test: ceph_test_msgr: fix circular locking dependency (issue#16955, pr#10612, Kefu Chai)
  • test: cli/crushtool: fix the test of compile-decompile-recompile.t (issue#17306, pr#11173, Kefu Chai)
  • test: libcephfs: fix gcc sys/fcntl.h warnings (pr#10126, John Coyle)
  • test: librados: rados_connect() should succeed (issue#17087, pr#10806, Kefu Chai)
  • test: mds: add fs dump in test_ceph_argparse.py (pr#10347, huanwen ren)
  • test: simple_dispatcher.cc: remove unused variable (pr#9932, Michal Jarzabek)
  • test: store_test: tidy-up SyntheticWorkloadState class (pr#10775, xie xingguo)
  • test: More portable use of mmap(MAP_ANON) (pr#10557, Willem Jan Withagen)
  • test: Removeall merged after print_function commit needs a fix (pr#10535, David Zafman)
  • test: ceph-disk.sh do not kill all daemons (issue#16729, pr#10346, Kefu Chai)
  • test: cephtool/test.sh: fix expect_false() calls (pr#10133, Kefu Chai)
  • test: fix usage info of omapbench (pr#10089, Wanlong Gao)
  • test: remove ceph_test_rados_api_tmap_migrate (issue#16144, pr#10256, Kefu Chai)
  • test: test_{compression_plugin,async_compressor}: do not copy plugins (pr#10153, Kefu Chai)
  • test: test_rados_tool.sh: Make script work under ctest (pr#10166, Willem Jan Withagen)
  • test: qa/workunits/cephtool/test.sh: fix omission of ceph-command (pr#10979, Willem Jan Withagen)
  • test: qa/workunits/cephtool/test.sh: s/TMPDIR/TEMP_DIR/ (pr#10306, Kefu Chai)
  • test: qa/workunits/cephtool/test.sh: use absolute path for TEMP_DIR (pr#10430, Kefu Chai)
  • tools: New “removeall” used to remove head with snapshots (pr#10098, David Zafman)
  • tools: do not closed stdout ; fix overload of “<” operator (pr#9290, xie xingguo)
  • tools: fix the core dump when get the crushmap do not exist (pr#10451, song baisen)
  • tools: rebuild monstore (issue#17179, pr#10933, Kefu Chai)
  • tools: use TextTable for “rados df” plain output (pr#9362, xie xingguo)
  • tools: fio engine for objectstore (pr#10267, Casey Bodley, Igor Fedotov, Daniel Gollub)
  • tools: rados/client: fix typo (pr#10493, Yan Jun)
  • tools: rados/client: fix waiting on the condition variable more efficient. (pr#9939, Yan Jun)
  • tools: tools/rebuild_mondb: kill comipling warning and other fixes (pr#11117, xie xingguo)
  • tools: authtool: Enhance argument combinations validation (issue#2904, pr#9704, Brad Hubbard)
  • tools: ceph-disk: change ownership of initfile to ceph:ceph (issue#16280, pr#9688, Shylesh Kumar)
  • test: ceph_test_rados_api_tmap_migrate: remove test for tmap_upgrade (pr#10234, Kefu Chai)

v10.2.5 Jewel

This point release fixes an important regression introduced in v10.2.4.

We recommend that all v10.2.x users upgrade.

Notable Changes

For more detailed information, see the complete changelog.

v10.2.4 Jewel

This point release fixes several important bugs in RBD mirroring, RGW multi-site, CephFS, and RADOS.

We recommend that all v10.2.x users upgrade. Also note the following when upgrading from hammer

Upgrading from hammer

When the last hammer OSD in a cluster containing jewel MONs is upgraded to jewel, as of 10.2.4 the jewel MONs will issue this warning: “all OSDs are running jewel or later but the ‘require_jewel_osds’ osdmap flag is not set” and change the cluster health status to HEALTH_WARN.

This is a signal for the admin to do “ceph osd set require_jewel_osds” - by doing this, the upgrade path is complete and no more pre-Jewel OSDs may be added to the cluster.

Notable Changes

For more detailed information, see the complete changelog.

v10.2.3 Jewel

This point release fixes several important bugs in RBD mirroring, RGW multi-site, CephFS, and RADOS.

We recommend that all v10.2.x users upgrade.

For more detailed information, see the complete changelog.

Notable Changes

v10.2.2 Jewel

This point release fixes several important bugs in RBD mirroring, RGW multi-site, CephFS, and RADOS.

We recommend that all v10.2.x users upgrade.

For more detailed information, see the complete changelog.

Notable Changes

v10.2.1 Jewel

This is the first bugfix release for Jewel. It contains several annoying packaging and init system fixes and a range of important bugfixes across RBD, RGW, and CephFS.

We recommend that all v10.2.x users upgrade.

For more detailed information, see the complete changelog.

Notable Changes

  • cephfs: CephFSVolumeClient should isolate volumes by RADOS namespace (issue#15400, pr#8787, Xiaoxi Chen)
  • cephfs: handle standby-replay nodes properly in upgrades (issue#15591, pr#8971, John Spray)
  • ceph-{mds,mon,osd} packages need scriptlets with systemd code (issue#14941, pr#8801, Boris Ranto, Nathan Cutler)
  • ceph_test_keyvaluedb: fix (issue#15435, pr#9051, Allen Samuels, Sage Weil)
  • cmake: add missing source file to rbd_mirror/image_replayer (pr#9052, Casey Bodley)
  • cmake: fix rbd compile errors (pr#9076, runsisi, Jason Dillaman)
  • journal: incorrectly computed object offset within set (issue#15765, pr#9038, Jason Dillaman)
  • librbd: client-side handling for incompatible object map sizes (issue#15642, pr#9039, Jason Dillaman)
  • librbd: constrain size of AioWriteEvent journal entries (issue#15750, pr#9048, Jason Dillaman)
  • librbd: does not crash if image header is too short (pr#9044, Kefu Chai)
  • librbd: Errors encountered disabling object-map while flatten is in-progress (issue#15572, pr#8869, Jason Dillaman)
  • librbd: fix get/list mirror image status API (issue#15771, pr#9036, Mykola Golub)
  • librbd: Parent image is closed twice if error encountered while opening (issue#15574, pr#8867, Jason Dillaman)
  • librbd: possible double-free of object map invalidation request upon error (issue#15643, pr#8865, runsisi)
  • librbd: possible race condition leads to use-after-free (issue#15690, pr#9009, Jason Dillaman)
  • librbd: potential concurrent event processing during journal replay (issue#15755, pr#9040, Jason Dillaman)
  • librbd: Potential double free of SetSnapRequest instance (issue#15571, pr#8803, runsisi)
  • librbd: put the validation of image snap context earlier (pr#9046, runsisi)
  • librbd: reduce log level for image format 1 warning (issue#15577, pr#9003, Jason Dillaman)
  • mds/MDSAuthCap parse no longer fails on paths with hyphens (issue#15465, pr#8969, John Spray)
  • mds: MDS incarnation no longer gets lost after remove filesystem (issue#15399, pr#8970, John Spray)
  • mon/OSDMonitor: avoid underflow in reweight-by-utilization if max_change=1 (issue#15655, pr#9006, Samuel Just)
  • python: clone operation will fail if config overridden with “rbd default format = 1” (issue#15685, pr#8972, Jason Dillaman)
  • radosgw-admin: add missing –zonegroup-id to usage (issue#15650, pr#9019, Casey Bodley)
  • radosgw-admin: update usage for zone[group] modify (issue#15651, pr#9016, Casey Bodley)
  • radosgw-admin: zonegroup remove command (issue#15684, pr#9015, Casey Bodley)
  • rbd CLI to retrieve rbd mirror state for a pool / specific image (issue#15144, issue#14420, pr#8868, Mykola Golub)
  • rbd disk-usage CLI command should support calculating full image usage (issue#14540, pr#8870, Jason Dillaman)
  • rbd: helpful error message on map failure (issue#15721, pr#9041, Venky Shankar)
  • rbd: help message distinction between commands and aliases (issue#15521, pr#9004, Yongqiang He)
  • rbd-mirror: admin socket commands to start/stop/restart mirroring (issue#15718, pr#9010, Mykola Golub, Josh Durgin)
  • rbd-mirror can crash if start up is interrupted (issue#15630, pr#8866, Jason Dillaman)
  • rbd-mirror: image sync needs to handle snapshot size and protection status (issue#15110, pr#9050, Jason Dillaman)
  • rbd-mirror: lockdep error during bootstrap (issue#15664, pr#9008, Jason Dillaman)
  • rbd-nbd: fix rbd-nbd aio callback error handling (issue#15604, pr#9005, Chang-Yi Lee)
  • rgw: add AWS4 completion support for RGW_OP_SET_BUCKET_WEBSITE (issue#15626, pr#9018, Javier M. Mellid)
  • rgw admin output (issue#15747, pr#9054, Casey Bodley)
  • rgw: fix issue #15597 (issue#15597, pr#9020, Yehuda Sadeh)
  • rgw: fix printing wrong X-Storage-Url in Swift’s TempAuth. (issue#15667, pr#9021, Radoslaw Zarzynski)
  • rgw: handle stripe transition when flushing final pending_data_bl (issue#15745, pr#9053, Yehuda Sadeh)
  • rgw: leak fixes (issue#15792, pr#9022, Yehuda Sadeh)
  • rgw: multisite: Issues with Deleting Buckets (issue#15540, pr#8930, Abhishek Lekshmanan)
  • rgw: period commit fix (issue#15828, pr#9081, Casey Bodley)
  • rgw: period delete fixes (issue#15469, pr#9047, Casey Bodley)
  • rgw: radosgw-admin zone set cuts pool names short if name starts with a period (issue#15598, pr#9029, Yehuda Sadeh)
  • rgw: segfault at RGWAsyncGetSystemObj (issue#15565, issue#15625, pr#9017, Yehuda Sadeh)
  • several backports (issue#15588, issue#15655, pr#8853, Alexandre Derumier, xie xingguo, Alfredo Deza)
  • systemd: fix typo in preset file (pr#8843, Nathan Cutler)
  • tests: make check fails on ext4 (issue#15837, pr#9063, Loic Dachary, Sage Weil)

v10.2.0 Jewel

This major release of Ceph is the foundation for the next long-term stable release series. There have been many major changes since the Infernalis (9.2.x) and Hammer (0.94.x) releases, and the upgrade process is non-trivial. Please read these release notes carefully.

Major Changes from Infernalis

  • CephFS:
    • This is the first release in which CephFS is declared stable! Several features are disabled by default, including snapshots and multiple active MDS servers.
    • The repair and disaster recovery tools are now feature-complete.
    • A new cephfs-volume-manager module is included that provides a high-level interface for creating “shares” for OpenStack Manila and similar projects.
    • There is now experimental support for multiple CephFS file systems within a single cluster.
  • RGW:
    • The multisite feature has been almost completely rearchitected and rewritten to support any number of clusters/sites, bidirectional fail-over, and active/active configurations.
    • You can now access radosgw buckets via NFS (experimental).
    • The AWS4 authentication protocol is now supported.
    • There is now support for S3 request payer buckets.
    • The new multitenancy infrastructure improves compatibility with Swift, which provides a separate container namespace for each user/tenant.
    • The OpenStack Keystone v3 API is now supported. There are a range of other small Swift API features and compatibility improvements as well, including bulk delete and SLO (static large objects).
  • RBD:
    • There is new support for mirroring (asynchronous replication) of RBD images across clusters. This is implemented as a per-RBD image journal that can be streamed across a WAN to another site, and a new rbd-mirror daemon that performs the cross-cluster replication.
    • The exclusive-lock, object-map, fast-diff, and journaling features can be enabled or disabled dynamically. The deep-flatten features can be disabled dynamically but not re-enabled.
    • The RBD CLI has been rewritten to provide command-specific help and full bash completion support.
    • RBD snapshots can now be renamed.
  • RADOS:
    • BlueStore, a new OSD backend, is included as an experimental feature. The plan is for it to become the default backend in the K or L release.
    • The OSD now persists scrub results and provides a librados API to query results in detail.
    • We have revised our documentation to recommend against using ext4 as the underlying filesystem for Ceph OSD daemons due to problems supporting our long object name handling.

Major Changes from Hammer

  • General:
    • Ceph daemons are now managed via systemd (with the exception of Ubuntu Trusty, which still uses upstart).
    • Ceph daemons run as ‘ceph’ user instead of ‘root’.
    • On Red Hat distros, there is also an SELinux policy.
  • RADOS:
    • The RADOS cache tier can now proxy write operations to the base tier, allowing writes to be handled without forcing migration of an object into the cache.
    • The SHEC erasure coding support is no longer flagged as experimental. SHEC trades some additional storage space for faster repair.
    • There is now a unified queue (and thus prioritization) of client IO, recovery, scrubbing, and snapshot trimming.
    • There have been many improvements to low-level repair tooling (ceph-objectstore-tool).
    • The internal ObjectStore API has been significantly cleaned up in order to faciliate new storage backends like BlueStore.
  • RGW:
    • The Swift API now supports object expiration.
    • There are many Swift API compatibility improvements.
  • RBD:
    • The rbd du command shows actual usage (quickly, when object-map is enabled).
    • The object-map feature has seen many stability improvements.
    • The object-map and exclusive-lock features can be enabled or disabled dynamically.
    • You can now store user metadata and set persistent librbd options associated with individual images.
    • The new deep-flatten features allow flattening of a clone and all of its snapshots. (Previously snapshots could not be flattened.)
    • The export-diff command is now faster (it uses aio). There is also a new fast-diff feature.
    • The –size argument can be specified with a suffix for units (e.g., --size 64G).
    • There is a new rbd status command that, for now, shows who has the image open/mapped.
  • CephFS:
    • You can now rename snapshots.
    • There have been ongoing improvements around administration, diagnostics, and the check and repair tools.
    • The caching and revocation of client cache state due to unused inodes has been dramatically improved.
    • The ceph-fuse client behaves better on 32-bit hosts.

Distro compatibility

Starting with Infernalis, we have dropped support for many older distributions so that we can move to a newer compiler toolchain (e.g., C++11). Although it is still possible to build Ceph on older distributions by installing backported development tools, we are not building and publishing release packages for ceph.com.

We now build packages for the following distributions and architectures:

  • x86_64:
    • CentOS 7.x. We have dropped support for CentOS 6 (and other RHEL 6 derivatives, like Scientific Linux 6).
    • Debian Jessie 8.x. Debian Wheezy 7.x’s g++ has incomplete support for C++11 (and no systemd).
    • Ubuntu Xenial 16.04 and Trusty 14.04. Ubuntu Precise 12.04 is no longer supported.
    • Fedora 22 or later.
  • aarch64 / arm64:
    • Ubuntu Xenial 16.04.

Upgrading from Infernalis or Hammer

  • We now recommend against using ext4 as the underlying file system for Ceph OSDs, especially when RGW or other users of long RADOS object names are used. For more information about why, please see Filesystem Recommendations.

    If you have an existing cluster that uses ext4 for the OSDs but uses only RBD and/or CephFS, then the ext4 limitations will not affect you. Before upgrading, be sure add the following to ceph.conf to allow the OSDs to start:

    osd max object name len = 256
    osd max object namespace len = 64

    Keep in mind that if you set these lower object name limits and later decide to use RGW on this cluster, it will have problems storing S3/Swift objects with long names. This startup check can also be disabled via the below option, although this is not recommended:

    osd check max object name len on startup = false
  • There are no major compatibility changes since Infernalis. Simply upgrading the daemons on each host and restarting all daemons is sufficient.

  • The rbd CLI no longer accepts the deprecated ‘–image-features’ option during create, import, and clone operations. The ‘–image-feature’ option should be used instead.

  • The rbd legacy image format (version 1) is deprecated with the Jewel release. Attempting to create a new version 1 RBD image will result in a warning. Future releases of Ceph will remove support for version 1 RBD images.

  • The ‘send_pg_creates’ and ‘map_pg_creates’ mon CLI commands are obsolete and no longer supported.

  • A new configure option ‘mon_election_timeout’ is added to specifically limit max waiting time of monitor election process, which was previously restricted by ‘mon_lease’.

  • CephFS filesystems created using versions older than Firefly (0.80) must use the new ‘cephfs-data-scan tmap_upgrade’ command after upgrading to Jewel. See ‘Upgrading’ in the CephFS documentation for more information.

  • The ‘ceph mds setmap’ command has been removed.

  • The default RBD image features for new images have been updated to enable the following: exclusive lock, object map, fast-diff, and deep-flatten. These features are not currently supported by the RBD kernel driver nor older RBD clients. They can be disabled on a per-image basis via the RBD CLI, or the default features can be updated to the pre-Jewel setting by adding the following to the client section of the Ceph configuration file:

    rbd default features = 1
  • The rbd legacy image format (version 1) is deprecated with the Jewel release.

  • After upgrading, users should set the ‘sortbitwise’ flag to enable the new internal object sort order:

    ceph osd set sortbitwise

    This flag is important for the new object enumeration API and for new backends like BlueStore.

  • The rbd CLI no longer permits creating images and snapshots with potentially ambiguous names (e.g. the ‘/’ and ‘@’ characters are disallowed). The validation can be temporarily disabled by adding “–rbd-validate-names=false” to the rbd CLI when creating an image or snapshot. It can also be disabled by adding the following to the client section of the Ceph configuration file:

    rbd validate names = false

Upgrading from Hammer

  • All cluster nodes must first upgrade to Hammer v0.94.4 or a later v0.94.z release; only then is it possible to upgrade to Jewel 10.2.z.

  • For all distributions that support systemd (CentOS 7, Fedora, Debian Jessie 8.x, OpenSUSE), ceph daemons are now managed using native systemd files instead of the legacy sysvinit scripts. For example,:

    systemctl start ceph.target       # start all daemons
    systemctl status ceph-osd@12      # check status of osd.12

    The main notable distro that is not yet using systemd is Ubuntu trusty 14.04. (The next Ubuntu LTS, 16.04, will use systemd instead of upstart.)

  • Ceph daemons now run as user and group ceph by default. The ceph user has a static UID assigned by Fedora and Debian (also used by derivative distributions like RHEL/CentOS and Ubuntu). On SUSE the same UID/GID as in Fedora and Debian will be used, provided it is not already assigned. In the unlikely event the preferred UID or GID is assigned to a different user/group, ceph will get a dynamically assigned UID/GID.

    If your systems already have a ceph user, upgrading the package will cause problems. We suggest you first remove or rename the existing ‘ceph’ user and ‘ceph’ group before upgrading.

    When upgrading, administrators have two options:

    1. Add the following line to ceph.conf on all hosts:

      setuser match path = /var/lib/ceph/$type/$cluster-$id

      This will make the Ceph daemons run as root (i.e., not drop privileges and switch to user ceph) if the daemon’s data directory is still owned by root. Newly deployed daemons will be created with data owned by user ceph and will run with reduced privileges, but upgraded daemons will continue to run as root.

    2. Fix the data ownership during the upgrade. This is the preferred option, but it is more work and can be very time consuming. The process for each host is to:

      1. Upgrade the ceph package. This creates the ceph user and group. For example:

        ceph-deploy install --stable jewel HOST
      2. Stop the daemon(s).:

        service ceph stop           # fedora, centos, rhel, debian
        stop ceph-all               # ubuntu
      3. Fix the ownership:

        chown -R ceph:ceph /var/lib/ceph
        chown -R ceph:ceph /var/log/ceph
      4. Restart the daemon(s).:

        start ceph-all                # ubuntu
        systemctl start ceph.target   # debian, centos, fedora, rhel

      Alternatively, the same process can be done with a single daemon type, for example by stopping only monitors and chowning only /var/lib/ceph/mon.

  • The on-disk format for the experimental KeyValueStore OSD backend has changed. You will need to remove any OSDs using that backend before you upgrade any test clusters that use it.

  • When a pool quota is reached, librados operations now block indefinitely, the same way they do when the cluster fills up. (Previously they would return -ENOSPC.) By default, a full cluster or pool will now block. If your librados application can handle ENOSPC or EDQUOT errors gracefully, you can get error returns instead by using the new librados OPERATION_FULL_TRY flag.

  • The return code for librbd’s rbd_aio_read and Image::aio_read API methods no longer returns the number of bytes read upon success. Instead, it returns 0 upon success and a negative value upon failure.

  • ‘ceph scrub’, ‘ceph compact’ and ‘ceph sync force’ are now DEPRECATED. Users should instead use ‘ceph mon scrub’, ‘ceph mon compact’ and ‘ceph mon sync force’.

  • ‘ceph mon_metadata’ should now be used as ‘ceph mon metadata’. There is no need to deprecate this command (same major release since it was first introduced).

  • The –dump-json option of “osdmaptool” is replaced by –dump json.

  • The commands of “pg ls-by-{pool,primary,osd}” and “pg ls” now take “recovering” instead of “recovery”, to include the recovering pgs in the listed pgs.

Upgrading from Firefly

Upgrading directly from Firefly v0.80.z is not recommended. It is possible to do a direct upgrade, but not without downtime, as all OSDs must be stopped, upgraded, and then restarted. We recommend that clusters be first upgraded to Hammer v0.94.6 or a later v0.94.z release; only then is it possible to upgrade to Jewel 10.2.z for an online upgrade (see below).

To do an offline upgrade directly from Firefly, all Firefly OSDs must be stopped and marked down before any Jewel OSDs will be allowed to start up. This fencing is enforced by the Jewel monitor, so you should use an upgrade procedure like:

  1. Upgrade Ceph on monitor hosts
  2. Restart all ceph-mon daemons
  3. Set noout::
    ceph osd set noout
  4. Upgrade Ceph on all OSD hosts
  5. Stop all ceph-osd daemons
  6. Mark all OSDs down with something like::
    ceph osd down seq 0 1000
  7. Start all ceph-osd daemons
  8. Let the cluster settle and then unset noout::
    ceph osd unset noout
  9. Upgrade and restart any remaining daemons (ceph-mds, radosgw)

Notable Changes since Infernalis

  • admin/build-doc: depend on zlib1g-dev and graphviz (pr#7522, Ken Dreyer)
  • auth: fail if rotating key is missing (do not spam log) (pr#6473, Qiankun Zheng)
  • auth: fix crash when bad keyring is passed (pr#6698, Dunrong Huang)
  • auth: make keyring without mon entity type return -EACCES (pr#5734, Xiaowei Chen)
  • AUTHORS: update email (pr#7854, Yehuda Sadeh)
  • authtool: update –help and manpage to match code. (pr#8456, Robin H. Johnson)
  • bluestore: latest and greatest (issue#14210, issue#13801, pr#6896, xie.xingguo, Jianpeng Ma, YiQiang Chen, Sage Weil, Ning Yao)
  • buffer: add symmetry operator==() and operator!=() (pr#7974, Kefu Chai)
  • buffer: fix internal iterator invalidation on rebuild, get_contiguous (pr#6962, Sage Weil)
  • buffer: hide iterator_impl symbols (issue#14788, pr#7688, Kefu Chai)
  • buffer: increment history alloc as well in raw_combined (issue#14955, pr#7910, Samuel Just)
  • buffer: make usable outside of ceph source again (pr#6863, Josh Durgin)
  • buffer: raw_combined allocations buffer and ref count together (pr#7612, Sage Weil)
  • buffer: use move construct to append/push_back/push_front (pr#7455, Haomai Wang)
  • build: Adding build requires (pr#7742, Erwan Velu)
  • build: a few armhf (32-bit build) fixes (pr#7999, Eric Lee, Sage Weil)
  • build: allow jemalloc with rocksdb-static (pr#7368, Somnath Roy)
  • build: build internal plugins and classes as modules (pr#6462, James Page)
  • build: cmake check fixes (pr#6787, Orit Wasserman)
  • build: cmake tweaks (pr#6254, John Spray)
  • build: fix a few warnings (pr#6847, Orit Wasserman)
  • build: fix bz2-dev dependency (pr#6948, Samuel Just)
  • build: fix compiling warnings (pr#8366, Dongsheng Yang)
  • build: Fixing BTRFS issue at ‘make check’ (pr#7805, Erwan Velu)
  • build: fix Jenkins make check errors due to deep-scrub randomization (pr#6671, David Zafman)
  • build: fix the autotools and cmake build (the new fusestore needs libfuse) (pr#7393, Kefu Chai)
  • build: fix warnings (pr#7197, Kefu Chai, xie xingguo)
  • build: fix warnings (pr#7315, Kefu Chai)
  • build: FreeBSD related fixes (pr#7170, Mykola Golub)
  • build: Gentoo: _FORTIFY_SOURCE fix. (issue#13920, pr#6739, Robin H. Johnson)
  • build: kill warnings (pr#7397, Kefu Chai)
  • build: misc make check fixes (pr#7153, Sage Weil)
  • build: more CMake package check fixes (pr#6108, Daniel Gryniewicz)
  • build: move libexec scripts to standardize across distros (issue#14687, issue#14705, issue#14723, pr#7636, Nathan Cutler, Kefu Chai)
  • build/ops: enable CR in CentOS 7 (issue#13997, pr#6844, Loic Dachary)
  • build/ops: rbd-replay moved from ceph-test-dbg to ceph-common-dbg (issue#13785, pr#6578, Loic Dachary)
  • build/ops: systemd ceph-disk unit must not assume /bin/flock (issue#13975, pr#6803, Loic Dachary)
  • build: Refrain from versioning and packaging EC testing plugins (issue#14756, issue#14723, pr#7637, Nathan Cutler, Kefu Chai)
  • build: Respect TMPDIR for virtualenv. (pr#8457, Robin H. Johnson)
  • build: spdk submodule; cmake (pr#7503, Kefu Chai)
  • build: workaround an automake bug for “make check” (issue#14723, pr#7626, Kefu Chai)
  • ceph: bash auto complete for CLI based on mon command descriptions (pr#7693, Adam Kupczyk)
  • ceph_daemon.py: Resolved ImportError to work with python3 (pr#7937, Sarthak Munshi)
  • ceph-detect-init: add debian/jessie test (pr#8074, Kefu Chai)
  • ceph-detect-init: add missing test case (pr#8105, Nathan Cutler)
  • ceph-detect-init: fix py3 test (pr#7025, Kefu Chai)
  • ceph-detect-init: fix py3 test (pr#7243, Kefu Chai)
  • ceph_detect_init/__init__.py: remove shebang (pr#7731, Nathan Cutler)
  • ceph-detect-init: return correct value on recent SUSE distros (issue#14770, pr#7909, Nathan Cutler)
  • ceph-detect-init/run-tox.sh: FreeBSD: No init detect (pr#8373, Willem Jan Withagen)
  • ceph-detect-init: Ubuntu >= 15.04 uses systemd (pr#6873, James Page)
  • ceph-disk: Add destroy and deactivate option (issue#7454, pr#5867, Vicente Cheng)
  • ceph-disk: add -f flag for btrfs mkfs (pr#7222, Darrell Enns)
  • ceph-disk: Add –setuser and –setgroup options for ceph-disk (pr#7351, Mike Shuey)
  • ceph-disk: ceph-disk list fails on /dev/cciss!c0d0 (issue#13970, issue#14233, issue#14230, pr#6879, Loic Dachary)
  • ceph-disk: compare parted output with the dereferenced path (issue#13438, pr#6219, Joe Julian)
  • ceph-disk: deactivate / destroy PATH arg are optional (pr#7756, Loic Dachary)
  • ceph-disk: do not always fail when re-using a partition (pr#8508, You Ji)
  • ceph-disk: fix failures when preparing disks with udev > 214 (issue#14080, issue#14094, pr#6926, Loic Dachary, Ilya Dryomov)
  • ceph-disk: fix prepare –help (pr#7758, Loic Dachary)
  • ceph-disk: Fix trivial typo (pr#7472, Brad Hubbard)
  • ceph-disk: flake8 fixes (pr#7646, Loic Dachary)
  • ceph-disk: get Nonetype when ceph-disk list with –format plain on single device. (pr#6410, Vicente Cheng)
  • ceph-disk: Improving ‘make check’ for ceph-disk (pr#7762, Erwan Velu)
  • ceph-disk: key management support (issue#14669, pr#7552, Loic Dachary)
  • ceph-disk: make some arguments as required if necessary (pr#7687, Dongsheng Yang)
  • ceph-disk: s/dmcrpyt/dmcrypt/ (issue#14838, pr#7744, Loic Dachary, Frode Sandholtbraaten)
  • ceph-disk: support bluestore (issue#13422, pr#7218, Loic Dachary, Sage Weil)
  • ceph-disk/test: fix test_prepare.py::TestPrepare tests (pr#7549, Kefu Chai)
  • ceph-disk: warn for prepare partitions with bad GUIDs (issue#13943, pr#6760, David Disseldorp)
  • ceph: fix tell behavior (pr#6329, David Zafman)
  • cephfs-data-scan: scan_frags (pr#5941, John Spray)
  • cephfs-data-scan: scrub tag filtering (#12133 and #12145) (issue#12133, issue#12145, pr#5685, John Spray)
  • ceph-fuse: add process to ceph-fuse –help (pr#6821, Wei Feng)
  • ceph-fuse: fix double decreasing the count to trim caps (issue#14319, pr#7229, Zhi Zhang)
  • ceph-fuse: fix double free of args (pr#7015, Ilya Shipitsin)
  • ceph-fuse: fix fsync() (pr#6388, Yan, Zheng)
  • ceph-fuse: Fix potential filehandle ref leak at umount (issue#14800, pr#7686, Zhi Zhang)
  • ceph-fuse,libcephfs: Fix client handling of “lost” open directories on shutdown (issue#14996, pr#7994, Yan, Zheng)
  • ceph-fuse,libcephfs: fix free fds being exhausted eventually because freed fds are never put back (issue#14798, pr#7685, Zhi Zhang)
  • ceph-fuse:print usage information when no parameter specified (pr#6868, Bo Cai)
  • ceph-fuse: rotate log file (pr#8485, Sage Weil)
  • ceph-fuse: While starting ceph-fuse, start the log thread first (issue#13443, pr#6224, Wenjun Huang)
  • ceph: improve the error message (issue#11101, pr#7106, Kefu Chai)
  • ceph.in: avoid a broken pipe error when use ceph command (issue#14354, pr#7212, Bo Cai)
  • ceph.in: correct dev python path for automake builds (pr#8360, Josh Durgin)
  • ceph.in: fix python libpath for automake as well (pr#8362, Josh Durgin)
  • ceph.in: Minor python3 specific changes (pr#7947, Sarthak Munshi)
  • ceph-kvstore-tool: handle bad out file on command line (pr#6093, Kefu Chai)
  • ceph-mds:add –help/-h (pr#6850, Cilang Zhao)
  • ceph_objectstore_bench: fix race condition, bugs (issue#13516, pr#6681, Igor Fedotov)
  • ceph-objectstore-tool: fix –dry-run for many ceph-objectstore-tool operations (pr#6545, David Zafman)
  • ceph-rest-api: fix fs/flag/set (pr#8428, Sage Weil)
  • ceph.spec.in: add BuildRequires: systemd (issue#13860, pr#6692, Nathan Cutler)
  • ceph.spec.in: add copyright notice (issue#14694, pr#7569, Nathan Cutler)
  • ceph.spec.in: add license declaration (pr#7574, Nathan Cutler)
  • ceph.spec.in: disable lttng and babeltrace explicitly (issue#14844, pr#7857, Kefu Chai)
  • ceph.spec.in: do not install Ceph RA on systemd platforms (issue#14828, pr#7894, Nathan Cutler)
  • ceph.spec.in: fix openldap and openssl build dependencies for SUSE (issue#15138, pr#8120, Nathan Cutler)
  • ceph.spec.in: limit _smp_mflags when lowmem_builder is set in SUSE’s OBS (issue#13858, pr#6691, Nathan Cutler)
  • ceph.spec.in: terminate if statement in %pre scriptlet (pr#8628, Nathan Cutler)
  • ceph_test_libcephfs: tolerate duplicated entries in readdir (issue#14377, pr#7246, Yan, Zheng)
  • ceph_test_msgr: reduce test size to fix memory size (pr#8127, Haomai Wang)
  • ceph_test_msgr: Use send_message instead of keepalive to wakeup connection (pr#6605, Haomai Wang)
  • ceph_test_rados: make long name ~300 chars, (not ~800) (pr#8600, Sage Weil)
  • ceph_test_rados_misc: shorten mount timeout (pr#8209, Sage Weil)
  • check-generated.sh: can’t source bash from sh (pr#8521, Michal Jarzabek)
  • cleanup (pr#8058, Yehuda Sadeh, Orit Wasserman)
  • cleanup: remove misc dead code (pr#7201, Erwan Velu)
  • client: a better check for MDS availability (pr#6253, John Spray)
  • client: add option to control how directory size is calculated (pr#7323, Yan, Zheng)
  • client: avoid creating orphan object in Client::check_pool_perm() (issue#13782, pr#6603, Yan, Zheng)
  • client: check if Fh is readable when processing a read (issue#11517, pr#7209, Yan, Zheng)
  • client: close mds sessions in shutdown() (pr#6269, John Spray)
  • client: don’t invalidate page cache when inode is no longer used (pr#6380, Yan, Zheng)
  • client: don’t mark_down on command reply (pr#6204, John Spray)
  • client: drop prefix from ints (pr#6275, John Coyle)
  • client: flush kernel pagecache before creating snapshot (issue#10436, pr#7495, Yan, Zheng)
  • client: modify a word in log (pr#6906, YongQiang He)
  • client: properly trim unlinked inode (issue#13903, pr#7297, Yan, Zheng)
  • client: removed unused Mutex from MetaRequest (pr#7655, Greg Farnum)
  • client: sys/file.h includes for flock operations (pr#6282, John Coyle)
  • client: use null snapc to check pool permission (issue#13714, pr#6497, Yan, Zheng)
  • cls/cls_rbd.cc: fix misused metadata_name_from_key (issue#13922, pr#6661, Xiaoxi Chen)
  • cls/cls_rbd: pass string by reference (pr#7232, Jeffrey Lu)
  • cls_hello: Fix grammatical error in description comment (pr#7951, Brad Hubbard)
  • cls_journal: fix -EEXIST checking (pr#8413, runsisi)
  • cls_rbd: add guards for error cases (issue#14316, issue#14317, pr#7165, xie xingguo)
  • cls_rbd: change object_map_update to return 0 on success, add logging (pr#6467, Douglas Fuller)
  • cls_rbd: enable object map checksums for object_map_save (issue#14280, pr#7149, Douglas Fuller)
  • cls_rbd: fix -EEXIST checking in cls::rbd::image_set (pr#8371, runsisi)
  • cls_rbd: fix the test for ceph-dencoder (pr#7793, Kefu Chai)
  • cls_rbd: mirror_image_list should return global image id (pr#8297, Jason Dillaman)
  • cls_rbd: mirroring directory (issue#14419, pr#7620, Josh Durgin)
  • cls_rbd: pass WILLNEED fadvise flags during object map update (issue#15332, pr#8380, Jason Dillaman)
  • cls_rbd: protect against excessively large object maps (issue#15121, pr#8099, Jason Dillaman)
  • cls_rbd: read_peers: update last_read on next cls_cxx_map_get_vals (pr#8374, Mykola Golub)
  • cls/rgw: fix FTBFS (pr#8142, Kefu Chai)
  • cls/rgw: fix use of timespan (issue#15181, pr#8212, Yehuda Sadeh)
  • cmake: add common/fs_types.cc to libcommon (pr#7898, Orit Wasserman)
  • cmake: Add common/PluginRegistry.cc to CMakeLists.txt (pr#6805, Pete Zaitcev)
  • cmake: Added new unittests to make check (pr#7572, Ali Maredia)
  • cmake: Add ENABLE_GIT_VERSION to avoid rebuilding (pr#7171, Kefu Chai)
  • cmake: add ErasureCode.cc to jerasure plugins (pr#7808, Casey Bodley)
  • cmake: add FindOpenSSL.cmake (pr#8106, Marcus Watts, Matt Benjamin)
  • cmake: add KernelDevice.cc to libos_srcs (pr#7507, Kefu Chai)
  • cmake: add missing check for HAVE_EXECINFO_H (pr#7270, Casey Bodley)
  • cmake: add missing librbd image_watcher sources (issue#14823, pr#7717, Casey Bodley)
  • cmake: add missing librbd/MirrorWatcher.cc and librd/ObjectWatcher.cc (pr#8399, Orit Wasserman)
  • cmake: add nss as a suffix for pk11pub.h (pr#6556, Samuel Just)
  • cmake: add rgw_basic_types.cc to librgw.a (pr#6786, Orit Wasserman)
  • cmake: add StandardPolicy.cc to librbd (pr#8368, Kefu Chai)
  • cmake: add TracepointProvider.cc to libcommon (pr#6823, Orit Wasserman)
  • cmake: avoid false-positive LDAP header detect (pr#8100, Matt Benjamin)
  • cmake: Build cython modules and change paths to bin/, lib/ (pr#8351, John Spray, Ali Maredia)
  • cmake: check for libsnappy in default path also (pr#7366, Kefu Chai)
  • cmake: cleanups and more features from automake (pr#7103, Casey Bodley, Ali Maredia)
  • cmake: define STRERROR_R_CHAR_P for GNU-specific strerror_r (pr#6751, Ilya Dryomov)
  • cmake: detect bzip2 and lz4 (pr#7126, Kefu Chai)
  • cmake: feb5 (pr#7541, Matt Benjamin)
  • cmake: fix build with bluestore (pr#7099, John Spray)
  • cmake: fix files list (pr#6539, Yehuda Sadeh)
  • cmake: fix mrun to handle cmake build structure (pr#8237, Orit Wasserman)
  • cmake: fix paths to various EC source files (pr#7748, Ali Maredia, Matt Benjamin)
  • cmake: fix the build of test_rados_api_list (pr#8438, Kefu Chai)
  • cmake: fix the build of tests (pr#7523, Kefu Chai)
  • cmake: fix the build on trusty (pr#7249, Kefu Chai)
  • cmake: For CMake version <= 2.8.11, use LINK_PRIVATE and LINK_PUBLIC (pr#7474, Tao Chang)
  • cmake: For CMake version <= 2.8.11, use LINK_PRIVATE (pr#8422, Haomai Wang)
  • cmake: let ceph-client-debug link with tcmalloc (pr#7314, Kefu Chai)
  • cmake: librbd and libjournal build fixes (pr#6557, Ilya Dryomov)
  • cmake: made rocksdb an imported library (pr#7131, Ali Maredia)
  • cmake: make check (pr#7912, Kefu Chai, Ali Maredia)
  • cmake: no need to run configure from run-cmake-check.sh (pr#6959, Orit Wasserman)
  • cmake (pr#7849, Ali Maredia)
  • cmake/pybind: fix include paths for cephfs (pr#8381, Josh Durgin)
  • cmake: Remove duplicate find_package libcurl line. (pr#7972, Brad Hubbard)
  • cmake: support ccache via a WITH_CCACHE build option (pr#6875, John Coyle)
  • cmake: test_build_libcephfs needs ${ALLOC_LIBS} (pr#7300, Ali Maredia)
  • cmake: update for recent librbd changes (pr#6715, John Spray)
  • cmake: update for recent rbd changes (pr#6818, Mykola Golub)
  • cmake: Use uname instead of arch. (pr#6358, John Coyle)
  • coc: fix typo in the apt-get command (pr#6659, Chris Holcombe)
  • common: add generic plugin infrastructure (pr#6696, Sage Weil)
  • common: add latency perf counter for finisher (pr#6175, Xinze Chi)
  • common/address_help.cc: fix the leak in entity_addr_from_url() (issue#14132, pr#6987, Qiankun Zheng)
  • common: add thread names (pr#5882, Igor Podoski)
  • common: add zlib compression plugin (pr#7437, Alyona Kiseleva, Kiseleva Alyona)
  • common: admin socket commands for tcmalloc heap get/set operations (pr#7512, Samuel Just)
  • common: ake ceph_time clocks work under BSD (pr#7340, Adam C. Emerson)
  • common: allow enable/disable of optracker at runtime (pr#5168, Jianpeng Ma)
  • common: Allow OPT_INT settings with negative values (issue#13829, pr#7390, Brad Hubbard, Kefu Chai)
  • common: assert: abort() rather than throw (pr#6804, Adam C. Emerson)
  • common: assert: __STRING macro is not defined by musl libc. (pr#6210, John Coyle)
  • common/bit_vector: use hard-coded value for block size (issue#14747, pr#7610, Jason Dillaman)
  • common: buffer: add cached_crc and cached_crc_adjust counts to perf dump (pr#6535, Ning Yao)
  • common: buffer/assert minor fixes (pr#6990, Matt Benjamin)
  • common: buffer: put a guard for stat() syscall during read_file (pr#7956, xie xingguo)
  • common: buffer: remove unneeded list destructor (pr#6456, Michal Jarzabek)
  • common/buffer: replace RWLock with spinlocks (pr#7294, Piotr Dałek)
  • common/ceph_context.cc:fix order of initialisers (pr#6838, Michal Jarzabek)
  • common: change the type of counter total/unhealthy_workers (pr#7254, Guang Yang)
  • common: default cluster name to config file prefix (pr#7364, Javen Wu)
  • common: Deprecate or free up a bunch of feature bits (pr#8214, Samuel Just)
  • common: Do not use non-portable constants in mutex_debug (pr#7766, Adam C. Emerson)
  • common: don’t reverse hobject_t hash bits when zero (pr#6653, Piotr Dałek)
  • common: fix OpTracker age histogram calculation (pr#5065, Zhiqiang Wang)
  • common: fix race during optracker switches between enabled/disabled mode (pr#8330, xie xingguo)
  • common: fix reset max in Throttle using perf reset command (issue#13517, pr#6300, Xinze Chi)
  • common: fix time_t cast in decode (issue#15330, pr#8419, Adam C. Emerson)
  • common/Formatter: avoid newline if there is no output (pr#5351, Aran85)
  • common: improve shared_cache and simple_cache efficiency with hash table (pr#6909, Ning Yao)
  • common/lockdep: increase max lock names (pr#6961, Sage Weil)
  • common: log: Assign LOG_DEBUG priority to syslog calls (issue#13993, pr#6815, Brad Hubbard)
  • common: log: predict log message buffer allocation size (pr#6641, Adam Kupczyk)
  • common/MemoryModel: Added explicit feature check for mallinfo(). (pr#6252, John Coyle)
  • common: new timekeeping common code, and Objecter conversion (pr#5782, Adam C. Emerson)
  • common/obj_bencher.cc: bump the precision of bandwidth field (pr#8021, Piotr Dałek)
  • common/obj_bencher.cc: faster object name generation (pr#7863, Piotr Dałek)
  • common/obj_bencher.cc: fix verification crashing when there’s no objects (pr#5853, Piotr Dałek)
  • common/obj_bencher.cc: make verify error fatal (issue#14971, pr#7897, Piotr Dałek)
  • common: optimize debug logging code (pr#6441, Adam Kupczyk)
  • common: optimize debug logging (pr#6307, Adam Kupczyk)
  • common/page.cc: _page_mask has too many bits (pr#7588, Dan Mick)
  • common: perf counter for bufferlist history total alloc (pr#6198, Xinze Chi)
  • common: reduce CPU usage by making stringstream in stringify function thread local (pr#6543, Evgeniy Firsov)
  • common: re-enable backtrace support (pr#6771, Jason Dillaman)
  • common: set thread name from correct thread (pr#7845, Igor Podoski)
  • common: signal_handler: added support for using reentrant strsignal() implementations vs. sys_siglist[] (pr#6796, John Coyle)
  • common: snappy decompressor may assert when handling segmented input bufferlist (issue#14400, pr#7268, Igor Fedotov)
  • common: string.h: return type from str_len(...) need not be const (pr#7679, Matt Benjamin)
  • common/str_map: cleanup: replaced get_str_map() function overloading by using default parameters for delimiters (pr#7266, Sahithi R V)
  • common/strtol.cc: fix the coverity warnings (pr#7967, Kefu Chai)
  • common: SubProcess: Avoid buffer corruption when calling err() (issue#15011, pr#8054, Erwan Velu)
  • common: SubProcess: fix multiple definition bug (pr#6790, Yunchuan Wen)
  • common: Thread: move copy constructor and assignment op (pr#5133, Michal Jarzabek)
  • common: time: have skewing-now call non-skewing now (pr#7466, Adam C. Emerson)
  • common/TrackedOp: fix inaccurate counting for slow requests (issue#14804, pr#7690, xie xingguo)
  • common: unit test for interval_set implementations (pr#6, Igor Fedotov)
  • common: use namespace instead of subclasses for buffer (pr#6686, Michal Jarzabek)
  • common: various fixes from SCA runs (pr#7680, Danny Al-Gaaf)
  • common: WeightedPriorityQueue Re-Add Round Robin for Classes (pr#7984, Robert LeBlanc)
  • common: WorkQueue: new PointerWQ base class for ContextWQ (issue#13636, pr#6525, Jason Dillaman)
  • compat: use prefixed typeof extension (pr#6216, John Coyle)
  • config: add $data_dir/config to config search path (pr#7377, Sage Weil)
  • config: complains when a setting is not tracked (issue#11692, pr#7085, Kefu Chai)
  • config: fix osd_crush_initial_weight (pr#7975, You Ji)
  • config: increase default async op threads (pr#7802, Piotr Dałek)
  • config_opts: disable filestore throttle soft backoff by default (pr#8265, Samuel Just)
  • configure.ac: boost_iostreams is required, not optional (pr#7816, Hector Martin)
  • configure.ac: macro fix (pr#6769, Igor Podoski)
  • configure.ac: make “–with-librocksdb-static” default to ‘check’ (issue#14463, pr#7317, Dan Mick)
  • configure.ac: update help strings for cython (pr#7856, Josh Durgin)
  • configure: Add -D_LARGEFILE64_SOURCE to Linux build. (pr#8402, Ira Cooper)
  • configure: detect bz2 and lz4 (issue#13850, issue#13981, pr#7030, Kefu Chai)
  • correct radosgw-admin command (pr#7006, YankunLi)
  • crush: add chooseleaf_stable tunable (pr#6572, Sangdi Xu, Sage Weil)
  • crush: add safety assert (issue#14496, pr#7344, songbaisen)
  • crush: clean up whitespace removal (issue#14302, pr#7157, songbaisen)
  • crush/CrushTester: check for overlapped rules (pr#7139, Kefu Chai)
  • crush/CrushTester: workaround a bug in boost::icl (pr#7560, Kefu Chai)
  • crush: fix cli tests for new crush tunables (pr#8107, Sage Weil)
  • crush: fix error log (pr#8430, Wei Jin)
  • crush: fix typo (pr#8518, Wei Jin)
  • crush: reply quickly from get_immediate_parent (issue#14334, pr#7181, song baisen)
  • crushtool: Don’t crash when called on a file that isn’t a crushmap (issue#8286, pr#8038, Brad Hubbard)
  • crushtool: improve usage/tip messages (pr#7142, xie xingguo)
  • crushtool: set type 0 name “device” for –build option (pr#6824, Sangdi Xu)
  • crush: update tunable docs. change default profile to jewel (pr#7964, Sage Weil)
  • crush: validate bucket id before indexing buckets array (issue#13477, pr#6246, Sage Weil)
  • debian/changelog: Remove stray ‘v’ in version (pr#7936, Dan Mick)
  • debian/changelog: Remove stray ‘v’ in version (pr#7938, Dan Mick)
  • debian: include cpio in build-requiers (pr#7533, Rémi BUISSON)
  • debian: package librgw_file* tests (pr#7930, Ken Dreyer)
  • debian: packaging fixes for jewel (pr#7807, Ken Dreyer, Ali Maredia)
  • debian/rpm split servers (issue#10587, pr#7746, Ken Dreyer)
  • debian/rules: put init-ceph in /etc/init.d/ceph, not ceph-base (issue#15329, pr#8406, Dan Mick)
  • debian: start ceph-mon-all and ceph-osd-all on package install (issue#15098, pr#8617, Sage Weil)
  • doc: add ceph-detect-init(8) source to dist tarball (pr#7933, Ken Dreyer)
  • doc: add cinder backend section to rbd-openstack.rst (pr#7923, RustShen)
  • doc: adding “–allow-shrink” in decreasing the size of the rbd block to distinguish from the increasing option (pr#7020, Yehua)
  • doc: Adding documentation on how to use new dynamic throttle scheme (pr#8069, Somnath Roy)
  • doc: add orphans commands to radosgw-admin(8) (issue#14637, pr#7518, Ken Dreyer)
  • doc: add v0.80.11 to the release timeline (pr#6658, Loic Dachary)
  • doc: admin/build-doc: add lxml dependencies on debian (pr#6610, Ken Dreyer)
  • doc: admin/build-doc: make paths absolute (pr#7119, Dan Mick)
  • doc: amend Fixes instructions in SubmittingPatches (pr#8312, Nathan Cutler)
  • doc: amend the rados.8 (pr#7251, Kefu Chai)
  • doc/architecture.rst: remove redundant word “across” (pr#8179, Zhao Junwang)
  • doc/cephfs/posix: update (pr#6922, Sage Weil)
  • doc: Clarify usage on starting single osd/mds/mon. (pr#7641, Patrick Donnelly)
  • doc: CodingStyle: fix broken URLs (pr#6733, Kefu Chai)
  • doc: correct typo ‘restared’ to ‘restarted’ (pr#6734, Yilong Zhao)
  • doc: detailed description of bugfixing workflow (pr#7941, Nathan Cutler)
  • doc/dev: add “Deploy a cluster for manual testing” section (issue#15218, pr#8228, Nathan Cutler)
  • doc/dev: add section on interrupting a running suite (pr#8116, Nathan Cutler)
  • doc/dev: continue writing Testing in the cloud chapter (pr#7960, Nathan Cutler)
  • doc: dev: document ceph-qa-suite (pr#6955, Loic Dachary)
  • doc/dev/index: refactor/reorg (pr#6792, Nathan Cutler)
  • doc/dev/index.rst: begin writing Contributing to Ceph (pr#6727, Nathan Cutler)
  • doc/dev/index.rst: fix headings (pr#6780, Nathan Cutler)
  • doc/dev: integrate testing into the narrative (pr#7946, Nathan Cutler)
  • doc: dev: introduction to tests (pr#6910, Loic Dachary)
  • doc/dev: various refinements (pr#7954, Nathan Cutler)
  • doc: document “readforward” and “readproxy” cache mode (pr#7023, Kefu Chai)
  • doc: download GPG key from download.ceph.com (issue#13603, pr#6384, Ken Dreyer)
  • doc: draft notes for jewel (pr#8211, Loic Dachary, Sage Weil)
  • doc: file must be empty when writing layout fields of file use “setfattr” (pr#6848, Cilang Zhao)
  • doc: fix 0.94.4 and 0.94.5 ordering (pr#7763, Loic Dachary)
  • doc: fix dependencies (pr#8587, Etienne Menguy)
  • doc: Fixed incorrect name of a “List Multipart Upload Parts” Response Entity (issue#14003, pr#6829, Lenz Grimmer)
  • doc: Fixes a CRUSH map step take argument (pr#7327, Ivan Grcic)
  • doc: Fixes a spelling error (pr#6705, Jeremy Qian)
  • doc: Fixes headline different font size and type (pr#8328, scienceluo)
  • doc: fixing image in section ERASURE CODING (pr#7298, Rachana Patel)
  • doc: fix misleading configuration guide on cache tiering (pr#7000, Yuan Zhou)
  • doc: fix “mon osd down out subtree limit” option name (pr#7164, François Lafont)
  • doc: fix outdated content in cache tier (pr#6272, Yuan Zhou)
  • doc: fix S3 C# example (pr#7027, Dunrong Huang)
  • doc: fix typo, duplicated content etc. for Jewel release notes (pr#8342, xie xingguo)
  • doc: fix typo in cephfs/quota (pr#6745, Drunkard Zhang)
  • doc: fix typo, indention etc. (pr#7829, xie xingguo)
  • doc: fix typo in developer guide (pr#6943, Nathan Cutler)
  • doc: fix typo (pr#7004, tianqing)
  • doc: fix wrong type of hyphen (pr#8252, xie xingguo)
  • doc: initial draft of RBD mirroring admin documentation (issue#15041, pr#8169, Jason Dillaman)
  • doc: INSTALL redirect to online documentation (pr#6749, Loic Dachary)
  • doc: little improvements for troubleshooting scrub issues (pr#6827, Mykola Golub)
  • doc: Modified a note section in rbd-snapshot doc. (pr#6908, Nilamdyuti Goswami)
  • doc: note that cephfs auth stuff is new in jewel (pr#6858, John Spray)
  • doc: osd-config Add Configuration Options for op queue. (pr#7837, Robert LeBlanc)
  • doc: osd: s/schedued/scheduled/ (pr#6872, Loic Dachary)
  • doc/rados/api/librados-intro.rst: fix typo (pr#7879, xie xingguo)
  • doc/rados/operations/crush: fix the formatting (pr#8306, Kefu Chai)
  • doc: recommend against ext4 (pr#8556, Sage Weil)
  • doc: reinstate accidentally removed section header (pr#8569, Josh Durgin)
  • doc: release-notes: draft v0.80.11 release notes (pr#6374, Loic Dachary)
  • doc: release-notes: draft v10.0.0 release notes (pr#6666, Loic Dachary)
  • doc/release-notes: fix indents (pr#8345, Kefu Chai)
  • doc/release-notes: jewel updates (pr#8590, Nathan Cutler, Sage Weil)
  • doc/release-notes: v9.1.0 (pr#6281, Loic Dachary)
  • doc/releases-notes: fix build error (pr#6483, Kefu Chai)
  • doc: Remove Ceph Monitors do lots of fsync() (issue#15288, pr#8327, Vikhyat Umrao)
  • doc: remove redundant space in ceph-authtool/monmaptool doc (pr#7244, Jiaying Ren)
  • doc: remove toctree items under Create CephFS (pr#6241, Jevon Qiao)
  • doc: remove unnecessary period in headline (pr#6775, Marc Koderer)
  • doc: rename the “Create a Ceph User” section and add verbage about… (issue#13502, pr#6297, ritz303)
  • doc: revise SubmittingPatches (pr#7292, Kefu Chai)
  • doc: rgw adding a very basic multisite doc (issue#15247, pr#8281, Abhishek Lekshmanan)
  • doc: rgw admin uses “region list” not “regions list” (pr#8517, Kris Jurka)
  • doc: rgw explain keystone’s verify ssl switch (pr#7862, Abhishek Lekshmanan)
  • doc: rgw multisite, add pools section & minor cosmetic improvements (pr#8653, Abhishek Lekshmanan)
  • doc: rgw: port changes from downstream to upstream (pr#7264, Bara Ancincova)
  • doc: rgw_region_root_pool option should be in [global] (issue#15244, pr#8271, Vikhyat Umrao)
  • doc: rst style fix for pools document (pr#6816, Drunkard Zhang)
  • doc: script and guidelines for mirroring Ceph (pr#7384, Wido den Hollander)
  • docs: Fix styling of newly added mirror docs (pr#6127, Wido den Hollander)
  • doc: small fixes (pr#7813, xiexingguo)
  • doc: standardize @param (not @parma, @parmam, @params) (pr#7714, Nathan Cutler)
  • doc: SubmittingPatches: there is no next; only jewel (pr#6811, Nathan Cutler)
  • doc, tests: update all http://ceph.com/ to download.ceph.com (pr#6435, Alfredo Deza)
  • doc: Update ceph-disk manual page with new feature deactivate/destroy. (pr#6637, Vicente Cheng)
  • doc: Updated CloudStack RBD documentation (pr#8308, Wido den Hollander)
  • doc: update doc for with new pool settings (pr#5951, Guang Yang)
  • doc: Updated the rados command man page to include the –run-name opt… (issue#12899, pr#5900, ritz303)
  • doc: update infernalis release notes (pr#6575, vasukulkarni)
  • doc: Update list of admin/build-doc dependencies (issue#14070, pr#6934, Nathan Cutler)
  • doc: update radosgw-admin example (pr#6256, YankunLi)
  • doc: update the OS recommendations for newer Ceph releases (pr#6355, ritz303)
  • doc: use ‘ceph auth get-or-create’ for creating RGW keyring (pr#6930, Wido den Hollander)
  • doc: very basic doc on mstart (pr#8207, Abhishek Lekshmanan)
  • drop envz.h includes (pr#6285, John Coyle)
  • fix FTBFS introduced by d0af316 (pr#7792, Kefu Chai)
  • fix: use right init_flags to finish CephContext (pr#6549, Yunchuan Wen)
  • fs: be more careful about the “mds setmap” command to prevent breakage (issue#14380, pr#7262, Yan, Zheng)
  • ghobject_t: use # instead of ! as a separator (pr#8055, Sage Weil)
  • global: do not start two daemons with a single pid-file (issue#13422, pr#7075, shun song)
  • global: do not start two daemons with a single pid-file (part 2) (issue#13422, pr#7463, Loic Dachary)
  • global/global_init: expand metavariables in setuser_match_path (issue#15365, pr#8433, Sage Weil)
  • global/signal_handler: print thread name in signal handler (pr#8177, Jianpeng Ma)
  • helgrind: additional race conditionslibrbd: journal replay should honor inter-event dependencies (pr#7274, Jason Dillaman)
  • helgrind: fix real (and imaginary) race conditions (issue#14163, pr#7208, Jason Dillaman)
  • include/encoding: do not try to be clever with list encoding (pr#7913, Sage Weil)
  • init-ceph: do umount when the path exists. (pr#6866, Xiaoxi Chen)
  • init-ceph.in: allow case-insensitive true in osd crush update on start’ (`pr#7943, Eric Cook)
  • init-ceph.in: skip ceph-disk if it is not present (issue#10587, pr#7286, Ken Dreyer)
  • init-ceph: use getopt to make option processing more flexible (issue#3015, pr#6089, Nathan Cutler)
  • journal: async methods to (un)register and update client (pr#7832, Mykola Golub)
  • journal: disconnect watch after watch error (issue#14168, pr#7113, Jason Dillaman)
  • journal: fire replay complete event after reading last object (issue#13924, pr#6762, Jason Dillaman)
  • journal: fix final result for JournalTrimmer::C_RemoveSet (pr#8516, runsisi)
  • journal: fix race condition between Future and journal shutdown (issue#15364, pr#8477, Jason Dillaman)
  • journal: flush commit position on metadata shutdown (pr#7385, Mykola Golub)
  • journal: improve commit position tracking (pr#7776, Jason Dillaman)
  • journal: incremental improvements and fixes (pr#6552, Mykola Golub)
  • journal: possible race condition during live replay (issue#15352, pr#8494, Jason Dillaman)
  • journal: prevent race injecting new records into overflowed object (issue#15202, pr#8220, Jason Dillaman)
  • journal: reset commit_position_task_ctx pointer after task complete (pr#7480, Mykola Golub)
  • journal: re-use common threads between journalers (pr#7906, Jason Dillaman)
  • journal: support replaying beyond skipped splay objects (pr#6687, Jason Dillaman)
  • krbd: remove deprecated –quiet param from udevadm (issue#13560, pr#6394, Jason Dillaman)
  • kv: fix bug in kv key optimization (pr#6511, Sage Weil)
  • kv: implement value_as_ptr() and use it in .get() (pr#7052, Piotr Dałek)
  • kv/KineticStore: fix broken split_key (pr#6574, Haomai Wang)
  • kv: optimize and clean up internal key/value interface (pr#6312, Piotr Dałek, Sage Weil)
  • libcephfs: fix python tests and fix getcwd on missing dir (pr#7901, John Spray)
  • libcephfs: Improve portability by replacing loff_t type usage with off_t (pr#6301, John Coyle)
  • libcephfs: only check file offset on glibc platforms (pr#6288, John Coyle)
  • libcephfs: update LIBCEPHFS_VERSION to indicate the interface was changed (pr#7551, Jevon Qiao)
  • librados: add c++ style osd/pg command interface (pr#6893, Yunchuan Wen)
  • librados: aix gcc librados port (pr#6675, Rohan Mars)
  • librados: avoid malloc(0) (which can return NULL on some platforms) (issue#13944, pr#6779, Dan Mick)
  • librados: cancel aio notification linger op upon completion (pr#8102, Jason Dillaman)
  • librados: check connection state in rados_monitor_log (issue#14499, pr#7350, David Disseldorp)
  • librados: clean up Objecter.h (pr#6731, Jie Wang)
  • librados: detect laggy ops with objecter_timeout, not osd_timeout (pr#7629, Greg Farnum)
  • librados: do cleanup (pr#6488, xie xingguo)
  • librados: do not clear handle for aio_watch() (pr#7771, xie xingguo)
  • librados: fix examples/librados/Makefile error. (pr#6320, You Ji)
  • librados: fix pool alignment API overflow issue (issue#13715, pr#6489, xie xingguo)
  • librados: fix potential null pointer access when do pool_snap_list (issue#13639, pr#6422, xie xingguo)
  • librados: fix PromoteOn2ndRead test for EC (pr#6373, Sage Weil)
  • librados: fix rare race where pool op callback may hang forever (issue#13642, pr#6426, xie xingguo)
  • librados: fix several flaws introduced by the enumeration_objects API (issue#14299, issue#14301, issue#14300, pr#7156, xie xingguo)
  • librados: fix test failure with new aio watch/unwatch API (pr#7824, Jason Dillaman)
  • librados: implement async watch/unwatch (pr#7649, Haomai Wang)
  • librados: include/rados/librados.h: fix typo (pr#6741, Nathan Cutler)
  • librados: init crush_location from config file. (issue#13473, pr#6243, Wei Luo)
  • librados: mix lock cycle (un)registering asok commands (pr#7581, John Spray)
  • librados: move to c++11 concurrency types (pr#5931, Adam C. Emerson)
  • librados: new style (sharded) object listing (pr#6405, John Spray, Sage Weil)
  • librados: potential null pointer access in list_(n)objects (issue#13822, pr#6639, xie xingguo)
  • librados: race condition on aio_notify completion handling (pr#7864, Jason Dillaman)
  • librados: remove duplicate definitions for rados pool_stat_t and cluster_stat_t (pr#7330, Igor Fedotov)
  • librados: Revert “rados: Add new field flags for ceph_osd_op.copy_get.” (pr#8486, Sage Weil)
  • librados: shutdown finisher in a more graceful way (pr#7519, xie xingguo)
  • librados: Solaris port (pr#6416, Rohan Mars)
  • librados: stat2 with higher time precision (pr#7915, Yehuda Sadeh, Matt Benjamin)
  • librados: Striper: Fix incorrect push_front -> append_zero change (pr#7578, Haomai Wang)
  • librados_test_stub: protect against notify/unwatch race (pr#7540, Jason Dillaman)
  • librados: wrongly passed in argument for stat command (issue#13703, pr#6476, xie xingguo)
  • librbd: allocate new journal tag after acquiring exclusive lock (pr#7884, Jason Dillaman)
  • librbd: API: async open and close (issue#14264, pr#7259, Mykola Golub)
  • librbd: automatically flush IO after blocking write operations (issue#13913, pr#6742, Jason Dillaman)
  • librbd: Avoid create two threads per image (pr#7400, Haomai Wang)
  • librbd: avoid throwing error if mirroring is unsupported (pr#8417, Jason Dillaman)
  • librbd: better handling of exclusive lock transition period (pr#7204, Jason Dillaman)
  • librbd: block maintenance ops until after journal is ready (issue#14510, pr#7382, Jason Dillaman)
  • librbd: block read requests until journal replayed (pr#7627, Jason Dillaman)
  • librbd: check for presence of journal before attempting to remove (issue#13912, pr#6737, Jason Dillaman)
  • librbd: clear error when older OSD doesn’t support image flags (issue#14122, pr#7035, Jason Dillaman)
  • librbd: correct include guard in RenameRequest.h (pr#7143, Jason Dillaman)
  • librbd: correct issues discovered during teuthology testing (issue#14108, issue#14107, pr#6974, Jason Dillaman)
  • librbd: correct issues discovered via valgrind memcheck (pr#8132, Jason Dillaman)
  • librbd: correct issues discovered when cache is disabled (issue#14123, pr#6979, Jason Dillaman)
  • librbd: correct race conditions discovered during unit testing (issue#14060, pr#6923, Jason Dillaman)
  • librbd: deadlock while attempting to flush AIO requests (issue#13726, pr#6508, Jason Dillaman)
  • librbd: differentiate journal replay flush vs shut down (pr#7698, Jason Dillaman)
  • librbd: disable copy-on-read when not exclusive lock owner (issue#14167, pr#7129, Jason Dillaman)
  • librbd: disable image mirroring when image is removed (issue#15265, pr#8375, Ricardo Dias)
  • librbd: disallow unsafe rbd_op_threads values (issue#15034, pr#8459, Josh Durgin)
  • librbd: do not ignore self-managed snapshot release result (issue#14170, pr#7043, Jason Dillaman)
  • librbd: enable/disable image mirroring automatically for pool mode (issue#15143, pr#8204, Ricardo Dias)
  • librbd: ensure copy-on-read requests are complete prior to closing parent image (pr#6740, Jason Dillaman)
  • librbd: ensure librados callbacks are flushed prior to destroying (issue#14092, pr#7040, Jason Dillaman)
  • librbd: exit if parent’s snap is gone during clone (issue#14118, pr#6968, xie xingguo)
  • librbd: fix enable objectmap feature issue (issue#13558, pr#6339, xinxin shu)
  • librbd: fix handling of proxied maintenance operations during shut down (issue#15471, issue#15456, pr#8565, Jason Dillaman)
  • librbd: fix internal handling of dynamic feature updates (pr#7299, Jason Dillaman)
  • librbd: fix journal iohint (pr#6917, Jianpeng Ma)
  • librbd: fix known test case race condition failures (issue#13969, pr#6800, Jason Dillaman)
  • librbd: fix merge-diff for >2GB diff-files (issue#14030, pr#6889, Yunchuan Wen)
  • librbd: fix potential memory leak (issue#14332, issue#14333, pr#7174, xie xingguo)
  • librbd: fix snap_exists API return code overflow (issue#14129, pr#6986, xie xingguo)
  • librbd: fix state machine race conditions during shut down (pr#7761, Jason Dillaman)
  • librbd: fix test case race condition for journaling ops (pr#6877, Jason Dillaman)
  • librbd: fix tracepoint parameter in diff_iterate (pr#6892, Yunchuan Wen)
  • librbd: flush and invalidate cache via admin socket (issue#2468, pr#6453, Mykola Golub)
  • librbd: handle unregistering the image watcher when disconnected (pr#8094, Jason Dillaman)
  • librbd: image refresh code paths converted to async state machines (pr#6859, Jason Dillaman)
  • librbd: include missing header for bool type (pr#6798, Mykola Golub)
  • librbd: initial collection of state machine unit tests (pr#6703, Jason Dillaman)
  • librbd: integrate journaling for maintenance operations (pr#6625, Jason Dillaman)
  • librbd: integrate journaling support for IO operations (pr#6541, Jason Dillaman)
  • librbd: integrate journal replay with fsx testing (pr#7583, Jason Dillaman)
  • librbd: IO deadlock when dynamically enabling/disabling features (issue#15102, pr#8511, Jason Dillaman)
  • librbd: journal framework for tracking exclusive lock transitions (issue#13298, pr#7529, Jason Dillaman)
  • librbd: journaling-related lock dependency cleanup (pr#6777, Jason Dillaman)
  • librbd: journal replay needs to support re-executing maintenance ops (issue#14822, pr#7785, Jason Dillaman)
  • librbd: journal replay should honor inter-event dependencies (pr#7019, Jason Dillaman)
  • librbd: journal shut down flush race condition (issue#14434, pr#7302, Jason Dillaman)
  • librbd: not necessary to hold owner_lock while releasing snap id (issue#13914, pr#6736, Jason Dillaman)
  • librbd: only send signal when AIO completions queue empty (pr#6729, Jianpeng Ma)
  • librbd: optionally validate new RBD pools for snapshot support (issue#13633, pr#6925, Jason Dillaman)
  • librbd: partial revert of commit 9b0e359 (issue#13969, pr#6789, Jason Dillaman)
  • librbd: perf counters might not be initialized on error (issue#13740, pr#6523, Jason Dillaman)
  • librbd: perf section name: use hyphen to separate components (issue#13719, pr#6516, Mykola Golub)
  • librbd: properly handle replay of snap remove RPC message (issue#14164, pr#7042, Jason Dillaman)
  • librbd: reduce mem copies to user-buffer during read (pr#7548, Jianpeng Ma)
  • librbd: reduce verbosity of common error condition logging (issue#14234, pr#7114, Jason Dillaman)
  • librbd: refresh image if required before replaying journal ops (issue#14908, pr#7978, Jason Dillaman)
  • librbd: remove canceled tasks from timer thread (issue#14476, pr#7329, Douglas Fuller)
  • librbd: remove duplicate read_only test in librbd::async_flatten (pr#5856, runsisi)
  • librbd: remove last synchronous librados calls from open/close state machine (pr#7839, Jason Dillaman)
  • librbd: replaying a journal op post-refresh requires locking (pr#8028, Jason Dillaman)
  • librbd: resize should only update image size within header (issue#13674, pr#6447, Jason Dillaman)
  • librbd: retrieve image name when opening by id (pr#7736, Mykola Golub)
  • librbd: return error if we fail to delete object_map head object (issue#14098, pr#6958, xie xingguo)
  • librbd: Revert “librbd: use task finisher per CephContext” (issue#14780, pr#7667, Josh Durgin)
  • librbd: send notifications for mirroring status updates (pr#8355, Jason Dillaman)
  • librbd: several race conditions discovered under single CPU environment (pr#7653, Jason Dillaman)
  • librbd: simplify IO method signatures for 32bit environments (pr#6700, Jason Dillaman)
  • librbd: small fixes for error messages and readahead counter (issue#14127, pr#6983, xie xingguo)
  • librbd: start perf counters after id is initialized (issue#13720, pr#6494, Mykola Golub)
  • librbd: support eventfd for AIO completion notifications (pr#5465, Haomai Wang)
  • librbd: truncate does not need to mark the object as existing in the object map (issue#14789, pr#7772, xinxin shu)
  • librbd: uninitialized state in snap remove state machine (pr#6982, Jason Dillaman)
  • librbd: update of mirror pool mode and mirror peer handling (pr#7718, Jason Dillaman)
  • librbd: use async librados notifications (pr#7668, Jason Dillaman)
  • log: do not repeat errors to stderr (issue#14616, pr#7983, Sage Weil)
  • log: fix stack overflow when flushing large log lines (issue#14707, pr#7599, Igor Fedotov)
  • log: segv in a portable way (issue#14856, pr#7790, Kefu Chai)
  • log: use delete[] (pr#7904, Sage Weil)
  • mailmap: Abhishek Lekshmanan affiliation (pr#8615, Abhishek Lekshmanan)
  • mailmap: add UMCloud affiliation (pr#6820, Jiaying Ren)
  • mailmap for 10.0.4 (pr#7932, Abhishek Lekshmanan)
  • mailmap: hange organization for Dongmao Zhang (pr#7173, Dongmao Zhang)
  • mailmap: Igor Podoski affiliation (pr#7219, Igor Podoski)
  • mailmap: Jewel updates (pr#6750, Abhishek Lekshmanan)
  • mailmap: modify member info (pr#6468, Xiaowei Chen)
  • mailmap: revise organization (pr#6519, Li Wang)
  • mailmap: Ubuntu Kylin name changed to Kylin Cloud (pr#6532, Loic Dachary)
  • mailmap: update .organizationmap (pr#6565, chenji-kael)
  • mailmap update (pr#7210, M Ranga Swami Reddy)
  • mailmap update (pr#8522, M Ranga Swami Reddy)
  • mailmap update (pr#8608, M Ranga Swami Reddy)
  • mailmap: updates for infernalis. (pr#6495, Yann Dupont)
  • mailmap: updates (pr#6258, M Ranga Swami Reddy)
  • mailmap: updates (pr#6594, chenji-kael)
  • mailmap updates (pr#6992, Loic Dachary)
  • mailmap updates (pr#7189, Loic Dachary)
  • mailmap updates (pr#7528, Yann Dupont)
  • mailmap updates (pr#8256, Loic Dachary)
  • mailmap: Xie Xingguo affiliation (pr#6409, Loic Dachary)
  • Makefile-env.am: set a default for CEPH_BUILD_VIRTUALENV (part 2) (pr#8320, Loic Dachary)
  • makefile: fix rbdmap manpage (pr#8310, Kefu Chai)
  • makefile: remove libedit from libclient.la (pr#7284, Kefu Chai)
  • makefiles: remove bz2-dev from dependencies (issue#13981, pr#6939, Piotr Dałek)
  • man/8/ceph-disk: fix formatting issue (pr#8003, Sage Weil)
  • man/8/ceph-disk: fix formatting issue (pr#8012, Sage Weil)
  • man: document listwatchers cmd in “rados” manpage (pr#7021, Kefu Chai)
  • mdsa: A few more snapshot fixes, mostly around snapshotted inode/dentry tracking (pr#7798, Yan, Zheng)
  • mds: Add cmapv to ESessions default constructor initializer list (pr#8403, John Coyle)
  • mds: add ‘p’ flag in auth caps to control setting pool in layout (pr#6567, John Spray)
  • mds: advance clientreplay when replying (issue#14357, pr#7216, John Spray)
  • mds: allow client to request caps when opening file (issue#14360, pr#7952, Yan, Zheng)
  • mds: Be more careful about directory fragmentation and scrubbing (issue#15167, pr#8180, Yan, Zheng)
  • mds, client: add namespace to file_layout_t (previously ceph_file_layout) (pr#7098, Yan, Zheng, Sage Weil)
  • mds, client: fix locking around handle_conf_change (issue#14365, issue#14374, pr#7312, John Spray)
  • mds: don’t double-shutdown the timer when suiciding (issue#14697, pr#7616, Greg Farnum)
  • mds: expose state of recovery to status ASOK command (issue#14146, pr#7068, Yan, Zheng)
  • mds: filelock deadlock (pr#7713, Yan, Zheng)
  • mds: fix client capabilities during reconnect (client.XXXX isn’t responding to mclientcaps(revoke)) (issue#11482, pr#6432, Yan, Zheng)
  • mds: fix client cap/message replay order on restart (issue#14254, issue#13546, pr#7199, Yan, Zheng)
  • mds: fix file_layout_t legacy encoding snafu (pr#8455, Sage Weil)
  • mds: fix fsmap decode (pr#8063, Greg Farnum)
  • mds: fix FSMap upgrade with daemons in the map (pr#8073, John Spray, Greg Farnum)
  • mds: fix inode_t::compare() (issue#15038, pr#8014, Yan, Zheng)
  • mds: fix scrub_path (pr#6684, John Spray)
  • mds: fix setvxattr (broken in a536d114) (issue#14029, pr#6941, John Spray)
  • mds: fix standby replay thread creation (issue#14144, pr#7132, John Spray)
  • mds: fix stray purging in ‘stripe_count > 1’ case (issue#15050, pr#8040, Yan, Zheng)
  • mds: FSmap decode fix (pr#8604, Greg Farnum)
  • mds/FSMap: use _ in key name (pr#8614, Sage Weil)
  • mds: function parameter ‘df’ should be passed by reference (pr#7490, Na Xie)
  • mds: implement snapshot rename (pr#5645, xinxin shu)
  • mds: judgment added to avoid the risk of visiting the NULL pointer (pr#7358, Kongming Wu)
  • mds: messages/MOSDOp: cast in assert to eliminate warnings (issue#13625, pr#6414, David Zafman)
  • mds: Minor fixes around data scan in some scenarios (pr#8115, Yan, Zheng)
  • mds: Multi-filesystem support (issue#14952, pr#6953, John Spray, Sage Weil)
  • mds: new filtered MDS tell commands for sessions (pr#6180, John Spray)
  • mds: properly set STATE_STRAY/STATE_ORPHAN for stray dentry/inode (issue#13777, pr#6553, Yan, Zheng)
  • mds: repair the command option “–hot-standby” (pr#6454, Wei Feng)
  • mds: ScrubStack and “tag path” command (pr#5662, Yan, Zheng, John Spray, Greg Farnum)
  • mds/Session: use projected parent for auth path check (issue#13364, pr#6200, Sage Weil)
  • mds: tear down connections from tell commands (issue#14048, pr#6933, John Spray)
  • mds: we should wait messenger when MDSDaemon suicide (pr#6996, Wei Feng)
  • messages/MOSDOp: clear reqid inc for v6 encoding (issue#15230, pr#8299, Sage Weil)
  • mirrors: Change contact e-mail address for se.ceph.com (pr#8007, Wido den Hollander)
  • mirrors: Updated scripts and documentation for mirrors (pr#7847, Wido den Hollander)
  • misc: use make_shared while creating shared_ptr (pr#7769, Somnath Roy)
  • mon: add an independent option for max election time (pr#7245, Sangdi Xu)
  • mon: add osd blacklist clear (pr#6945, John Spray)
  • mon: add RAW USED column to ceph df detail (pr#7087, Ruifeng Yang)
  • mon: block ‘ceph osd pg-temp ...’ if pg_temp update is already pending (pr#6704, Sage Weil)
  • mon: cleanup set-quota error msg (pr#7371, Abhishek Lekshmanan)
  • monclient: avoid key renew storm on clock skew (issue#12065, pr#8258, Alexey Sheplyakov)
  • mon: compact full epochs also (issue#14537, pr#7396, Kefu Chai)
  • mon: consider pool size when creating pool (issue#14509, pr#7359, songbaisen)
  • mon: consider the pool size when setting pool crush rule (issue#14495, pr#7341, song baisen)
  • mon: degrade a log message to level 2 (pr#6929, Kongming Wu)
  • mon: do not send useless pg_create messages for split pgs (pr#8247, Sage Weil)
  • mon: don’t require OSD W for MRemoveSnaps (issue#13777, pr#6601, John Spray)
  • mon: drop useless rank init assignment (issue#14508, pr#7321, huanwen ren)
  • mon: enable ‘mon osd prime pg temp’ by default (pr#7838, Robert LeBlanc)
  • mon: fix calculation of %USED (pr#7881, Adam Kupczyk)
  • mon: fix ceph df pool available calculation for 0-weighted OSDs (pr#6660, Chengyuan Li)
  • mon: fix coding-style on PG related Monitor files (pr#6881, Wido den Hollander)
  • mon: fixes related to mondbstore->get() changes (pr#6564, Piotr Dałek)
  • mon: fix keyring permissions (issue#14950, pr#7880, Owen Synge)
  • mon: fix locking in preinit error paths (issue#14473, pr#7353, huanwen ren)
  • mon: fix monmap creation stamp (pr#7459, duanweijun)
  • mon: fix reuse of osd ids (clear osd info on osd deletion) (issue#13988, pr#6900, Loic Dachary, Sage Weil)
  • mon: fix routed_request_tids leak (pr#6102, Ning Yao)
  • mon: fix sync of config-key data (pr#7363, Xiaowei Chen)
  • mon: fix the can’t change subscribe level bug in monitoring log (pr#7031, Zhiqiang Wang)
  • mon: go into ERR state if multiple PGs are stuck inactive (issue#13923, pr#7253, Wido den Hollander)
  • mon: initialize last_* timestamps on new pgs to creation time (issue#14952, pr#7980, Sage Weil)
  • mon: initialize recorded election epoch properly even when standalone (issue#13627, pr#6407, huanwen ren)
  • mon: make clock skew checks sane (issue#14175, pr#7141, Joao Eduardo Luis)
  • mon: mark_down_pgs in lockstep with pg_map’s osdmap epoch (pr#8208, Sage Weil)
  • mon/MDSMonitor: add confirmation to “ceph mds rmfailed” (issue#14379, pr#7248, Yan, Zheng)
  • mon/MDSMonitor.cc: properly note beacon when health metrics changes (issue#14684, pr#7757, Yan, Zheng)
  • mon: modify a dout level in OSDMonitor.cc (pr#6928, Yongqiang He)
  • mon/MonClient: avoid null pointer error when configured incorrectly (issue#14405, pr#7276, Bo Cai)
  • mon/MonClient: fix shutdown race (issue#13992, pr#8335, Sage Weil)
  • mon/monitor: some clean up (pr#7520, huanwen ren)
  • mon: MonmapMonitor: don’t expose uncommitted state to client (pr#6854, Joao Eduardo Luis)
  • mon/OSDMonitor: osdmap laggy set a maximum limit for interval (pr#7109, Zengran Zhang)
  • mon: osd [test-]reweight-by-{pg,utilization} command updates (pr#7890, Dan van der Ster, Sage Weil)
  • mon: paxos is_recovering calc error (pr#7227, Weijun Duan)
  • mon/PGMap: show rd/wr iops separately in status reports (pr#7072, Cilang Zhao)
  • mon: PGMonitor: acting primary diff with cur_stat, should not set pg to stale (pr#7083, Xiaowei Chen)
  • mon/PGMonitor: reliably mark PGs state (pr#8089, Sage Weil)
  • mon: PG Monitor should report waiting for backfill (issue#12744, pr#7398, Abhishek Lekshmanan)
  • mon/pgmonitor: use appropriate forced conversions in get_rule_avail (pr#7705, huanwen ren)
  • mon: reduce CPU and memory manager pressure of pg health check (pr#7482, Piotr Dałek)
  • mon: remove ‘mds setmap’ (issue#15136, pr#8121, Sage Weil)
  • mon: remove remove_legacy_versions() (pr#8324, Kefu Chai)
  • mon: remove unnecessary comment for update_from_paxos (pr#8400, Qinghua Jin)
  • mon: remove unused variable (issue#15292, pr#8337, Javier M. Mellid)
  • mon: revert MonitorDBStore’s WholeStoreIteratorImpl::get (issue#13742, pr#6522, Piotr Dałek)
  • mon: should not set isvalid = true when cephx_verify_authorizer return false (issue#13525, pr#6306, Ruifeng Yang)
  • mon: show the pool quota info on ceph df detail command (issue#14216, pr#7094, song baisen)
  • mon: some cleanup in MonmapMonitor.cc (pr#7418, huanwen ren)
  • mon: standardize Ceph removal commands (pr#7939, Dongsheng Yang)
  • mon: support min_down_reporter by subtree level (default by host) (pr#6709, Xiaoxi Chen)
  • mon: unconfuse object count skew message (pr#7882, Piotr Dałek)
  • mon: unregister command on shutdown (pr#7504, huanwen ren)
  • mon: warn if pg(s) not scrubbed (issue#13142, pr#6440, Michal Jarzabek)
  • mount.ceph: memory leaks (pr#6905, Qiankun Zheng)
  • mount.fuse.ceph: better parsing of arguments passed to mount.fuse.ceph by mount command (issue#14735, pr#7607, Florent Bautista)
  • mrun: update path to cmake binaries (pr#8447, Casey Bodley)
  • msg: add override to virutal methods (pr#6977, Michal Jarzabek)
  • msg: add thread safety for “random” Messenger + fix wrong usage of random functions (pr#7650, Avner BenHanoch)
  • msg/async: AsyncConnection: avoid debug log in cleanup_handler (pr#7547, Haomai Wang)
  • msg/async: AsyncConnection: avoid is_connected require connection’s lock (issue#15440, pr#8520, Haomai Wang)
  • msg/async: AsyncMessenger: fix several bugs (pr#7831, Haomai Wang)
  • msg/async: AsyncMessenger: fix valgrind leak (pr#7725, Haomai Wang)
  • msg/async: avoid log spam on throttle (issue#15031, pr#8263, Kefu Chai)
  • msg/async: bunch of fixes (pr#7379, Piotr Dałek)
  • msg/async: cleanup dead connection and misc things (pr#7158, Haomai Wang)
  • msg/async: don’t calculate msg header crc when not needed (pr#7815, Piotr Dałek)
  • msg/async: don’t use shared_ptr to manage EventCallback (pr#7028, Haomai Wang)
  • msg/async: Event: fix clock skew problem (pr#7949, Wei Jin)
  • msg/async: fix array boundary (pr#7451, Wei Jin)
  • msg: async: fix perf counter description and simplify _send_keepalive_or_ack (pr#8046, xie xingguo)
  • msg/async: fix potential race condition (pr#7453, Haomai Wang)
  • msg/async: fix send closed local_connection message problem (pr#7255, Haomai Wang)
  • msg/async: let receiver ack message ASAP (pr#6478, Haomai Wang)
  • msg/async: reduce extra tcp packet for message ack (pr#7380, Haomai Wang)
  • msg/async: remove experiment feature (pr#7820, Haomai Wang)
  • msg: async: small cleanups (pr#7871, xie xingguo)
  • msg/async: smarter MSG_MORE (pr#7625, Piotr Dałek)
  • msg: async: start over after failing to bind a port in specified range (issue#14928, issue#13002, pr#7852, xie xingguo)
  • msg/async: support of non-block connect in async messenger (issue#12802, pr#5848, Jianhui Yuan)
  • msg/async: _try_send trim already sent for outcoming_bl more efficient (pr#7970, Yan Jun)
  • msg/async: will crash if enabling async msg because of an assertion (pr#6640, Zhi Zhang)
  • msg: filter out lo addr when bind osd addr (pr#7012, Ji Chen)
  • msg: removed unneeded includes from Dispatcher (pr#6814, Michal Jarzabek)
  • msg: remove duplicated code - local_delivery will now call ‘enqueue’ (pr#7948, Avner BenHanoch)
  • msg: remove unneeded inline (pr#6989, Michal Jarzabek)
  • msgr: fix large message data content length causing overflow (pr#6809, Jun Huang, Haomai Wang)
  • msg: significantly reduce minimal memory usage of connections (pr#7567, Piotr Dałek)
  • msg/simple: pipe: memory leak when signature check failed (pr#7096, Ruifeng Yang)
  • msg/simple: remove unneeded friend declarations (pr#6924, Michal Jarzabek)
  • msg/xio: fix compilation (pr#7479, Roi Dayan)
  • msg/xio: fixes (pr#7603, Roi Dayan)
  • msg/xio: simple fixes (pr#8555, Avner BenHanoch)
  • mstart: start rgw on different ports as well (pr#8167, Abhishek Lekshmanan)
  • nfs for rgw (Matt Benjamin, Orit Wasserman) (pr#7634, Yehuda Sadeh, Matt Benjamin)
  • objecter: avoid recursive lock of Objecter::rwlock (pr#7343, Yan, Zheng)
  • organizationmap: modify org mail info. (pr#7240, Xiaowei Chen)
  • os/bluestore: a few fixes (pr#8193, Sage Weil)
  • os/bluestore/BlueFS: Before reap ioct, it should wait io complete (pr#8178, Jianpeng Ma)
  • os/bluestore/BlueStore: Don’t leak trim overlay data before write. (pr#7895, Jianpeng Ma)
  • os/bluestore: ceph-bluefs-tool fixes (issue#15261, pr#8292, Venky Shankar)
  • os/bluestore: clone overlay data (pr#7860, Jianpeng Ma)
  • os/bluestore: fix assert (issue#14436, pr#7293, xie xingguo)
  • os/bluestore: fix a typo in SPDK path parsing (pr#7601, Jianjian Huo)
  • os/bluestore: fix bluestore_wal_transaction_t encoding test (pr#7342, Kefu Chai)
  • os/bluestore: fix bluestore_wal_transaction_t encoding test (pr#7419, Kefu Chai, Brad Hubbard)
  • os/bluestore: fix shortened bluefs paths in env mirror case (pr#8498, Sage Weil)
  • os/bluestore: insert new onode to the front position of onode LRU (pr#7492, Jianjian Huo)
  • os/bluestore/KernelDevice: force block size (pr#8006, Sage Weil)
  • os/bluestore: make bluestore_sync_transaction = true can work. (pr#7674, Jianpeng Ma)
  • os/bluestore/NVMEDevice: make IO thread using dpdk launch (pr#8160, Haomai Wang)
  • os/bluestore/NVMEDevice: refactor probe/attach codes and support zero command (pr#7647, Haomai Wang)
  • os/bluestore: revamp BlueFS bdev management and add perfcounters (issue#15376, pr#8431, Sage Weil)
  • os/bluestore: small fixes in bluestore StupidAllocator (pr#8101, Jianjian Huo)
  • os/bluestore: use intrusive_ptr for Dir (pr#7247, Igor Fedotov)
  • osd: add cache hint when pushing raw clone during recovery (pr#7069, Zhiqiang Wang)
  • osd: Add config option osd_read_ec_check_for_errors for testing (pr#5865, David Zafman)
  • osd: add missing newline to usage message (pr#7613, Willem Jan Withagen)
  • osd: add osd op queue latency perfcounter (pr#5793, Haomai Wang)
  • osd: add pin/unpin support to cache tier (11066) (pr#6326, Zhiqiang Wang)
  • osd: add ‘proxy’ cache mode (issue#12814, pr#8210, Sage Weil)
  • osd: add scrub persist/query API (issue#13505, pr#6898, Kefu Chai, Samuel Just)
  • osd: add the support of per pool scrub priority (pr#7062, Zhiqiang Wang)
  • osd: a fix for HeartbeatDispatcher and cleanups (pr#7550, Kefu Chai)
  • osd: Allow repair of history.last_epoch_started using config (pr#6793, David Zafman)
  • osd: auto repair EC pool (issue#12754, pr#6196, Guang Yang)
  • osd: avoid calculating crush mapping for most ops (pr#6371, Sage Weil)
  • osd: avoid debug std::string initialization in PG::get/put (pr#7117, Evgeniy Firsov)
  • osd: avoid double-check for replaying and can_checkpoint() in FileStore::_check_replay_guard (pr#6471, Ning Yao)
  • osd: avoid duplicate op->mark_started in ReplicatedBackend (pr#6689, Jacek J. Łakis)
  • osd: avoid FORCE updating digest been overwritten by MAYBE when comparing scrub map (pr#7051, Zhiqiang Wang)
  • osd: avoid osd_op_thread suicide because osd_scrub_sleep (pr#7009, Jianpeng Ma)
  • osd: bail out of _committed_osd_maps if we are shutting down (pr#8267, Samuel Just)
  • osd: blockdevice: avoid implicit cast and add guard (pr#7460, xie xingguo)
  • osd: bluefs: fix alignment for odd page sizes (pr#7900, Dan Mick)
  • osd: bluestore: add ‘override’ to virtual functions (pr#7886, Michal Jarzabek)
  • osd: bluestore: allow _dump_onode dynamic accept log level (pr#7995, Jianpeng Ma)
  • osd: bluestore/blockdevice: use std::mutex et al (pr#7568, Sage Weil)
  • osd: bluestore: bluefs: fix several small bugs (issue#14344, issue#14343, pr#7200, xie xingguo)
  • osd: bluestore/BlueFS: initialize super block_size earlier in mkfs (pr#7535, Sage Weil)
  • osd: bluestore: don’t include when building without libaio (issue#14207, pr#7169, Mykola Golub)
  • osd: bluestore: fix bluestore onode_t attr leak (pr#7125, Ning Yao)
  • osd: bluestore: fix bluestore_wal_transaction_t encoding test (pr#7168, Kefu Chai)
  • osd: bluestore: fix check for write falling within the same extent (issue#14954, pr#7892, Jianpeng Ma)
  • osd: BlueStore: fix fsck and blockdevice read-relevant issue (pr#7362, xie xingguo)
  • osd: BlueStore: fix null pointer access (issue#14561, pr#7435, xie xingguo)
  • osd: bluestore: fix several bugs (issue#14259, issue#14353, issue#14260, issue#14261, pr#7122, xie xingguo)
  • osd: bluestore: fix space rebalancing, collection split, buffered reads (pr#7196, Sage Weil)
  • osd: bluestore: for overwrite a extent, allocate new extent on min_alloc_size write (pr#7996, Jianpeng Ma)
  • osd: bluestore: improve fs-type verification and tidy up (pr#7651, xie xingguo)
  • osd: bluestore, kstore: fix nid overwritten logic (issue#14407, issue#14433, pr#7283, xie xingguo)
  • osd: bluestore: misc fixes (pr#7658, Jianpeng Ma)
  • osd: bluestore: more fixes (pr#7130, Sage Weil)
  • osd: BlueStore/NVMEDevice: fix compiling and fd leak (pr#7496, xie xingguo)
  • osd: bluestore: NVMEDevice: fix error handling (pr#7799, xie xingguo)
  • osd: bluestore: remove unneeded includes (pr#7870, Michal Jarzabek)
  • osd: bluestore: Revert NVMEDevice task cstor and refresh interface changes (pr#7729, Haomai Wang)
  • osd: bluestore updates, scrub fixes (pr#8035, Sage Weil)
  • osd: bluestore: use btree_map for allocator (pr#7269, Igor Fedotov, Sage Weil)
  • osd: cache tier: add config option for eviction check list size (pr#6997, Yuan Zhou)
  • osd: call on_new_interval on newly split child PG (issue#13962, pr#6778, Sage Weil)
  • osd: cancel failure reports if we fail to rebind network (pr#6278, Xinze Chi)
  • osdc: Fix race condition with tick_event and shutdown (issue#14256, pr#7151, Adam C. Emerson)
  • osd: change mutex to spinlock to optimize thread context switch. (pr#6492, Xiaowei Chen)
  • osd: check do_shutdown before do_restart (pr#6547, Xiaoxi Chen)
  • osd: check health state before pre_booting (issue#14181, pr#7053, Xiaoxi Chen)
  • osd: clarify the scrub result report (pr#6534, Li Wang)
  • osd/ClassHandler: only dlclose() the classes not missing (pr#8354, Kefu Chai)
  • osd: clean up CMPXATTR checks (pr#5961, Jianpeng Ma)
  • osd: clean up temp object if copy-from fails (pr#8487, Sage Weil)
  • osd: clear pg_stat_queue after stopping pgs (issue#14212, pr#7091, Sage Weil)
  • osd: clear requeue_scrub_on_unblock flag after requeue scrub (pr#8570, xie xingguo)
  • osdc/Objecter: dout log after assign tid (pr#8202, Xinze Chi)
  • osdc/Objecter: fix narrow race with tid assignment (issue#14364, pr#7981, Sage Weil)
  • osdc/Objecter: use full pgid hash in PGNLS ops (pr#8378, Sage Weil)
  • osd: consider high/low mode when putting agent to sleep (issue#14752, pr#7631, Sage Weil)
  • osd: correctly handle small osd_scrub_interval_randomize_ratio (pr#7147, Samuel Just)
  • osdc/Striper: reduce assemble_result log level (pr#8426, Jason Dillaman)
  • osd: defer decoding of MOSDRepOp/MOSDRepOpReply (pr#6503, Xinze Chi)
  • osd: delay populating in-memory PG log hashmaps (pr#6425, Piotr Dałek)
  • osd: disable filestore_xfs_extsize by default (issue#14397, pr#7265, Ken Dreyer)
  • osd: do not keep ref of old osdmap in pg (issue#13990, pr#7007, Kefu Chai)
  • osd: don’t do random deep scrubs for user initiated scrubs (pr#6673, David Zafman)
  • osd: don’t update epoch and rollback_info objects attrs if there is no need (pr#6555, Ning Yao)
  • osd: drop deprecated removal pg type (pr#6970, Igor Podoski)
  • osd: drop fiemap len=0 logic (pr#7267, Sage Weil)
  • osd: drop the interim set from load_pgs() (pr#6277, Piotr Dałek)
  • osd: dump number of missing objects for each peer with pg query (pr#6058, Guang Yang)
  • osd: duplicated clear for peer_missing (pr#8315, Ning Yao)
  • osd: enable perfcounters on sharded work queue mutexes (pr#6455, Jacek J. Łakis)
  • osd: ensure new osdmaps commit before publishing them to pgs (issue#15073, pr#8096, Sage Weil)
  • osd: FileJournal: _fdump wrongly returns if journal is currently unreadable. (issue#13626, pr#6406, xie xingguo)
  • osd: FileJournal: fix return code of create method (issue#14134, pr#6988, xie xingguo)
  • osd: FileJournal: reduce locking scope in write_aio_bl (issue#12789, pr#5670, Zhi Zhang)
  • osd: filejournal: report journal entry count (pr#7643, tianqing)
  • osd: FileJournal: support batch peak and pop from writeq (pr#6701, Xinze Chi)
  • osd: FileStore: add a field indicate xattr only one chunk for set xattr. (pr#6244, Jianpeng Ma)
  • osd: FileStore: Added O_DSYNC write scheme (pr#7752, Somnath Roy)
  • osd: FileStore: add error check for object_map->sync() (pr#7281, Chendi Xue)
  • osd: FileStore: cleanup: remove obsolete option “filestore_xattr_use_omap” (issue#14356, pr#7217, Vikhyat Umrao)
  • osd: FileStore: conditional collection of drive metadata (pr#6956, Somnath Roy)
  • osd: filestore: FALLOC_FL_PUNCH_HOLE must be used with FALLOC_FL_KEEP_SIZE (pr#7768, xinxin shu)
  • osd: filestore: fast abort if statfs encounters ENOENT (pr#7703, xie xingguo)
  • osd: FileStore: fix initialization order for m_disable_wbthrottle (pr#8067, Samuel Just)
  • osd: filestore: fix race condition with split vs collection_move_rename and long object names (issue#14766, pr#8136, Samuel Just)
  • osd: filestore: fix result code overwritten for clone (issue#14817, issue#14827, pr#7711, xie xingguo)
  • osd: filestore: fix wrong scope of result code for error cases during mkfs (issue#14814, pr#7704, xie xingguo)
  • osd: filestore: fix wrong scope of result code for error cases during mount (issue#14815, pr#7707, xie xingguo)
  • osd: FileStore: LFNIndex: remove redundant local variable ‘obj’. (issue#13552, pr#6333, xiexingguo)
  • osd: FileStore: modify the format of colon (pr#7333, Donghai Xu)
  • osd: FileStore:: optimize lfn_unlink (pr#6649, Jianpeng Ma)
  • osd: FileStore: potential memory leak if _fgetattrs fails (issue#13597, pr#6377, xie xingguo)
  • osd: FileStore: print file name before osd assert if read file failed (pr#7111, Ji Chen)
  • osd: FileStore: remove __SWORD_TYPE dependency (pr#6263, John Coyle)
  • osd: FileStore: remove unused local variable ‘handle’ (pr#6381, xie xingguo)
  • osd: filestore: restructure journal and op queue throttling (pr#7767, Samuel Just)
  • osd: FileStore: support multiple ondisk finish and apply finishers (pr#6486, Xinze Chi, Haomai Wang)
  • osd: FileStore: use pwritev instead of lseek+writev (pr#7349, Haomai Wang, Tao Chang)
  • osd: fix bogus scrub results when missing a clone (issue#12738, issue#12740, pr#5783, David Zafman)
  • osd: fix broken balance / localized read handling (issue#13491, pr#6364, Jason Dillaman)
  • osd: fix bug in last_* PG state timestamps (pr#6517, Li Wang)
  • osd: fix bugs for omap ops (pr#8230, Jianpeng Ma)
  • osd: fix ClassHandler::ClassData::get_filter() (pr#6747, Yan, Zheng)
  • osd: fix/clean up full map request handling (pr#8446, Sage Weil)
  • osd: fix debug message in OSD::is_healthy (pr#6226, Xiaoxi Chen)
  • osd: fix dirtying info without correctly setting drity_info field (pr#8275, xie xingguo)
  • osd: fix dump_ops_in_flight races (issue#8885, pr#8044, David Zafman)
  • osd: fix epoch check in handle_pg_create (pr#8382, Samuel Just)
  • osd: fixes for several cases where op result code was not checked or set (issue#13566, pr#6347, xie xingguo)
  • osd: fix failure report handling during ms_handle_connect() (pr#8348, xie xingguo)
  • osd: fix FileStore::_destroy_collection error return code (pr#6612, Ruifeng Yang)
  • osd: fix forced prmootion for CALL ops (issue#14745, pr#7617, Sage Weil)
  • osd: fix fusestore hanging during stop/quit (issue#14786, pr#7677, xie xingguo)
  • osd: fix inaccurate counter and skip over queueing an empty transaction (pr#7754, xie xingguo)
  • osd: fix incorrect throttle in WBThrottle (pr#6713, Zhang Huan)
  • osd: fix invalid list traversal in process_copy_chunk (pr#7511, Samuel Just)
  • osd: fix lack of object unblock when flush fails (issue#14511, pr#7584, Igor Fedotov)
  • osd: fix log info (pr#8273, Wei Jin)
  • osd: fix MOSDOp encoding (pr#6174, Sage Weil)
  • osd: fix MOSDRepScrub reference counter in replica_scrub (pr#6730, Jie Wang)
  • osd: fix null pointer access and race condition (issue#14072, pr#6916, xie xingguo)
  • osd: fix overload of ‘==’ operator for pg_stat_t (issue#14921, pr#7842, xie xingguo)
  • osd: fix race condition for heartbeat_need_update (issue#14387, pr#7739, xie xingguo)
  • osd: fix reactivate (check OSDSuperblock in mkfs() when we already have the superblock) (issue#13586, pr#6385, Vicente Cheng)
  • osd: fix reference count, rare race condition etc. (pr#8254, xie xingguo)
  • osd: fix return value from maybe_handle_cache_detail() (pr#7593, Igor Fedotov)
  • osd: fix rollback_info_trimmed_to before index() (issue#13965, pr#6801, Samuel Just)
  • osd: fix scrub start hobject (pr#7467, Sage Weil)
  • osd: fix sparse-read result code checking logic (issue#14151, pr#7016, xie xingguo)
  • osd: fix temp object removal after upgrade (issue#13862, pr#6976, David Zafman)
  • osd: fix tick relevant issues (pr#8369, xie xingguo)
  • osd: fix trivial scrub bug (pr#6533, Li Wang)
  • osd: fix two scrub relevant issues (pr#8462, xie xingguo)
  • osd: fix unnecessary object promotion when deleting from cache pool (issue#13894, pr#7537, Igor Fedotov)
  • osd: fix watch reconnect race (issue#15441, pr#8586, Sage Weil)
  • osd: fix wip (l_osd_op_wip) perf counter and remove repop_map (pr#7077, Xinze Chi)
  • osd: fix wrongly placed assert and some cleanups (pr#6766, xiexingguo, xie xingguo)
  • osd: fix wrong return type of find_osd_on_ip() (issue#14872, pr#7812, xie xingguo)
  • osd: fix wrong use of right parenthesis in localized read logic (pr#6566, Jie Wang)
  • osd: ghobject_t: use ! instead of @ as a separator (pr#7595, Sage Weil)
  • osd: handle dup pg_create that races with pg deletion (pr#8033, Sage Weil)
  • osd: improve temperature calculation for cache tier agent (pr#4737, MingXin Liu)
  • osd: initialize last_recalibrate field at construction (pr#8071, xie xingguo)
  • osd: init started to 0 (issue#13206, pr#6107, Sage Weil)
  • osd: KeyValueStore: don’t queue NULL context (pr#6783, Haomai Wang)
  • osd: KeyValueStore: fix return code of mkfs (pr#7036, xie xingguo)
  • osd: KeyValueStore: fix the name’s typo of keyvaluestore_default_strip_size (pr#6375, Zhi Zhang)
  • osd: KeyValueStore: fix wrongly placed assert (issue#14176, issue#14178, pr#7047, xie xingguo)
  • osd: kstore: fix a race condition in _txc_finish() (pr#7804, Jianjian Huo)
  • osd: kstore: latency breakdown (pr#7850, James Liu)
  • osd: kstore: several small fixes (issue#14351, issue#14352, pr#7213, xie xingguo)
  • osd: kstore: small fixes to kstore (issue#14204, pr#7095, xie xingguo)
  • osd: kstore: sync up kstore with recent bluestore updates (pr#7681, Jianjian Huo)
  • osd: make backend and block device code a bit more generic (pr#6759, Sage Weil)
  • osd: make list_missing query missing_loc.needs_recovery_map (pr#6298, Guang Yang)
  • osdmap: remove unused local variables (pr#6864, luo kexue)
  • osdmap: rm nonused variable (pr#8423, Wei Jin)
  • osd: memstore: fix alignment of Page for test_pageset (pr#7587, Casey Bodley)
  • osd: memstore: fix two bugs (pr#6963, Casey Bodley, Sage Weil)
  • osd: merge local_t and op_t txn to single one (pr#6439, Xinze Chi)
  • osd: min_write_recency_for_promote & min_read_recency_for_promote are tiering only (pr#8081, huanwen ren)
  • osd: misc FileStore fixes (issue#14192, issue#14188, issue#14194, issue#14187, issue#14186, pr#7059, xie xingguo)
  • osd: misc optimization for map utilization (pr#6950, Ning Yao)
  • osd, mon: fix exit issue (pr#7420, Jiaying Ren)
  • osd,mon: log leveldb and rocksdb to ceph log (pr#6921, Sage Weil)
  • osd: more fixes for incorrectly dirtying info; resend reply for duplicated scrub-reserve req (pr#8291, xie xingguo)
  • osd: move newest decode version of MOSDOp and MOSDOpReply to the front (pr#6642, Jacek J. Łakis)
  • osd: new and delete ObjectStore::Transaction in a function is not necessary (pr#6299, Ruifeng Yang)
  • osd: newstore: misc updates (including kv and os/fs stuff) (pr#6609, Sage Weil)
  • osd: note down the number of missing clones (pr#6654, Kefu Chai)
  • osd: Omap small bugs adapted (pr#6669, Jianpeng Ma, David Zafman)
  • osd: optimize clone write path if object-map is enabled (pr#6403, xinxin shu)
  • osd: optimize get_object_context (pr#6305, Jianpeng Ma)
  • osd: optimize MOSDOp/do_op/handle_op (pr#5211, Jacek J. Lakis)
  • osd: optimize scrub subset_last_update calculation (pr#6518, Li Wang)
  • osd: optimize the session_handle_reset function (issue#14182, pr#7054, songbaisen)
  • osd: os/chain_xattr: On linux use linux/limits.h for XATTR_NAME_MAX. (pr#6343, John Coyle)
  • osd/OSD.cc: finish full_map_request every MOSDMap message. (issue#15130, pr#8147, Xiaoxi Chen)
  • osd/OSD: fix build_past_intervals_parallel (pr#8215, David Zafman)
  • osd/OSDMap: fix typo in summarize_mapping_stats (pr#8088, Sage Weil)
  • osd: OSDMap: reset osd_primary_affinity shared_ptr when deepish_copy_from (issue#14686, pr#7553, Xinze Chi)
  • osd: OSDService: Fix typo in osdmap comment (pr#7275, Brad Hubbard)
  • osd: os: skip checking pg_meta object existance in FileStore (pr#6870, Ning Yao)
  • osd: partial revert of “ReplicatedPG: result code not correctly set in some cases.” (issue#13796, pr#6622, Sage Weil)
  • osd: PG::activate(): handle unexpected cached_removed_snaps more gracefully (issue#14428, pr#7309, Alexey Sheplyakov)
  • osd/PG: indicate in pg query output whether ignore_history_les would help (pr#8156, Sage Weil)
  • osd: PGLog: clean up read_log (pr#7092, Jie Wang)
  • osd/PGLog: fix warning (pr#8057, Sage Weil)
  • osd/PG: pg down state blocked by osd.x, lost osd.x cannot solve peering stuck (issue#13531, pr#6317, Xiaowei Chen)
  • osd: pg_pool_t: add dictionary for pool options (issue#13077, pr#6081, Mykola Golub)
  • osd: PG: set epoch_created and parent_split_bits for child pg (issue#15426, pr#8552, Kefu Chai)
  • osd: prevent osd_recovery_sleep from causing recovery-thread suicide (pr#7065, Jianpeng Ma)
  • osd: probabilistic cache tier promotion throttling (pr#7465, Sage Weil)
  • osd: randomize deep scrubbing (pr#6550, Dan van der Ster, Herve Rousseau)
  • osd: reduce memory consumption of some structs (pr#6475, Piotr Dałek)
  • osd: reduce string use in coll_t::calc_str() (pr#6505, Igor Podoski)
  • osd: refuse to start if object name limits are not possible (pr#8560, Sage Weil)
  • osd: release related sources when scrub is interrupted (pr#6744, Jianpeng Ma)
  • osd: release the message throttle when OpRequest unregistered (issue#14248, pr#7148, Samuel Just)
  • osd: remove __SWORD_TYPE dependency (pr#6262, John Coyle)
  • osd: remove unused OSDMap::set_weightf() (issue#14369, pr#7231, huanwen ren)
  • osd: remove up_thru_pending field, which is never used (pr#7991, xie xingguo)
  • osd: reorder bool fields in PGLog struct (pr#6279, Piotr Dałek)
  • osd: Replace snprintf with faster implementation in eversion_t::get_key_name (pr#7121, Evgeniy Firsov)
  • osd/ReplicatedPG: be more careful about calling publish_stats_to_osd() (issue#14962, pr#8039, Greg Farnum)
  • osd: replicatedpg: break out loop if we encounter fatal error during do_pg_op() (issue#14922, pr#7844, xie xingguo)
  • osd: ReplicatedPG: clean up unused function (pr#7211, Xiaowei Chen)
  • osd/ReplicatedPG: clear watches on change after applying repops (issue#15151, pr#8163, Sage Weil)
  • osd/ReplicatedPG: fix implementation of register_on_success() (pr#8612, xie xingguo)
  • osd/ReplicatedPG: fix promotion recency logic (issue#14320, pr#6702, Sage Weil)
  • osd/ReplicatedPG: make handle_watch_timeout no-op if !active (issue#15391, pr#8505, Sage Weil)
  • osd: ReplicatedPG: remove unused local variables (issue#13575, pr#6360, xiexingguo)
  • osd/ReplicatedPG::_rollback_to: update the OMAP flag (issue#14777, pr#8495, Samuel Just)
  • osd: repop and lost-unfound overhaul (pr#7765, Samuel Just)
  • osd: reset primary and up_primary when building a new past_interval. (issue#13471, pr#6240, xiexingguo)
  • osd: resolve boot vs NOUP set + clear race (pr#7483, Sage Weil)
  • osd: scrub: do not assign value if read error (pr#6568, Li Wang)
  • osd/ScrubStore: remove unused function (pr#8045, Kefu Chai)
  • osd: several small cleanups (pr#7055, xie xingguo)
  • osd: shut down if we flap too many times in a short period (pr#6708, Xiaoxi Chen)
  • osd: skip promote for writefull w/ FADVISE_DONTNEED/NOCACHE (pr#7010, Jianpeng Ma)
  • osd: slightly reduce actual size of pg_log_entry_t (pr#6690, Piotr Dałek)
  • osd: small fixes to memstore (issue#14228, issue#14229, issue#14227, pr#7107, xie xingguo)
  • osd: some debug output for old osdmap trimming (pr#8613, Sage Weil)
  • osd: support pool level recovery_priority and recovery_op_priority (pr#5953, Guang Yang)
  • osd: try evicting after flushing is done (pr#5630, Zhiqiang Wang)
  • osd: use atomic to generate ceph_tid (pr#7017, Evgeniy Firsov)
  • osd: use optimized is_zero in object_stat_sum_t.is_zero() (pr#7203, Piotr Dałek)
  • osd: use pg id (without shard) when referring the PG (pr#6236, Guang Yang)
  • osd: utime_t, eversion_t, osd_stat_sum_t encoding optimization (pr#6902, Xinze Chi)
  • osd: WeightedPriorityQueue: move to intrusive containers (pr#7654, Robert LeBlanc)
  • osd: write file journal optimization (pr#6484, Xinze Chi)
  • os/filestore/FileJournal: set block size via config option (pr#7628, Sage Weil)
  • os/filestore: fix punch hole usage in _zero (pr#8050, Sage Weil)
  • os/filestore: fix result handling logic of destroy_collection (pr#7721, xie xingguo)
  • os/filestore: fix return type mismatch for lfn parse (pr#8545, xie xingguo)
  • os/filestore: force lfn attrs to be written atomically, restructure name length limits (pr#8496, Samuel Just)
  • os/filestore: require offset == length == 0 for full object read; add test (pr#7957, Jianpeng Ma)
  • os/fs: fix io_getevents argument (pr#7355, Jingkai Yuan)
  • os/fusestore: add error handling (pr#7395, xie xingguo)
  • os/keyvaluestore: kill KeyValueStore (pr#7320, Haomai Wang)
  • os/kstore: insert new onode to the front position of onode LRU (pr#7505, xie xingguo)
  • os/ObjectStore: add custom move operations for ObjectStore::Transaction (pr#7303, Casey Bodley)
  • os/ObjectStore: add noexcept to ensure move ctor is used (pr#8421, Kefu Chai)
  • os/ObjectStore: fix _update_op for split dest_cid (pr#8364, Sage Weil)
  • os/ObjectStore: implement more efficient get_encoded_bytes() (pr#7775, Piotr Dałek)
  • os/ObjectStore: make device uuid probe output something friendly (pr#8418, Sage Weil)
  • os/ObjectStore: try_move_rename in transaction append and add coverage to store_test (issue#15205, pr#8359, Samuel Just)
  • packaging: add build dependency on python devel package (pr#7205, Josh Durgin)
  • packaging: make infernalis -> jewel upgrade work (issue#15047, pr#8034, Nathan Cutler)
  • packaging: move cephfs repair tools to ceph-common (issue#15145, pr#8133, Boris Ranto, Ken Dreyer)
  • pybind: add ceph_volume_client interface for Manila and similar frameworks (pr#6205, John Spray)
  • pybind: add flock to libcephfs python bindings (pr#7902, John Spray)
  • pybind/cephfs: add symlink and its unit test (pr#6323, Shang Ding)
  • pybind: decode empty string in conf_parse_argv() correctly (pr#6711, Josh Durgin)
  • pybind: Ensure correct python flags are passed (pr#7663, James Page)
  • pybind: fix build failure, remove extraneous semicolon in method (issue#14371, pr#7235, Abhishek Lekshmanan)
  • pybind: flag an RBD image as closed regardless of result code (pr#8005, Jason Dillaman)
  • pybind: Implementation of rados_ioctx_snapshot_rollback (pr#6878, Florent Manens)
  • pybind/Makefile.am: Prevent race creating CYTHON_BUILD_DIR (issue#15276, pr#8356, Dan Mick)
  • pybind: move cephfs to Cython (pr#7745, John Spray, Mehdi Abaakouk)
  • pybind: port the rbd bindings to Cython (issue#13115, pr#6768, Hector Martin)
  • pybind/rados: fix object lifetime issues and other bugs in aio (pr#7778, Hector Martin)
  • pybind/rados: fix omap method return values (pr#8603, Roland Mechler)
  • pybind/rados: python3 fix (pr#8331, Mehdi Abaakouk)
  • pybind/rados: use __dealloc__ since __del__ is ignored by cython (pr#7692, Mehdi Abaakouk)
  • pybind: remove next() on iterators (pr#7706, Mehdi Abaakouk)
  • pybind: replace __del__ with __dealloc__ for rbd (pr#7708, Josh Durgin)
  • pybind: support ioctx:exec (pr#6795, Noah Watkins)
  • pybind/test_rbd: fix test_create_defaults (issue#14279, pr#7155, Josh Durgin)
  • pybind: use correct subdir for rados install-exec rule (pr#7684, Josh Durgin)
  • python binding of librados with cython (pr#7621, Mehdi Abaakouk)
  • python: use pip instead of python setup.py (pr#7605, Loic Dachary)
  • qa: add workunit to run ceph_test_rbd_mirror (pr#8221, Josh Durgin)
  • qa: disable rbd/qemu-iotests test case 055 on RHEL/CentOSlibrbd: journal replay should honor inter-event dependencies (issue#14385, pr#7272, Jason Dillaman)
  • qa: erasure-code benchmark plugin selection (pr#6685, Loic Dachary)
  • qa/krbd: Expunge generic/247 (pr#6831, Douglas Fuller)
  • qa: update rest test cephfs calls (issue#15309, pr#8372, John Spray)
  • qa: update rest test cephfs calls (part 2) (issue#15309, pr#8393, John Spray)
  • qa/workunits/cephtool/test.sh: false positive fail on /tmp/obj1. (pr#6837, Robin H. Johnson)
  • qa/workunits/cephtool/test.sh: no ./ (pr#6748, Sage Weil)
  • qa/workunits/cephtool/test.sh: wait longer in ceph_watch_start() (issue#14910, pr#7861, Kefu Chai)
  • qa/workunits: merge_diff shouldn’t attempt to use striping (issue#14165, pr#7041, Jason Dillaman)
  • qa/workunits/rados: Test exit values on test.sh, fix tier.cc (issue#15165, pr#8266, Samuel Just)
  • qa/workunits/rados/test.sh: capture stderr too (pr#8004, Sage Weil)
  • qa/workunits/rados/test.sh: test tmap_migrate (pr#8114, Sage Weil)
  • qa/workunits/rbd: do not use object map during read flag testing (pr#8104, Jason Dillaman)
  • qa/workunits/rbd: new online maintenance op tests (pr#8216, Jason Dillaman)
  • qa/workunits/rbd: rbd-nbd test should use sudo for map/unmap ops (issue#14221, pr#7101, Jason Dillaman)
  • qa/workunits/rbd: use POSIX function definition (issue#15104, pr#8068, Nathan Cutler)
  • qa/workunits/rest/test.py: add confirmation to ‘mds setmap’ (issue#14606, pr#7982, Sage Weil)
  • qa/workunits/rest/test.py: don’t use newfs (pr#8191, Sage Weil)
  • qa/workunits/snaps: move snap tests into fs sub-directory (pr#6496, Yan, Zheng)
  • rados: add ceph:: namespace to bufferlist type (pr#8059, Noah Watkins)
  • rados: bench: fix off-by-one to avoid writing past object_size (pr#6677, Tao Chang)
  • rados: fix bug for write bench (pr#7851, James Liu)
  • radosgw-admin: allow ‘period pull –url’ without full multisite config (pr#8567, Casey Bodley)
  • radosgw-admin: allow (pr#8529, Orit Wasserman)
  • radosgw-admin: Checking the legality of the parameters (issue#13018, pr#5879, Qiankun Zheng)
  • radosgw-admin: Create –secret-key alias for –secret (issue#5821, pr#5335, Yuan Zhou)
  • radosgw-admin: fix for ‘realm pull’ (pr#8404, Casey Bodley)
  • radosgw-admin: metadata list user should return an empty list when user pool is empty (issue#13596, pr#6465, Orit Wasserman)
  • radosgw-admin: ‘period commit’ supplies user-readable error messages (pr#8264, Casey Bodley)
  • rados: implement rm –force option to force remove when full (pr#6202, Xiaowei Chen)
  • rados: new options for write benchmark (pr#6340, Joaquim Rocha)
  • rbd: accept –user, refuse -i command-line optionals (pr#6590, Ilya Dryomov)
  • rbd: additional validation for striping parameters (pr#6914, Na Xie)
  • rbd: add missing command aliases to refactored CLI (issue#13806, pr#6606, Jason Dillaman)
  • rbd: add –object-size option, deprecate –order (issue#12112, pr#6830, Vikhyat Umrao)
  • rbd: add pool name to disambiguate rbd admin socket commands (pr#6904, wuxiangwei)
  • rbd: add RBD pool mirroring configuration API + CLI (pr#6129, Jason Dillaman)
  • rbd: add support for mirror image promotion/demotion/resync (pr#8138, Jason Dillaman)
  • rbd: allow librados to prune the command-line for config overrides (issue#15250, pr#8282, Jason Dillaman)
  • rbd: clone operation should default to image format 2 (pr#8119, Jason Dillaman)
  • rbd: correct an output string for merge-diff (pr#7046, Kongming Wu)
  • rbd: deprecate image format 1 (pr#7841, Jason Dillaman)
  • rbd: dynamically generated bash completion (issue#13494, pr#6316, Jason Dillaman)
  • rbd: fix build with “–without-rbd” (issue#14058, pr#6899, Piotr Dałek)
  • rbd: fix clone isssue (issue#13553, pr#6334, xinxin shu)
  • rbd: fixes for refactored CLI and related tests (pr#6738, Ilya Dryomov)
  • rbd: fix init-rbdmap CMDPARAMS (issue#13214, pr#6109, Sage Weil)
  • rbd: fix static initialization ordering issues (pr#6978, Mykola Golub)
  • rbd-fuse: image name can not include snap name (pr#7044, Yongqiang He)
  • rbd-fuse: implement mv operation (pr#6938, wuxiangwei)
  • rbd: journal: configuration via conf, cli, api and some fixes (pr#6665, Mykola Golub)
  • rbd: journal reset should disable/re-enable journaling feature (issue#15097, pr#8490, Jason Dillaman)
  • rbd: loosen image spec validation requirements (pr#8606, Jason Dillaman)
  • rbd: make config changes actually apply (pr#6520, Mykola Golub)
  • rbdmap: add manpage (issue#15212, pr#8224, Nathan Cutler)
  • rbdmap: systemd support (issue#13374, pr#6479, Boris Ranto)
  • rbd: merge_diff test should use new –object-size parameter instead of –order (issue#14106, pr#6972, Na Xie, Jason Dillaman)
  • rbd-mirror: asok commands to get status and flush on Mirror and Replayer level (pr#8235, Mykola Golub)
  • rbd-mirror: enabling/disabling pool mirroring should update the mirroring directory (issue#15217, pr#8261, Ricardo Dias)
  • rbd-mirror: fix image replay test failures (pr#8158, Jason Dillaman)
  • rbd-mirror: fix long termination due to 30sec wait in main loop (pr#8185, Mykola Golub)
  • rbd-mirror: fix missing increment for iterators (pr#8352, runsisi)
  • rbd-mirror: ImageReplayer async start/stop (pr#7944, Mykola Golub)
  • rbd-mirror: ImageReplayer improvements (pr#7759, Mykola Golub)
  • rbd-mirror: implement ImageReplayer (pr#7614, Mykola Golub)
  • rbd-mirror: initial failover / failback support (pr#8287, Jason Dillaman)
  • rbd-mirror: integrate with image sync state machine (pr#8079, Jason Dillaman)
  • rbd-mirror: make remote context respect env and argv config params (pr#8182, Mykola Golub)
  • rbd-mirror: minor fix-ups for initial skeleton implementation (pr#7958, Mykola Golub)
  • rbd-mirror: prevent enabling/disabling an image’s mirroring when not in image mode (issue#15267, pr#8332, Ricardo Dias)
  • rbd-mirror: remote to local cluster image sync (pr#7979, Jason Dillaman)
  • rbd-mirror: switch fsid over to mirror uuid (issue#15238, pr#8280, Ricardo Dias)
  • rbd-mirror: use pool/image names in asok commands (pr#8159, Mykola Golub)
  • rbd-mirror: use the mirroring directory to detect candidate images (issue#15142, pr#8162, Ricardo Dias)
  • rbd-mirror: workaround for intermingled lockdep singletons (pr#8476, Jason Dillaman)
  • rbd: must specify both of stripe-unit and stripe-count when specifying stripingv2 feature (pr#7026, Donghai Xu)
  • rbd-nbd: add copyright (pr#7166, Li Wang)
  • rbd-nbd: fix up return code handling (pr#7215, Mykola Golub)
  • rbd-nbd: network block device (NBD) support for RBD (pr#6657, Yunchuan Wen, Li Wang)
  • rbd-nbd: small improvements in logging and forking (pr#7127, Mykola Golub)
  • rbd: output formatter may not be closed upon error (issue#13711, pr#6706, xie xingguo)
  • rbd: rbdmap improvements (pr#6445, Boris Ranto)
  • rbd: rbd order will be place in 22, when set to 0 in the config_opt (issue#14139, issue#14047, pr#6886, huanwen ren)
  • rbd: refactor cli command handling (pr#5987, Jason Dillaman)
  • rbd/run_cli_tests.sh: Reflect test failures (issue#14825, pr#7781, Zack Cerza)
  • rbd: stripe unit/count set incorrectly from config (pr#6593, Mykola Golub)
  • rbd: striping parameters should support 64bit integers (pr#6942, Na Xie)
  • rbd: support for enabling/disabling mirroring on specific images (issue#13296, pr#8056, Ricardo Dias)
  • rbd: support negative boolean command-line optionals (issue#13784, pr#6607, Jason Dillaman)
  • rbd: unbreak rbd map + cephx_sign_messages option (pr#6583, Ilya Dryomov)
  • rbd: update default image features (pr#7846, Jason Dillaman)
  • rbd: use default order from configuration when not specified (pr#6965, Yunchuan Wen)
  • release-notes: draft v0.94.4 release notes (pr#5907, Loic Dachary)
  • release-notes: draft v0.94.4 release notes (pr#6195, Loic Dachary)
  • release-notes: draft v0.94.4 release notes (pr#6238, Loic Dachary)
  • release-notes: draft v0.94.6 release notes (issue#13356, pr#7689, Abhishek Varshney, Loic Dachary)
  • release-notes: draft v10.0.3 release notes (pr#7592, Loic Dachary)
  • release-notes: draft v10.0.4 release notes (pr#7966, Loic Dachary)
  • release-notes: draft v9.2.1 release notes (issue#13750, pr#7694, Abhishek Varshney)
  • release-notes: v10.1.2 release notes (pr#8594, Loic Dachary)
  • releases: what is merged where and when ? (pr#8358, Loic Dachary)
  • rgw: accept data only at the first time in response to a request (pr#8084, sunspot)
  • rgw: add a few more help options in admin interface (pr#8410, Abhishek Lekshmanan)
  • rgw: add a method to purge all associate keys when removing a subuser (issue#12890, pr#6002, Sangdi Xu)
  • rgw: add a missing cap type (pr#6774, Yehuda Sadeh)
  • rgw: add an inspection to the field of type when assigning user caps (pr#6051, Kongming Wu)
  • rgw: Add a test for multi-tenancy (pr#8592, Pete Zaitcev)
  • rgw: add bucket request payment feature usage statistics integration (issue#13834, pr#6656, Javier M. Mellid)
  • rgw: add compat header for TEMP_FAILURE_RETRY (pr#6294, John Coyle)
  • rgw: add default quota config (pr#6400, Daniel Gryniewicz)
  • rgw: add LifeCycle feature (pr#6331, Ji Chen)
  • rgw: add missing error code for admin op API (pr#7037, Dunrong Huang)
  • rgw: adds the radosgw-admin sync status command that gives a human readable status of the sync process at a specific zone (pr#8030, Yehuda Sadeh)
  • rgw: add support for caching of Keystone admin token. (pr#7630, Radoslaw Zarzynski)
  • rgw: add support for “end_marker” parameter for GET on Swift account. (issue#10682, pr#4216, Radoslaw Zarzynski)
  • rgw: add support for getting Swift’s DLO without manifest handling (pr#6206, Radoslaw Zarzynski)
  • rgw: add support for metadata upload during PUT on Swift container. (pr#8002, Radoslaw Zarzynski)
  • rgw: add support for Static Large Objects of Swift API (issue#12886, issue#13452, pr#6643, Yehuda Sadeh, Radoslaw Zarzynski)
  • rgw: add support for system requests over Swift API (pr#7666, Radoslaw Zarzynski)
  • rgw: add zone delete to rgw-admin help (pr#8184, Abhishek Lekshmanan)
  • rgw: adjust error code when bucket does not exist in copy operation (issue#14975, pr#7916, Yehuda Sadeh)
  • rgw: adjust the request_uri to support absoluteURI of http request (issue#12917, pr#7675, Wenjun Huang)
  • rgw: admin api for retrieving usage info (Ji Chen) (pr#8031, Yehuda Sadeh, Ji Chen)
  • rgw_admin: improve period update errors (issue#15251, pr#8564, Abhishek Lekshmanan)
  • rgw_admin: orphans finish segfaults (pr#6652, Igor Fedotov)
  • rgw-admin: remove unused iterator and fix error message (pr#8507, Karol Mroz)
  • rgw_admin: remove unused parent_period arg (pr#8411, Abhishek Lekshmanan)
  • rgw: Allow an implicit tenant in case of Keystone (pr#8139, Pete Zaitcev)
  • rgw: allow authentication keystone with self signed certs (issue#14853, issue#13422, pr#7777, Abhishek Lekshmanan)
  • rgw: approximate AmazonS3 HostId error field. (pr#7444, Robin H. Johnson)
  • rgw: aws4: handle UNSIGNED-PAYLOAD under header auth (issue#15499, pr#8601, Javier M. Mellid)
  • rgw: aws4 subdomain calling bugfix (issue#15369, pr#8472, Javier M. Mellid)
  • rgw: bucket link now set the bucket.instance acl (bug fix) (issue#11076, pr#8037, Zengran Zhang)
  • rgw: bucket request payment support (issue#13427, pr#6214, Javier M. Mellid)
  • rgw: Bug fix for mtime anomalies in RadosGW and other places (pr#7328, Adam C. Emerson, Casey Bodley)
  • rgw: build-related fixes (pr#8076, Yehuda Sadeh, Matt Benjamin)
  • rgw: calculate payload hash in RGWPutObj_ObjStore only when necessary. (pr#7869, Radoslaw Zarzynski)
  • rgw: call rgw_log_usage_finalize() on reconfiguration (pr#8585, Casey Bodley)
  • rgw: Check return code in RGWFileHandle::write (pr#7875, Brad Hubbard)
  • rgw: check the return value when call fe->run() (issue#14585, pr#7457, wei qiaomiao)
  • rgw: clarify the error message when trying to create an existed user (pr#5938, Zeqiang Zhuang)
  • rgw: cleanups to comments and messages (pr#7633, Pete Zaitcev)
  • rgw: content length (issue#13582, pr#6975, Yehuda Sadeh)
  • rgw: convert plain object to versioned (with null version) when removing (issue#15243, pr#8268, Yehuda Sadeh)
  • rgw: delete default zone (pr#7005, YankunLi)
  • rgw: do not abort radowgw server when using admin op API with bad parameters (issue#14190, issue#14191, pr#7063, Dunrong Huang)
  • rgw: Do not send a Content-Type on a ‘304 Not Modified’ response (issue#15119, pr#8253, Wido den Hollander)
  • rgw: don’t use s->bucket for metadata api path entry (issue#14549, pr#7408, Yehuda Sadeh)
  • rgw: Drop a debugging message (pr#7280, Pete Zaitcev)
  • rgw: drop permissions of rgw/civetweb after startup (issue#13600, pr#8019, Karol Mroz)
  • rgw: Drop unused usage_exit from rgw_admin.cc (pr#7632, Pete Zaitcev)
  • rgw: Ensure xmlns is consistent on S3 responses. (pr#8526, Robin H. Johnson)
  • rgw: extend rgw_extended_http_attrs to affect Swift accounts and containers as well (pr#5969, Radoslaw Zarzynski)
  • rgw: fcgi should include acconfig (pr#7760, Abhishek Lekshmanan)
  • rgw_file: set owner uid, gid, and Unix mode on new objects (pr#8321, Matt Benjamin)
  • rgw: file unix (pr#8563, Matt Benjamin)
  • rgw: fix a glaring syntax error (pr#6888, Pavan Rallabhandi)
  • rgw: fix a typo in error message (pr#8434, Abhishek Lekshmanan)
  • rgw: fix a typo in init-radosgw (pr#6817, Zhi Zhang)
  • rgw: fix binfo_cache, RGWShardCollectCR (pr#8619, Yehuda Sadeh)
  • rgw: fix compilation warning (pr#7160, Yehuda Sadeh)
  • rgw: fix compiling error (pr#8394, xie xingguo)
  • rgw: fixes for per-period metadata logs (pr#7827, Casey Bodley)
  • rgw: fix lockdep false positive (pr#8284, Yehuda Sadeh)
  • rgw: fix mdlog (pr#8183, Orit Wasserman)
  • rgw: fix objects can not be displayed which object name does not cont… (issue#12963, pr#5738, Weijun Duan)
  • rgw: fix openssl linkage (pr#6513, Yehuda Sadeh)
  • rgw: fix partial read issue in rgw_admin and rgw_tools (pr#6761, Jiaying Ren)
  • rgw: fix problem deleting objects begining with double underscores (issue#15318, pr#8488, Orit Wasserman)
  • rgw: fix reload on non Debian systems. (pr#6482, Hervé Rousseau)
  • rgw: fix response of delete expired objects (issue#13469, pr#6228, Yuan Zhou)
  • rgw: Fix subuser harder with tenants (pr#7618, Pete Zaitcev)
  • rgw: fix swift API returning incorrect account metadata (issue#13140, pr#6047, Sangdi Xu)
  • rgw: fix the build failure (pr#6927, Kefu Chai)
  • rgw: fix typo in RGWHTTPClient::process error message (pr#6424, Brad Hubbard)
  • rgw: fix unsafe c_str() usage (issue#15463, pr#8559, Sage Weil)
  • rgw: fix wrong check for parse() return (pr#6797, Dunrong Huang)
  • rgw: fix wrong etag calculation during POST on S3 bucket. (issue#11241, pr#6030, Radoslaw Zarzynski)
  • rgw: fix wrong handling of limit=0 during listing of Swift account. (issue#14903, pr#7821, Radoslaw Zarzynski)
  • rgw: handle no current_period in is_syncing_bucket_meta (pr#8597, Orit Wasserman)
  • rgw: highres time stamps (pr#8108, Yehuda Sadeh, Adam C. Emerson, Matt Benjamin)
  • rgw: improve error handling in S3/Keystone integration (pr#7597, Radoslaw Zarzynski)
  • rgw: increase verbosity level on RGWObjManifest line (pr#7285, magicrobotmonkey)
  • rgw: indexless (pr#7786, Yehuda Sadeh)
  • rgw: jewel nfs fixes (pr#8460, Matt Benjamin)
  • rgw: keystone v3 (pr#7719, Mark Barnes, Radoslaw Zarzynski)
  • rgw: ldap fixes (pr#8168, Matt Benjamin)
  • rgw_ldap: make ldap.h inclusion conditional (pr#8500, Matt Benjamin)
  • rgw: ldap (Matt Benjamin) (pr#7985, Matt Benjamin)
  • rgw leaks fixes (pr#8636, Yehuda Sadeh)
  • rgw: let radosgw-admin bucket stats return a standard josn (pr#7029, Ruifeng Yang)
  • rgw: link against system openssl (instead of dlopen at runtime) (pr#6419, Sage Weil)
  • rgw: link civetweb with openssl (Sage, Marcus Watts) (pr#7825, Marcus Watts, Sage Weil)
  • rgw: link payer info to usage logging (pr#7918, Yehuda Sadeh, Javier M. Mellid)
  • rgw: mdlog trim add usage prompt (pr#6059, Weijun Duan)
  • rgw: modify command stucking when operating radosgw-admin metadata list user (pr#7032, Peiyang Liu)
  • rgw: modify documents and help infos’ descriptions to the usage of option date when executing command “log show” (pr#6080, Kongming Wu)
  • rgw: modify the conditional statement in parse_metadata_key method. (pr#5875, Zengran Zhang)
  • rgw: move signal.h dependency from rgw_front.h (pr#7678, Matt Benjamin)
  • rgw: Multipart ListPartsResult ETag quotes (issue#15334, pr#8387, Robin H. Johnson)
  • rgw: multiple improvements regarding etag calculation for SLO/DLO of Swift API. (pr#7764, Radoslaw Zarzynski)
  • rgw: multiple Swift API compliance improvements for TempURL (Radoslaw Zarzynsk) (issue#14806, issue#11163, pr#7891, Radoslaw Zarzynski)
  • rgw: multisite fixes (pr#8013, Yehuda Sadeh)
  • rgw: multitenancy support (pr#6784, Yehuda Sadeh, Pete Zaitcev)
  • rgw: new multisite merge (issue#14549, pr#7709, Yehuda Sadeh, Orit Wasserman, Casey Bodley, Daniel Gryniewicz)
  • rgw: Parse –subuser better (pr#7279, Pete Zaitcev)
  • rgw: prevent anonymous user from reading bucket with authenticated read ACL (issue#13207, pr#6057, root)
  • rgw: radosgw-admin bucket check –fix not work (pr#7093, Weijun Duan)
  • rgw-rados: return RGWSystemMetaObj init directly (pr#8534, Karol Mroz)
  • rgw: refuse to calculate digest when the s3 secret key is empty (issue#13133, pr#6045, Sangdi Xu)
  • rgw : region to zonegroup related fixes (pr#8620, Yehuda Sadeh)
  • rgw: remove duplicated code in RGWRados::get_bucket_info() (pr#7413, liyankun)
  • rgw: remove extra check in RGWGetObj::execute (issue#12352, pr#5262, Javier M. Mellid)
  • rgw: Remove unused code in PutMetadataAccount:execute (pr#6668, Pete Zaitcev)
  • rgw: remove unused variable in RGWPutMetadataBucket::execute (pr#6735, Radoslaw Zarzynski)
  • rgw: remove unused vector (pr#7990, Na Xie)
  • rgw: reset return code in when iterating over the bucket the objects (issue#14826, pr#7803, Orit Wasserman)
  • rgw: retry RGWRemoteMetaLog::read_log_info() while master is down (pr#8453, Casey Bodley)
  • rgw: Revert “rgw ldap” (pr#8075, Yehuda Sadeh)
  • rgw/rgw_admin:fix bug about list and stats command (pr#8200, Qiankun Zheng)
  • rgw/rgw_common.h: fix the RGWBucketInfo decoding (pr#8154, Kefu Chai)
  • rgw/rgw_common.h: fix the RGWBucketInfo decoding (pr#8165, Kefu Chai)
  • rgw: RGWLib::env is not used so remove it (pr#7874, Brad Hubbard)
  • rgw/rgw_orphan: check the return value of save_state (pr#7544, Boris Ranto)
  • rgw: RGWPeriod::reflect() sets master zonegroup as default (pr#8566, Casey Bodley)
  • rgw/rgw_resolve: fallback to res_query when res_nquery not implemented (pr#6292, John Coyle)
  • rgw: RGWZoneParams::create should not handle -EEXIST error (pr#7927, Orit Wasserman)
  • rgw: S3: set EncodingType in ListBucketResult (pr#7712, Victor Makarov)
  • rgw: signature mismatch with escaped characters in url query portion (issue#15358, pr#8445, Javier M. Mellid)
  • rgw: static large objects (Radoslaw Zarzynski, Yehuda Sadeh)
  • rgw: store system object meta in cache when creating it (issue#14678, pr#7615, Yehuda Sadeh)
  • rgw: support core file limit for radosgw daemon (pr#6346, Guang Yang)
  • rgw: support for aws authentication v4 (Javier M. Mellid) (issue#10333, pr#7720, Yehuda Sadeh, Javier M. Mellid)
  • rgw: support json format for admin policy API (Dunrong Huang) (issue#14090, pr#8036, Yehuda Sadeh, Dunrong Huang)
  • rgw: swift bulk delete (Radoslaw Zarzynski)
  • rgw: swift use Civetweb ssl can not get right url (issue#13628, pr#6408, Weijun Duan)
  • rgw: swift versioning disabled (pr#8066, Yehuda Sadeh, Radoslaw Zarzynski)
  • rgw: sync fixes 3 (pr#8170, Yehuda Sadeh)
  • rgw: sync fixes 4 (pr#8190, Yehuda Sadeh)
  • rgw sync fixes (pr#8095, Yehuda Sadeh)
  • rgw: the map ‘headers’ is assigned a wrong value (pr#8481, weiqiaomiao)
  • rgw: try to parse Keystone token in order appropriate to configuration. (pr#7822, Radoslaw Zarzynski)
  • rgw: try to use current period id in a few more cases (pr#8588, Yehuda Sadeh)
  • rgw:Use count fn in RGWUserBuckets for quota check (pr#8294, Abhishek Lekshmanan)
  • rgw: use pimpl pattern for RGWPeriodHistory (pr#7809, Casey Bodley)
  • rgw: user quota may not adjust on bucket removal (issue#14507, pr#7586, root)
  • rgw: use smart pointer for C_Reinitwatch (pr#6767, Orit Wasserman)
  • rgw: warn on suspicious civetweb frontend parameters (pr#6944, Matt Benjamin)
  • rocksdb: build with PORTABLE=1 (pr#6311, Sage Weil)
  • rocksdb: remove rdb source files from dist tarball (issue#13554, pr#6379, Kefu Chai)
  • rocksdb: remove rdb sources from dist tarball (issue#13554, pr#7105, Venky Shankar)
  • rocksdb: use native rocksdb makefile (and our autotools) (pr#6290, Sage Weil)
  • rpm: ceph.spec.in: correctly declare systemd dependency for SLE/openSUSE (pr#6114, Nathan Cutler)
  • rpm: ceph.spec.in: fix libs-compat / devel-compat conditional (issue#12315, pr#5219, Ken Dreyer)
  • rpm,deb: remove conditional BuildRequires for btrfs-progs (issue#15042, pr#8016, Erwan Velu)
  • rpm: move %post(un) ldconfig calls to ceph-base (issue#14940, pr#7867, Nathan Cutler)
  • rpm: move runtime dependencies to ceph-base and fix other packaging issues (issue#14864, pr#7826, Nathan Cutler)
  • rpm: prefer UID/GID 167 when creating ceph user/group (issue#15246, pr#8277, Nathan Cutler)
  • rpm: remove sub-package dependencies on “ceph” (issue#15146, pr#8137, Ken Dreyer)
  • rpm: rhel 5.9 librados compile fix, moved blkid to RBD check/compilation (issue#13177, pr#5954, Rohan Mars)
  • script: add missing stop_rgw variable to stop.sh script (pr#7959, Karol Mroz)
  • scripts: adjust mstart and mstop script to run with cmake build (pr#6920, Orit Wasserman)
  • scripts: release_notes can track original issue (pr#6009, Abhishek Lekshmanan)
  • script: subscription-manager support (issue#14972, pr#7907, Loic Dachary)
  • selinux: allow log files to be located in /var/log/radosgw (pr#7604, Boris Ranto)
  • selinux: Update policy to grant additional access (issue#14870, pr#7971, Boris Ranto)
  • set 128MB tcmalloc cache size by bytes (pr#8427, Star Guo)
  • stringify outputted error code and fix unmatched parentheses. (pr#6998, xie.xingguo, xie xingguo)
  • submodules: revert an accidental change (pr#7929, Yehuda Sadeh)
  • systemd: correctly escape block device paths (issue#14706, pr#7579, James Page)
  • systemd: drop any systemd imposed process/thread limits (pr#8450, James Page)
  • systemd: fix typos (pr#6679, Tobias Suckow)
  • systemd: set up environment in rbdmap unit file (issue#14984, pr#8222, Nathan Cutler)
  • systemd: start/stop/restart ceph services by daemon type (issue#13497, pr#6276, Zhi Zhang)
  • systemd: Use the same restart limits as upstart (pr#8188, Boris Ranto)
  • sysvinit: allow custom cluster names (pr#6732, Richard Chan)
  • test: add missing shut_down mock method (pr#8125, Jason Dillaman)
  • test/bufferlist: Avoid false-positive tests (pr#7955, Erwan Velu)
  • test: ceph_test_rados: use less CPU (pr#7513, Samuel Just)
  • test/cli-integration/rbd: disable progress output (issue#14931, pr#7858, Josh Durgin)
  • test: correct librbd errors discovered with unoptimized cmake build (pr#7914, Jason Dillaman)
  • test: create pools for rbd tests with different prefix (pr#7738, Mykola Golub)
  • test: enable test for bug #2339 which has been resolved. (pr#7743, You Ji)
  • test/encoding/readable.sh fix (pr#6714, Igor Podoski)
  • test/encoding/readable: use [ for “test” not (( (pr#8574, Kefu Chai)
  • test: fix issues discovered via the rbd permissions test case (pr#8129, Jason Dillaman)
  • test: fix osd-scrub-snaps.sh (pr#6697, Xinze Chi)
  • test: Fix test to run with btrfs which has snap_### dirs (issue#15347, pr#8420, David Zafman)
  • test: fixup and improvements for rbd-mirror test (pr#8090, Mykola Golub)
  • test: fix ut test failure caused by lfn change (issue#15464, pr#8544, xie xingguo)
  • test: fix valgrind memcheck issues for rbd-mirror test cases (issue#15354, pr#8493, Jason Dillaman)
  • test: handle exception thrown from close during rbd lock test (pr#8124, Jason Dillaman)
  • test: image replayer needs dummy remote mirror peer uuid (pr#8584, Jason Dillaman)
  • test/libcephfs/flock: add sys/file.h include for flock operations (pr#6310, John Coyle)
  • test/librados/test.cc: clean up EC pools’ crush rules too (issue#13878, pr#6788, Loic Dachary, Dan Mick)
  • test/librbd/fsx: Use c++11 std::mt19937 generator instead of random_r() (pr#6332, John Coyle)
  • test/mon/osd-erasure-code-profile: pick new mon port (pr#7161, Sage Weil)
  • test: more debug logging for TestWatchNotify (pr#7737, Mykola Golub)
  • test: new librbd flatten test case (pr#7609, Jason Dillaman)
  • test/osd: Relax the timing intervals in osd-markdown.sh (pr#7899, Dan Mick)
  • test_pool_create.sh: put test files in the test dir so they are cleaned up (pr#8219, Josh Durgin)
  • test/pybind/test_ceph_argparse: fix reweight-by-utilization tests (pr#8027, Kefu Chai, Sage Weil)
  • test/radosgw-admin: update the expected usage outputs (pr#7723, Kefu Chai)
  • test: rbd-mirror: add “switch to the next tag” test (pr#8149, Mykola Golub)
  • test: rbd-mirror: compare positions using all fields (pr#8172, Mykola Golub)
  • test: rbd-mirror: script improvements for manual testing (pr#8325, Mykola Golub)
  • test: reproducer for writeback CoW deadlock (pr#8009, Jason Dillaman)
  • test/rgw: add multisite test for meta sync across periods (pr#7887, Casey Bodley)
  • test_rgw_admin: use freopen for output redirection. (pr#6303, John Coyle)
  • tests: add const for ec test (pr#6911, Michal Jarzabek)
  • tests: add Ubuntu 16.04 xenial dockerfile (pr#8519, Loic Dachary)
  • tests: allow docker-test.sh to run under root (issue#13355, pr#6173, Loic Dachary)
  • tests: allow object corpus readable test to skip specific incompat instances (pr#6932, Igor Podoski)
  • tests: centos7 needs the Continuous Release (CR) Repository enabled for (issue#13997, pr#6842, Brad Hubbard)
  • tests: ceph-disk.sh: should use “readlink -f” instead (pr#7594, Kefu Chai)
  • tests: ceph-disk.sh: use “readlink -f” instead for fullpath (pr#7606, Kefu Chai)
  • tests: ceph-disk workunit uses configobj (pr#6342, Loic Dachary)
  • tests: ceph-helpers assert success getting backfills (pr#6699, Loic Dachary)
  • tests: ceph_test_keyvaluedb_iterators: fix broken test (pr#6597, Haomai Wang)
  • tests: concatenate test_rados_test_tool from src and qa (issue#13691, pr#6464, Loic Dachary)
  • tests: configure with rocksdb by default (issue#14220, pr#7100, Loic Dachary)
  • tests: destroy testprofile before creating one (issue#13664, pr#6446, Loic Dachary)
  • test: set a default $CEPH_ROOT env variable (pr#8645, Kefu Chai)
  • tests: fix a few build warnings (pr#7608, Sage Weil)
  • tests: fix failure for osd-scrub-snap.sh (issue#13986, pr#6890, Loic Dachary, Ning Yao)
  • tests: Fix for make check. (pr#7102, David Zafman)
  • tests: Fixing broken test/cephtool-test-mon.sh test (pr#8429, Erwan Velu)
  • tests: fix race condition testing auto scrub (issue#13592, pr#6724, Xinze Chi, Loic Dachary)
  • tests: fix test_rados_tools.sh rados lookup (issue#13691, pr#6502, Loic Dachary)
  • tests: fix typo in TestClsRbd.snapshots test case (issue#13727, pr#6504, Jason Dillaman)
  • tests: flush op work queue prior to destroying MockImageCtx (issue#14092, pr#7002, Jason Dillaman)
  • tests: ignore test-suite.log (pr#6584, Loic Dachary)
  • tests: Improving ‘make check’ execution time (pr#8131, Erwan Velu)
  • tests: notification slave needs to wait for master (issue#13810, pr#7220, Jason Dillaman)
  • tests: –osd-scrub-load-threshold=2000 for more consistency (issue#14027, pr#6871, Loic Dachary)
  • tests: osd-scrub-snaps.sh to display full osd logs on error (issue#13986, pr#6857, Loic Dachary)
  • tests: port uniqueness reminder (pr#6387, Loic Dachary)
  • tests: restore run-cli-tests (pr#6571, Loic Dachary, Sage Weil, Jason Dillaman)
  • tests: snap rename and rebuild object map in client update test (pr#7224, Jason Dillaman)
  • tests: sync ceph-erasure-code-corpus for mktemp -d (pr#7596, Loic Dachary)
  • tests: test/librados/test.cc must create profile (issue#13664, pr#6452, Loic Dachary)
  • tests: test_pidfile.sh lingering processes (issue#14834, pr#7734, Loic Dachary)
  • tests: unittest_bufferlist: fix hexdump test (pr#7152, Sage Weil)
  • tests: unittest_ipaddr: fix segv (pr#7154, Sage Weil)
  • test/system/rados_list_parallel: print oid if rados_write fails (issue#15240, pr#8309, Kefu Chai)
  • test/system/*: use dynamically generated pool name (issue#15240, pr#8318, Kefu Chai)
  • test/test-erasure-code.sh: disable pg_temp priming (issue#15211, pr#8260, Sage Weil)
  • test: TestMirroringWatcher test cases were not closing images (pr#8435, Jason Dillaman)
  • test/TestPGLog: fix the FTBFS (issue#14930, pr#7855, Kefu Chai)
  • test/test_pool_create.sh: fix port (pr#8361, Sage Weil)
  • test/time: no need to abs(uint64_t) for comparing (pr#7726, Kefu Chai)
  • test: update rbd integration cram tests for new default features (pr#8001, Jason Dillaman)
  • test: use sequential journal_tid for object cacher test (issue#13877, pr#6710, Josh Durgin)
  • tools: add cephfs-table-tool ‘take_inos’ (pr#6655, John Spray)
  • tools/cephfs: add tmap_upgrade (pr#7003, John Spray)
  • tools/cephfs: fix overflow writing header to fixed size buffer (#13816) (pr#6617, John Spray)
  • tools/cephfs: fix overflow writing header to fixed size buffer (#13816) (pr#6617, John Spray)
  • tools/cephfs: fix tmap_upgrade (issue#15135, pr#8128, John Spray)
  • tools: ceph_monstore_tool: add inflate-pgmap command (issue#14217, pr#7097, Kefu Chai)
  • tools: ceph-monstore-update-crush: add “–test” when testing crushmap (pr#6418, Kefu Chai)
  • tools: Fix layout handing in cephfs-data-scan (#13898) (pr#6719, John Spray)
  • tools: monstore: add ‘show-versions’ command. (pr#7073, Cilang Zhao)
  • tools/rados: reduce “rados put” memory usage by op_size (pr#7928, Piotr Dałek)
  • tools:remove duplicate references (pr#5917, Bo Cai)
  • tools: support printing part cluster map in readable fashion (issue#13079, pr#5921, Bo Cai)
  • unittest_compression_zlib: do not assume buffer will be null terminated (pr#8064, Sage Weil)
  • unittest_erasure_code_plugin: fix deadlock (Alpine) (pr#8314, John Coyle)
  • unittest_osdmap: default crush tunables now firefly (pr#8098, Sage Weil)
  • vstart: fix up cmake paths when VSTART_DEST is given (pr#8363, Casey Bodley)
  • vstart: grant full access to Swift testing account (pr#6239, Yuan Zhou)
  • vstart: make -k with optional mon_num. (pr#8251, Jianpeng Ma)
  • vstart: set cephfs root uid/gid to caller (pr#6255, John Spray)
  • vstart.sh: add mstart, mstop, mrun wrappers for running multiple vstart-style test clusters out of src tree (pr#6901, Yehuda Sadeh)
  • vstart.sh: avoid race condition starting rgw via vstart.sh (issue#14829, pr#7727, Javier M. Mellid)
  • vstart.sh: silence a harmless msg where btrfs is not found (pr#7640, Patrick Donnelly)
  • xio: add prefix to xio msgr logs (pr#8148, Roi Dayan)
  • xio: fix compilation against latest accelio (pr#8022, Roi Dayan)
  • xio: fix incorrect ip being assigned in case of multiple RDMA ports (pr#7747, Subramanyam Varanasi)
  • xio: remove duplicate assignment of peer addr (pr#8025, Roi Dayan)
  • xio: remove redundant magic methods (pr#7773, Roi Dayan)
  • xio: remove unused variable (pr#8023, Roi Dayan)
  • xio: xio_init needs to be called before any other xio function (pr#8227, Roi Dayan)
  • xxhash: use clone of xxhash.git; add .gitignore (pr#7986, Sage Weil)

Notable Changes since Hammer

  • aarch64: add optimized version of crc32c (Yazen Ghannam, Steve Capper)
  • auth: cache/reuse crypto lib key objects, optimize msg signature check (Sage Weil)
  • auth: reinit NSS after fork() (#11128 Yan, Zheng)
  • autotools: fix out of tree build (Krxysztof Kosinski)
  • autotools: improve make check output (Loic Dachary)
  • buffer: add invalidate_crc() (Piotr Dalek)
  • buffer: fix zero bug (#12252 Haomai Wang)
  • buffer: some cleanup (Michal Jarzabek)
  • build: allow tcmalloc-minimal (Thorsten Behrens)
  • build: C++11 now supported
  • build: cmake: fix nss linking (Danny Al-Gaaf)
  • build: cmake: misc fixes (Orit Wasserman, Casey Bodley)
  • build: disable LTTNG by default (#11333 Josh Durgin)
  • build: do not build ceph-dencoder with tcmalloc (#10691 Boris Ranto)
  • build: fix junit detection on Fedora 22 (Ira Cooper)
  • build: fix pg ref disabling (William A. Kennington III)
  • build: fix ppc build (James Page)
  • build: install-deps: misc fixes (Loic Dachary)
  • build: install-deps.sh improvements (Loic Dachary)
  • build: install-deps: support OpenSUSE (Loic Dachary)
  • build: make_dist_tarball.sh (Sage Weil)
  • build: many cmake improvements
  • build: misc cmake fixes (Matt Benjamin)
  • build: misc fixes (Boris Ranto, Ken Dreyer, Owen Synge)
  • build: OSX build fixes (Yan, Zheng)
  • build: remove rest-bench
  • ceph-authtool: fix return code on error (Gerhard Muntingh)
  • ceph-detect-init: added Linux Mint (Michal Jarzabek)
  • ceph-detect-init: robust init system detection (Owen Synge)
  • ceph-disk: ensure ‘zap’ only operates on a full disk (#11272 Loic Dachary)
  • ceph-disk: fix zap sgdisk invocation (Owen Synge, Thorsten Behrens)
  • ceph-disk: follow ceph-osd hints when creating journal (#9580 Sage Weil)
  • ceph-disk: handle re-using existing partition (#10987 Loic Dachary)
  • ceph-disk: improve parted output parsing (#10983 Loic Dachary)
  • ceph-disk: install pip > 6.1 (#11952 Loic Dachary)
  • ceph-disk: make suppression work for activate-all and activate-journal (Dan van der Ster)
  • ceph-disk: many fixes (Loic Dachary, Alfredo Deza)
  • ceph-disk: fixes to respect init system (Loic Dachary, Owen Synge)
  • ceph-disk: pass –cluster arg on prepare subcommand (Kefu Chai)
  • ceph-disk: support for multipath devices (Loic Dachary)
  • ceph-disk: support NVMe device partitions (#11612 Ilja Slepnev)
  • ceph: fix ‘df’ units (Zhe Zhang)
  • ceph: fix parsing in interactive cli mode (#11279 Kefu Chai)
  • cephfs-data-scan: many additions, improvements (John Spray)
  • ceph-fuse: do not require successful remount when unmounting (#10982 Greg Farnum)
  • ceph-fuse, libcephfs: don’t clear COMPLETE when trimming null (Yan, Zheng)
  • ceph-fuse, libcephfs: drop inode when rmdir finishes (#11339 Yan, Zheng)
  • ceph-fuse,libcephfs: fix uninline (#11356 Yan, Zheng)
  • ceph-fuse, libcephfs: hold exclusive caps on dirs we “own” (#11226 Greg Farnum)
  • ceph-fuse: mostly behave on 32-bit hosts (Yan, Zheng)
  • ceph: improve error output for ‘tell’ (#11101 Kefu Chai)
  • ceph-monstore-tool: fix store-copy (Huangjun)
  • ceph: new ‘ceph daemonperf’ command (John Spray, Mykola Golub)
  • ceph-objectstore-tool: many many improvements (David Zafman)
  • ceph-objectstore-tool: refactoring and cleanup (John Spray)
  • ceph-post-file: misc fixes (Joey McDonald, Sage Weil)
  • ceph_test_rados: test pipelined reads (Zhiqiang Wang)
  • client: avoid sending unnecessary FLUSHSNAP messages (Yan, Zheng)
  • client: exclude setfilelock when calculating oldest tid (Yan, Zheng)
  • client: fix error handling in check_pool_perm (John Spray)
  • client: fsync waits only for inode’s caps to flush (Yan, Zheng)
  • client: invalidate kernel dcache when cache size exceeds limits (Yan, Zheng)
  • client: make fsync wait for unsafe dir operations (Yan, Zheng)
  • client: pin lookup dentry to avoid inode being freed (Yan, Zheng)
  • common: add descriptions to perfcounters (Kiseleva Alyona)
  • common: add perf counter descriptions (Alyona Kiseleva)
  • common: bufferlist performance tuning (Piotr Dalek, Sage Weil)
  • common: detect overflow of int config values (#11484 Kefu Chai)
  • common: fix bit_vector extent calc (#12611 Jason Dillaman)
  • common: fix json parsing of utf8 (#7387 Tim Serong)
  • common: fix leak of pthread_mutexattr (#11762 Ketor Meng)
  • common: fix LTTNG vs fork issue (Josh Durgin)
  • common: fix throttle max change (Henry Chang)
  • common: make mutex more efficient
  • common: make work queue addition/removal thread safe (#12662 Jason Dillaman)
  • common: optracker improvements (Zhiqiang Wang, Jianpeng Ma)
  • common: PriorityQueue tests (Kefu Chai)
  • common: some async compression infrastructure (Haomai Wang)
  • crush: add –check to validate dangling names, max osd id (Kefu Chai)
  • crush: cleanup, sync with kernel (Ilya Dryomov)
  • crush: fix crash from invalid ‘take’ argument (#11602 Shiva Rkreddy, Sage Weil)
  • crush: fix divide-by-2 in straw2 (#11357 Yann Dupont, Sage Weil)
  • crush: fix has_v4_buckets (#11364 Sage Weil)
  • crush: fix subtree base weight on adjust_subtree_weight (#11855 Sage Weil)
  • crush: respect default replicated ruleset config on map creation (Ilya Dryomov)
  • crushtool: fix order of operations, usage (Sage Weil)
  • crypto: fix NSS leak (Jason Dillaman)
  • crypto: fix unbalanced init/shutdown (#12598 Zheng Yan)
  • deb: fix rest-bench-dbg and ceph-test-dbg dependendies (Ken Dreyer)
  • debian: minor package reorg (Ken Dreyer)
  • deb, rpm: move ceph-objectstore-tool to ceph (Ken Dreyer)
  • doc: docuemnt object corpus generation (#11099 Alexis Normand)
  • doc: document region hostnames (Robin H. Johnson)
  • doc: fix gender neutrality (Alexandre Maragone)
  • doc: fix install doc (#10957 Kefu Chai)
  • doc: fix sphinx issues (Kefu Chai)
  • doc: man page updates (Kefu Chai)
  • doc: mds data structure docs (Yan, Zheng)
  • doc: misc updates (Fracois Lafont, Ken Dreyer, Kefu Chai, Owen Synge, Gael Fenet-Garde, Loic Dachary, Yannick Atchy-Dalama, Jiaying Ren, Kevin Caradant, Robert Maxime, Nicolas Yong, Germain Chipaux, Arthur Gorjux, Gabriel Sentucq, Clement Lebrun, Jean-Remi Deveaux, Clair Massot, Robin Tang, Thomas Laumondais, Jordan Dorne, Yuan Zhou, Valentin Thomas, Pierre Chaumont, Benjamin Troquereau, Benjamin Sesia, Vikhyat Umrao, Nilamdyuti Goswami, Vartika Rai, Florian Haas, Loic Dachary, Simon Guinot, Andy Allan, Alistair Israel, Ken Dreyer, Robin Rehu, Lee Revell, Florian Marsylle, Thomas Johnson, Bosse Klykken, Travis Rhoden, Ian Kelling)
  • doc: swift tempurls (#10184 Abhishek Lekshmanan)
  • doc: switch doxygen integration back to breathe (#6115 Kefu Chai)
  • doc: update release schedule docs (Loic Dachary)
  • erasure-code: cleanup (Kefu Chai)
  • erasure-code: improve tests (Loic Dachary)
  • erasure-code: shec: fix recovery bugs (Takanori Nakao, Shotaro Kawaguchi)
  • erasure-code: update ISA-L to 2.13 (Yuan Zhou)
  • gmock: switch to submodule (Danny Al-Gaaf, Loic Dachary)
  • hadoop: add terasort test (Noah Watkins)
  • init-radosgw: merge with sysv version; fix enumeration (Sage Weil)
  • java: fix libcephfs bindings (Noah Watkins)
  • libcephfs: add pread, pwrite (Jevon Qiao)
  • libcephfs,ceph-fuse: cache cleanup (Zheng Yan)
  • libcephfs,ceph-fuse: fix request resend on cap reconnect (#10912 Yan, Zheng)
  • librados: add config observer (Alistair Strachan)
  • librados: add FULL_TRY and FULL_FORCE flags for dealing with full clusters or pools (Sage Weil)
  • librados: add src_fadvise_flags for copy-from (Jianpeng Ma)
  • librados: define C++ flags from C constants (Josh Durgin)
  • librados: fadvise flags per op (Jianpeng Ma)
  • librados: fix last_force_resent handling (#11026 Jianpeng Ma)
  • librados: fix memory leak from C_TwoContexts (Xiong Yiliang)
  • librados: fix notify completion race (#13114 Sage Weil)
  • librados: fix striper when stripe_count = 1 and stripe_unit != object_size (#11120 Yan, Zheng)
  • librados, libcephfs: randomize client nonces (Josh Durgin)
  • librados: op perf counters (John Spray)
  • librados: pybind: fix binary omap values (Robin H. Johnson)
  • librados: pybind: fix write() method return code (Javier Guerra)
  • librados: respect default_crush_ruleset on pool_create (#11640 Yuan Zhou)
  • libradosstriper: fix leak (Danny Al-Gaaf)
  • librbd: add const for single-client-only features (Josh Durgin)
  • librbd: add deep-flatten operation (Jason Dillaman)
  • librbd: add purge_on_error cache behavior (Jianpeng Ma)
  • librbd: allow additional metadata to be stored with the image (Haomai Wang)
  • librbd: avoid blocking aio API methods (#11056 Jason Dillaman)
  • librbd: better handling for dup flatten requests (#11370 Jason Dillaman)
  • librbd: cancel in-flight ops on watch error (#11363 Jason Dillaman)
  • librbd: default new images to format 2 (#11348 Jason Dillaman)
  • librbd: fadvise for copy, export, import (Jianpeng Ma)
  • librbd: fast diff implementation that leverages object map (Jason Dillaman)
  • librbd: fix fast diff bugs (#11553 Jason Dillaman)
  • librbd: fix image format detection (Zhiqiang Wang)
  • librbd: fix lock ordering issue (#11577 Jason Dillaman)
  • librbd: fix reads larger than the cache size (Lu Shi)
  • librbd: fix snapshot creation when other snap is active (#11475 Jason Dillaman)
  • librbd: flatten/copyup fixes (Jason Dillaman)
  • librbd: handle NOCACHE fadvise flag (Jinapeng Ma)
  • librbd: lockdep, helgrind validation (Jason Dillaman, Josh Durgin)
  • librbd: metadata filter fixes (Haomai Wang)
  • librbd: misc aio fixes (#5488 Jason Dillaman)
  • librbd: misc rbd fixes (#11478 #11113 #11342 #11380 Jason Dillaman, Zhiqiang Wang)
  • librbd: new diff_iterate2 API (Jason Dillaman)
  • librbd: object map rebuild support (Jason Dillaman)
  • librbd: only update image flags while hold exclusive lock (#11791 Jason Dillaman)
  • librbd: optionally disable allocation hint (Haomai Wang)
  • librbd: prevent race between resize requests (#12664 Jason Dillaman)
  • librbd: readahead fixes (Zhiqiang Wang)
  • librbd: return result code from close (#12069 Jason Dillaman)
  • librbd: store metadata, including config options, in image (Haomai Wang)
  • librbd: tolerate old osds when getting image metadata (#11549 Jason Dillaman)
  • librbd: use write_full when possible (Zhiqiang Wang)
  • log: fix data corruption race resulting from log rotation (#12465 Samuel Just)
  • logrotate.d: prefer service over invoke-rc.d (#11330 Win Hierman, Sage Weil)
  • mds: add ‘damaged’ state to MDSMap (John Spray)
  • mds: add nicknames for perfcounters (John Spray)
  • mds: avoid emitting cap warnigns before evicting session (John Spray)
  • mds: avoid getting stuck in XLOCKDONE (#11254 Yan, Zheng)
  • mds: disable problematic rstat propagation into snap parents (Yan, Zheng)
  • mds: do not add snapped items to bloom filter (Yan, Zheng)
  • mds: expose frags via asok (John Spray)
  • mds: fix expected holes in journal objects (#13167 Yan, Zheng)
  • mds: fix handling for missing mydir dirfrag (#11641 John Spray)
  • mds: fix integer truncateion on large client ids (Henry Chang)
  • mds: fix mydir replica issue with shutdown (#10743 John Spray)
  • mds: fix out-of-order messages (#11258 Yan, Zheng)
  • mds: fix rejoin (Yan, Zheng)
  • mds: fix setting entire file layout in one setxattr (John Spray)
  • mds: fix shutdown (John Spray)
  • mds: fix shutdown with strays (#10744 John Spray)
  • mds: fix SnapServer crash on deleted pool (John Spray)
  • mds: fix snapshot bugs (Yan, Zheng)
  • mds: fix stray reintegration (Yan, Zheng)
  • mds: fix stray handling (John Spray)
  • mds: fix suicide beacon (John Spray)
  • mds: flush immediately in do_open_truncate (#11011 John Spray)
  • mds: handle misc corruption issues (John Spray)
  • mds: improve dump methods (John Spray)
  • mds: many fixes (Yan, Zheng, John Spray, Greg Farnum)
  • mds: many snapshot and stray fixes (Yan, Zheng)
  • mds: misc fixes (Jianpeng Ma, Dan van der Ster, Zhang Zhi)
  • mds: misc journal cleanups and fixes (#10368 John Spray)
  • mds: misc repair improvements (John Spray)
  • mds: misc snap fixes (Zheng Yan)
  • mds: misc snapshot fixes (Yan, Zheng)
  • mds: new SessionMap storage using omap (#10649 John Spray)
  • mds: persist completed_requests reliably (#11048 John Spray)
  • mds: reduce memory consumption (Yan, Zheng)
  • mds: respawn instead of suicide on blacklist (John Spray)
  • mds: separate safe_pos in Journaler (#10368 John Spray)
  • mds: snapshot rename support (#3645 Yan, Zheng)
  • mds: store layout on header object (#4161 John Spray)
  • mds: throttle purge stray operations (#10390 John Spray)
  • mds: tolerate clock jumping backwards (#11053 Yan, Zheng)
  • mds: warn when clients fail to advance oldest_client_tid (#10657 Yan, Zheng)
  • misc cleanups and fixes (Danny Al-Gaaf)
  • misc coverity fixes (Danny Al-Gaaf)
  • misc performance and cleanup (Nathan Cutler, Xinxin Shu)
  • mon: add cache over MonitorDBStore (Kefu Chai)
  • mon: add ‘mon_metadata <id>’ command (Kefu Chai)
  • mon: add ‘node ls ...’ command (Kefu Chai)
  • mon: add NOFORWARD, OBSOLETE, DEPRECATE flags for mon commands (Joao Eduardo Luis)
  • mon: add PG count to ‘ceph osd df’ output (Michal Jarzabek)
  • mon: ‘ceph osd metadata’ can dump all osds (Haomai Wang)
  • mon: clean up, reorg some mon commands (Joao Eduardo Luis)
  • monclient: flush_log (John Spray)
  • mon: detect kv backend failures (Sage Weil)
  • mon: disallow >2 tiers (#11840 Kefu Chai)
  • mon: disallow ec pools as tiers (#11650 Samuel Just)
  • mon: do not deactivate last mds (#10862 John Spray)
  • mon: fix average utilization calc for ‘osd df’ (Mykola Golub)
  • mon: fix CRUSH map test for new pools (Sage Weil)
  • mon: fix log dump crash when debugging (Mykola Golub)
  • mon: fix mds beacon replies (#11590 Kefu Chai)
  • mon: fix metadata update race (Mykola Golub)
  • mon: fix min_last_epoch_clean tracking (Kefu Chai)
  • mon: fix ‘pg ls’ sort order, state names (#11569 Kefu Chai)
  • mon: fix refresh (#11470 Joao Eduardo Luis)
  • mon: fix variance calc in ‘osd df’ (Sage Weil)
  • mon: improve callout to crushtool (Mykola Golub)
  • mon: make blocked op messages more readable (Jianpeng Ma)
  • mon: make osd get pool ‘all’ only return applicable fields (#10891 Michal Jarzabek)
  • mon: misc scaling fixes (Sage Weil)
  • mon: normalize erasure-code profile for storage and comparison (Loic Dachary)
  • mon: only send mon metadata to supporting peers (Sage Weil)
  • mon: optionally specify osd id on ‘osd create’ (Mykola Golub)
  • mon: ‘osd tree’ fixes (Kefu Chai)
  • mon: periodic background scrub (Joao Eduardo Luis)
  • mon: prevent bucket deletion when referenced by a crush rule (#11602 Sage Weil)
  • mon: prevent pgp_num > pg_num (#12025 Xinxin Shu)
  • mon: prevent pool with snapshot state from being used as a tier (#11493 Sage Weil)
  • mon: prime pg_temp when CRUSH map changes (Sage Weil)
  • mon: refine check_remove_tier checks (#11504 John Spray)
  • mon: reject large max_mds values (#12222 John Spray)
  • mon: remove spurious who arg from ‘mds rm ...’ (John Spray)
  • mon: streamline session handling, fix memory leaks (Sage Weil)
  • mon: upgrades must pass through hammer (Sage Weil)
  • mon: warn on bogus cache tier config (Jianpeng Ma)
  • msgr: add ceph_perf_msgr tool (Hoamai Wang)
  • msgr: async: fix seq handling (Haomai Wang)
  • msgr: async: many many fixes (Haomai Wang)
  • msgr: simple: fix clear_pipe (#11381 Haomai Wang)
  • msgr: simple: fix connect_seq assert (Haomai Wang)
  • msgr: xio: fastpath improvements (Raju Kurunkad)
  • msgr: xio: fix ip and nonce (Raju Kurunkad)
  • msgr: xio: improve lane assignment (Vu Pham)
  • msgr: xio: sync with accellio v1.4 (Vu Pham)
  • msgr: xio: misc fixes (#10735 Matt Benjamin, Kefu Chai, Danny Al-Gaaf, Raju Kurunkad, Vu Pham, Casey Bodley)
  • msg: unit tests (Haomai Wang)
  • objectcacher: misc bug fixes (Jianpeng Ma)
  • osd: add latency perf counters for tier operations (Xinze Chi)
  • osd: add misc perfcounters (Xinze Chi)
  • osd: add simple sleep injection in recovery (Sage Weil)
  • osd: allow SEEK_HOLE/SEEK_DATA for sparse read (Zhiqiang Wang)
  • osd: avoid dup omap sets for in pg metadata (Sage Weil)
  • osd: avoid multiple hit set insertions (Zhiqiang Wang)
  • osd: avoid transaction append in some cases (Sage Weil)
  • osd: break PG removal into multiple iterations (#10198 Guang Yang)
  • osd: cache proxy-write support (Zhiqiang Wang, Samuel Just)
  • osd: check scrub state when handling map (Jianpeng Ma)
  • osd: clean up some constness, privateness (Kefu Chai)
  • osd: clean up temp object if promotion fails (Jianpeng Ma)
  • osd: configure promotion based on write recency (Zhiqiang Wang)
  • osd: constrain collections to meta and PGs (normal and temp) (Sage Weil)
  • osd: don’t send dup MMonGetOSDMap requests (Sage Weil, Kefu Chai)
  • osd: EIO injection (David Zhang)
  • osd: elminiate txn apend, ECSubWrite copy (Samuel Just)
  • osd: erasure-code: drop entries according to LRU (Andreas-Joachim Peters)
  • osd: erasure-code: fix SHEC floating point bug (#12936 Loic Dachary)
  • osd: erasure-code: update to ISA-L 2.14 (Yuan Zhou)
  • osd: filejournal: cleanup (David Zafman)
  • osd: filestore: clone using splice (Jianpeng Ma)
  • osd: filestore: fix recursive lock (Xinxin Shu)
  • osd: fix check_for_full (Henry Chang)
  • osd: fix dirty accounting in make_writeable (Zhiqiang Wang)
  • osd: fix dup promotion lost op bug (Zhiqiang Wang)
  • osd: fix endless repair when object is unrecoverable (Jianpeng Ma, Kefu Chai)
  • osd: fix hitset object naming to use GMT (Kefu Chai)
  • osd: fix misc memory leaks (Sage Weil)
  • osd: fix negative degraded stats during backfill (Guang Yang)
  • osd: fix osdmap dump of blacklist items (John Spray)
  • osd: fix peek_queue locking in FileStore (Xinze Chi)
  • osd: fix pg resurrection (#11429 Samuel Just)
  • osd: fix promotion vs full cache tier (Samuel Just)
  • osd: fix replay requeue when pg is still activating (#13116 Samuel Just)
  • osd: fix scrub stat bugs (Sage Weil, Samuel Just)
  • osd: fix snap flushing from cache tier (again) (#11787 Samuel Just)
  • osd: fix snap handling on promotion (#11296 Sam Just)
  • osd: fix temp-clearing (David Zafman)
  • osd: force promotion for ops EC can’t handle (Zhiqiang Wang)
  • osd: handle log split with overlapping entries (#11358 Samuel Just)
  • osd: ignore non-existent osds in unfound calc (#10976 Mykola Golub)
  • osd: improve behavior on machines with large memory pages (Steve Capper)
  • osd: include a temp namespace within each collection/pgid (Sage Weil)
  • osd: increase default max open files (Owen Synge)
  • osd: keyvaluestore: misc fixes (Varada Kari)
  • osd: low and high speed flush modes (Mingxin Liu)
  • osd: make suicide timeouts individually configurable (Samuel Just)
  • osd: merge multiple setattr calls into a setattrs call (Xinxin Shu)
  • osd: misc fixes (Ning Yao, Kefu Chai, Xinze Chi, Zhiqiang Wang, Jianpeng Ma)
  • osd: move scrub in OpWQ (Samuel Just)
  • osd: newstore prototype (Sage Weil)
  • osd: ObjectStore internal API refactor (Sage Weil)
  • osd: peer_features includes self (David Zafman)
  • osd: pool size change triggers new interval (#11771 Samuel Just)
  • osd: prepopulate needs_recovery_map when only one peer has missing (#9558 Guang Yang)
  • osd: randomize scrub times (#10973 Kefu Chai)
  • osd: recovery, peering fixes (#11687 Samuel Just)
  • osd: refactor scrub and digest recording (Sage Weil)
  • osd: refuse first write to EC object at non-zero offset (Jianpeng Ma)
  • osd: relax reply order on proxy read (#11211 Zhiqiang Wang)
  • osd: require firefly features (David Zafman)
  • osd: set initial crush weight with more precision (Sage Weil)
  • osd: SHEC no longer experimental
  • osd: skip promotion for flush/evict op (Zhiqiang Wang)
  • osd: stripe over small xattrs to fit in XFS’s 255 byte inline limit (Sage Weil, Ning Yao)
  • osd: sync object_map on syncfs (Samuel Just)
  • osd: take excl lock of op is rw (Samuel Just)
  • osd: throttle evict ops (Yunchuan Wen)
  • osd: upgrades must pass through hammer (Sage Weil)
  • osd: use a temp object for recovery (Sage Weil)
  • osd: use blkid to collection partition information (Joseph Handzik)
  • osd: use SEEK_HOLE / SEEK_DATA for sparse copy (Xinxin Shu)
  • osd: WBThrottle cleanups (Jianpeng Ma)
  • osd: write journal header on clean shutdown (Xinze Chi)
  • osdc/Objecter: allow per-pool calls to op_cancel_writes (John Spray)
  • os/filestore: enlarge getxattr buffer size (Jianpeng Ma)
  • pybind: pep8 cleanups (Danny Al-Gaaf)
  • pycephfs: many fixes for bindings (Haomai Wang)
  • qa: fix filelock_interrupt.py test (Yan, Zheng)
  • qa: improve ceph-disk tests (Loic Dachary)
  • qa: improve docker build layers (Loic Dachary)
  • qa: run-make-check.sh script (Loic Dachary)
  • rados: add –striper option to use libradosstriper (#10759 Sebastien Ponce)
  • rados: bench: add –no-verify option to improve performance (Piotr Dalek)
  • rados bench: misc fixes (Dmitry Yatsushkevich)
  • rados: fix error message on failed pool removal (Wido den Hollander)
  • radosgw-admin: add ‘bucket check’ function to repair bucket index (Yehuda Sadeh)
  • radosgw-admin: fix subuser modify output (#12286 Guce)
  • rados: handle –snapid arg properly (Abhishek Lekshmanan)
  • rados: improve bench buffer handling, performance (Piotr Dalek)
  • rados: misc bench fixes (Dmitry Yatsushkevich)
  • rados: new pool import implementation (John Spray)
  • rados: translate errno to string in CLI (#10877 Kefu Chai)
  • rbd: accept map options config option (Ilya Dryomov)
  • rbd: add disk usage tool (#7746 Jason Dillaman)
  • rbd: allow unmapping by spec (Ilya Dryomov)
  • rbd: cli: fix arg parsing with –io-pattern (Dmitry Yatsushkevich)
  • rbd: deprecate –new-format option (Jason Dillman)
  • rbd: fix error messages (#2862 Rajesh Nambiar)
  • rbd: fix link issues (Jason Dillaman)
  • rbd: improve CLI arg parsing, usage (Ilya Dryomov)
  • rbd: rbd-replay-prep and rbd-replay improvements (Jason Dillaman)
  • rbd: recognize queue_depth kernel option (Ilya Dryomov)
  • rbd: support G and T units for CLI (Abhishek Lekshmanan)
  • rbd: update rbd man page (Ilya Dryomov)
  • rbd: update xfstests tests (Douglas Fuller)
  • rbd: use image-spec and snap-spec in help (Vikhyat Umrao, Ilya Dryomov)
  • rest-bench: misc fixes (Shawn Chen)
  • rest-bench: support https (#3968 Yuan Zhou)
  • rgw: add max multipart upload parts (#12146 Abshishek Dixit)
  • rgw: add missing headers to Swift container details (#10666 Ahmad Faheem, Dmytro Iurchenko)
  • rgw: add stats to headers for account GET (#10684 Yuan Zhou)
  • rgw: add Trasnaction-Id to response (Abhishek Dixit)
  • rgw: add X-Timestamp for Swift containers (#10938 Radoslaw Zarzynski)
  • rgw: always check if token is expired (#11367 Anton Aksola, Riku Lehto)
  • rgw: conversion tool to repair broken multipart objects (#12079 Yehuda Sadeh)
  • rgw: document layout of pools and objects (Pete Zaitcev)
  • rgw: do not enclose bucket header in quotes (#11860 Wido den Hollander)
  • rgw: do not prefetch data for HEAD requests (Guang Yang)
  • rgw: do not preserve ACLs when copying object (#12370 Yehuda Sadeh)
  • rgw: do not set content-type if length is 0 (#11091 Orit Wasserman)
  • rgw: don’t clobber bucket/object owner when setting ACLs (#10978 Yehuda Sadeh)
  • rgw: don’t use end_marker for namespaced object listing (#11437 Yehuda Sadeh)
  • rgw: don’t use rgw_socket_path if frontend is configured (#11160 Yehuda Sadeh)
  • rgw: enforce Content-Length for POST on Swift cont/obj (#10661 Radoslaw Zarzynski)
  • rgw: error out if frontend did not send all data (#11851 Yehuda Sadeh)
  • rgw: expose the number of unhealthy workers through admin socket (Guang Yang)
  • rgw: fail if parts not specified on multipart upload (#11435 Yehuda Sadeh)
  • rgw: fix assignment of copy obj attributes (#11563 Yehuda Sadeh)
  • rgw: fix broken stats in container listing (#11285 Radoslaw Zarzynski)
  • rgw: fix bug in domain/subdomain splitting (Robin H. Johnson)
  • rgw: fix casing of Content-Type header (Robin H. Johnson)
  • rgw: fix civetweb max threads (#10243 Yehuda Sadeh)
  • rgw: fix Connection: header handling (#12298 Wido den Hollander)
  • rgw: fix copy metadata, support X-Copied-From for swift (#10663 Radoslaw Zarzynski)
  • rgw: fix data corruptions race condition (#11749 Wuxingyi)
  • rgw: fix decoding of X-Object-Manifest from GET on Swift DLO (Radslow Rzarzynski)
  • rgw: fix GET on swift account when limit == 0 (#10683 Radoslaw Zarzynski)
  • rgw: fix handling empty metadata items on Swift container (#11088 Radoslaw Zarzynski)
  • rgw: fix JSON response when getting user quota (#12117 Wuxingyi)
  • rgw: fix locator for objects starting with _ (#11442 Yehuda Sadeh)
  • rgw: fix log rotation (Wuxingyi)
  • rgw: fix mulitipart upload in retry path (#11604 Yehuda Sadeh)
  • rgw: fix quota enforcement on POST (#11323 Sergey Arkhipov)
  • rgw: fix reset_loc (#11974 Yehuda Sadeh)
  • rgw: fix return code on missing upload (#11436 Yehuda Sadeh)
  • rgw: fix sysvinit script
  • rgw: fix sysvinit script w/ multiple instances (Sage Weil, Pavan Rallabhandi)
  • rgw: force content_type for swift bucket stats requests (#12095 Orit Wasserman)
  • rgw: force content type header on responses with no body (#11438 Orit Wasserman)
  • rgw: generate Date header for civetweb (#10873 Radoslaw Zarzynski)
  • rgw: generate new object tag when setting attrs (#11256 Yehuda Sadeh)
  • rgw: improve content-length env var handling (#11419 Robin H. Johnson)
  • rgw: improved support for swift account metadata (Radoslaw Zarzynski)
  • rgw: improve handling of already removed buckets in expirer (Radoslaw Rzarzynski)
  • rgw: issue aio for first chunk before flush cached data (#11322 Guang Yang)
  • rgw: log to /var/log/ceph instead of /var/log/radosgw
  • rgw: make init script wait for radosgw to stop (#11140 Dmitry Yatsushkevich)
  • rgw: make max put size configurable (#6999 Yuan Zhou)
  • rgw: make quota/gc threads configurable (#11047 Guang Yang)
  • rgw: make read user buckets backward compat (#10683 Radoslaw Zarzynski)
  • rgw: merge manifests properly with prefix override (#11622 Yehuda Sadeh)
  • rgw: only scan for objects not in a namespace (#11984 Yehuda Sadeh)
  • rgw: orphan detection tool (Yehuda Sadeh)
  • rgw: pass in civetweb configurables (#10907 Yehuda Sadeh)
  • rgw: rectify 202 Accepted in PUT response (#11148 Radoslaw Zarzynski)
  • rgw: remove meta file after deleting bucket (#11149 Orit Wasserman)
  • rgw: remove trailing :port from HTTP_HOST header (Sage Weil)
  • rgw: return 412 on bad limit when listing buckets (#11613 Yehuda Sadeh)
  • rgw: rework X-Trans-Id header to conform with Swift API (Radoslaw Rzarzynski)
  • rgw: s3 encoding-type for get bucket (Jeff Weber)
  • rgw: send ETag, Last-Modified for swift (#11087 Radoslaw Zarzynski)
  • rgw: set content length on container GET, PUT, DELETE, HEAD (#10971, #11036 Radoslaw Zarzynski)
  • rgw: set max buckets per user in ceph.conf (Vikhyat Umrao)
  • rgw: shard work over multiple librados instances (Pavan Rallabhandi)
  • rgw: support end marker on swift container GET (#10682 Radoslaw Zarzynski)
  • rgw: support for Swift expiration API (Radoslaw Rzarzynski, Yehuda Sadeh)
  • rgw: swift: allow setting attributes with COPY (#10662 Ahmad Faheem, Dmytro Iurchenko)
  • rgw: swift: do not override sent content type (#12363 Orit Wasserman)
  • rgw: swift: enforce Content-Type in response (#12157 Radoslaw Zarzynski)
  • rgw: swift: fix account listing (#11501 Radoslaw Zarzynski)
  • rgw: swift: fix metadata handling on copy (#10645 Radoslaw Zarzynski)
  • rgw: swift: send Last-Modified header (#10650 Radoslaw Zarzynski)
  • rgw: swift: set Content-Length for account GET (#12158 Radoslav Zarzynski)
  • rgw: swift: set content-length on keystone tokens (#11473 Herv Rousseau)
  • rgw: update keystone cache with token info (#11125 Yehuda Sadeh)
  • rgw: update to latest civetweb, enable config for IPv6 (#10965 Yehuda Sadeh)
  • rgw: use attrs from source bucket on copy (#11639 Javier M. Mellid)
  • rgw: use correct oid for gc chains (#11447 Yehuda Sadeh)
  • rgw: user rm is idempotent (Orit Wasserman)
  • rgw: use unique request id for civetweb (#10295 Orit Wasserman)
  • rocksdb: add perf counters for get/put latency (Xinxin Shu)
  • rocksdb, leveldb: fix compact_on_mount (Xiaoxi Chen)
  • rocksdb: pass options as single string (Xiaoxi Chen)
  • rocksdb: update to latest (Xiaoxi Chen)
  • rpm: add suse firewall files (Tim Serong)
  • rpm: always rebuild and install man pages for rpm (Owen Synge)
  • rpm: loosen ceph-test dependencies (Ken Dreyer)
  • rpm: many spec file fixes (Owen Synge, Ken Dreyer)
  • rpm: misc fixes (Boris Ranto, Owen Synge, Ken Dreyer, Ira Cooper)
  • rpm: misc systemd and SUSE fixes (Owen Synge, Nathan Cutler)
  • selinux policy (Boris Ranto, Milan Broz)
  • systemd: logrotate fixes (Tim Serong, Lars Marowsky-Bree, Nathan Cutler)
  • systemd: many fixes (Sage Weil, Owen Synge, Boris Ranto, Dan van der Ster)
  • systemd: run daemons as user ceph
  • sysvinit compat: misc fixes (Owen Synge)
  • test: misc fs test improvements (John Spray, Loic Dachary)
  • test: python tests, linter cleanup (Alfredo Deza)
  • tests: fixes for rbd xstests (Douglas Fuller)
  • tests: fix tiering health checks (Loic Dachary)
  • tests for low-level performance (Haomai Wang)
  • tests: many ec non-regression improvements (Loic Dachary)
  • tests: many many ec test improvements (Loic Dachary)
  • upstart: throttle restarts (#11798 Sage Weil, Greg Farnum)

v10.1.2 Jewel (release candidate)

This is the third (and likely final) release candidate for Jewel.

Notable Changes since v10.1.1

  • rgw: Jewel nfs fixes 3 (pr#8460, Matt Benjamin)
  • osd/PG: set epoch_created and parent_split_bits for child pg (issue#15426, pr#8552, Kefu Chai)
  • rgw: signature mismatch with escaped characters in url query portion (issue#15358, pr#8445, Javier M. Mellid)
  • authtool: update –help and manpage to match code. (pr#8456, Robin H. Johnson)
  • build: Respect TMPDIR for virtualenv. (pr#8457, Robin H. Johnson)
  • ceph-disk: do not always fail when re-using a partition (pr#8508, You Ji)
  • ceph-fuse: rotate log file (pr#8485, Sage Weil)
  • ceph-rest-api: fix fs/flag/set (pr#8428, Sage Weil)
  • check-generated.sh: can’t source bash from sh (pr#8521, Michal Jarzabek)
  • common: buffer: put a guard for stat() syscall during read_file (pr#7956, xie xingguo)
  • common: fix time_t cast in decode (issue#15330, pr#8419, Adam C. Emerson)
  • crush: fix typo (pr#8518, Wei Jin)
  • doc: rgw admin uses “region list” not “regions list” (pr#8517, Kris Jurka)
  • journal: fix final result for JournalTrimmer::C_RemoveSet (pr#8516, runsisi)
  • journal: fix race condition between Future and journal shutdown (issue#15364, pr#8477, Jason Dillaman)
  • librados: Revert “rados: Add new field flags for ceph_osd_op.copy_get.” (pr#8486, Sage Weil)
  • librbd: disallow unsafe rbd_op_threads values (issue#15034, pr#8459, Josh Durgin)
  • mailmap update (pr#8522, M Ranga Swami Reddy)
  • mds: Add cmapv to ESessions default constructor initializer list (pr#8403, John Coyle)
  • mds: fix file_layout_t legacy encoding snafu (pr#8455, Sage Weil)
  • mds: Protect a number of unstable/experimental features behind durable flags (pr#8383, Greg Farnum)
  • mds: Extend the existing pool access checking to include specific RADOS namespacse. (pr#8444, Yan, Zheng)
  • os/ObjectStore: make device uuid probe output something friendly (pr#8418, Sage Weil)
  • os/bluestore: revamp BlueFS bdev management and add perfcounters (issue#15376, pr#8431, Sage Weil)
  • os/filestore: force lfn attrs to be written atomically, restructure name length limits (pr#8496, Samuel Just)
  • osd/ReplicatedPG::_rollback_to: update the OMAP flag (issue#14777, pr#8495, Samuel Just)
  • osd: clean up temp object if copy-from fails (pr#8487, Sage Weil)
  • osd: fix two scrub relevant issues (pr#8462, xie xingguo)
  • osd: fix/clean up full map request handling (pr#8446, Sage Weil)
  • osdc/Objecter: fix narrow race with tid assignment (issue#14364, pr#7981, Sage Weil)
  • radosgw-admin: allow (pr#8529, Orit Wasserman)
  • rbd-mirror: workaround for intermingled lockdep singletons (pr#8476, Jason Dillaman)
  • rbd: journal reset should disable/re-enable journaling feature (issue#15097, pr#8490, Jason Dillaman)
  • rgw-admin: remove unused iterator and fix error message (pr#8507, Karol Mroz)
  • rgw: aws4 subdomain calling bugfix (issue#15369, pr#8472, Javier M. Mellid)
  • rgw: fix a typo in error message (pr#8434, Abhishek Lekshmanan)
  • rgw: fix problem deleting objects begining with double underscores (issue#15318, pr#8488, Orit Wasserman)
  • rgw: retry RGWRemoteMetaLog::read_log_info() while master is down (pr#8453, Casey Bodley)
  • rgw: the map ‘headers’ is assigned a wrong value (pr#8481, weiqiaomiao)
  • rgw_ldap: make ldap.h inclusion conditional (pr#8500, Matt Benjamin)
  • systemd: drop any systemd imposed process/thread limits (pr#8450, James Page)
  • test: fix ut test failure caused by lfn change (issue#15464, pr#8544, xie xingguo)
  • test: fix valgrind memcheck issues for rbd-mirror test cases (issue#15354, pr#8493, Jason Dillaman)
  • tests: add Ubuntu 16.04 xenial dockerfile (pr#8519, Loic Dachary)

v10.1.1 Jewel (release candidate)

This is the first release build that includes arm64/aarch64 packages for Ubuntu Xenial 16.04.

Know issues with this release candidate

There are a few known issues to watch out for:

  • Old CephFS clusters will mangle the layouts with this release; the fix was committed just after it was cut. Wait for the next RC or the release if you’re upgrading a cluster that has a CephFS data pool as pool 0.
  • The upstart ceph-mds-all.conf file is missing.

Notable Changes since v10.1.0

  • Adding documentation on how to use new dynamic throttle scheme (pr#8069, Somnath Roy)
  • Be more careful about directory fragmentation and scrubbing (issue#15167, pr#8180, Yan, Zheng)
  • CMake: For CMake version <= 2.8.11, use LINK_PRIVATE (pr#8422, Haomai Wang)
  • Makefile-env.am: set a default for CEPH_BUILD_VIRTUALENV (part 2) (pr#8320, Loic Dachary)
  • Minor fixes around data scan in some scenarios (pr#8115, Yan, Zheng)
  • PG: pg down state blocked by osd.x, lost osd.x cannot solve peering stuck (issue#13531, pr#6317, Xiaowei Chen)
  • osd/PG: indicate in pg query output whether ignore_history_les would help (pr#8156, Sage Weil)
  • Striper: reduce assemble_result log level (pr#8426, Jason Dillaman)
  • Test exit values on test.sh, fix tier.cc (issue#15165, pr#8266, Samuel Just)
  • ceph.in: correct dev python path for automake builds (pr#8360, Josh Durgin)
  • osd/OSD: fix build_past_intervals_parallel (pr#8215, David Zafman)
  • rgw: sync fixes 4 (pr#8190, Yehuda Sadeh)
  • [rgw] Check return code in RGWFileHandle::write (pr#7875, Brad Hubbard)
  • build: fix compiling warnings (pr#8366, Dongsheng Yang)
  • ceph-detect-init/run-tox.sh: FreeBSD: No init detect (pr#8373, Willem Jan Withagen)
  • ceph.in: fix python libpath for automake as well (pr#8362, Josh Durgin)
  • ceph: bash auto complete for CLI based on mon command descriptions (pr#7693, Adam Kupczyk)
  • cls_journal: fix -EEXIST checking (pr#8413, runsisi)
  • cls_rbd: fix -EEXIST checking in cls::rbd::image_set (pr#8371, runsisi)
  • cls_rbd: mirror_image_list should return global image id (pr#8297, Jason Dillaman)
  • cls_rbd: pass WILLNEED fadvise flags during object map update (issue#15332, pr#8380, Jason Dillaman)
  • cls_rbd: read_peers: update last_read on next cls_cxx_map_get_vals (pr#8374, Mykola Golub)
  • cmake: Build cython modules and change paths to bin/, lib/ (pr#8351, John Spray, Ali Maredia)
  • cmake: add FindOpenSSL.cmake (pr#8106, Marcus Watts, Matt Benjamin)
  • cmake: add StandardPolicy.cc to librbd (pr#8368, Kefu Chai)
  • cmake: add missing librbd/MirrorWatcher.cc and librd/ObjectWatcher.cc (pr#8399, Orit Wasserman)
  • cmake: fix mrun to handle cmake build structure (pr#8237, Orit Wasserman)
  • cmake: fix the build of test_rados_api_list (pr#8438, Kefu Chai)
  • common: fix race during optracker switches between enabled/disabled mode (pr#8330, xie xingguo)
  • config_opts: disable filestore throttle soft backoff by default (pr#8265, Samuel Just)
  • configure: Add -D_LARGEFILE64_SOURCE to Linux build. (pr#8402, Ira Cooper)
  • crush: fix error log (pr#8430, Wei Jin)
  • crushtool: Don’t crash when called on a file that isn’t a crushmap (issue#8286, pr#8038, Brad Hubbard)
  • debian/rules: put init-ceph in /etc/init.d/ceph, not ceph-base (issue#15329, pr#8406, Dan Mick)
  • doc/dev: add “Deploy a cluster for manual testing” section (issue#15218, pr#8228, Nathan Cutler)
  • doc/rados/operations/crush: fix the formatting (pr#8306, Kefu Chai)
  • doc/release-notes: fix indents (pr#8345, Kefu Chai)
  • doc: Fixes headline different font size and type (pr#8328, scienceluo)
  • doc: Remove Ceph Monitors do lots of fsync() (issue#15288, pr#8327, Vikhyat Umrao)
  • doc: Updated CloudStack RBD documentation (pr#8308, Wido den Hollander)
  • doc: amend Fixes instructions in SubmittingPatches (pr#8312, Nathan Cutler)
  • doc: draft notes for jewel (pr#8211, Loic Dachary, Sage Weil)
  • doc: fix typo, duplicated content etc. for Jewel release notes (pr#8342, xie xingguo)
  • doc: fix wrong type of hyphen (pr#8252, xie xingguo)
  • doc: rgw_region_root_pool option should be in [global] (issue#15244, pr#8271, Vikhyat Umrao)
  • doc: very basic doc on mstart (pr#8207, Abhishek Lekshmanan)
  • global/global_init: expand metavariables in setuser_match_path (issue#15365, pr#8433, Sage Weil)
  • global/signal_handler: print thread name in signal handler (pr#8177, Jianpeng Ma)
  • libcephfs: fix python tests and fix getcwd on missing dir (pr#7901, John Spray)
  • librbd: avoid throwing error if mirroring is unsupported (pr#8417, Jason Dillaman)
  • librbd: disable image mirroring when image is removed (issue#15265, pr#8375, Ricardo Dias)
  • librbd: send notifications for mirroring status updates (pr#8355, Jason Dillaman)
  • mailmap updates (pr#8256, Loic Dachary)
  • makefile: fix rbdmap manpage (pr#8310, Kefu Chai)
  • mds: allow client to request caps when opening file (issue#14360, pr#7952, Yan, Zheng)
  • messages/MOSDOp: clear reqid inc for v6 encoding (issue#15230, pr#8299, Sage Weil)
  • mon/MonClient: fix shutdown race (issue#13992, pr#8335, Sage Weil)
  • mon: do not send useless pg_create messages for split pgs (pr#8247, Sage Weil)
  • mon: mark_down_pgs in lockstep with pg_map’s osdmap epoch (pr#8208, Sage Weil)
  • mon: remove remove_legacy_versions() (pr#8324, Kefu Chai)
  • mon: remove unnecessary comment for update_from_paxos (pr#8400, Qinghua Jin)
  • mon: remove unused variable (issue#15292, pr#8337, Javier M. Mellid)
  • mon: show the pool quota info on ceph df detail command (issue#14216, pr#7094, song baisen)
  • monclient: avoid key renew storm on clock skew (issue#12065, pr#8258, Alexey Sheplyakov)
  • mrun: update path to cmake binaries (pr#8447, Casey Bodley)
  • msg/async: avoid log spam on throttle (issue#15031, pr#8263, Kefu Chai)
  • msg/async: remove experiment feature (pr#7820, Haomai Wang)
  • os/ObjectStore: add noexcept to ensure move ctor is used (pr#8421, Kefu Chai)
  • os/ObjectStore: fix _update_op for split dest_cid (pr#8364, Sage Weil)
  • os/ObjectStore: try_move_rename in transaction append and add coverage to store_test (issue#15205, pr#8359, Samuel Just)
  • os/bluestore: a few fixes (pr#8193, Sage Weil)
  • os/bluestore: ceph-bluefs-tool fixes (issue#15261, pr#8292, Venky Shankar)
  • osd/ClassHandler: only dlclose() the classes not missing (pr#8354, Kefu Chai)
  • osd/OSD.cc: finish full_map_request every MOSDMap message. (issue#15130, pr#8147, Xiaoxi Chen)
  • osd: add ‘proxy’ cache mode (issue#12814, pr#8210, Sage Weil)
  • osd: add the support of per pool scrub priority (pr#7062, Zhiqiang Wang)
  • osd: bail out of _committed_osd_maps if we are shutting down (pr#8267, Samuel Just)
  • osd: duplicated clear for peer_missing (pr#8315, Ning Yao)
  • osd: fix bugs for omap ops (pr#8230, Jianpeng Ma)
  • osd: fix dirtying info without correctly setting drity_info field (pr#8275, xie xingguo)
  • osd: fix dump_ops_in_flight races (issue#8885, pr#8044, David Zafman)
  • osd: fix epoch check in handle_pg_create (pr#8382, Samuel Just)
  • osd: fix failure report handling during ms_handle_connect() (pr#8348, xie xingguo)
  • osd: fix log info (pr#8273, Wei Jin)
  • osd: fix reference count, rare race condition etc. (pr#8254, xie xingguo)
  • osd: fix tick relevant issues (pr#8369, xie xingguo)
  • osd: more fixes for incorrectly dirtying info; resend reply for duplicated scrub-reserve req (pr#8291, xie xingguo)
  • osdc/Objecter: dout log after assign tid (pr#8202, Xinze Chi)
  • osdc/Objecter: use full pgid hash in PGNLS ops (pr#8378, Sage Weil)
  • osdmap: rm nonused variable (pr#8423, Wei Jin)
  • pybind/Makefile.am: Prevent race creating CYTHON_BUILD_DIR (issue#15276, pr#8356, Dan Mick)
  • pybind/rados: python3 fix (pr#8331, Mehdi Abaakouk)
  • pybind: add flock to libcephfs python bindings (pr#7902, John Spray)
  • qa: update rest test cephfs calls (issue#15309, pr#8372, John Spray)
  • qa: update rest test cephfs calls (part 2) (issue#15309, pr#8393, John Spray)
  • radosgw-admin: ‘period commit’ supplies user-readable error messages (pr#8264, Casey Bodley)
  • radosgw-admin: fix for ‘realm pull’ (pr#8404, Casey Bodley)
  • rbd-mirror: asok commands to get status and flush on Mirror and Replayer level (pr#8235, Mykola Golub)
  • rbd-mirror: enabling/disabling pool mirroring should update the mirroring directory (issue#15217, pr#8261, Ricardo Dias)
  • rbd-mirror: fix missing increment for iterators (pr#8352, runsisi)
  • rbd-mirror: initial failover / failback support (pr#8287, Jason Dillaman)
  • rbd-mirror: prevent enabling/disabling an image’s mirroring when not in image mode (issue#15267, pr#8332, Ricardo Dias)
  • rbd-mirror: switch fsid over to mirror uuid (issue#15238, pr#8280, Ricardo Dias)
  • rbd: allow librados to prune the command-line for config overrides (issue#15250, pr#8282, Jason Dillaman)
  • rbdmap: add manpage (issue#15212, pr#8224, Nathan Cutler)
  • releases: what is merged where and when ? (pr#8358, Loic Dachary)
  • rgw/rgw_admin:fix bug about list and stats command (pr#8200, Qiankun Zheng)
  • rgw: Do not send a Content-Type on a ‘304 Not Modified’ response (issue#15119, pr#8253, Wido den Hollander)
  • rgw: Multipart ListPartsResult ETag quotes (issue#15334, pr#8387, Robin H. Johnson)
  • rgw: S3: set EncodingType in ListBucketResult (pr#7712, Victor Makarov)
  • rgw: accept data only at the first time in response to a request (pr#8084, sunspot)
  • rgw: add a few more help options in admin interface (pr#8410, Abhishek Lekshmanan)
  • rgw: add zone delete to rgw-admin help (pr#8184, Abhishek Lekshmanan)
  • rgw: convert plain object to versioned (with null version) when removing (issue#15243, pr#8268, Yehuda Sadeh)
  • rgw: fix compiling error (pr#8394, xie xingguo)
  • rgw: fix lockdep false positive (pr#8284, Yehuda Sadeh)
  • rgw:Use count fn in RGWUserBuckets for quota check (pr#8294, Abhishek Lekshmanan)
  • rgw_admin: remove unused parent_period arg (pr#8411, Abhishek Lekshmanan)
  • rgw_file: set owner uid, gid, and Unix mode on new objects (pr#8321, Matt Benjamin)
  • rpm: prefer UID/GID 167 when creating ceph user/group (issue#15246, pr#8277, Nathan Cutler)
  • script: subscription-manager support (issue#14972, pr#7907, Loic Dachary)
  • set 128MB tcmalloc cache size by bytes (pr#8427, Star Guo)
  • systemd: set up environment in rbdmap unit file (issue#14984, pr#8222, Nathan Cutler)
  • test/system/*: use dynamically generated pool name (issue#15240, pr#8318, Kefu Chai)
  • test/system/rados_list_parallel: print oid if rados_write fails (issue#15240, pr#8309, Kefu Chai)
  • test/test-erasure-code.sh: disable pg_temp priming (issue#15211, pr#8260, Sage Weil)
  • test/test_pool_create.sh: fix port (pr#8361, Sage Weil)
  • test: Fix test to run with btrfs which has snap_### dirs (issue#15347, pr#8420, David Zafman)
  • test: TestMirroringWatcher test cases were not closing images (pr#8435, Jason Dillaman)
  • test: rbd-mirror: script improvements for manual testing (pr#8325, Mykola Golub)
  • tests: Fixing broken test/cephtool-test-mon.sh test (pr#8429, Erwan Velu)
  • tests: Improving ‘make check’ execution time (pr#8131, Erwan Velu)
  • unittest_erasure_code_plugin: fix deadlock (Alpine) (pr#8314, John Coyle)
  • vstart: fix up cmake paths when VSTART_DEST is given (pr#8363, Casey Bodley)
  • vstart: make -k with optional mon_num. (pr#8251, Jianpeng Ma)
  • xio: add prefix to xio msgr logs (pr#8148, Roi Dayan)
  • xio: fix compilation against latest accelio (pr#8022, Roi Dayan)
  • xio: xio_init needs to be called before any other xio function (pr#8227, Roi Dayan)
  • ceph.spec.in: disable lttng and babeltrace explicitly (issue#14844, pr#7857, Kefu Chai)

v10.1.0 Jewel (release candidate)

There are a few known issues with this release candidate; see below.

Known Issues with v10.1.0

  • While running a mixed version cluster of jewel and infernalis or hammer monitors, any MDSMap updates will cause the pre-jewel monitors to crash. Workaround is to simply upgrde all monitors. There is a fix but it is still being tested.
  • Some of the rbd-mirror functionality for switching between active and replica images is not yet merged.

Notable Changes since v10.0.4

  • ceph.spec.in: do not install Ceph RA on systemd platforms (issue#14828, pr#7894, Nathan Cutler)
  • mdsa: A few more snapshot fixes, mostly around snapshotted inode/dentry tracking (pr#7798, Yan, Zheng)
  • AUTHORS: update email (pr#7854, Yehuda Sadeh)
  • ceph-disk: Add –setuser and –setgroup options for ceph-disk (pr#7351, Mike Shuey)
  • build: Adding build requires (pr#7742, Erwan Velu)
  • msg/async: AsyncMessenger: fix several bugs (pr#7831, Haomai Wang)
  • msg/async: AsyncMessenger: fix valgrind leak (pr#7725, Haomai Wang)
  • doc: Clarify usage on starting single osd/mds/mon. (pr#7641, Patrick Donnelly)
  • common: Deprecate or free up a bunch of feature bits (pr#8214, Samuel Just)
  • msg/async: Event: fix clock skew problem (pr#7949, Wei Jin)
  • osd: FileStore: Added O_DSYNC write scheme (pr#7752, Somnath Roy)
  • osd: FileStore: fix initialization order for m_disable_wbthrottle (pr#8067, Samuel Just)
  • build: Fixing BTRFS issue at ‘make check’ (pr#7805, Erwan Velu)
  • build: FreeBSD related fixes (pr#7170, Mykola Golub)
  • ceph-disk: Improving ‘make check’ for ceph-disk (pr#7762, Erwan Velu)
  • rgw: increase verbosity level on RGWObjManifest line (pr#7285, magicrobotmonkey)
  • build: workaround an automake bug for “make check” (issue#14723, pr#7626, Kefu Chai)
  • ceph-fuse,libcephfs: Fix client handling of “lost” open directories on shutdown (issue#14996, pr#7994, Yan, Zheng)
  • mds: Multi-filesystem support (issue#14952, pr#6953, John Spray, Sage Weil)
  • os/bluestore/NVMEDevice: refactor probe/attach codes and support zero command (pr#7647, Haomai Wang)
  • librados: detect laggy ops with objecter_timeout, not osd_timeout (pr#7629, Greg Farnum)
  • ceph.spec.in: fix openldap and openssl build dependencies for SUSE (issue#15138, pr#8120, Nathan Cutler)
  • osd: repop and lost-unfound overhaul (pr#7765, Samuel Just)
  • librbd: Revert “librbd: use task finisher per CephContext” (issue#14780, pr#7667, Josh Durgin)
  • rgw: Fix subuser harder with tenants (pr#7618, Pete Zaitcev)
  • rgw: ldap fixes (pr#8168, Matt Benjamin)
  • rgw: check the return value when call fe->run() (issue#14585, pr#7457, wei qiaomiao)
  • rgw: Revert “rgw ldap” (pr#8075, Yehuda Sadeh)
  • librados: Striper: Fix incorrect push_front -> append_zero change (pr#7578, Haomai Wang)
  • rgw: build-related fixes (pr#8076, Yehuda Sadeh, Matt Benjamin)
  • mirrors: Updated scripts and documentation for mirrors (pr#7847, Wido den Hollander)
  • misc: use make_shared while creating shared_ptr (pr#7769, Somnath Roy)
  • cmake (pr#7849, Ali Maredia)
  • mds: filelock deadlock (pr#7713, Yan, Zheng)
  • mds: fix fsmap decode (pr#8063, Greg Farnum)
  • rgw: fix mdlog (pr#8183, Orit Wasserman)
  • rgw: highres time stamps (pr#8108, Yehuda Sadeh, Adam C. Emerson, Matt Benjamin)
  • rgw: swift versioning disabled (pr#8066, Yehuda Sadeh, Radoslaw Zarzynski)
  • rgw: sync fixes 3 (pr#8170, Yehuda Sadeh)
  • msg/xio: fixes (pr#7603, Roi Dayan)
  • ceph-fuse,libcephfs: fix free fds being exhausted eventually because freed fds are never put back (issue#14798, pr#7685, Zhi Zhang)
  • rgw: RGWLib::env is not used so remove it (pr#7874, Brad Hubbard)
  • build: a few armhf (32-bit build) fixes (pr#7999, Eric Lee, Sage Weil)
  • osd: add scrub persist/query API (issue#13505, pr#6898, Kefu Chai, Samuel Just)
  • rgw: adds the radosgw-admin sync status command that gives a human readable status of the sync process at a specific zone (pr#8030, Yehuda Sadeh)
  • scripts: adjust mstart and mstop script to run with cmake build (pr#6920, Orit Wasserman)
  • buffer: add symmetry operator==() and operator!=() (pr#7974, Kefu Chai)
  • buffer: hide iterator_impl symbols (issue#14788, pr#7688, Kefu Chai)
  • buffer: increment history alloc as well in raw_combined (issue#14955, pr#7910, Samuel Just)
  • buffer: raw_combined allocations buffer and ref count together (pr#7612, Sage Weil)
  • ceph-detect-init: add debian/jessie test (pr#8074, Kefu Chai)
  • ceph-detect-init: add missing test case (pr#8105, Nathan Cutler)
  • ceph-detect-init: fix py3 test (pr#7243, Kefu Chai)
  • ceph-detect-init: return correct value on recent SUSE distros (issue#14770, pr#7909, Nathan Cutler)
  • ceph-disk: deactivate / destroy PATH arg are optional (pr#7756, Loic Dachary)
  • ceph-disk: fix prepare –help (pr#7758, Loic Dachary)
  • ceph-disk: flake8 fixes (pr#7646, Loic Dachary)
  • ceph-disk: key management support (issue#14669, pr#7552, Loic Dachary)
  • ceph-disk: make some arguments as required if necessary (pr#7687, Dongsheng Yang)
  • ceph-disk: s/dmcrpyt/dmcrypt/ (issue#14838, pr#7744, Loic Dachary, Frode Sandholtbraaten)
  • ceph-fuse: Fix potential filehandle ref leak at umount (issue#14800, pr#7686, Zhi Zhang)
  • ceph.in: Minor python3 specific changes (pr#7947, Sarthak Munshi)
  • ceph_daemon.py: Resolved ImportError to work with python3 (pr#7937, Sarthak Munshi)
  • ceph_detect_init/__init__.py: remove shebang (pr#7731, Nathan Cutler)
  • ceph_test_msgr: reduce test size to fix memory size (pr#8127, Haomai Wang)
  • ceph_test_rados_misc: shorten mount timeout (pr#8209, Sage Weil)
  • cleanup (pr#8058, Yehuda Sadeh, Orit Wasserman)
  • client: flush kernel pagecache before creating snapshot (issue#10436, pr#7495, Yan, Zheng)
  • client: removed unused Mutex from MetaRequest (pr#7655, Greg Farnum)
  • cls/rgw: fix FTBFS (pr#8142, Kefu Chai)
  • cls/rgw: fix use of timespan (issue#15181, pr#8212, Yehuda Sadeh)
  • cls_hello: Fix grammatical error in description comment (pr#7951, Brad Hubbard)
  • cls_rbd: fix the test for ceph-dencoder (pr#7793, Kefu Chai)
  • cls_rbd: mirroring directory (issue#14419, pr#7620, Josh Durgin)
  • cls_rbd: protect against excessively large object maps (issue#15121, pr#8099, Jason Dillaman)
  • cmake: Remove duplicate find_package libcurl line. (pr#7972, Brad Hubbard)
  • cmake: add ErasureCode.cc to jerasure plugins (pr#7808, Casey Bodley)
  • cmake: add common/fs_types.cc to libcommon (pr#7898, Orit Wasserman)
  • cmake: add missing librbd image_watcher sources (issue#14823, pr#7717, Casey Bodley)
  • cmake: avoid false-positive LDAP header detect (pr#8100, Matt Benjamin)
  • cmake: fix paths to various EC source files (pr#7748, Ali Maredia, Matt Benjamin)
  • cmake: fix the build of tests (pr#7523, Kefu Chai)
  • common/TrackedOp: fix inaccurate counting for slow requests (issue#14804, pr#7690, xie xingguo)
  • common/bit_vector: use hard-coded value for block size (issue#14747, pr#7610, Jason Dillaman)
  • common/obj_bencher.cc: bump the precision of bandwidth field (pr#8021, Piotr Dałek)
  • common/obj_bencher.cc: faster object name generation (pr#7863, Piotr Dałek)
  • common/obj_bencher.cc: make verify error fatal (issue#14971, pr#7897, Piotr Dałek)
  • common/page.cc: _page_mask has too many bits (pr#7588, Dan Mick)
  • common/strtol.cc: fix the coverity warnings (pr#7967, Kefu Chai)
  • common: Do not use non-portable constants in mutex_debug (pr#7766, Adam C. Emerson)
  • common: SubProcess: Avoid buffer corruption when calling err() (issue#15011, pr#8054, Erwan Velu)
  • common: default cluster name to config file prefix (pr#7364, Javen Wu)
  • common: set thread name from correct thread (pr#7845, Igor Podoski)
  • common: various fixes from SCA runs (pr#7680, Danny Al-Gaaf)
  • config: fix osd_crush_initial_weight (pr#7975, You Ji)
  • config: increase default async op threads (pr#7802, Piotr Dałek)
  • configure.ac: boost_iostreams is required, not optional (pr#7816, Hector Martin)
  • configure.ac: update help strings for cython (pr#7856, Josh Durgin)
  • crush/CrushTester: workaround a bug in boost::icl (pr#7560, Kefu Chai)
  • crush: fix cli tests for new crush tunables (pr#8107, Sage Weil)
  • crush: update tunable docs. change default profile to jewel (pr#7964, Sage Weil)
  • debian/changelog: Remove stray ‘v’ in version (pr#7936, Dan Mick)
  • debian/changelog: Remove stray ‘v’ in version (pr#7938, Dan Mick)
  • debian: include cpio in build-requiers (pr#7533, Rémi BUISSON)
  • debian: package librgw_file* tests (pr#7930, Ken Dreyer)
  • doc/architecture.rst: remove redundant word “across” (pr#8179, Zhao Junwang)
  • doc/dev: add section on interrupting a running suite (pr#8116, Nathan Cutler)
  • doc/dev: continue writing Testing in the cloud chapter (pr#7960, Nathan Cutler)
  • doc/dev: integrate testing into the narrative (pr#7946, Nathan Cutler)
  • doc/dev: various refinements (pr#7954, Nathan Cutler)
  • doc/rados/api/librados-intro.rst: fix typo (pr#7879, xie xingguo)
  • doc: add ceph-detect-init(8) source to dist tarball (pr#7933, Ken Dreyer)
  • doc: add cinder backend section to rbd-openstack.rst (pr#7923, RustShen)
  • doc: detailed description of bugfixing workflow (pr#7941, Nathan Cutler)
  • doc: fix 0.94.4 and 0.94.5 ordering (pr#7763, Loic Dachary)
  • doc: fix typo, indention etc. (pr#7829, xie xingguo)
  • doc: initial draft of RBD mirroring admin documentation (issue#15041, pr#8169, Jason Dillaman)
  • doc: osd-config Add Configuration Options for op queue. (pr#7837, Robert LeBlanc)
  • doc: rgw explain keystone’s verify ssl switch (pr#7862, Abhishek Lekshmanan)
  • doc: small fixes (pr#7813, xiexingguo)
  • doc: standardize @param (not @parma, @parmam, @params) (pr#7714, Nathan Cutler)
  • fix FTBFS introduced by d0af316 (pr#7792, Kefu Chai)
  • ghobject_t: use # instead of ! as a separator (pr#8055, Sage Weil)
  • include/encoding: do not try to be clever with list encoding (pr#7913, Sage Weil)
  • init-ceph.in: allow case-insensitive true in osd crush update on start’ (`pr#7943, Eric Cook)
  • init-ceph.in: skip ceph-disk if it is not present (issue#10587, pr#7286, Ken Dreyer)
  • journal: async methods to (un)register and update client (pr#7832, Mykola Golub)
  • journal: improve commit position tracking (pr#7776, Jason Dillaman)
  • journal: prevent race injecting new records into overflowed object (issue#15202, pr#8220, Jason Dillaman)
  • librados: cancel aio notification linger op upon completion (pr#8102, Jason Dillaman)
  • librados: check connection state in rados_monitor_log (issue#14499, pr#7350, David Disseldorp)
  • librados: do not clear handle for aio_watch() (pr#7771, xie xingguo)
  • librados: fix test failure with new aio watch/unwatch API (pr#7824, Jason Dillaman)
  • librados: implement async watch/unwatch (pr#7649, Haomai Wang)
  • librados: mix lock cycle (un)registering asok commands (pr#7581, John Spray)
  • librados: race condition on aio_notify completion handling (pr#7864, Jason Dillaman)
  • librados: stat2 with higher time precision (pr#7915, Yehuda Sadeh, Matt Benjamin)
  • librbd: allocate new journal tag after acquiring exclusive lock (pr#7884, Jason Dillaman)
  • librbd: block read requests until journal replayed (pr#7627, Jason Dillaman)
  • librbd: correct issues discovered via valgrind memcheck (pr#8132, Jason Dillaman)
  • librbd: differentiate journal replay flush vs shut down (pr#7698, Jason Dillaman)
  • librbd: enable/disable image mirroring automatically for pool mode (issue#15143, pr#8204, Ricardo Dias)
  • librbd: fix state machine race conditions during shut down (pr#7761, Jason Dillaman)
  • librbd: handle unregistering the image watcher when disconnected (pr#8094, Jason Dillaman)
  • librbd: integrate journal replay with fsx testing (pr#7583, Jason Dillaman)
  • librbd: journal replay needs to support re-executing maintenance ops (issue#14822, pr#7785, Jason Dillaman)
  • librbd: reduce mem copies to user-buffer during read (pr#7548, Jianpeng Ma)
  • librbd: refresh image if required before replaying journal ops (issue#14908, pr#7978, Jason Dillaman)
  • librbd: remove last synchronous librados calls from open/close state machine (pr#7839, Jason Dillaman)
  • librbd: replaying a journal op post-refresh requires locking (pr#8028, Jason Dillaman)
  • librbd: retrieve image name when opening by id (pr#7736, Mykola Golub)
  • librbd: several race conditions discovered under single CPU environment (pr#7653, Jason Dillaman)
  • librbd: truncate does not need to mark the object as existing in the object map (issue#14789, pr#7772, xinxin shu)
  • librbd: update of mirror pool mode and mirror peer handling (pr#7718, Jason Dillaman)
  • librbd: use async librados notifications (pr#7668, Jason Dillaman)
  • log: do not repeat errors to stderr (issue#14616, pr#7983, Sage Weil)
  • log: fix stack overflow when flushing large log lines (issue#14707, pr#7599, Igor Fedotov)
  • log: segv in a portable way (issue#14856, pr#7790, Kefu Chai)
  • log: use delete[] (pr#7904, Sage Weil)
  • mailmap for 10.0.4 (pr#7932, Abhishek Lekshmanan)
  • mailmap updates (pr#7528, Yann Dupont)
  • man/8/ceph-disk: fix formatting issue (pr#8012, Sage Weil)
  • man/8/ceph-disk: fix formatting issue (pr#8003, Sage Weil)
  • mds, client: add namespace to file_layout_t (previously ceph_file_layout) (pr#7098, Yan, Zheng, Sage Weil)
  • mds: don’t double-shutdown the timer when suiciding (issue#14697, pr#7616, Greg Farnum)
  • mds: fix FSMap upgrade with daemons in the map (pr#8073, John Spray, Greg Farnum)
  • mds: fix inode_t::compare() (issue#15038, pr#8014, Yan, Zheng)
  • mds: fix stray purging in ‘stripe_count > 1’ case (issue#15050, pr#8040, Yan, Zheng)
  • mds: function parameter ‘df’ should be passed by reference (pr#7490, Na Xie)
  • mirrors: Change contact e-mail address for se.ceph.com (pr#8007, Wido den Hollander)
  • mon/PGMonitor: reliably mark PGs state (pr#8089, Sage Weil)
  • mon/monitor: some clean up (pr#7520, huanwen ren)
  • mon/pgmonitor: use appropriate forced conversions in get_rule_avail (pr#7705, huanwen ren)
  • mon: cleanup set-quota error msg (pr#7371, Abhishek Lekshmanan)
  • mon: consider pool size when creating pool (issue#14509, pr#7359, songbaisen)
  • mon: enable ‘mon osd prime pg temp’ by default (pr#7838, Robert LeBlanc)
  • mon: fix calculation of %USED (pr#7881, Adam Kupczyk)
  • mon: fix keyring permissions (issue#14950, pr#7880, Owen Synge)
  • mon: initialize last_* timestamps on new pgs to creation time (issue#14952, pr#7980, Sage Weil)
  • mon: make clock skew checks sane (issue#14175, pr#7141, Joao Eduardo Luis)
  • mon: osd [test-]reweight-by-{pg,utilization} command updates (pr#7890, Dan van der Ster, Sage Weil)
  • mon: remove ‘mds setmap’ (issue#15136, pr#8121, Sage Weil)
  • mon: standardize Ceph removal commands (pr#7939, Dongsheng Yang)
  • mon: unconfuse object count skew message (pr#7882, Piotr Dałek)
  • mon: unregister command on shutdown (pr#7504, huanwen ren)
  • mount.fuse.ceph: better parsing of arguments passed to mount.fuse.ceph by mount command (issue#14735, pr#7607, Florent Bautista)
  • msg/async: _try_send trim already sent for outcoming_bl more efficient (pr#7970, Yan Jun)
  • msg/async: don’t calculate msg header crc when not needed (pr#7815, Piotr Dałek)
  • msg/async: smarter MSG_MORE (pr#7625, Piotr Dałek)
  • msg: add thread safety for “random” Messenger + fix wrong usage of random functions (pr#7650, Avner BenHanoch)
  • msg: async: fix perf counter description and simplify _send_keepalive_or_ack (pr#8046, xie xingguo)
  • msg: async: small cleanups (pr#7871, xie xingguo)
  • msg: async: start over after failing to bind a port in specified range (issue#14928, issue#13002, pr#7852, xie xingguo)
  • msg: remove duplicated code - local_delivery will now call ‘enqueue’ (pr#7948, Avner BenHanoch)
  • msg: significantly reduce minimal memory usage of connections (pr#7567, Piotr Dałek)
  • mstart: start rgw on different ports as well (pr#8167, Abhishek Lekshmanan)
  • nfs for rgw (Matt Benjamin, Orit Wasserman) (pr#7634, Yehuda Sadeh, Matt Benjamin)
  • os/ObjectStore: implement more efficient get_encoded_bytes() (pr#7775, Piotr Dałek)
  • os/bluestore/BlueFS: Before reap ioct, it should wait io complete (pr#8178, Jianpeng Ma)
  • os/bluestore/BlueStore: Don’t leak trim overlay data before write. (pr#7895, Jianpeng Ma)
  • os/bluestore/KernelDevice: force block size (pr#8006, Sage Weil)
  • os/bluestore/NVMEDevice: make IO thread using dpdk launch (pr#8160, Haomai Wang)
  • os/bluestore: clone overlay data (pr#7860, Jianpeng Ma)
  • os/bluestore: fix a typo in SPDK path parsing (pr#7601, Jianjian Huo)
  • os/bluestore: make bluestore_sync_transaction = true can work. (pr#7674, Jianpeng Ma)
  • os/bluestore: small fixes in bluestore StupidAllocator (pr#8101, Jianjian Huo)
  • os/filestore/FileJournal: set block size via config option (pr#7628, Sage Weil)
  • os/filestore: fix punch hole usage in _zero (pr#8050, Sage Weil)
  • os/filestore: fix result handling logic of destroy_collection (pr#7721, xie xingguo)
  • os/filestore: require offset == length == 0 for full object read; add test (pr#7957, Jianpeng Ma)
  • osd/OSDMap: fix typo in summarize_mapping_stats (pr#8088, Sage Weil)
  • osd/PGLog: fix warning (pr#8057, Sage Weil)
  • osd/ReplicatedPG: be more careful about calling publish_stats_to_osd() (issue#14962, pr#8039, Greg Farnum)
  • osd/ReplicatedPG: clear watches on change after applying repops (issue#15151, pr#8163, Sage Weil)
  • osd/ScrubStore: remove unused function (pr#8045, Kefu Chai)
  • osd: BlueStore/NVMEDevice: fix compiling and fd leak (pr#7496, xie xingguo)
  • osd: FileStore: use pwritev instead of lseek+writev (pr#7349, Haomai Wang, Tao Chang)
  • osd: OSDMap: reset osd_primary_affinity shared_ptr when deepish_copy_from (issue#14686, pr#7553, Xinze Chi)
  • osd: Replace snprintf with faster implementation in eversion_t::get_key_name (pr#7121, Evgeniy Firsov)
  • osd: WeightedPriorityQueue: move to intrusive containers (pr#7654, Robert LeBlanc)
  • osd: a fix for HeartbeatDispatcher and cleanups (pr#7550, Kefu Chai)
  • osd: add missing newline to usage message (pr#7613, Willem Jan Withagen)
  • osd: avoid FORCE updating digest been overwritten by MAYBE when comparing scrub map (pr#7051, Zhiqiang Wang)
  • osd: bluefs: fix alignment for odd page sizes (pr#7900, Dan Mick)
  • osd: bluestore updates, scrub fixes (pr#8035, Sage Weil)
  • osd: bluestore/blockdevice: use std::mutex et al (pr#7568, Sage Weil)
  • osd: bluestore: NVMEDevice: fix error handling (pr#7799, xie xingguo)
  • osd: bluestore: Revert NVMEDevice task cstor and refresh interface changes (pr#7729, Haomai Wang)
  • osd: bluestore: add ‘override’ to virtual functions (pr#7886, Michal Jarzabek)
  • osd: bluestore: allow _dump_onode dynamic accept log level (pr#7995, Jianpeng Ma)
  • osd: bluestore: fix check for write falling within the same extent (issue#14954, pr#7892, Jianpeng Ma)
  • osd: bluestore: for overwrite a extent, allocate new extent on min_alloc_size write (pr#7996, Jianpeng Ma)
  • osd: bluestore: improve fs-type verification and tidy up (pr#7651, xie xingguo)
  • osd: bluestore: misc fixes (pr#7658, Jianpeng Ma)
  • osd: bluestore: remove unneeded includes (pr#7870, Michal Jarzabek)
  • osd: clean up CMPXATTR checks (pr#5961, Jianpeng Ma)
  • osd: consider high/low mode when putting agent to sleep (issue#14752, pr#7631, Sage Weil)
  • osd: ensure new osdmaps commit before publishing them to pgs (issue#15073, pr#8096, Sage Weil)
  • osd: filejournal: report journal entry count (pr#7643, tianqing)
  • osd: filestore: FALLOC_FL_PUNCH_HOLE must be used with FALLOC_FL_KEEP_SIZE (pr#7768, xinxin shu)
  • osd: filestore: fast abort if statfs encounters ENOENT (pr#7703, xie xingguo)
  • osd: filestore: fix race condition with split vs collection_move_rename and long object names (issue#14766, pr#8136, Samuel Just)
  • osd: filestore: fix result code overwritten for clone (issue#14817, issue#14827, pr#7711, xie xingguo)
  • osd: filestore: fix wrong scope of result code for error cases during mkfs (issue#14814, pr#7704, xie xingguo)
  • osd: filestore: fix wrong scope of result code for error cases during mount (issue#14815, pr#7707, xie xingguo)
  • osd: filestore: restructure journal and op queue throttling (pr#7767, Samuel Just)
  • osd: fix forced prmootion for CALL ops (issue#14745, pr#7617, Sage Weil)
  • osd: fix fusestore hanging during stop/quit (issue#14786, pr#7677, xie xingguo)
  • osd: fix inaccurate counter and skip over queueing an empty transaction (pr#7754, xie xingguo)
  • osd: fix lack of object unblock when flush fails (issue#14511, pr#7584, Igor Fedotov)
  • osd: fix overload of ‘==’ operator for pg_stat_t (issue#14921, pr#7842, xie xingguo)
  • osd: fix race condition for heartbeat_need_update (issue#14387, pr#7739, xie xingguo)
  • osd: fix return value from maybe_handle_cache_detail() (pr#7593, Igor Fedotov)
  • osd: fix unnecessary object promotion when deleting from cache pool (issue#13894, pr#7537, Igor Fedotov)
  • osd: fix wrong return type of find_osd_on_ip() (issue#14872, pr#7812, xie xingguo)
  • osd: ghobject_t: use ! instead of @ as a separator (pr#7595, Sage Weil)
  • osd: handle dup pg_create that races with pg deletion (pr#8033, Sage Weil)
  • osd: initialize last_recalibrate field at construction (pr#8071, xie xingguo)
  • osd: kstore: fix a race condition in _txc_finish() (pr#7804, Jianjian Huo)
  • osd: kstore: latency breakdown (pr#7850, James Liu)
  • osd: kstore: sync up kstore with recent bluestore updates (pr#7681, Jianjian Huo)
  • osd: memstore: fix alignment of Page for test_pageset (pr#7587, Casey Bodley)
  • osd: min_write_recency_for_promote & min_read_recency_for_promote are tiering only (pr#8081, huanwen ren)
  • osd: probabilistic cache tier promotion throttling (pr#7465, Sage Weil)
  • osd: remove up_thru_pending field, which is never used (pr#7991, xie xingguo)
  • osd: replicatedpg: break out loop if we encounter fatal error during do_pg_op() (issue#14922, pr#7844, xie xingguo)
  • osd: resolve boot vs NOUP set + clear race (pr#7483, Sage Weil)
  • packaging: make infernalis -> jewel upgrade work (issue#15047, pr#8034, Nathan Cutler)
  • packaging: move cephfs repair tools to ceph-common (issue#15145, pr#8133, Boris Ranto, Ken Dreyer)
  • pybind/rados: fix object lifetime issues and other bugs in aio (pr#7778, Hector Martin)
  • pybind/rados: use __dealloc__ since __del__ is ignored by cython (pr#7692, Mehdi Abaakouk)
  • pybind: Ensure correct python flags are passed (pr#7663, James Page)
  • pybind: flag an RBD image as closed regardless of result code (pr#8005, Jason Dillaman)
  • pybind: move cephfs to Cython (pr#7745, John Spray, Mehdi Abaakouk)
  • pybind: remove next() on iterators (pr#7706, Mehdi Abaakouk)
  • pybind: replace __del__ with __dealloc__ for rbd (pr#7708, Josh Durgin)
  • pybind: use correct subdir for rados install-exec rule (pr#7684, Josh Durgin)
  • python binding of librados with cython (pr#7621, Mehdi Abaakouk)
  • python: use pip instead of python setup.py (pr#7605, Loic Dachary)
  • qa/workunits/cephtool/test.sh: wait longer in ceph_watch_start() (issue#14910, pr#7861, Kefu Chai)
  • qa/workunits/rados/test.sh: capture stderr too (pr#8004, Sage Weil)
  • qa/workunits/rados/test.sh: test tmap_migrate (pr#8114, Sage Weil)
  • qa/workunits/rbd: do not use object map during read flag testing (pr#8104, Jason Dillaman)
  • qa/workunits/rbd: new online maintenance op tests (pr#8216, Jason Dillaman)
  • qa/workunits/rbd: use POSIX function definition (issue#15104, pr#8068, Nathan Cutler)
  • qa/workunits/rest/test.py: add confirmation to ‘mds setmap’ (issue#14606, pr#7982, Sage Weil)
  • qa/workunits/rest/test.py: don’t use newfs (pr#8191, Sage Weil)
  • qa: add workunit to run ceph_test_rbd_mirror (pr#8221, Josh Durgin)
  • rados: add ceph:: namespace to bufferlist type (pr#8059, Noah Watkins)
  • rados: fix bug for write bench (pr#7851, James Liu)
  • rbd-mirror: ImageReplayer async start/stop (pr#7944, Mykola Golub)
  • rbd-mirror: ImageReplayer improvements (pr#7759, Mykola Golub)
  • rbd-mirror: fix image replay test failures (pr#8158, Jason Dillaman)
  • rbd-mirror: fix long termination due to 30sec wait in main loop (pr#8185, Mykola Golub)
  • rbd-mirror: implement ImageReplayer (pr#7614, Mykola Golub)
  • rbd-mirror: integrate with image sync state machine (pr#8079, Jason Dillaman)
  • rbd-mirror: minor fix-ups for initial skeleton implementation (pr#7958, Mykola Golub)
  • rbd-mirror: remote to local cluster image sync (pr#7979, Jason Dillaman)
  • rbd-mirror: use pool/image names in asok commands (pr#8159, Mykola Golub)
  • rbd-mirror: use the mirroring directory to detect candidate images (issue#15142, pr#8162, Ricardo Dias)
  • rbd/run_cli_tests.sh: Reflect test failures (issue#14825, pr#7781, Zack Cerza)
  • rbd: add support for mirror image promotion/demotion/resync (pr#8138, Jason Dillaman)
  • rbd: clone operation should default to image format 2 (pr#8119, Jason Dillaman)
  • rbd: deprecate image format 1 (pr#7841, Jason Dillaman)
  • rbd: support for enabling/disabling mirroring on specific images (issue#13296, pr#8056, Ricardo Dias)
  • release-notes: draft v0.94.6 release notes (issue#13356, pr#7689, Abhishek Varshney, Loic Dachary)
  • release-notes: draft v10.0.3 release notes (pr#7592, Loic Dachary)
  • release-notes: draft v10.0.4 release notes (pr#7966, Loic Dachary)
  • release-notes: draft v9.2.1 release notes (issue#13750, pr#7694, Abhishek Varshney)
  • rgw: ldap (Matt Benjamin) (pr#7985, Matt Benjamin)
  • rgw: multisite fixes (pr#8013, Yehuda Sadeh)
  • rgw: support for aws authentication v4 (Javier M. Mellid) (issue#10333, pr#7720, Yehuda Sadeh, Javier M. Mellid)
  • rgw sync fixes (pr#8095, Yehuda Sadeh)
  • rgw/rgw_common.h: fix the RGWBucketInfo decoding (pr#8165, Kefu Chai)
  • rgw/rgw_common.h: fix the RGWBucketInfo decoding (pr#8154, Kefu Chai)
  • rgw/rgw_orphan: check the return value of save_state (pr#7544, Boris Ranto)
  • rgw: Allow an implicit tenant in case of Keystone (pr#8139, Pete Zaitcev)
  • rgw: Drop unused usage_exit from rgw_admin.cc (pr#7632, Pete Zaitcev)
  • rgw: RGWZoneParams::create should not handle -EEXIST error (pr#7927, Orit Wasserman)
  • rgw: add bucket request payment feature usage statistics integration (issue#13834, pr#6656, Javier M. Mellid)
  • rgw: add support for caching of Keystone admin token. (pr#7630, Radoslaw Zarzynski)
  • rgw: add support for metadata upload during PUT on Swift container. (pr#8002, Radoslaw Zarzynski)
  • rgw: add support for system requests over Swift API (pr#7666, Radoslaw Zarzynski)
  • rgw: adjust the request_uri to support absoluteURI of http request (issue#12917, pr#7675, Wenjun Huang)
  • rgw: admin api for retrieving usage info (Ji Chen) (pr#8031, Yehuda Sadeh, Ji Chen)
  • rgw: allow authentication keystone with self signed certs (issue#14853, issue#13422, pr#7777, Abhishek Lekshmanan)
  • rgw: approximate AmazonS3 HostId error field. (pr#7444, Robin H. Johnson)
  • rgw: calculate payload hash in RGWPutObj_ObjStore only when necessary. (pr#7869, Radoslaw Zarzynski)
  • rgw: cleanups to comments and messages (pr#7633, Pete Zaitcev)
  • rgw: don’t use s->bucket for metadata api path entry (issue#14549, pr#7408, Yehuda Sadeh)
  • rgw: drop permissions of rgw/civetweb after startup (issue#13600, pr#8019, Karol Mroz)
  • rgw: fcgi should include acconfig (pr#7760, Abhishek Lekshmanan)
  • rgw: fix wrong handling of limit=0 during listing of Swift account. (issue#14903, pr#7821, Radoslaw Zarzynski)
  • rgw: fixes for per-period metadata logs (pr#7827, Casey Bodley)
  • rgw: improve error handling in S3/Keystone integration (pr#7597, Radoslaw Zarzynski)
  • rgw: link civetweb with openssl (Sage, Marcus Watts) (pr#7825, Marcus Watts, Sage Weil)
  • rgw: link payer info to usage logging (pr#7918, Yehuda Sadeh, Javier M. Mellid)
  • rgw: move signal.h dependency from rgw_front.h (pr#7678, Matt Benjamin)
  • rgw: multiple Swift API compliance improvements for TempURL (Radoslaw Zarzynsk) (issue#14806, issue#11163, pr#7891, Radoslaw Zarzynski)
  • rgw: multiple improvements regarding etag calculation for SLO/DLO of Swift API. (pr#7764, Radoslaw Zarzynski)
  • rgw: remove duplicated code in RGWRados::get_bucket_info() (pr#7413, liyankun)
  • rgw: remove unused vector (pr#7990, Na Xie)
  • rgw: reset return code in when iterating over the bucket the objects (issue#14826, pr#7803, Orit Wasserman)
  • rgw: store system object meta in cache when creating it (issue#14678, pr#7615, Yehuda Sadeh)
  • rgw: support json format for admin policy API (Dunrong Huang) (issue#14090, pr#8036, Yehuda Sadeh, Dunrong Huang)
  • rgw: try to parse Keystone token in order appropriate to configuration. (pr#7822, Radoslaw Zarzynski)
  • rgw: use pimpl pattern for RGWPeriodHistory (pr#7809, Casey Bodley)
  • rgw: user quota may not adjust on bucket removal (issue#14507, pr#7586, root)
  • rgw:bucket link now set the bucket.instance acl (bug fix) (issue#11076, pr#8037, Zengran Zhang)
  • rpm,deb: remove conditional BuildRequires for btrfs-progs (issue#15042, pr#8016, Erwan Velu)
  • rpm: remove sub-package dependencies on “ceph” (issue#15146, pr#8137, Ken Dreyer)
  • script: add missing stop_rgw variable to stop.sh script (pr#7959, Karol Mroz)
  • selinux: Update policy to grant additional access (issue#14870, pr#7971, Boris Ranto)
  • selinux: allow log files to be located in /var/log/radosgw (pr#7604, Boris Ranto)
  • sstring.hh: return type from str_len(...) need not be const (pr#7679, Matt Benjamin)
  • submodules: revert an accidental change (pr#7929, Yehuda Sadeh)
  • systemd: correctly escape block device paths (issue#14706, pr#7579, James Page)
  • test/TestPGLog: fix the FTBFS (issue#14930, pr#7855, Kefu Chai)
  • test/bufferlist: Avoid false-positive tests (pr#7955, Erwan Velu)
  • test/cli-integration/rbd: disable progress output (issue#14931, pr#7858, Josh Durgin)
  • test/osd: Relax the timing intervals in osd-markdown.sh (pr#7899, Dan Mick)
  • test/pybind/test_ceph_argparse: fix reweight-by-utilization tests (pr#8027, Kefu Chai, Sage Weil)
  • test/radosgw-admin: update the expected usage outputs (pr#7723, Kefu Chai)
  • test/rgw: add multisite test for meta sync across periods (pr#7887, Casey Bodley)
  • test/time: no need to abs(uint64_t) for comparing (pr#7726, Kefu Chai)
  • test: add missing shut_down mock method (pr#8125, Jason Dillaman)
  • test: correct librbd errors discovered with unoptimized cmake build (pr#7914, Jason Dillaman)
  • test: create pools for rbd tests with different prefix (pr#7738, Mykola Golub)
  • test: enable test for bug #2339 which has been resolved. (pr#7743, You Ji)
  • test: fix issues discovered via the rbd permissions test case (pr#8129, Jason Dillaman)
  • test: fixup and improvements for rbd-mirror test (pr#8090, Mykola Golub)
  • test: handle exception thrown from close during rbd lock test (pr#8124, Jason Dillaman)
  • test: more debug logging for TestWatchNotify (pr#7737, Mykola Golub)
  • test: new librbd flatten test case (pr#7609, Jason Dillaman)
  • test: rbd-mirror: add “switch to the next tag” test (pr#8149, Mykola Golub)
  • test: rbd-mirror: compare positions using all fields (pr#8172, Mykola Golub)
  • test: reproducer for writeback CoW deadlock (pr#8009, Jason Dillaman)
  • test: update rbd integration cram tests for new default features (pr#8001, Jason Dillaman)
  • test_pool_create.sh: put test files in the test dir so they are cleaned up (pr#8219, Josh Durgin)
  • tests: ceph-disk.sh: should use “readlink -f” instead (pr#7594, Kefu Chai)
  • tests: ceph-disk.sh: use “readlink -f” instead for fullpath (pr#7606, Kefu Chai)
  • tests: fix a few build warnings (pr#7608, Sage Weil)
  • tests: sync ceph-erasure-code-corpus for mktemp -d (pr#7596, Loic Dachary)
  • tests: test_pidfile.sh lingering processes (issue#14834, pr#7734, Loic Dachary)
  • tools/cephfs: add tmap_upgrade (pr#7003, John Spray)
  • tools/cephfs: fix tmap_upgrade (issue#15135, pr#8128, John Spray)
  • tools/rados: reduce “rados put” memory usage by op_size (pr#7928, Piotr Dałek)
  • unittest_compression_zlib: do not assume buffer will be null terminated (pr#8064, Sage Weil)
  • unittest_osdmap: default crush tunables now firefly (pr#8098, Sage Weil)
  • vstart.sh: avoid race condition starting rgw via vstart.sh (issue#14829, pr#7727, Javier M. Mellid)
  • vstart.sh: silence a harmless msg where btrfs is not found (pr#7640, Patrick Donnelly)
  • xio: fix incorrect ip being assigned in case of multiple RDMA ports (pr#7747, Subramanyam Varanasi)
  • xio: remove duplicate assignment of peer addr (pr#8025, Roi Dayan)
  • xio: remove redundant magic methods (pr#7773, Roi Dayan)
  • xio: remove unused variable (pr#8023, Roi Dayan)
  • xxhash: use clone of xxhash.git; add .gitignore (pr#7986, Sage Weil)
  • rbd: update default image features (pr#7846, Jason Dillaman)
  • rbd-mirror: make remote context respect env and argv config params (pr#8182, Mykola Golub)
  • journal: re-use common threads between journalers (pr#7906, Jason Dillaman)
  • client: add option to control how directory size is calculated (pr#7323, Yan, Zheng)
  • rgw: keystone v3 (pr#7719, Mark Barnes, Radoslaw Zarzynski)
  • rgw: new multisite merge (issue#14549, pr#7709, Yehuda Sadeh, Orit Wasserman, Casey Bodley, Daniel Gryniewicz)
  • rgw: adjust error code when bucket does not exist in copy operation (issue#14975, pr#7916, Yehuda Sadeh)
  • rgw: indexless (pr#7786, Yehuda Sadeh)

v10.0.5

This is identical to v10.0.4 and was only created because of a git tagging mistake.

v10.0.4

This is the fifth and last development release before Jewel. The next release will be a release candidate with the final set of features. Big items include RGW static website support, librbd journal framework, fixed mon sync of config-key data, C++11 updates, and bluestore/kstore.

Notable Changes

  • admin/build-doc: depend on zlib1g-dev and graphviz (pr#7522, Ken Dreyer)
  • buffer: use move construct to append/push_back/push_front (pr#7455, Haomai Wang)
  • build: allow jemalloc with rocksdb-static (pr#7368, Somnath Roy)
  • build: fix the autotools and cmake build (the new fusestore needs libfuse) (pr#7393, Kefu Chai)
  • build: fix warnings (pr#7197, Kefu Chai, xie xingguo)
  • build: fix warnings (pr#7315, Kefu Chai)
  • build: kill warnings (pr#7397, Kefu Chai)
  • build: move libexec scripts to standardize across distros (issue#14687, issue#14705, issue#14723, pr#7636, Nathan Cutler, Kefu Chai)
  • build: Refrain from versioning and packaging EC testing plugins (issue#14756, issue#14723, pr#7637, Nathan Cutler, Kefu Chai)
  • build: spdk submodule; cmake (pr#7503, Kefu Chai)
  • ceph-disk: support bluestore (issue#13422, pr#7218, Loic Dachary, Sage Weil)
  • ceph-disk/test: fix test_prepare.py::TestPrepare tests (pr#7549, Kefu Chai)
  • cleanup: remove misc dead code (pr#7201, Erwan Velu)
  • cls/cls_rbd: pass string by reference (pr#7232, Jeffrey Lu)
  • cmake: Added new unittests to make check (pr#7572, Ali Maredia)
  • cmake: add KernelDevice.cc to libos_srcs (pr#7507, Kefu Chai)
  • cmake: check for libsnappy in default path also (pr#7366, Kefu Chai)
  • cmake: feb5 (pr#7541, Matt Benjamin)
  • cmake: For CMake version <= 2.8.11, use LINK_PRIVATE and LINK_PUBLIC (pr#7474, Tao Chang)
  • cmake: let ceph-client-debug link with tcmalloc (pr#7314, Kefu Chai)
  • cmake: support ccache via a WITH_CCACHE build option (pr#6875, John Coyle)
  • common: add zlib compression plugin (pr#7437, Alyona Kiseleva, Kiseleva Alyona)
  • common: admin socket commands for tcmalloc heap get/set operations (pr#7512, Samuel Just)
  • common: ake ceph_time clocks work under BSD (pr#7340, Adam C. Emerson)
  • common: Allow OPT_INT settings with negative values (issue#13829, pr#7390, Brad Hubbard, Kefu Chai)
  • common/buffer: replace RWLock with spinlocks (pr#7294, Piotr Dałek)
  • common: change the type of counter total/unhealthy_workers (pr#7254, Guang Yang)
  • common: snappy decompressor may assert when handling segmented input bufferlist (issue#14400, pr#7268, Igor Fedotov)
  • common/str_map: cleanup: replaced get_str_map() function overloading by using default parameters for delimiters (pr#7266, Sahithi R V)
  • common: time: have skewing-now call non-skewing now (pr#7466, Adam C. Emerson)
  • common: unit test for interval_set implementations (pr#6, Igor Fedotov)
  • config: add $data_dir/config to config search path (pr#7377, Sage Weil)
  • configure.ac: make “–with-librocksdb-static” default to ‘check’ (issue#14463, pr#7317, Dan Mick)
  • crush: add safety assert (issue#14496, pr#7344, songbaisen)
  • crush: reply quickly from get_immediate_parent (issue#14334, pr#7181, song baisen)
  • debian: packaging fixes for jewel (pr#7807, Ken Dreyer, Ali Maredia)
  • debian/rpm split servers (issue#10587, pr#7746, Ken Dreyer)
  • doc: add orphans commands to radosgw-admin(8) (issue#14637, pr#7518, Ken Dreyer)
  • doc: amend the rados.8 (pr#7251, Kefu Chai)
  • doc: Fixes a CRUSH map step take argument (pr#7327, Ivan Grcic)
  • doc: fixing image in section ERASURE CODING (pr#7298, Rachana Patel)
  • doc: fix misleading configuration guide on cache tiering (pr#7000, Yuan Zhou)
  • doc: fix S3 C# example (pr#7027, Dunrong Huang)
  • doc: remove redundant space in ceph-authtool/monmaptool doc (pr#7244, Jiaying Ren)
  • doc: revise SubmittingPatches (pr#7292, Kefu Chai)
  • doc: rgw: port changes from downstream to upstream (pr#7264, Bara Ancincova)
  • doc: script and guidelines for mirroring Ceph (pr#7384, Wido den Hollander)
  • doc: use ‘ceph auth get-or-create’ for creating RGW keyring (pr#6930, Wido den Hollander)
  • global: do not start two daemons with a single pid-file (issue#13422, pr#7075, shun song)
  • global: do not start two daemons with a single pid-file (part 2) (issue#13422, pr#7463, Loic Dachary)
  • journal: flush commit position on metadata shutdown (pr#7385, Mykola Golub)
  • journal: reset commit_position_task_ctx pointer after task complete (pr#7480, Mykola Golub)
  • libcephfs: update LIBCEPHFS_VERSION to indicate the interface was changed (pr#7551, Jevon Qiao)
  • librados: move to c++11 concurrency types (pr#5931, Adam C. Emerson)
  • librados: remove duplicate definitions for rados pool_stat_t and cluster_stat_t (pr#7330, Igor Fedotov)
  • librados: shutdown finisher in a more graceful way (pr#7519, xie xingguo)
  • librados_test_stub: protect against notify/unwatch race (pr#7540, Jason Dillaman)
  • librbd: API: async open and close (issue#14264, pr#7259, Mykola Golub)
  • librbd: Avoid create two threads per image (pr#7400, Haomai Wang)
  • librbd: block maintenance ops until after journal is ready (issue#14510, pr#7382, Jason Dillaman)
  • librbd: fix internal handling of dynamic feature updates (pr#7299, Jason Dillaman)
  • librbd: journal framework for tracking exclusive lock transitions (issue#13298, pr#7529, Jason Dillaman)
  • librbd: journal shut down flush race condition (issue#14434, pr#7302, Jason Dillaman)
  • librbd: remove canceled tasks from timer thread (issue#14476, pr#7329, Douglas Fuller)
  • makefile: remove libedit from libclient.la (pr#7284, Kefu Chai)
  • mds, client: fix locking around handle_conf_change (issue#14365, issue#14374, pr#7312, John Spray)
  • mds: judgment added to avoid the risk of visiting the NULL pointer (pr#7358, Kongming Wu)
  • mon: add an independent option for max election time (pr#7245, Sangdi Xu)
  • mon: compact full epochs also (issue#14537, pr#7396, Kefu Chai)
  • mon: consider the pool size when setting pool crush rule (issue#14495, pr#7341, song baisen)
  • mon: drop useless rank init assignment (issue#14508, pr#7321, huanwen ren)
  • mon: fix locking in preinit error paths (issue#14473, pr#7353, huanwen ren)
  • mon: fix monmap creation stamp (pr#7459, duanweijun)
  • mon: fix sync of config-key data (pr#7363, Xiaowei Chen)
  • mon: go into ERR state if multiple PGs are stuck inactive (issue#13923, pr#7253, Wido den Hollander)
  • mon/MDSMonitor.cc: properly note beacon when health metrics changes (issue#14684, pr#7757, Yan, Zheng)
  • mon/MonClient: avoid null pointer error when configured incorrectly (issue#14405, pr#7276, Bo Cai)
  • mon: PG Monitor should report waiting for backfill (issue#12744, pr#7398, Abhishek Lekshmanan)
  • mon: reduce CPU and memory manager pressure of pg health check (pr#7482, Piotr Dałek)
  • mon: some cleanup in MonmapMonitor.cc (pr#7418, huanwen ren)
  • mon: warn if pg(s) not scrubbed (issue#13142, pr#6440, Michal Jarzabek)
  • msg/async: AsyncConnection: avoid debug log in cleanup_handler (pr#7547, Haomai Wang)
  • msg/async: bunch of fixes (pr#7379, Piotr Dałek)
  • msg/async: fix array boundary (pr#7451, Wei Jin)
  • msg/async: fix potential race condition (pr#7453, Haomai Wang)
  • msg/async: fix send closed local_connection message problem (pr#7255, Haomai Wang)
  • msg/async: reduce extra tcp packet for message ack (pr#7380, Haomai Wang)
  • msg/xio: fix compilation (pr#7479, Roi Dayan)
  • organizationmap: modify org mail info. (pr#7240, Xiaowei Chen)
  • os/bluestore: fix assert (issue#14436, pr#7293, xie xingguo)
  • os/bluestore: fix bluestore_wal_transaction_t encoding test (pr#7342, Kefu Chai)
  • os/bluestore: insert new onode to the front position of onode LRU (pr#7492, Jianjian Huo)
  • os/bluestore: use intrusive_ptr for Dir (pr#7247, Igor Fedotov)
  • osd: blockdevice: avoid implicit cast and add guard (pr#7460, xie xingguo)
  • osd: bluestore/BlueFS: initialize super block_size earlier in mkfs (pr#7535, Sage Weil)
  • osd: BlueStore: fix fsck and blockdevice read-relevant issue (pr#7362, xie xingguo)
  • osd: BlueStore: fix null pointer access (issue#14561, pr#7435, xie xingguo)
  • osd: bluestore, kstore: fix nid overwritten logic (issue#14407, issue#14433, pr#7283, xie xingguo)
  • osd: bluestore: use btree_map for allocator (pr#7269, Igor Fedotov, Sage Weil)
  • osd: drop fiemap len=0 logic (pr#7267, Sage Weil)
  • osd: FileStore: add error check for object_map->sync() (pr#7281, Chendi Xue)
  • osd: FileStore: cleanup: remove obsolete option “filestore_xattr_use_omap” (issue#14356, pr#7217, Vikhyat Umrao)
  • osd: FileStore: modify the format of colon (pr#7333, Donghai Xu)
  • osd: FileStore: print file name before osd assert if read file failed (pr#7111, Ji Chen)
  • osd: fix invalid list traversal in process_copy_chunk (pr#7511, Samuel Just)
  • osd, mon: fix exit issue (pr#7420, Jiaying Ren)
  • osd: PG::activate(): handle unexpected cached_removed_snaps more gracefully (issue#14428, pr#7309, Alexey Sheplyakov)
  • os/fs: fix io_getevents argument (pr#7355, Jingkai Yuan)
  • os/fusestore: add error handling (pr#7395, xie xingguo)
  • os/keyvaluestore: kill KeyValueStore (pr#7320, Haomai Wang)
  • os/kstore: insert new onode to the front position of onode LRU (pr#7505, xie xingguo)
  • os/ObjectStore: add custom move operations for ObjectStore::Transaction (pr#7303, Casey Bodley)
  • rgw: Bug fix for mtime anomalies in RadosGW and other places (pr#7328, Adam C. Emerson, Casey Bodley)
  • rpm: move %post(un) ldconfig calls to ceph-base (issue#14940, pr#7867, Nathan Cutler)
  • rpm: move runtime dependencies to ceph-base and fix other packaging issues (issue#14864, pr#7826, Nathan Cutler)
  • test: ceph_test_rados: use less CPU (pr#7513, Samuel Just)

v10.0.3

This is the fourth development release for Jewel. Several big pieces have been added this release, including BlueStore (a new backend for OSD to replace FileStore), many ceph-disk fixes, a new CRUSH tunable that improves mapping stability, a new librados object enumeration API, and a whole slew of OSD and RADOS optimizations.

Note that, due to general developer busyness, we aren’t building official release packages for this dev release. You can fetch autobuilt gitbuilder packages from the usual location (gitbuilder.ceph.com).

Notable Changes

  • bluestore: latest and greatest (issue#14210, issue#13801, pr#6896, xie.xingguo, Jianpeng Ma, YiQiang Chen, Sage Weil, Ning Yao)
  • buffer: fix internal iterator invalidation on rebuild, get_contiguous (pr#6962, Sage Weil)
  • build: fix a few warnings (pr#6847, Orit Wasserman)
  • build: misc make check fixes (pr#7153, Sage Weil)
  • ceph-detect-init: fix py3 test (pr#7025, Kefu Chai)
  • ceph-disk: add -f flag for btrfs mkfs (pr#7222, Darrell Enns)
  • ceph-disk: ceph-disk list fails on /dev/cciss!c0d0 (issue#13970, issue#14233, issue#14230, pr#6879, Loic Dachary)
  • ceph-disk: fix failures when preparing disks with udev > 214 (issue#14080, issue#14094, pr#6926, Loic Dachary, Ilya Dryomov)
  • ceph-disk: Fix trivial typo (pr#7472, Brad Hubbard)
  • ceph-disk: warn for prepare partitions with bad GUIDs (issue#13943, pr#6760, David Disseldorp)
  • ceph-fuse: fix double decreasing the count to trim caps (issue#14319, pr#7229, Zhi Zhang)
  • ceph-fuse: fix double free of args (pr#7015, Ilya Shipitsin)
  • ceph-fuse: fix fsync() (pr#6388, Yan, Zheng)
  • ceph-fuse:print usage information when no parameter specified (pr#6868, Bo Cai)
  • ceph: improve the error message (issue#11101, pr#7106, Kefu Chai)
  • ceph.in: avoid a broken pipe error when use ceph command (issue#14354, pr#7212, Bo Cai)
  • ceph.spec.in: add copyright notice (issue#14694, pr#7569, Nathan Cutler)
  • ceph.spec.in: add license declaration (pr#7574, Nathan Cutler)
  • ceph_test_libcephfs: tolerate duplicated entries in readdir (issue#14377, pr#7246, Yan, Zheng)
  • client: check if Fh is readable when processing a read (issue#11517, pr#7209, Yan, Zheng)
  • client: properly trim unlinked inode (issue#13903, pr#7297, Yan, Zheng)
  • cls_rbd: add guards for error cases (issue#14316, issue#14317, pr#7165, xie xingguo)
  • cls_rbd: enable object map checksums for object_map_save (issue#14280, pr#7149, Douglas Fuller)
  • cmake: Add ENABLE_GIT_VERSION to avoid rebuilding (pr#7171, Kefu Chai)
  • cmake: add missing check for HAVE_EXECINFO_H (pr#7270, Casey Bodley)
  • cmake: cleanups and more features from automake (pr#7103, Casey Bodley, Ali Maredia)
  • cmake: detect bzip2 and lz4 (pr#7126, Kefu Chai)
  • cmake: fix build with bluestore (pr#7099, John Spray)
  • cmake: fix the build on trusty (pr#7249, Kefu Chai)
  • cmake: made rocksdb an imported library (pr#7131, Ali Maredia)
  • cmake: no need to run configure from run-cmake-check.sh (pr#6959, Orit Wasserman)
  • cmake: test_build_libcephfs needs ${ALLOC_LIBS} (pr#7300, Ali Maredia)
  • common/address_help.cc: fix the leak in entity_addr_from_url() (issue#14132, pr#6987, Qiankun Zheng)
  • common: add thread names (pr#5882, Igor Podoski)
  • common: assert: abort() rather than throw (pr#6804, Adam C. Emerson)
  • common: buffer/assert minor fixes (pr#6990, Matt Benjamin)
  • common/Formatter: avoid newline if there is no output (pr#5351, Aran85)
  • common: improve shared_cache and simple_cache efficiency with hash table (pr#6909, Ning Yao)
  • common/lockdep: increase max lock names (pr#6961, Sage Weil)
  • common: new timekeeping common code, and Objecter conversion (pr#5782, Adam C. Emerson)
  • common: signal_handler: added support for using reentrant strsignal() implementations vs. sys_siglist[] (pr#6796, John Coyle)
  • config: complains when a setting is not tracked (issue#11692, pr#7085, Kefu Chai)
  • configure: detect bz2 and lz4 (issue#13850, issue#13981, pr#7030, Kefu Chai)
  • correct radosgw-admin command (pr#7006, YankunLi)
  • crush: add chooseleaf_stable tunable (pr#6572, Sangdi Xu, Sage Weil)
  • crush: clean up whitespace removal (issue#14302, pr#7157, songbaisen)
  • crush/CrushTester: check for overlapped rules (pr#7139, Kefu Chai)
  • crushtool: improve usage/tip messages (pr#7142, xie xingguo)
  • crushtool: set type 0 name “device” for –build option (pr#6824, Sangdi Xu)
  • doc: adding “–allow-shrink” in decreasing the size of the rbd block to distinguish from the increasing option (pr#7020, Yehua)
  • doc: admin/build-doc: make paths absolute (pr#7119, Dan Mick)
  • doc: dev: document ceph-qa-suite (pr#6955, Loic Dachary)
  • doc: document “readforward” and “readproxy” cache mode (pr#7023, Kefu Chai)
  • doc: fix “mon osd down out subtree limit” option name (pr#7164, François Lafont)
  • doc: fix typo (pr#7004, tianqing)
  • doc: Updated the rados command man page to include the –run-name opt… (issue#12899, pr#5900, ritz303)
  • fs: be more careful about the “mds setmap” command to prevent breakage (issue#14380, pr#7262, Yan, Zheng)
  • helgrind: additional race conditionslibrbd: journal replay should honor inter-event dependencies (pr#7274, Jason Dillaman)
  • helgrind: fix real (and imaginary) race conditions (issue#14163, pr#7208, Jason Dillaman)
  • kv: implement value_as_ptr() and use it in .get() (pr#7052, Piotr Dałek)
  • librados: add c++ style osd/pg command interface (pr#6893, Yunchuan Wen)
  • librados: fix several flaws introduced by the enumeration_objects API (issue#14299, issue#14301, issue#14300, pr#7156, xie xingguo)
  • librados: new style (sharded) object listing (pr#6405, John Spray, Sage Weil)
  • librados: potential null pointer access in list_(n)objects (issue#13822, pr#6639, xie xingguo)
  • librbd: exit if parent’s snap is gone during clone (issue#14118, pr#6968, xie xingguo)
  • librbd: fix potential memory leak (issue#14332, issue#14333, pr#7174, xie xingguo)
  • librbd: fix snap_exists API return code overflow (issue#14129, pr#6986, xie xingguo)
  • librbd: journal replay should honor inter-event dependencies (pr#7019, Jason Dillaman)
  • librbd: return error if we fail to delete object_map head object (issue#14098, pr#6958, xie xingguo)
  • librbd: small fixes for error messages and readahead counter (issue#14127, pr#6983, xie xingguo)
  • librbd: uninitialized state in snap remove state machine (pr#6982, Jason Dillaman)
  • mailmap: hange organization for Dongmao Zhang (pr#7173, Dongmao Zhang)
  • mailmap: Igor Podoski affiliation (pr#7219, Igor Podoski)
  • mailmap update (pr#7210, M Ranga Swami Reddy)
  • mailmap updates (pr#6992, Loic Dachary)
  • mailmap updates (pr#7189, Loic Dachary)
  • man: document listwatchers cmd in “rados” manpage (pr#7021, Kefu Chai)
  • mds: advance clientreplay when replying (issue#14357, pr#7216, John Spray)
  • mds: expose state of recovery to status ASOK command (issue#14146, pr#7068, Yan, Zheng)
  • mds: fix client cap/message replay order on restart (issue#14254, issue#13546, pr#7199, Yan, Zheng)
  • mds: fix standby replay thread creation (issue#14144, pr#7132, John Spray)
  • mds: we should wait messenger when MDSDaemon suicide (pr#6996, Wei Feng)
  • mon: add osd blacklist clear (pr#6945, John Spray)
  • mon: add RAW USED column to ceph df detail (pr#7087, Ruifeng Yang)
  • mon: degrade a log message to level 2 (pr#6929, Kongming Wu)
  • mon: fix coding-style on PG related Monitor files (pr#6881, Wido den Hollander)
  • mon: fixes related to mondbstore->get() changes (pr#6564, Piotr Dałek)
  • mon: fix reuse of osd ids (clear osd info on osd deletion) (issue#13988, pr#6900, Loic Dachary, Sage Weil)
  • mon: fix the can’t change subscribe level bug in monitoring log (pr#7031, Zhiqiang Wang)
  • mon/MDSMonitor: add confirmation to “ceph mds rmfailed” (issue#14379, pr#7248, Yan, Zheng)
  • mon: modify a dout level in OSDMonitor.cc (pr#6928, Yongqiang He)
  • mon: MonmapMonitor: don’t expose uncommitted state to client (pr#6854, Joao Eduardo Luis)
  • mon/OSDMonitor: osdmap laggy set a maximum limit for interval (pr#7109, Zengran Zhang)
  • mon: paxos is_recovering calc error (pr#7227, Weijun Duan)
  • mon/PGMap: show rd/wr iops separately in status reports (pr#7072, Cilang Zhao)
  • mon: PGMonitor: acting primary diff with cur_stat, should not set pg to stale (pr#7083, Xiaowei Chen)
  • msg: add override to virutal methods (pr#6977, Michal Jarzabek)
  • msg/async: cleanup dead connection and misc things (pr#7158, Haomai Wang)
  • msg/async: don’t use shared_ptr to manage EventCallback (pr#7028, Haomai Wang)
  • msg: filter out lo addr when bind osd addr (pr#7012, Ji Chen)
  • msg: removed unneeded includes from Dispatcher (pr#6814, Michal Jarzabek)
  • msg: remove unneeded inline (pr#6989, Michal Jarzabek)
  • msgr: fix large message data content length causing overflow (pr#6809, Jun Huang, Haomai Wang)
  • msg/simple: pipe: memory leak when signature check failed (pr#7096, Ruifeng Yang)
  • msg/simple: remove unneeded friend declarations (pr#6924, Michal Jarzabek)
  • objecter: avoid recursive lock of Objecter::rwlock (pr#7343, Yan, Zheng)
  • os/bluestore: fix bluestore_wal_transaction_t encoding test (pr#7419, Kefu Chai, Brad Hubbard)
  • osd: add cache hint when pushing raw clone during recovery (pr#7069, Zhiqiang Wang)
  • osd: avoid debug std::string initialization in PG::get/put (pr#7117, Evgeniy Firsov)
  • osd: avoid osd_op_thread suicide because osd_scrub_sleep (pr#7009, Jianpeng Ma)
  • osd: bluestore: bluefs: fix several small bugs (issue#14344, issue#14343, pr#7200, xie xingguo)
  • osd: bluestore: don’t include when building without libaio (issue#14207, pr#7169, Mykola Golub)
  • osd: bluestore: fix bluestore onode_t attr leak (pr#7125, Ning Yao)
  • osd: bluestore: fix bluestore_wal_transaction_t encoding test (pr#7168, Kefu Chai)
  • osd: bluestore: fix several bugs (issue#14259, issue#14353, issue#14260, issue#14261, pr#7122, xie xingguo)
  • osd: bluestore: fix space rebalancing, collection split, buffered reads (pr#7196, Sage Weil)
  • osd: bluestore: more fixes (pr#7130, Sage Weil)
  • osd: cache tier: add config option for eviction check list size (pr#6997, Yuan Zhou)
  • osdc: Fix race condition with tick_event and shutdown (issue#14256, pr#7151, Adam C. Emerson)
  • osd: check health state before pre_booting (issue#14181, pr#7053, Xiaoxi Chen)
  • osd: clear pg_stat_queue after stopping pgs (issue#14212, pr#7091, Sage Weil)
  • osd: delay populating in-memory PG log hashmaps (pr#6425, Piotr Dałek)
  • osd: disable filestore_xfs_extsize by default (issue#14397, pr#7265, Ken Dreyer)
  • osd: do not keep ref of old osdmap in pg (issue#13990, pr#7007, Kefu Chai)
  • osd: drop deprecated removal pg type (pr#6970, Igor Podoski)
  • osd: FileJournal: fix return code of create method (issue#14134, pr#6988, xie xingguo)
  • osd: FileJournal: support batch peak and pop from writeq (pr#6701, Xinze Chi)
  • osd: FileStore: conditional collection of drive metadata (pr#6956, Somnath Roy)
  • osd: FileStore:: optimize lfn_unlink (pr#6649, Jianpeng Ma)
  • osd: fix null pointer access and race condition (issue#14072, pr#6916, xie xingguo)
  • osd: fix scrub start hobject (pr#7467, Sage Weil)
  • osd: fix sparse-read result code checking logic (issue#14151, pr#7016, xie xingguo)
  • osd: fix temp object removal after upgrade (issue#13862, pr#6976, David Zafman)
  • osd: fix wip (l_osd_op_wip) perf counter and remove repop_map (pr#7077, Xinze Chi)
  • osd: fix wrongly placed assert and some cleanups (pr#6766, xiexingguo, xie xingguo)
  • osd: KeyValueStore: fix return code of mkfs (pr#7036, xie xingguo)
  • osd: KeyValueStore: fix wrongly placed assert (issue#14176, issue#14178, pr#7047, xie xingguo)
  • osd: kstore: several small fixes (issue#14351, issue#14352, pr#7213, xie xingguo)
  • osd: kstore: small fixes to kstore (issue#14204, pr#7095, xie xingguo)
  • osd: make list_missing query missing_loc.needs_recovery_map (pr#6298, Guang Yang)
  • osdmap: remove unused local variables (pr#6864, luo kexue)
  • osd: memstore: fix two bugs (pr#6963, Casey Bodley, Sage Weil)
  • osd: misc FileStore fixes (issue#14192, issue#14188, issue#14194, issue#14187, issue#14186, pr#7059, xie xingguo)
  • osd: misc optimization for map utilization (pr#6950, Ning Yao)
  • osd,mon: log leveldb and rocksdb to ceph log (pr#6921, Sage Weil)
  • osd: Omap small bugs adapted (pr#6669, Jianpeng Ma, David Zafman)
  • osd: optimize the session_handle_reset function (issue#14182, pr#7054, songbaisen)
  • osd: OSDService: Fix typo in osdmap comment (pr#7275, Brad Hubbard)
  • osd: os: skip checking pg_meta object existance in FileStore (pr#6870, Ning Yao)
  • osd: PGLog: clean up read_log (pr#7092, Jie Wang)
  • osd: prevent osd_recovery_sleep from causing recovery-thread suicide (pr#7065, Jianpeng Ma)
  • osd: reduce string use in coll_t::calc_str() (pr#6505, Igor Podoski)
  • osd: release related sources when scrub is interrupted (pr#6744, Jianpeng Ma)
  • osd: remove unused OSDMap::set_weightf() (issue#14369, pr#7231, huanwen ren)
  • osd: ReplicatedPG: clean up unused function (pr#7211, Xiaowei Chen)
  • osd/ReplicatedPG: fix promotion recency logic (issue#14320, pr#6702, Sage Weil)
  • osd: several small cleanups (pr#7055, xie xingguo)
  • osd: shut down if we flap too many times in a short period (pr#6708, Xiaoxi Chen)
  • osd: skip promote for writefull w/ FADVISE_DONTNEED/NOCACHE (pr#7010, Jianpeng Ma)
  • osd: small fixes to memstore (issue#14228, issue#14229, issue#14227, pr#7107, xie xingguo)
  • osd: try evicting after flushing is done (pr#5630, Zhiqiang Wang)
  • osd: use atomic to generate ceph_tid (pr#7017, Evgeniy Firsov)
  • osd: use optimized is_zero in object_stat_sum_t.is_zero() (pr#7203, Piotr Dałek)
  • osd: utime_t, eversion_t, osd_stat_sum_t encoding optimization (pr#6902, Xinze Chi)
  • pybind: add ceph_volume_client interface for Manila and similar frameworks (pr#6205, John Spray)
  • pybind: fix build failure, remove extraneous semicolon in method (issue#14371, pr#7235, Abhishek Lekshmanan)
  • pybind/test_rbd: fix test_create_defaults (issue#14279, pr#7155, Josh Durgin)
  • qa: disable rbd/qemu-iotests test case 055 on RHEL/CentOSlibrbd: journal replay should honor inter-event dependencies (issue#14385, pr#7272, Jason Dillaman)
  • qa/workunits: merge_diff shouldn’t attempt to use striping (issue#14165, pr#7041, Jason Dillaman)
  • qa/workunits/snaps: move snap tests into fs sub-directory (pr#6496, Yan, Zheng)
  • rados: implement rm –force option to force remove when full (pr#6202, Xiaowei Chen)
  • rbd: additional validation for striping parameters (pr#6914, Na Xie)
  • rbd: add pool name to disambiguate rbd admin socket commands (pr#6904, wuxiangwei)
  • rbd: correct an output string for merge-diff (pr#7046, Kongming Wu)
  • rbd: fix static initialization ordering issues (pr#6978, Mykola Golub)
  • rbd-fuse: image name can not include snap name (pr#7044, Yongqiang He)
  • rbd-fuse: implement mv operation (pr#6938, wuxiangwei)
  • rbd: must specify both of stripe-unit and stripe-count when specifying stripingv2 feature (pr#7026, Donghai Xu)
  • rbd-nbd: add copyright (pr#7166, Li Wang)
  • rbd-nbd: fix up return code handling (pr#7215,