注意

本文档适用于 Ceph 开发版本。

Jewel

Jewel 是 Ceph 的第 10 个稳定版本。它以珠宝乌贼(Histioteuthis reversa)命名。

v10.2.11 Jewel

此版本发布带来了一些重要的错误修复,并有一些重要的安全修复。预计这是最后一个 Jewel 版本。我们建议所有 Jewel 10.2.x 用户升级。

显著变化

  • CVE 2018-1128: 认证:cephx 作者izer 易受重放攻击 (问题#24836, Sage Weil)

  • CVE 2018-1129: 认证:cephx 签名检查较弱 (问题#24837, Sage Weil)

  • CVE 2018-10861: mon:池操作认证检查不正确 (问题#24838, Jason Dillaman)

  • RBD C API 的 rbd_discard 方法和 C++ API 的 Image::discard 方法现在强制执行最大长度为 2GB。此限制防止结果代码溢出。

  • 新的 OSD 现在默认使用 rocksdb 而不是 leveldb 来存储 omap 数据。omap 由 RGW 桶索引和 CephFS 目录使用,当单个 leveldb 在高写入或删除工作负载下增长到 10GB 时,当 leveldb 的单线程压缩无法跟上时,可能会导致高延迟。rocksdb 支持多线程压缩,这避免了这个问题。

  • CephFS 客户端现在在启动期间捕获清除 dentries 的失败,并拒绝启动,因为可能会出现一致性和不可修剪缓存问题。新的选项 client_die_on_failed_dentry_invalidate(默认:true)可以关闭,以允许客户端继续(危险!)。

  • 在 10.2.10 及更早版本中,密钥环 caps 没有检查有效性,因此 caps 字符串可以是任何内容。从 10.2.11 开始,caps 字符串将进行验证,向例如“ceph auth add”提供无效的密钥环将导致错误。

更改日志

v10.2.10 Jewel

此版本发布在 Ceph 的所有主要组件中修复了若干重要错误。我们建议所有 Jewel 10.2.x 用户升级。

要获取详细更改列表,请参阅:下载:完整更改日志 <../changelog/v10.2.10txt>

显著变化

v10.2.9 Jewel

This point release fixes a regression introduced in v10.2.8.

We recommend that all Jewel users upgrade.

更多详细信息,请参阅the complete changelog.

显著变化

v10.2.8 Jewel

This point release brought a number of important bugfixes in all major components of Ceph. However, it also introduced a regression that could cause MDS damage, and a new release, v10.2.9, was published to address this. Therefore, Jewel users should not upgrade to this version - instead, we recommend upgrading directly to v10.2.9.

更多详细信息,请参阅the complete changelog.

OSD Removal Caveat

There was a bug introduced in Jewel (#19119) that broke the mapping behavior when an “out” OSD that still existed in the CRUSH map was removed with ‘osd rm’. This could result in ‘misdirected op’ and other errors. The bug is now fixed, but the fix itself introduces the same risk because the behavior may vary between clients and OSDs. To avoid problems, please ensure that all OSDs are removed from the CRUSH map before deleting them. That is, be sure to do:

ceph osd crush rm osd.123

before:

ceph osd rm osd.123

Snap Trimmer Improvements

This release greatly improves control and throttling of the snap trimmer. It introduces the “osd max trimming pgs” option (defaulting to 2), which limits how many PGs on an OSD can be trimming snapshots at a time. And it restores the safe use of the “osd snap trim sleep” option, which defaults to 0 but otherwise adds the given number of seconds in delay between every dispatch of trim operations to the underlying system.

Other Notable Changes

  • build/ops: “osd marked itself down” will not recognised if host runs mon + osd on shutdown/reboot (issue#18516, pr#13492, Boris Ranto)

  • build/ops: ceph-base package missing dependency for psmisc (issue#19129, pr#13786, Nathan Cutler)

  • build/ops: enable build of ceph-resource-agents package on rpm-based os (issue#17613, issue#19546, pr#13606, Nathan Cutler)

  • build/ops: rbdmap.service not included in debian packaging (jewel-only) (issue#19547, pr#14383, Ken Dreyer)

  • cephfs: Journaler may execute on_safe contexts prematurely (issue#20055, pr#15468, “Yan, Zheng”)

  • cephfs: MDS assert failed when shutting down (issue#19204, pr#14683, John Spray)

  • cephfs: MDS goes readonly writing backtrace for a file whose data pool has been removed (issue#19401, pr#14682, John Spray)

  • cephfs: MDS server crashes due to inconsistent metadata (issue#19406, pr#14676, John Spray)

  • cephfs: No output for ceph mds rmfailed 0 --yes-i-really-mean-it command (issue#16709, pr#14674, John Spray)

  • cephfs: Test failure: test_data_isolated (tasks.cephfs.test_volume_client.TestVolumeClient) (issue#18914, pr#14685, “Yan, Zheng”)

  • cephfs: Test failure: test_open_inode (issue#18661, pr#14669, John Spray)

  • cephfs: The mount point break off when mds switch hanppened (issue#19437, pr#14679, Guan yunfei)

  • cephfs: ceph-fuse does not recover after lost connection to MDS (issue#16743, issue#18757, pr#14698, Kefu Chai, Henrik Korkuc, Patrick Donnelly)

  • cephfs: client: fix the cross-quota rename boundary check conditions (issue#18699, pr#14667, Greg Farnum)

  • cephfs: mds is crushed, after I set about 400 64KB xattr kv pairs to a file (issue#19033, pr#14684, Yang Honggang)

  • cephfs: non-local quota changes not visible until some IO is done (issue#17939, pr#15466, John Spray, Nathan Cutler)

  • cephfs: normalize file open flags internally used by cephfs (issue#18872, issue#19890, pr#15000, Jan Fajerski, “Yan, Zheng”)

  • common: monitor creation with IPv6 public network segfaults (issue#19371, pr#14324, Fabian Grünbichler)

  • common: radosstriper: protect aio_write API from calls with 0 bytes (issue#14609, pr#13254, Sebastien Ponce)

  • core: Objecter::epoch_barrier isn’t respected in _op_submit() (issue#19396, pr#14332, Ilya Dryomov)

  • core: clear divergent_priors set off disk (issue#17916, pr#14596, Greg Farnum)

  • core: improve snap trimming, enable restriction of parallelism (issue#19241, pr#14492, Samuel Just, Greg Farnum)

  • core: os/filestore/HashIndex: be loud about splits (issue#18235, pr#13788, Dan van der Ster)

  • core: os/filestore: fix clang static check warn use-after-free (issue#19311, pr#14044, liuchang0812, yaoning)

  • core: transient jerasure unit test failures (issue#18070, issue#17762, issue#18128, issue#17951, pr#14701, Kefu Chai, Pan Liu, Loic Dachary, Jason Dillaman)

  • core: two instances of omap_digest mismatch (issue#18533, pr#14204, Samuel Just, David Zafman)

  • doc: Improvements to crushtool manpage (issue#19649, pr#14635, Loic Dachary, Nathan Cutler)

  • doc: PendingReleaseNotes: note about 19119 (issue#19119, pr#13732, Sage Weil)

  • doc: admin ops: fix the quota section (issue#19397, pr#14654, Chu, Hua-Rong)

  • doc: radosgw-admin: add the ‘object stat’ command to usage (issue#19013, pr#13872, Pavan Rallabhandi)

  • doc: rgw S3 create bucket should not do response in json (issue#18889, pr#13874, Abhishek Lekshmanan)

  • fs: Invalid error code returned by MDS is causing a kernel client WARNING (issue#19205, pr#13831, Jan Fajerski, xie xingguo)

  • librbd: Incomplete declaration for ContextWQ in librbd/Journal.h (issue#18862, pr#14152, Boris Ranto)

  • librbd: Issues with C API image metadata retrieval functions (issue#19588, pr#14666, Mykola Golub)

  • librbd: Possible deadlock performing a synchronous API action while refresh in-progress (issue#18419, pr#13154, Jason Dillaman)

  • librbd: is_exclusive_lock_owner API should ping OSD (issue#19287, pr#14481, Jason Dillaman)

  • librbd: remove image header lock assertions (issue#18244, pr#13809, Jason Dillaman)

  • mds: C_MDSInternalNoop::complete doesn’t free itself (issue#19501, pr#14677, “Yan, Zheng”)

  • mds: Too many stat ops when trying to probe a large file (issue#19955, pr#15472, “Yan, Zheng”)

  • mds: avoid reusing deleted inode in StrayManager::_purge_stray_logged (issue#18877, pr#14670, Zhi Zhang)

  • mds: enable start when session ino info is corrupt (issue#19708, issue#16842, pr#14700, John Spray)

  • mds: fragment space check can cause replayed request fail (issue#18660, pr#14668, “Yan, Zheng”)

  • mds: heartbeat timeout during rejoin, when working with large amount of caps/inodes (issue#19118, pr#14672, John Spray)

  • mds: issue new caps when sending reply to client (issue#19635, pr#15438, “Yan, Zheng”)

  • mon: OSDMonitor: make ‘osd crush move …’ work on osds (issue#18587, pr#13261, Sage Weil)

  • mon: fix ‘sortbitwise’ warning on jewel (issue#20578, pr#15208, huanwen ren, Sage Weil)

  • mon: make get_mon_log_message() atomic (issue#19427, pr#14587, Kefu Chai)

  • mon: remove bad rocksdb option (issue#19392, pr#14236, Sage Weil)

  • msg: IPv6 Heartbeat packets are not marked with DSCP QoS - simple messenger (issue#18887, pr#13450, Yan Jun, Robin H. Johnson)

  • msg: set close on exec flag (issue#16390, pr#13585, Kefu Chai)

  • osd: --flush-journal: sporadic segfaults on exit (issue#18820, pr#13477, Alexey Sheplyakov)

  • osd: Give requested scrubs a higher priority (issue#15789, pr#14686, David Zafman)

  • osd: Implement asynchronous scrub sleep (issue#19986, issue#19497, pr#15529, Brad Hubbard)

  • osd: Object level shard errors are tracked and used if no auth available (issue#20089, pr#15416, David Zafman)

  • osd: ReplicatedPG: try with pool’s use-gmt setting if hitset archive not found (issue#19185, pr#13827, Kefu Chai)

  • osd: allow client throttler to be adjusted on-fly, without restart (issue#18791, pr#13214, Piotr Dałek)

  • osd: bypass readonly ops when osd full (issue#19394, pr#14181, Jianpeng Ma, yaoning)

  • osd: degraded and misplaced status output inaccurate (issue#18619, pr#14325, David Zafman)

  • osd: new added OSD always down when full flag is set (issue#15025, pr#14326, Mingxin Liu)

  • osd: pg_pool_t::encode(): be compatible with Hammer <= 0.94.6 (issue#19508, pr#14392, Alexey Sheplyakov)

  • osd: pre-jewel “osd rm” incrementals are misinterpreted (issue#19119, pr#13884, Ilya Dryomov)

  • osd: preserve allocation hint attribute during recovery (issue#19083, pr#13647, yaoning)

  • osd: promote throttle parameters are reversed (issue#19773, pr#14791, Mark Nelson)

  • osd: reindex properly on pg log split (issue#18975, pr#14047, Alexey Sheplyakov)

  • osd: restrict want_acting to up+acting on recovery completion (issue#18929, pr#13541, Sage Weil)

  • rbd-nbd: check /sys/block/nbdX/size to ensure kernel mapped correctly (issue#18335, pr#13932, Mykola Golub, Alexey Sheplyakov)

  • rbd: [api] temporarily restrict (rbd_)mirror_peer_add from adding multiple peers (issue#19256, pr#14664, Jason Dillaman)

  • rbd: qemu crash triggered by network issues (issue#18436, pr#13244, Jason Dillaman)

  • rbd: rbd --pool=x rename y z does not work (issue#18326, pr#14148, Gaurav Kumar Garg)

  • rbd: systemctl stop rbdmap unmaps all rbds and not just the ones in /etc/ceph/rbdmap (issue#18884, issue#18262, pr#14083, David Disseldorp, Nathan Cutler)

  • rgw: “cluster [WRN] bad locator @X on object @X….” in cluster log (issue#18980, pr#14064, Casey Bodley)

  • rgw: ‘radosgw-admin sync status’ on master zone of non-master zonegroup (issue#18091, pr#13779, Jing Wenjun)

  • rgw: Change loglevel to 20 for ‘System already converted’ message (issue#18919, pr#13834, Vikhyat Umrao)

  • rgw: Use decoded URI when verifying TempURL (issue#18590, pr#13724, Alexey Sheplyakov)

  • rgw: a few cases where rgw_obj is incorrectly initialized (issue#19096, pr#13842, Yehuda Sadeh)

  • rgw: add apis to support ragweed suite (issue#19804, pr#14851, Yehuda Sadeh)

  • rgw: add bucket size limit check to radosgw-admin (issue#17925, pr#14787, Matt Benjamin)

  • rgw: allow system users to read SLO parts (issue#19027, pr#14752, Casey Bodley)

  • rgw: don’t return skew time in pre-signed url (issue#18828, issue#18829, pr#14605, liuchang0812)

  • rgw: failure to create s3 type subuser from admin rest api (issue#16682, pr#14815, snakeAngel2015)

  • rgw: fix break inside of yield in RGWFetchAllMetaCR (issue#17655, pr#14066, Casey Bodley)

  • rgw: fix failed to create bucket if a non-master zonegroup has a single zone (issue#19756, pr#14766, weiqiaomiao)

  • rgw: health check errors out incorrectly (issue#19025, pr#13865, Pavan Rallabhandi)

  • rgw: list_plain_entries() stops before bi_log entries (issue#19876, pr#15383, Casey Bodley)

  • rgw: multisite: fetch_remote_obj() gets wrong version when copying from remote (issue#19599, pr#14607, Zhang Shaowen, Casey Bodley)

  • rgw: multisite: some yields in RGWMetaSyncShardCR::full_sync() resume in incremental_sync() (issue#18076, pr#13837, Casey Bodley, Abhishek Lekshmanan)

  • rgw: only append zonegroups to rest params if not empty (issue#20078, pr#15312, Yehuda Sadeh, Karol Mroz)

  • rgw: pullup civet chunked (issue#19736, pr#14776, Matt Benjamin)

  • rgw: rgw_file: fix event expire check, don’t expire directories being read (issue#19623, issue#19270, issue#19625, issue#19624, issue#19634, issue#19435, pr#14653, Gui Hecheng, Matt Benjamin)

  • rgw: swift: disable revocation thread under certain circumstances (issue#19499, issue#9493, pr#14789, Marcus Watts)

  • rgw: the swift container acl does not support field .ref (issue#18484, pr#13833, Jing Wenjun)

  • rgw: typo in rgw_admin.cc (issue#19026, pr#13863, Ronak Jain)

  • rgw: unsafe access in RGWListBucket_ObjStore_SWIFT::send_response() (issue#19249, pr#14661, Yehuda Sadeh)

  • rgw: upgrade to multisite v2 fails if there is a zone without zone info (issue#19231, pr#14136, Danny Al-Gaaf, Orit Wasserman)

  • rgw: use separate http_manager for read_sync_status (issue#19236, pr#14195, Casey Bodley, Shasha Lu)

  • rgw: when converting region_map we need to use rgw_zone_root_pool (issue#19195, pr#14143, Orit Wasserman)

  • rgw: zonegroupmap set does not work (issue#19498, issue#18725, pr#14660, Orit Wasserman, Casey Bodley)

  • rgw:fix memory leaks in data/md sync (issue#20088, pr#15382, weiqiaomiao)

  • tests: ‘ceph auth import -i’ overwrites caps, should alert user before overwrite (issue#18932, pr#13544, Vikhyat Umrao)

  • tests: New upgrade test for #19508 (issue#19829, issue#19508, pr#14930, Nathan Cutler)

  • tests: [ FAILED ] TestLibRBD.ImagePollIO in upgrade:client-upgrade-kraken-distro-basic-smithi (issue#18617, pr#13107, Jason Dillaman)

  • tests: [librados_test_stub] cls_cxx_map_get_XYZ methods don’t return correct value (issue#19597, pr#14665, Jason Dillaman)

  • tests: additional rbd-mirror test stability improvements (issue#18935, pr#14154, Jason Dillaman)

  • tests: api_misc: [ FAILED ] LibRadosMiscConnectFailure.ConnectFailure (issue#15368, pr#14763, Sage Weil)

  • tests: buffer overflow in test LibCephFS.DirLs (issue#18941, pr#14671, “Yan, Zheng”)

  • tests: clone workunit using the branch specified by task (issue#19429, pr#14371, Kefu Chai, Dan Mick)

  • tests: drop upgrade/hammer-jewel-x (issue#20574, pr#15933, Nathan Cutler)

  • tests: dummy suite fails in OpenStack (issue#18259, pr#14070, Nathan Cutler)

  • tests: eliminate race condition in Thrasher constructor (issue#18799, pr#13608, Nathan Cutler)

  • tests: enable quotas for pre-luminous quota tests (issue#20412, pr#15936, Patrick Donnelly)

  • tests: fix oversight in yaml comment (issue#20581, pr#14449, Nathan Cutler)

  • tests: move swift.py task from teuthology to ceph, phase one (jewel) (issue#20392, pr#15870, Nathan Cutler, Sage Weil, Warren Usui, Greg Farnum, Ali Maredia, Tommi Virtanen, Zack Cerza, Sam Lang, Yehuda Sadeh, Joe Buck, Josh Durgin)

  • tests: qa/Fixed upgrade sequence to 10.2.0 -> 10.2.7 -> latest -x (10.2.8) (issue#20572, pr#16089, Yuri Weinstein)

  • tests: qa/suites/upgrade/hammer-x: set “sortbitwise” for jewel clusters (issue#20342, pr#15842, Nathan Cutler)

  • tests: qa/workunits/rados/test-upgrade-*: whitelist tests for master (part 1) (issue#20577, pr#15360, Sage Weil)

  • tests: qa/workunits/rados/test-upgrade-*: whitelist tests for master (part 2) (issue#20576, pr#15778, Kefu Chai)

  • tests: qa/workunits/rados/test-upgrade-*: whitelist tests the right way (issue#20575, pr#15824, Kefu Chai)

  • tests: rados: sleep before ceph tell osd.0 flush_pg_stats after restart (问题#16239, issue#20489, pr#14710, Kefu Chai, Nathan Cutler)

  • tests: run upgrade/client-upgrade on latest CentOS 7.3 (issue#20573, pr#16088, Nathan Cutler)

  • tests: run-rbd-unit-tests.sh assert in lockdep_will_lock, TestLibRBD.ObjectMapConsistentSnap (issue#17447, pr#14150, Jason Dillaman)

  • tests: systemd test backport to jewel (issue#19717, pr#14694, Vasu Kulkarni)

  • tests: test/librados/tmap_migrate: g_ceph_context->put() upon return (issue#20579, pr#14809, Kefu Chai)

  • tests: test_notify.py: rbd.InvalidArgument: error updating features for image test_notify_clone2 (issue#19692, pr#14680, Jason Dillaman)

  • tests: upgrade/hammer-x failing with OSD has the store locked when Thrasher runs ceph-objectstore-tool on down PG (issue#19556, pr#14416, Nathan Cutler)

  • tests: upgrade:hammer-x/stress-split-erasure-code-x86_64 fails in 10.2.8 integration testing (issue#20413, pr#15904, Nathan Cutler)

  • tools: brag fails to count “in” mds (issue#19192, pr#14112, Oleh Prypin, Peng Zhang)

  • tools: ceph-disk does not support cluster names different than ‘ceph’ (issue#17821, pr#14765, Loic Dachary)

  • tools: ceph-disk: Racing between partition creation and device node creation (issue#19428, pr#14329, Erwan Velu)

  • tools: ceph-disk: bluestore --setgroup incorrectly set with user (issue#18955, pr#13489, craigchi)

  • tools: ceph-disk: ceph-disk list reports mount error for OSD having mount options with SELinux context (issue#17331, pr#14402, Brad Hubbard)

  • tools: ceph-disk: do not setup_statedir on trigger (issue#19941, pr#15504, Loic Dachary)

  • tools: ceph-disk: enable directory backed OSD at boot time (issue#19628, pr#14602, Loic Dachary)

  • tools: rados: RadosImport::import should return an error if Rados::connect fails (issue#19319, pr#14113, Brad Hubbard)

v10.2.7 Jewel

This point release fixes several important bugs in RBD mirroring, librbd & RGW.

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

更多详细信息,请参阅the complete changelog.

显著变化

v10.2.6 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.

更多详细信息,请参阅the complete changelog.

OSDs No Longer Send ENXIO by Default

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.

Other Notable Changes

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.

显著变化

更多详细信息,请参阅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.

显著变化

更多详细信息,请参阅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.

更多详细信息,请参阅the complete changelog.

显著变化

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.

更多详细信息,请参阅the complete changelog.

显著变化

v10.2.1 Jewel

This is the first bugfix release for Jewel. It contains several annoying

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

更多详细信息,请参阅the complete changelog.

显著变化

  • 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

Major Changes from Infernalis

  • CephFS:

    • This is the first release in which CephFS is declared stable!

    • The repair and disaster recovery tools are now feature-complete.

    • A new cephfs-volume-manager module is included that provides a

    • There is now experimental support for multiple CephFS file systems

  • RGW:

    • The multisite feature has been almost completely rearchitected and

    • 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

    • The OpenStack Keystone v3 API is now supported. There are a range

  • 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 facilitate new storage backends like BlueStore.

  • RGW:

    • The Swift API now supports object expiration.

    • There are many Swift API compatibility improvements.

  • RBD:

    • Therbd 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

  • aarch64: add optimized version of crc32c (Yazen Ghannam, Steve Capper)

  • Adding documentation on how to use new dynamic throttle scheme (pr#8069, Somnath Roy)

  • admin/build-doc: depend on zlib1g-dev and graphviz (pr#7522, Ken Dreyer)

  • auth: cache/reuse crypto lib key objects, optimize msg signature check (Sage Weil)

  • 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)

  • auth: reinit NSS after fork() (#11128 Yan, Zheng)

  • authtool: update --help and manpage to match code. (pr#8456, Robin H. Johnson)

  • autotools: fix out of tree build (Krxysztof Kosinski)

  • autotools: improve make check output (Loic Dachary)

  • Be more careful about directory fragmentation and scrubbing (issue#15167, pr#8180, Yan, Zheng)

  • bluestore: latest and greatest (issue#14210, issue#13801, pr#6896, xie.xingguo, Jianpeng Ma, YiQiang Chen, Sage Weil, Ning Yao)

  • buffer: add invalidate_crc() (Piotr Dalek)

  • buffer: add symmetry operator==() and operator!=() (pr#7974, Kefu Chai)

  • buffer: fix internal iterator invalidation on rebuild, get_contiguous (pr#6962, Sage Weil)

  • buffer: fix zero bug (#12252 Haomai Wang)

  • 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: some cleanup (Michal Jarzabek)

  • 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: allow tcmalloc-minimal (Thorsten Behrens)

  • build: build internal plugins and classes as modules (pr#6462, James Page)

  • build: C++11 now supported

  • build: cmake check fixes (pr#6787, Orit Wasserman)

  • build: cmake: fix nss linking (Danny Al-Gaaf)

  • build: cmake: misc fixes (Orit Wasserman, Casey Bodley)

  • build: cmake tweaks (pr#6254, John Spray)

  • build: disable LTTNG by default (#11333 Josh Durgin)

  • build: do not build ceph-dencoder with tcmalloc (#10691 Boris Ranto)

  • 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 junit detection on Fedora 22 (Ira Cooper)

  • build: fix pg ref disabling (William A. Kennington III)

  • build: fix ppc build (James Page)

  • 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: install-deps: misc fixes (Loic Dachary)

  • build: install-deps.sh improvements (Loic Dachary)

  • build: install-deps: support OpenSUSE (Loic Dachary)

  • build: kill warnings (pr#7397, Kefu Chai)

  • 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: 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: OSX build fixes (Yan, Zheng)

  • build: Refrain from versioning and packaging EC testing plugins (issue#14756, issue#14723, pr#7637, Nathan Cutler, Kefu Chai)

  • build: remove rest-bench

  • 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-authtool: fix return code on error (Gerhard Muntingh)

  • 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: added Linux Mint (Michal Jarzabek)

  • 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: robust init system detection (Owen Synge)

  • 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: ensure ‘zap’ only operates on a full disk (#11272 Loic Dachary)

  • ceph-disk: fixes to respect init system (Loic Dachary, Owen Synge)

  • 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: fix zap sgdisk invocation (Owen Synge, Thorsten Behrens)

  • ceph-disk: flake8 fixes (pr#7646, Loic Dachary)

  • ceph-disk: follow ceph-osd hints when creating journal (#9580 Sage Weil)

  • ceph-disk: get Nonetype when ceph-disk list with --format plain on single device. (pr#6410, Vicente Cheng)

  • ceph-disk: handle re-using existing partition (#10987 Loic Dachary)

  • ceph-disk: improve parted output parsing (#10983 Loic Dachary)

  • ceph-disk: Improving ‘make check’ for ceph-disk (pr#7762, Erwan Velu)

  • ceph-disk: install pip > 6.1 (#11952 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: make suppression work for activate-all and activate-journal (Dan van der Ster)

  • ceph-disk: many fixes (Loic Dachary, Alfredo Deza)

  • ceph-disk: pass --cluster arg on prepare subcommand (Kefu Chai)

  • 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: support for multipath devices (Loic Dachary)

  • ceph-disk: support NVMe device partitions (#11612 Ilja Slepnev)

  • 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 ‘df’ units (Zhe Zhang)

  • ceph: fix parsing in interactive cli mode (#11279 Kefu Chai)

  • ceph: fix tell behavior (pr#6329, David Zafman)

  • cephfs-data-scan: many additions, improvements (John Spray)

  • 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: do not require successful remount when unmounting (#10982 Greg Farnum)

  • 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: don’t clear COMPLETE when trimming null (Yan, Zheng)

  • ceph-fuse, libcephfs: drop inode when rmdir finishes (#11339 Yan, Zheng)

  • 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,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-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 error output for ‘tell’ (#11101 Kefu Chai)

  • 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-monstore-tool: fix store-copy (Huangjun)

  • ceph: new ‘ceph daemonperf’ command (John Spray, Mykola Golub)

  • 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-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-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_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_misc: shorten mount timeout (pr#8209, Sage Weil)

  • ceph_test_rados: test pipelined reads (Zhiqiang Wang)

  • 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: avoid sending unnecessary FLUSHSNAP messages (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: exclude setfilelock when calculating oldest tid (Yan, Zheng)

  • client: fix error handling in check_pool_perm (John Spray)

  • client: flush kernel pagecache before creating snapshot (issue#10436, pr#7495, Yan, Zheng)

  • 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: modify a word in log (pr#6906, YongQiang He)

  • client: pin lookup dentry to avoid inode being freed (Yan, Zheng)

  • 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: no need to run configure from run-cmake-check.sh (pr#6959, Orit Wasserman)

  • cmake (pr#7849, Ali Maredia)

  • 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 descriptions to perfcounters (Kiseleva Alyona)

  • common: add generic plugin infrastructure (pr#6696, Sage Weil)

  • common: add latency perf counter for finisher (pr#6175, Xinze Chi)

  • common: add perf counter descriptions (Alyona Kiseleva)

  • 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: bufferlist performance tuning (Piotr Dalek, Sage Weil)

  • 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: detect overflow of int config values (#11484 Kefu Chai)

  • 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 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 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 throttle max change (Henry Chang)

  • 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: make mutex more efficient

  • common: make work queue addition/removal thread safe (#12662 Jason Dillaman)

  • 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: optracker improvements (Zhiqiang Wang, Jianpeng Ma)

  • 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: PriorityQueue tests (Kefu Chai)

  • 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: some async compression infrastructure (Haomai Wang)

  • 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: 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 --check to validate dangling names, max osd id (Kefu Chai)

  • crush: add chooseleaf_stable tunable (pr#6572, Sangdi Xu, Sage Weil)

  • crush: add safety assert (issue#14496, pr#7344, songbaisen)

  • crush: cleanup, sync with kernel (Ilya Dryomov)

  • 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 crash from invalid ‘take’ argument (#11602 Shiva Rkreddy, Sage Weil)

  • crush: fix divide-by-2 in straw2 (#11357 Yann Dupont, Sage Weil)

  • crush: fix error log (pr#8430, Wei Jin)

  • crush: fix has_v4_buckets (#11364 Sage Weil)

  • crush: fix subtree base weight on adjust_subtree_weight (#11855 Sage Weil)

  • crush: fix typo (pr#8518, Wei Jin)

  • crush: reply quickly from get_immediate_parent (issue#14334, pr#7181, song baisen)

  • crush: respect default replicated ruleset config on map creation (Ilya Dryomov)

  • crushtool: Don’t crash when called on a file that isn’t a crushmap (issue#8286, pr#8038, Brad Hubbard)

  • crushtool: fix order of operations, usage (Sage Weil)

  • 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)

  • 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/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: minor package reorg (Ken Dreyer)

  • 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)

  • deb, rpm: move ceph-objectstore-tool to ceph (Ken Dreyer)

  • 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: 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: docuemnt object corpus generation (#11099 Alexis Normand)

  • doc: document “readforward” and “readproxy” cache mode (pr#7023, Kefu Chai)

  • doc: document region hostnames (Robin H. Johnson)

  • 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: 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: fix gender neutrality (Alexandre Maragone)

  • doc: fixing image in section ERASURE CODING (pr#7298, Rachana Patel)

  • doc: fix install doc (#10957 Kefu Chai)

  • 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 sphinx issues (Kefu Chai)

  • 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: man page updates (Kefu Chai)

  • doc: mds data structure docs (Yan, Zheng)

  • doc: misc updates (Francois 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: 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: 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: 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 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: 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: swift tempurls (#10184 Abhishek Lekshmanan)

  • doc: switch doxygen integration back to breathe (#6115 Kefu Chai)

  • 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 release schedule docs (Loic Dachary)

  • 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)

  • 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)

  • 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)

  • gmock: switch to submodule (Danny Al-Gaaf, Loic Dachary)

  • hadoop: add terasort test (Noah Watkins)

  • 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)

  • init-radosgw: merge with sysv version; fix enumeration (Sage Weil)

  • java: fix libcephfs bindings (Noah Watkins)

  • 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: 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: add pread, pwrite (Jevon Qiao)

  • libcephfs,ceph-fuse: cache cleanup (Zheng Yan)

  • libcephfs,ceph-fuse: fix request resend on cap reconnect (#10912 Yan, Zheng)

  • 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 config observer (Alistair Strachan)

  • librados: add c++ style osd/pg command interface (pr#6893, Yunchuan Wen)

  • 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: 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: define C++ flags from C constants (Josh Durgin)

  • 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: fadvise flags per op (Jianpeng Ma)

  • librados: fix examples/librados/Makefile error. (pr#6320, You Ji)

  • 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 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 striper when stripe_count = 1 and stripe_unit != object_size (#11120 Yan, Zheng)

  • 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, libcephfs: randomize client nonces (Josh Durgin)

  • 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: op perf counters (John Spray)

  • librados: potential null pointer access in list_(n)objects (issue#13822, pr#6639, xie xingguo)

  • librados: pybind: fix binary omap values (Robin H. Johnson)

  • librados: pybind: fix write() method return code (Javier Guerra)

  • 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: respect default_crush_ruleset on pool_create (#11640 Yuan Zhou)

  • 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)

  • libradosstriper: fix leak (Danny Al-Gaaf)

  • 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: 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: allocate new journal tag after acquiring exclusive lock (pr#7884, Jason Dillaman)

  • librbd: allow additional metadata to be stored with the image (Haomai Wang)

  • 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 blocking aio API methods (#11056 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 for dup flatten requests (#11370 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: cancel in-flight ops on watch error (#11363 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: default new images to format 2 (#11348 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: fadvise for copy, export, import (Jianpeng Ma)

  • librbd: fast diff implementation that leverages object map (Jason Dillaman)

  • librbd: fix enable objectmap feature issue (issue#13558, pr#6339, xinxin shu)

  • librbd: fix fast diff bugs (#11553 Jason Dillaman)

  • librbd: fix image format detection (Zhiqiang Wang)

  • 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 lock ordering issue (#11577 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 reads larger than the cache size (Lu Shi)

  • librbd: fix snap_exists API return code overflow (issue#14129, pr#6986, xie xingguo)

  • librbd: fix snapshot creation when other snap is active (#11475 Jason Dillaman)

  • 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: flatten/copyup fixes (Jason Dillaman)

  • librbd: flush and invalidate cache via admin socket (issue#2468, pr#6453, Mykola Golub)

  • librbd: handle NOCACHE fadvise flag (Jinapeng Ma)

  • librbd: 处理断开连接时注销镜像观察者 (pr#8094, Jason Dillaman)

  • librbd: 图像刷新代码路径转换为异步状态机 (pr#6859, Jason Dillaman)

  • librbd: 包含缺少的头部以包含 bool 类型 (pr#6798, Mykola Golub)

  • librbd: 初始状态机单元测试收集 (pr#6703, Jason Dillaman)

  • librbd: 集成维护操作的事务日志记录 (pr#6625, Jason Dillaman)

  • librbd: 集成 IO 操作的事务日志记录支持 (pr#6541, Jason Dillaman)

  • librbd: 集成事务日志重播与 fsx 测试 (pr#7583, Jason Dillaman)

  • librbd: 事务日志框架以跟踪排他锁转换 (issue#13298, pr#7529, Jason Dillaman)

  • librbd: 与事务日志相关的锁依赖清理 (pr#6777, Jason Dillaman)

  • librbd: 事务日志重播需要支持重新执行维护操作 (issue#14822, pr#7785, Jason Dillaman)

  • librbd: 事务日志重播应尊重事件间依赖关系 (pr#7019, Jason Dillaman)

  • librbd: 事务日志关闭刷新竞争条件 (issue#14434, pr#7302, Jason Dillaman)

  • librbd: 锁依赖,helgrind 验证 (Jason Dillaman, Josh Durgin)

  • librbd: 元数据过滤器修复 (Haomai Wang)

  • librbd: 混乱 aio 修复 (#5488 Jason Dillaman)

  • librbd: 混乱 rbd 修复 (#11478 #11113 #11342 #11380 Jason Dillaman, Zhiqiang Wang)

  • librbd: 新的 diff_iterate2 API (Jason Dillaman)

  • librbd: 在释放快照 ID 时无需持有 owner_lock (issue#13914, pr#6736, Jason Dillaman)

  • librbd: 对象映射重建支持 (Jason Dillaman)

  • librbd: 仅在 AIO 完成队列空时发送信号 (pr#6729, Jianpeng Ma)

  • librbd: 仅在持有排他锁时更新图像标志 (#11791 Jason Dillaman)

  • librbd: 可选禁用分配提示 (Haomai Wang)

  • librbd: 可选验证新 RBD 池以支持快照 (issue#13633, pr#6925, Jason Dillaman)

  • librbd: 部分回滚提交 9b0e359 提交 (issue#13969, pr#6789, Jason Dillaman)

  • librbd: 性能计数器可能在错误时未初始化 (issue#13740, pr#6523, Jason Dillaman)

  • librbd: 性能部分名称:使用连字符分隔组件 (issue#13719, pr#6516, Mykola Golub)

  • librbd: 防止调整请求之间的竞争 (#12664 Jason Dillaman)

  • librbd: 正确处理快照删除 RPC 消息的重播 (issue#14164, pr#7042, Jason Dillaman)

  • librbd: readahead 修复 (Zhiqiang Wang)

  • librbd: 在读取期间减少用户缓冲区的内存复制 (pr#7548, Jianpeng Ma)

  • librbd: 减少常见错误条件日志记录的冗长性 (issue#14234, pr#7114, Jason Dillaman)

  • librbd: 如果需要,在重播事务日志操作之前刷新图像 (issue#14908, pr#7978, Jason Dillaman)

  • librbd: 从计时线程中删除已取消的任务 (issue#14476, pr#7329, Douglas Fuller)

  • librbd: 在 librbd::async_flatten 中删除重复的只读测试 (pr#5856, runsisi)

  • librbd: 从打开/关闭状态机中删除最后的同步 librados 调用 (pr#7839, Jason Dillaman)

  • librbd: 刷新后重播事务日志操作需要锁定 (pr#8028, Jason Dillaman)

  • librbd: 调整应该仅在头内更新图像大小 (issue#13674, pr#6447, Jason Dillaman)

  • librbd: 在通过 ID 打开时检索图像名称 (pr#7736, Mykola Golub)

  • librbd: 如果我们失败删除对象映射头对象,则返回错误 (issue#14098, pr#6958, xie xingguo)

  • librbd: 从关闭中返回结果代码 (#12069 Jason Dillaman)

  • librbd: 回滚“librbd: 每个cephContext使用单独的任务完成者” (issue#14780, pr#7667, Josh Durgin)

  • librbd: 发送镜像状态更新的通知 (pr#8355, Jason Dillaman)

  • librbd: 在单 CPU 环境下发现几个竞争条件 (pr#7653, Jason Dillaman)

  • librbd: 简化 32 位环境下的 IO 方法签名 (pr#6700, Jason Dillaman)

  • librbd: 对错误消息和 readahead 计数的小修复 (issue#14127, pr#6983, xie xingguo)

  • librbd: 在初始化 ID 后开始性能计数器 (issue#13720, pr#6494, Mykola Golub)

  • librbd: 将元数据(包括配置选项)存储在图像中 (Haomai Wang)

  • librbd: 支持事件fd 用于 AIO 完成通知 (pr#5465, Haomai Wang)

  • librbd: 在获取图像元数据时容忍旧的 osds (#11549 Jason Dillaman)

  • librbd: 截断不需要在对象映射中标记对象为现有对象 (issue#14789, pr#7772, xinxin shu)

  • librbd: 快照删除状态机中的未初始化状态 (pr#6982, Jason Dillaman)

  • librbd: 更新镜像池模式和镜像对处理 (pr#7718, Jason Dillaman)

  • librbd: 使用异步 librados 通知 (pr#7668, Jason Dillaman)

  • librbd: 在可能的情况下使用 write_full (

  • 日志:不要重复错误到 stderr (issue#14616, pr#7983, Sage Weil)

  • 日志:修复日志旋转导致的数据损坏竞争 (#12465 Samuel Just)

  • 日志:修复刷新大日志行时堆栈溢出 (issue#14707, pr#7599, Igor Fedotov)

  • 日志rotate.d: 偏好服务而不是 invoke-rc.d (#11330 Win Hierman, Sage Weil)

  • 日志:以可移植的方式引发段错误 (issue#14856, pr#7790, Kefu Chai)

  • 日志:使用 delete[] (pr#7904, Sage Weil)

  • mailmap: 添加 UMCloud 联属关系 (pr#6820, Jiaying Ren)

  • mailmap for 10.0.4 (pr#7932, Abhishek Lekshmanan)

  • mailmap: 更改 Dongmao Zhang 的组织 (pr#7173, Dongmao Zhang)

  • mailmap: Igor Podoski 联属关系 (pr#7219, Igor Podoski)

  • mailmap: Jewel 更新 (pr#6750, Abhishek Lekshmanan)

  • mailmap: 修改成员信息 (pr#6468, Xiaowei Chen)

  • mailmap: 修订组织 (pr#6519, Li Wang)

  • mailmap: Ubuntu Kylin 名称更改为 Kylin Cloud (pr#6532, Loic Dachary)

  • mailmap: 更新 .organizationmap (pr#6565, chenji-kael)

  • mailmap 更新 (pr#7210, M Ranga Swami Reddy)

  • mailmap 更新 (pr#8522, M Ranga Swami Reddy)

  • mailmap: infernalis 的更新。 (pr#6495, Yann Dupont)

  • mailmap: 更新 (pr#6258, M Ranga Swami Reddy)

  • mailmap: 更新 (pr#6594, chenji-kael)

  • mailmap 更新 (pr#6992, Loic Dachary)

  • mailmap 更新 (pr#7189, Loic Dachary)

  • mailmap 更新 (pr#7528, Yann Dupont)

  • mailmap 更新 (pr#8256, Loic Dachary)

  • mailmap: Xie Xingguo 联属关系 (pr#6409, Loic Dachary)

  • Makefile-env.am: 为 CEPH_BUILD_VIRTUALENV 设置默认值(第 2 部分)(pr#8320, Loic Dachary)

  • makefile: 修复 rbdmap manpage (pr#8310, Kefu Chai)

  • makefile: 从 libclient.la 中删除 libedit (pr#7284, Kefu Chai)

  • makefiles: 从依赖项中删除 bz2-dev (issue#13981, pr#6939, Piotr Dałek)

  • man/8/ceph-disk: 修复格式问题 (pr#8003, Sage Weil)

  • man/8/ceph-disk: 修复格式问题 (pr#8012, Sage Weil)

  • man: 在“rados” manpage 中记录 listwatchers 命令 (pr#7021, Kefu Chai)

  • mdsa: 一些额外的快照修复,主要围绕快照的 inode/dentry 跟踪 (pr#7798, Yan, Zheng)

  • mds: 在 ESessions 默认构造函数初始化列表中添加 cmapv (pr#8403, John Coyle)

  • mds: 向 MDSMap 添加“损坏”状态 (John Spray)

  • mds: 为性能计数器添加昵称 (John Spray)

  • mds: 在 auth caps 中添加“p”标志以控制布局中设置池 (pr#6567, John Spray)

  • mds: 在回复时推进 clientreplay (issue#14357, pr#7216, John Spray)

  • mds: 允许客户端在打开文件时请求 caps (issue#14360, pr#7952, Yan, Zheng)

  • mds: 避免在驱逐会话之前发出 cap 警告 (John Spray)

  • mds, 客户端:为 file_layout_t 添加命名空间(以前是 ceph_file_layout)(

  • mds, client: add namespace to file_layout_t (previously ceph_file_layout) (pr#7098, Yan, Zheng, Sage Weil)

  • mds, 客户端:修复 handle_conf_change 周围的锁定 (issue#14365, issue#14374, pr#7312, John Spray)

  • mds: 禁用有问题的 rstat 传播到快照父项 (Yan, Zheng)

  • mds: 不要将快照项添加到布隆过滤器 (Yan, Zheng)

  • mds: 在自杀时不要双重关闭计时器 (issue#14697, pr#7616, Greg Farnum)

  • mds: 通过 asok 暴露碎片 (

  • mds: 通过状态 ASOK 命令暴露恢复状态 (issue#14146, pr#7068, Yan, Zheng)

  • mds: 将现有的池访问检查扩展到包括特定的 RADOS 命名空间。 (pr#8444, Yan, Zheng)

  • mds: 文件锁死锁 (pr#7713, Yan, Zheng)

  • mds: 修复重新连接期间客户端功能 (issue#11482, pr#6432, Yan, Zheng)

  • mds: 修复重启时客户端 cap/消息重播顺序 (issue#14254, issue#13546, pr#7199, Yan, Zheng)

  • mds: 修复事务日志对象中的预期空洞 (#13167 Yan, Zheng)

  • mds: 修复 file_layout_t 遗留编码错误 (pr#8455, Sage Weil)

  • mds: 修复 fsmap 解码 (pr#8063, Greg Farnum)

  • mds: 修复带有 map 中的守护程序的 FSMap 升级 (pr#8073, John Spray, Greg Farnum)

  • mds: 修复处理缺少 mydir 目录片段 (#11641 John Spray)

  • mds: 修复 inode_t::compare() (issue#15038, pr#8014, Yan, Zheng)

  • mds: 修复大型客户端 ID 上的整数截断 (Henry Chang)

  • mds: 修复 mydir 副本在关闭时的重复问题 (#10743 John Spray)

  • mds: 修复顺序消息 (#11258 Yan, Zheng)

  • mds: 修复重新加入 (Yan, Zheng)

  • mds: 修复 scrub_path (pr#6684, John Spray)

  • mds: 修复在一次 setxattr 中设置整个文件布局 (

  • mds: 修复 setvxattr(在 a536d114 中损坏)(issue#14029, pr#6941, John Spray)

  • mds: 修复关闭 (

  • mds: 修复带有 strays 的关闭 (

  • mds: 修复 SnapServer 在已删除池上崩溃 (John Spray)

  • mds: 修复快照错误 (Yan, Zheng)

  • mds: 修复备用重播线程创建 (issue#14144, pr#7132, John Spray)

  • mds: 修复 stray 处理 (John Spray)

  • mds: 修复“stripe_count > 1”情况下 stray 清理 (issue#15050, pr#8040, Yan, Zheng)

  • mds: 修复 stray 重新集成 (Yan, Zheng)

  • mds: 修复自杀信标 (John Spray)

  • mds: 在 do_open_truncate 中立即刷新 (

  • mds: 函数参数“df”应作为引用传递 (pr#7490, Na Xie)

  • mds: 处理各种损坏问题 (John Spray)

  • mds: 实现快照重命名 (pr#5645, xinxin shu)

  • mds: 改进转储方法 (John Spray)

  • mds: 添加判断以避免访问空指针的风险 (pr#7358, Kongming Wu)

  • mds: 许多修复 (Yan, Zheng, John Spray, Greg Farnum)

  • mds: 许多快照和 stray 修复 (Yan, Zheng)

  • mds: 消息/MOSDOp: 在断言中将强制转换为消除警告 (issue#13625, pr#6414, David Zafman)

  • mds: 各种修复 (Jianpeng Ma, Dan van der Ster, Zhang Zhi)

  • mds: 各种事务日志清理和修复 (#10368 John Spray)

  • mds: 各种修复改进 (John Spray)

  • mds: 各种快照修复 (Zheng Yan)

  • mds: 多文件系统支持 (

  • mds: Multi-filesystem support (issue#14952, pr#6953, John Spray, Sage Weil)

  • mds: 为会话添加新的过滤 MDS 告知命令 (pr#6180, John Spray)

  • mds: 使用 omap 存储新的 SessionMap 存储区 (#10649 John Spray)

  • mds: 可靠地持久化 completed_requests (#11048 John Spray)

  • mds: 为 stray dentry/inode 正确设置 STATE_STRAY/STATE_ORPHAN (issue#13777, pr#6553, Yan, Zheng)

  • mds: 保护许多不稳定/实验性功能背后的持久标志 (pr#8383, Greg Farnum)

  • mds: 减少内存消耗 (Yan, Zheng)

  • mds: 修复命令选项“--hot-standby” (pr#6454, Wei Feng)

  • mds: 在黑名单上重新生成而不是自杀 (John Spray)

  • mds: ScrubStack 和“标签路径”命令 (pr#5662, Yan, Zheng, John Spray, Greg Farnum)

  • mds: 将 safe_pos 分离到 Journaler 中 (#10368 John Spray)

  • mds/Session: 在 auth 路径检查中使用投影父项 (issue#13364, pr#6200, Sage Weil)

  • mds: 快照重命名支持 (#3645 Yan, Zheng)

  • mds: 将布局存储在头对象上 (#4161 John Spray)

  • mds: 从 tell 命令中拆下连接 (tellcommands (issue#14048, pr#6933, John Spray)

  • mds: 节流 stray 操作 (#10390 John Spray)

  • mds: 容忍时钟向后跳跃 (#11053 Yan, Zheng)

  • mds: 当客户端未能推进 oldest_client_tid 时发出警告 (#10657 Yan, Zheng)

  • mds: 当 MDSDaemon 自杀时我们应该等待信使 (pr#6996, Wei Feng)

  • 消息/MOSDOp: 清除 v6 编码的 reqid 增量 (issue#15230, pr#8299, Sage Weil)

  • 在某些场景下数据扫描周围的一些小修复 (pr#8115, Yan, Zheng)

  • mirrors: 更改 se.ceph.com 的联系电子邮件地址 (pr#8007, Wido den Hollander)

  • mirrors: 更新镜像脚本和文档 (pr#7847, Wido den Hollander)

  • 各种清理和修复 (Danny Al-Gaaf)

  • 各种 coverity 修复 (Danny Al-Gaaf)

  • 各种性能和清理 (Nathan Cutler, Xinxin Shu)

  • 各种:在创建共享_ptr 时使用 make_shared (pr#7769, Somnath Roy)

  • mon: 添加一个独立的选项用于最大选举时间 (pr#7245, Sangdi Xu)

  • mon: 为 MonitorDBStore 添加缓存 (Kefu Chai)

  • mon: 添加“mon_metadata <id>”命令 (Kefu Chai)

  • mon: 添加“节点 ls …”命令 (Kefu Chai)

  • mon: 为 mon 命令添加 NOFORWARD, OBSOLETE, DEPRECATE 标志 (Joao Eduardo Luis)

  • mon: 添加osd 黑名单清除 ( (pr#6945, John Spray)

  • mon: 向“ceph osd df”输出添加 PG 计数 (Michal Jarzabek)

  • mon: 向 ceph df 详细信息添加 RAW USED 列 (pr#7087, Ruifeng Yang)

  • mon: 如果 pg_temp 更新已经挂起,则阻止“ceph osd pg-temp …” (pr#6704, Sage Weil)

  • mon: “ceph osd metadata”可以转储所有 osds (Haomai Wang)

  • mon: 清理,重新组织一些 mon 命令 (Joao Eduardo Luis)

  • mon: 清理 set-quota 错误消息 (pr#7371, Abhishek Lekshmanan)

  • monclient: 避免在时钟偏移时出现密钥更新风暴 (issue#12065, pr#8258, Alexey Sheplyakov)

  • monclient: flush_log (John Spray)

  • mon: 也压缩完整时期 (issue#14537, pr#7396, Kefu Chai)

  • mon: 创建池时考虑池大小 (issue#14509, pr#7359, songbaisen)

  • mon: 设置池大小时考虑池 crush 规则 (issue#14495, pr#7341, song baisen)

  • mon: 将日志消息降级到级别 2 (pr#6929, Kongming Wu)

  • mon: 检测 kv 后端故障 (Sage Weil)

  • mon: 不允许超过 2 层级 (#11840 Kefu Chai)

  • mon: 不允许 ec 池作为层级 (#11650 Samuel Just)

  • mon: 不要停用最后一个 mds (#10862 John Spray)

  • mon: 不要为 split pgs 发送无用的 pg_create 消息 (pr#8247, Sage Weil)

  • mon: 不要要求 OSD W 对于 MRemoveSnaps (issue#13777, pr#6601, John Spray)

  • mon: 删除无用的 rank 初始化分配 (issue#14508, pr#7321, huanwen ren)

  • mon: 默认情况下启用“mon osd prime pg temp” (pr#7838, Robert LeBlanc)

  • mon: 修复“osd df”的平均利用率计算 (Mykola Golub)

  • mon: 修复 %USED 的计算 (pr#7881, Adam Kupczyk)

  • mon: 修复 0 权重 OSDs 的 ceph df 池可用计算 (pr#6660, Chengyuan Li)

  • mon: 修复 PG 相关 Monitor 文件上的编码风格 (pr#6881, Wido den Hollander)

  • mon: 修复新池的 CRUSH 地图测试 (Sage Weil)

  • mon: 与 mondbstore->get() 变化相关的修复 (pr#6564, Piotr Dałek)

  • mon: 修复密钥环权限 (issue#14950, pr#7880, Owen Synge)

  • mon: 在 preinit 错误路径中修复锁定 (issue#14473, pr#7353, huanwen ren)

  • mon: 在调试时修复日志转储崩溃 (Mykola Golub)

  • mon: 修复 mds 信标回复 (#11590 Kefu Chai)

  • mon: 修复元数据更新竞争 (Mykola Golub)

  • mon: 修复 min_last_epoch_clean 跟踪 (Kefu Chai)

  • mon: 修复 monmap 创建戳 (pr#7459, duanweijun)

  • mon: 修复“pg ls”排序顺序,状态名称 (#11569 Kefu Chai)

  • mon: 修复刷新 (#11470 Joao Eduardo Luis)

  • mon: 修复 osd id 的重复使用(在 osd 删除时清除 osd 信息)(issue#13988, pr#6900, Loic Dachary, Sage Weil)

  • mon: 修复 routed_request_tids 泄漏 (pr#6102, Ning Yao)

  • mon: 修复配置键数据同步 (pr#7363, Xiaowei Chen)

  • mon: 修复监控日志中无法更改订阅级别的错误 (pr#7031, Zhiqiang Wang)

  • mon: 修复“osd df”中方差计算 (Sage Weil)

  • mon: 如果多个 PG 停止不活跃,则进入 ERR 状态 (issue#13923, pr#7253, Wido den Hollander)

  • mon: 改善对 crushtool 的调用 (Mykola Golub)

  • mon: 初始化新 pgs 的 last_* 时间戳为创建时间 (issue#14952, pr#7980, Sage Weil)

  • mon: 即使是独立运行,也正确初始化记录的选举时期 (issue#13627, pr#6407, huanwen ren)

  • mon: 使阻塞操作消息更易于阅读 (Jianpeng Ma)

  • mon: 使时钟偏移检查合理 (issue#14175, pr#7141, Joao Eduardo Luis)

  • mon: 使 osd 获取池“all”仅返回适用字段 (#10891 Michal Jarzabek)

  • mon: mark_down_pgs 与 pg_map 的 osdmap 时期同步 (pr#8208, Sage Weil)

  • mon/MDSMonitor: 向“ceph mds rmfailed”添加确认 (issue#14379, pr#7248, Yan, Zheng)

  • mon/MDSMonitor.cc: 当健康指标变化时正确记录信标 (issue#14684, pr#7757, Yan, Zheng)

  • mon: 各种扩展修复 (Sage Weil)

  • mon: 在 OSDMonitor.cc 中修改 dout 级别 (pr#6928, Yongqiang He)

  • mon/MonClient: 避免在配置不正确时出现空指针错误 (issue#14405, pr#7276, Bo Cai)

  • mon/MonClient: 修复关闭竞争 (issue#13992, pr#8335, Sage Weil)

  • mon/monitor: 一些清理 (pr#7520, huanwen ren)

  • mon: MonmapMonitor: 不要向客户端暴露未提交状态 (pr#6854, Joao Eduardo Luis)

  • mon: 为存储和比较规范化 erasure-code 配置 (Loic Dachary)

  • mon: 仅向支持对等方发送 mon 元数据 (Sage Weil)

  • mon: 可选指定 osd id 在“osd create” (

  • mon/OSDMonitor: osdmap 滞后设置间隔的最大限制 (pr#7109, Zengran Zhang)

  • mon: osd [test-]reweight-by-{pg,utilization} 命令更新 (pr#7890, Dan van der Ster, Sage Weil)

  • mon: “osd tree”修复 (Kefu Chai)

  • mon: paxos is_recovering 计算错误 (pr#7227, Weijun Duan)

  • mon: 定期后台清理 (Joao Eduardo Luis)

  • mon/PGMap: 在状态报告中分别显示 rd/wr iops (pr#7072, Cilang Zhao)

  • mon: PGMonitor: 当前状态与 cur_stat 的主要差异,不应将 pg 设置为过时的 (pr#7083, Xiaowei Chen)

  • mon/PGMonitor: 可靠地标记 PGs 状态 (pr#8089, Sage Weil)

  • mon: PG Monitor 应报告等待回填 (issue#12744, pr#7398, Abhishek Lekshmanan)

  • mon/pgmonitor: 在 get_rule_avail 中使用适当的强制转换 (pr#7705, huanwen ren)

  • mon: 防止在 crush 规则中引用的桶被删除 (#11602 Sage Weil)

  • mon: 防止 pgp_num > pg_num (#12025 Xinxin Shu)

  • mon: 防止具有快照状态的池被用作层级 (#11493 Sage Weil)

  • mon: 在 CRUSH 地图更改时启动 pg_temp (Sage Weil)

  • mon: 减少pg健康检查的 CPU 和内存管理器压力 (pr#7482, Piotr Dałek)

  • mon: 改进 check_remove_tier 检查 (#11504 John Spray)

  • mon: 拒绝大的 max_mds 值 (#12222 John Spray)

  • mon: 移除“mds setmap” (issue#15136, pr#8121, Sage Weil)

  • mon: 移除 remove_legacy_versions() (pr#8324, Kefu Chai)

  • mon: 从“mds rm …”中删除虚假的 who 参数 (John Spray)

  • mon: 移除更新_from_paxos 的不必要注释 (pr#8400, Qinghua Jin)

  • mon: 移除未使用的变量 (issue#15292, pr#8337, Javier M. Mellid)

  • mon: 回滚 MonitorDBStore 的 WholeStoreIteratorImpl::get (issue#13742, pr#6522, Piotr Dałek)

  • mon: 当 cephx_verify_authorizer 返回 false 时不应将 isvalid 设置为 true (issue#13525, pr#6306, Ruifeng Yang)

  • mon: 在 ceph df 详细命令上显示池配额信息 (issue#14216, pr#7094, song baisen)

  • mon: MonmapMonitor.cc 中的一些清理 (pr#7418, huanwen ren)

  • mon: 标准化 Ceph 移除命令 (pr#7939, Dongsheng Yang)

  • mon: 简化会话处理,修复内存泄漏 (Sage Weil)

  • mon: 通过子树级别支持 min_down_reporter(默认按主机)(pr#6709, Xiaoxi Chen)

  • mon: 消除对象计数偏移消息 (pr#7882, Piotr Dałek)

  • mon: 在关闭时注销命令 (pr#7504, huanwen ren)

  • mon: 升级必须通过 hammer (Sage Weil)

  • mon: 如果 pg(s)未清理,则发出警告 (issue#13142, pr#6440, Michal Jarzabek)

  • mon: 在虚构的缓存层级配置上发出警告 (Jianpeng Ma)

  • mount.ceph: 内存泄漏 (pr#6905, Qiankun Zheng)

  • mount.fuse.ceph: 更好地解析传递给 mount.fuse.ceph 的参数 (issue#14735, pr#7607, Florent Bautista)

  • mrun: 更新 cmake 二进制文件路径 (pr#8447, Casey Bodley)

  • msg: 为虚拟方法添加覆盖 (pr#6977, Michal Jarzabek)

  • msg: 为“随机”Messenger 添加线程安全性并修复随机函数的误用 (pr#7650, Avner BenHanoch)

  • msg/async: AsyncConnection: 在清理处理程序中避免调试日志 (pr#7547, Haomai Wang)

  • msg/async: AsyncMessenger: 修复几个错误 (pr#7831, Haomai Wang)

  • msg/async: AsyncMessenger: 修复 valgrind 泄漏 (pr#7725, Haomai Wang)

  • msg/async: 在节流时避免日志泛滥 (issue#15031, pr#8263, Kefu Chai)

  • msg/async: 一系列修复 (pr#7379, Piotr Dałek)

  • msg/async: 清理死连接和杂项 (pr#7158, Haomai Wang)

  • msg/async: 当不需要时不要计算消息头 crc (pr#7815, Piotr Dałek)

  • msg/async: 不要使用 shared_ptr 来管理 EventCallback (pr#7028, Haomai Wang)

  • msg/async: 事件:修复时钟偏移问题 (pr#7949, Wei Jin)

  • msg/async: 修复数组边界 (pr#7451, Wei Jin)

  • msg: 异步:修复性能计数器描述并简化 _send_keepalive_or_ack (pr#8046, xie xingguo)

  • msg/async: 修复潜在的竞争条件 (pr#7453, Haomai Wang)

  • msg/async: 修复发送关闭的本地连接消息问题 (pr#7255, Haomai Wang)

  • msg/async: 让接收者尽快确认消息 (pr#6478, Haomai Wang)

  • msg/async: 减少消息确认的额外 tcp 数据包 (pr#7380, Haomai Wang)

  • msg/async: 移除实验功能 (pr#7820, Haomai Wang)

  • msg: 异步:小清理 (pr#7871, xie xingguo)

  • msg/async: 更智能的 MSG_MORE (pr#7625, Piotr Dałek)

  • msg: 异步:在指定的端口范围绑定失败后重新开始 (issue#14928, issue#13002, pr#7852, xie xingguo)

  • msg/async: 支持异步信使中的非阻塞连接 (issue#12802, pr#5848, Jianhui Yuan)

  • msg/async: 更高效地修剪已经发送的 outcoming_bl (pr#7970, Yan Jun)

  • msg/async: 由于断言启用异步消息而导致崩溃 (pr#6640, Zhi Zhang)

  • msg: 在绑定 osd 地址时过滤掉 lo 地址 (pr#7012, Ji Chen)

  • msgr: 添加 ceph_perf_msgr 工具 (Hoamai Wang)

  • msgr: 异步:修复序列处理 (Haomai Wang)

  • msgr: 异步:许多,许多修复 (Haomai Wang)

  • 消息: 从 Dispatcher 中删除不需要的包含项 (pr#6814, Michal Jarzabek)

  • 消息: 删除重复代码 - local_delivery 现在将调用“enqueue” (pr#7948, Avner BenHanoch)

  • 消息: 删除不需要的行内 (pr#6989, Michal Jarzabek)

  • msgr: 修复大型消息数据内容长度导致溢出 (pr#6809, Jun Huang, Haomai Wang)

  • msgr: 简单:修复 clear_pipe (#11381 Haomai Wang)

  • msgr: 简单:修复 connect_seq 断言 (Haomai Wang)

  • msgr: xio: 快速路径改进 (Raju Kurunkad)

  • msgr: xio: 修复 ip 和 nonce (Raju Kurunkad)

  • msgr: xio: 改善车道分配 (Vu Pham)

  • msgr: xio: 各种修复 (#10735 Matt Benjamin, Kefu Chai, Danny Al-Gaaf, Raju Kurunkad, Vu Pham, Casey Bodley)

  • msgr: xio: 与 accellio v1.4 同步 (Vu Pham)

  • 消息: 显著减少连接的最小内存使用量 (pr#7567, Piotr Dałek)

  • 消息/simple: 签名检查失败时 pipe:内存泄漏 (pr#7096, Ruifeng Yang)

  • 消息/simple: 删除不需要的友元声明 (pr#6924, Michal Jarzabek)

  • 消息: 单元测试 (Haomai Wang)

  • 消息/xio: 修复编译 (pr#7479, Roi Dayan)

  • 消息/xio: 修复 (pr#7603, Roi Dayan)

  • mstart: 在不同端口上启动 rgw (pr#8167, Abhishek Lekshmanan)

  • nfs for rgw (Matt Benjamin, Orit Wasserman) (pr#7634, Yehuda Sadeh, Matt Benjamin)

  • objectcacher: 各种错误修复 (Jianpeng Ma)

  • objecter: 避免递归锁定 Objecter::rwlock (pr#7343, Yan, Zheng)

  • organizationmap: 修改 org 邮件信息。 (pr#7240, Xiaowei Chen)

  • os/bluestore: 一些修复 (pr#8193, Sage Weil)

  • os/bluestore/BlueFS: 在回收 ioct 之前应等待 io 完成 (pr#8178, Jianpeng Ma)

  • os/bluestore/BlueStore: 在写入之前不要泄漏 trim 覆盖数据。 (pr#7895, Jianpeng Ma)

  • os/bluestore: ceph-bluefs-tool 修复 (issue#15261, pr#8292, Venky Shankar)

  • os/bluestore: 克隆覆盖数据 (pr#7860, Jianpeng Ma)

  • os/bluestore: 修复断言 (issue#14436, pr#7293, xie xingguo)

  • os/bluestore: 修复 SPDK 路径解析中的拼写错误 (pr#7601, Jianjian Huo)

  • os/bluestore: 修复 bluestore_wal_transaction_t 编码测试 (pr#7342, Kefu Chai)

  • os/bluestore: 修复 bluestore_wal_transaction_t 编码测试 (pr#7419, Kefu Chai, Brad Hubbard)

  • os/bluestore: 在 onode LRU 的前面位置插入新的 onode (pr#7492, Jianjian Huo)

  • os/bluestore/KernelDevice: 强制块大小 (pr#8006, Sage Weil)

  • os/bluestore: 使 bluestore_sync_transaction = true 可以工作。 (pr#7674, Jianpeng Ma)

  • os/bluestore/NVMEDevice: 使 IO 线程使用 dpdk 启动 (pr#8160, Haomai Wang)

  • os/bluestore/NVMEDevice: 重构 probe/attach 代码并支持零命令 (pr#7647, Haomai Wang)

  • os/bluestore: 改革 BlueFS bdev 管理并添加性能计数器 (issue#15376, pr#8431, Sage Weil)

  • os/bluestore: bluestore StupidAllocator 中的小修复 (pr#8101, Jianjian Huo)

  • os/bluestore: 使用侵入指针为 Dir (pr#7247, Igor Fedotov)

  • osd: 在推送期间推送原始克隆时添加缓存提示 (pr#7069, Zhiqiang Wang)

  • osd: 添加用于测试的配置选项 osd_read_ec_check_for_errors (pr#5865, David Zafman)

  • osd: 为层级操作添加延迟性能计数器 (Xinze Chi)

  • osd: 添加各种性能计数器 (Xinze Chi)

  • osd: 在使用消息时添加缺失的新行 (pr#7613, Willem Jan Withagen)

  • osd: 为缓存层添加 pin/unpin 支持(11066)(pr#5793, Haomai Wang)

  • osd: add pin/unpin support to cache tier (11066) (pr#6326, Zhiqiang Wang)

  • osd: 添加“代理”缓存模式 (issue#12814, pr#8210, Sage Weil)

  • osd: 添加清理持久化/查询 API (issue#13505, pr#6898, Kefu Chai, Samuel Just)

  • osd: 在恢复期间添加简单的睡眠注入 (Sage Weil)

  • osd: 添加每个池的清理持久化/查询 API 支持和恢复操作优先级 (pr#7062, Zhiqiang Wang)

  • osd: 修复 HeartbeatDispatcher 和清理 (pr#7550, Kefu Chai)

  • osd: 允许使用配置修复历史.last_epoch_started (pr#6793, David Zafman)

  • osd: 允许 SEEK_HOLE/SEEK_DATA 用于稀疏读取 (Zhiqiang Wang)

  • osd: 自动修复 EC 池 (issue#12754, pr#6196, Guang Yang)

  • osd: 避免为大多数操作计算 crush 映射 (pr#6371, Sage Weil)

  • osd: 避免在 PG::get/put 中调试 std::string 初始化 (pr#7117, Evgeniy Firsov)

  • osd: 避免在 FileStore::_check_replay_guard 中重播和 can_checkpoint() 之间进行双重检查 (pr#6471, Ning Yao)

  • osd: filejournal: 清理 (David Zafman)pr#6689, Jacek J. Łakis)

  • osd: avoid dup omap sets for in pg metadata (Sage Weil)

  • osd: avoid FORCE updating digest been overwritten by MAYBE when comparing scrub map (pr#7051, Zhiqiang Wang)

  • osd: avoid multiple hit set insertions (Zhiqiang Wang)

  • osd: avoid osd_op_thread suicide because osd_scrub_sleep (pr#7009, Jianpeng Ma)

  • osd: avoid transaction append in some cases (Sage Weil)

  • 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: break PG removal into multiple iterations (#10198 Guang Yang)

  • osd: cache proxy-write support (Zhiqiang Wang, Samuel Just)

  • 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: check scrub state when handling map (Jianpeng Ma)

  • 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 some constness, privateness (Kefu Chai)

  • osd: clean up temp object if copy-from fails (pr#8487, Sage Weil)

  • osd: clean up temp object if promotion fails (Jianpeng Ma)

  • osd: clear pg_stat_queue after stopping pgs (issue#14212, pr#7091, Sage Weil)

  • osdc/Objecter: allow per-pool calls to op_cancel_writes (John Spray)

  • 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: configure promotion based on write recency (Zhiqiang Wang)

  • osd: consider high/low mode when putting agent to sleep (issue#14752, pr#7631, Sage Weil)

  • osd: constrain collections to meta and PGs (normal and temp) (Sage Weil)

  • osd: correctly handle small osd_scrub_interval_randomize_ratio (pr#7147, Samuel Just)

  • 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 send dup MMonGetOSDMap requests (Sage Weil, Kefu Chai)

  • 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: EIO injection (David Zhang)

  • osd: elminiate txn apend, ECSubWrite copy (Samuel Just)

  • 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: 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: FileJournal: 如果当前不可读,_fdump 返回错误。 (issue#13626, pr#6406, xie xingguo)

  • osd: FileJournal: 修复 create 方法的返回代码 (issue#14134, pr#6988, xie xingguo)

  • osd: FileStore: 在 write_aio_bl 中减少锁定范围 (issue#12789, pr#5670, Zhi Zhang)

  • osd: filejournal: 报告事务日志条目计数 (pr#7643, tianqing)

  • osd: FileStore: 添加一个字段指示 set xattr 仅一个块 (pr#6701, Xinze Chi)

  • osd: FileStore: add a field indicate xattr only one chunk for set xattr. (pr#6244, Jianpeng Ma)

  • osd: FileStore: 添加 O_DSYNC 写方案 (pr#7752, Somnath Roy)

  • osd: FileStore: 为 object_map->sync() 添加错误检查 (pr#7281, Chendi Xue)

  • osd: FileStore: 清理:删除过时的选项“filestore_xattr_use_omap” (issue#14356, pr#7217, Vikhyat Umrao)

  • osd: filestore: 使用 splice 克隆 (Jianpeng Ma)

  • osd: FileStore: 条件收集驱动元数据 (pr#6956, Somnath Roy)

  • osd: filestore: FALLOC_FL_PUNCH_HOLE 必须与 FALLOC_FL_KEEP_SIZE 一起使用 (pr#7768, xinxin shu)

  • osd: filestore: 如果 statfs 遇到 ENOENT,则快速中止 (pr#7703, xie xingguo)

  • osd: FileStore: 修复 mkfs 中初始化顺序错误 (pr#8067, Samuel Just)

  • osd: filestore: 修复分割与 collection_move_rename 和长对象名称的竞争条件 (issue#14766, pr#8136, Samuel Just)

  • osd: filestore: 修复递归锁定 (Xinxin Shu)

  • osd: filestore: 修复克隆时结果代码被覆盖 (issue#14817, issue#14827, pr#7711, xie xingguo)

  • osd: filestore: 修复 mkfs 中错误情况下的结果代码范围 (issue#14814, pr#7704, xie xingguo)

  • osd: filestore: 修复 mount 时错误情况下的结果代码范围 (issue#14815, pr#7707, xie xingguo)

  • osd: FileStore: LFNIndex: 移除冗余局部变量‘obj’。 (issue#13552, pr#6333, xiexingguo)

  • osd: FileStore: 修改冒号的格式 (pr#7333, Donghai Xu)

  • osd: FileStore:: 优化 lfn_unlink (pr#6649, Jianpeng Ma)

  • osd: FileStore: 如果 _fgetattrs 失败,则可能存在内存泄漏 (issue#13597, pr#6377, xie xingguo)

  • osd: filestore: 如果读取文件失败,则在 osd 断言之前打印文件名 (pr#7111, Ji Chen)

  • osd: FileStore: 移除 __SWORD_TYPE 依赖 (pr#6263, John Coyle)

  • osd: FileStore: 移除未使用的局部变量‘handle’ (pr#6381, xie xingguo)

  • osd: filestore: 重新组织日志和操作队列节流 (pr#7767, Samuel Just)

  • osd: FileStore: 支持多个 ondisk 完成和应用完成者 (pr#6486, Xinze Chi, Haomai Wang)

  • osd: FileStore: 使用 pwritev 而不是 lseek+writev (pr#7349, Haomai Wang, Tao Chang)

  • osd: 修复缺少克隆时错误的清理结果 (issue#12738, issue#12740, pr#5783, David Zafman)

  • osd: 修复损坏的平衡/本地读取处理 (issue#13491, pr#6364, Jason Dillaman)

  • osd: 修复 last_* PG 状态时间戳的 bug (pr#6517, Li Wang)

  • osd: 修复 omap 操作的 bug (pr#8230, Jianpeng Ma)

  • osd: 修复 check_for_full (

  • osd: 修复 ClassHandler::ClassData::get_filter() (pr#6747, Yan, Zheng)

  • osd: 修复/清理完整映射请求处理 (pr#8446, Sage Weil)

  • osd: 在 OSD::is_healthy 中修复调试消息 (pr#6226, Xiaoxi Chen)

  • osd: 在 make_writeable 中修复脏计费 (

  • osd: 在正确设置 dirty_info 字段之前修复没有正确设置 dirtying 信息 (pr#8275, xie xingguo)

  • osd: 修复 dump_ops_in_flight 竞争 (issue#8885, pr#8044, David Zafman)

  • osd: 修复 dup promotion 丢失 op bug (Zhiqiang Wang)

  • osd: 修复对象不可恢复时无限修复 (

  • osd: 修复 handle_pg_create 中的时期检查 (pr#8382, Samuel Just)

  • osd: 修复几种 op 结果代码未检查或设置的情况 (issue#13566, pr#6347, xie xingguo)

  • osd: 修复 ms_handle_connect() 期间失败报告处理 (pr#8348, xie xingguo)

  • osd: 修复 FileStore::_destroy_collection 错误返回代码 (pr#6612, Ruifeng Yang)

  • osd: 修复强制 prmootion for CALL ops (issue#14745, pr#7617, Sage Weil)

  • osd: 修复 fusestore 在停止/退出期间挂起 (issue#14786, pr#7677, xie xingguo)

  • osd: 修复 hitset 对象命名以使用 GMT (Kefu Chai)

  • osd: 修复不准确计数并跳过将空事务排队 (pr#7754, xie xingguo)

  • osd: 修复 WBThrottle 中的不正确节流 (pr#6713, Zhang Huan)

  • osd: 修复 process_copy_chunk 中不正确的列表遍历 (pr#7511, Samuel Just)

  • osd: 修复缺乏对象解锁时刷新失败 (issue#14511, pr#7584, Igor Fedotov)

  • osd: 修复日志信息 (pr#8273, Wei Jin)

  • osd: 修复各种内存泄漏 (Sage Weil)

  • osd: 修复 MOSDOp 编码 (pr#6174, Sage Weil)

  • osd: 修复 replica_scrub 中 MOSDRepScrub 引用计数器 (pr#6730, Jie Wang)

  • osd: 修复回填期间负退化统计 (

  • osd: 修复空指针访问和竞争条件 (issue#14072, pr#6916, xie xingguo)

  • osd: 修复 osdmap 中黑名单项的转储 (

  • osd: 修复重载的‘==’运算符对于 pg_stat_t (issue#14921, pr#7842, xie xingguo)

  • osd: 修复 FileStore 中 peek_queue 锁定 (Xinze Chi)

  • osd: 修复 pg 复苏 (#11429 Samuel Just)

  • osd: 修复 promotion 与完整缓存层之间的竞争 (Samuel Just)

  • osd: 修复 heartbeat_need_update 的竞争条件 (issue#14387, pr#7739, xie xingguo)

  • osd: 修复 reactivate(检查 mkfs() 中已经拥有的 OSDSuperblock)(issue#13586, pr#6385, Vicente Cheng)

  • osd: 修复引用计数,罕见的竞争条件等 (pr#8254, xie xingguo)

  • osd: 修复 pg 仍然激活时重播重新排队 (#13116 Samuel Just)

  • osd: 修复 maybe_handle_cache_detail() 的返回值 (pr#7593, Igor Fedotov)

  • osd: 修复 rollback_info_trimmed_to 在 index() 之前 (issue#13965, pr#6801, Samuel Just)

  • osd: 修复 scrub start hobject (pr#7467, Sage Weil)

  • osd: 修复 scrub 统计错误 (Sage Weil, Samuel Just)

  • osd: 修复从缓存层快照刷新(再次)(#11787 Samuel Just)

  • osd: 修复在

  • osd: fix sparse-read result code checking logic (issue#14151, pr#7016, xie xingguo)

  • osd: fix temp-clearing (David Zafman)

  • 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 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: force promotion for ops EC can’t handle (Zhiqiang 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: 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: improve temperature calculation for cache tier agent (pr#4737, MingXin Liu)

  • osd: include a temp namespace within each collection/pgid (Sage Weil)

  • osd: increase default max open files (Owen Synge)

  • 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: keyvaluestore: misc fixes (Varada Kari)

  • 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: low and high speed flush modes (Mingxin Liu)

  • 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)

  • osd: make suicide timeouts individually configurable (Samuel Just)

  • 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: merge multiple setattr calls into a setattrs call (Xinxin Shu)

  • 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 fixes (Ning Yao, Kefu Chai, Xinze Chi, Zhiqiang Wang, Jianpeng Ma)

  • 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: move scrub in OpWQ (Samuel Just)

  • 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: newstore prototype (Sage Weil)

  • osd: note down the number of missing clones (pr#6654, Kefu Chai)

  • osd: ObjectStore internal API refactor (Sage Weil)

  • 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: peer_features includes self (David Zafman)

  • 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_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: pool size change triggers new interval (#11771 Samuel Just)

  • osd: prepopulate needs_recovery_map when only one peer has missing (#9558 Guang Yang)

  • 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: randomize scrub times (#10973 Kefu Chai)

  • osd: recovery, peering fixes (#11687 Samuel Just)

  • 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: 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: 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 promotion recency logic (issue#14320, pr#6702, 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: require firefly features (David Zafman)

  • 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: set initial crush weight with more precision (Sage Weil)

  • osd: several small cleanups (pr#7055, xie xingguo)

  • osd: SHEC no longer experimental

  • 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: skip promotion for flush/evict op (Zhiqiang Wang)

  • 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: stripe over small xattrs to fit in XFS’s 255 byte inline limit (Sage Weil, Ning Yao)

  • osd: support pool level recovery_priority and recovery_op_priority (pr#5953, Guang Yang)

  • 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: try evicting after flushing is done (pr#5630, Zhiqiang Wang)

  • osd: upgrades must pass through hammer (Sage Weil)

  • osd: use a temp object for recovery (Sage Weil)

  • osd: use atomic to generate ceph_tid (pr#7017, Evgeniy Firsov)

  • osd: use blkid to collection partition information (Joseph Handzik)

  • 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: use SEEK_HOLE / SEEK_DATA for sparse copy (Xinxin Shu)

  • osd: utime_t, eversion_t, osd_stat_sum_t encoding optimization (pr#6902, Xinze Chi)

  • osd: WBThrottle cleanups (Jianpeng Ma)

  • osd: WeightedPriorityQueue: move to intrusive containers (pr#7654, Robert LeBlanc)

  • osd: write file journal optimization (pr#6484, Xinze Chi)

  • osd: write journal header on clean shutdown (Xinze Chi)

  • os/filestore: enlarge getxattr buffer size (Jianpeng Ma)

  • 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: 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)

  • PG: pg down state blocked by osd.x, lost osd.x cannot solve peering stuck (issue#13531, pr#6317, Xiaowei Chen)

  • 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: pep8 cleanups (Danny Al-Gaaf)

  • 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: 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)

  • pycephfs: many fixes for bindings (Haomai Wang)

  • 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: fix filelock_interrupt.py test (Yan, Zheng)

  • qa: improve ceph-disk tests (Loic Dachary)

  • qa: improve docker build layers (Loic Dachary)

  • qa/krbd: Expunge generic/247 (pr#6831, Douglas Fuller)

  • qa: run-make-check.sh script (Loic Dachary)

  • 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.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: add --striper option to use libradosstriper (#10759 Sebastien Ponce)

  • rados: bench: add --no-verify option to improve performance (Piotr Dalek)

  • rados: bench: fix off-by-one to avoid writing past object_size (pr#6677, Tao Chang)

  • rados bench: misc fixes (Dmitry Yatsushkevich)

  • rados: fix bug for write bench (pr#7851, James Liu)

  • 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: 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: fix subuser modify output (#12286 Guce)

  • 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: handle --snapid arg properly (Abhishek Lekshmanan)

  • rados: implement rm --force option to force remove when full (pr#6202, Xiaowei Chen)

  • rados: improve bench buffer handling, performance (Piotr Dalek)

  • rados: misc bench fixes (Dmitry Yatsushkevich)

  • rados: new options for write benchmark (pr#6340, Joaquim Rocha)

  • 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: accept --user, refuse -i command-line optionals (pr#6590, Ilya Dryomov)

  • rbd: add disk usage tool (#7746 Jason Dillaman)

  • 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: allow unmapping by spec (Ilya Dryomov)

  • rbd: cli: fix arg parsing with --io-pattern (Dmitry Yatsushkevich)

  • 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: deprecate --new-format option (Jason Dillman)

  • 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: fix error messages (#2862 Rajesh Nambiar)

  • 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 link issues (Jason Dillaman)

  • 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: improve CLI arg parsing, usage (Ilya Dryomov)

  • 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: 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: rbd-replay-prep and rbd-replay improvements (Jason Dillaman)

  • rbd: recognize queue_depth kernel option (Ilya Dryomov)

  • 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 G and T units for CLI (Abhishek Lekshmanan)

  • 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: update rbd man page (Ilya Dryomov)

  • rbd: update xfstests tests (Douglas Fuller)

  • rbd: use default order from configuration when not specified (pr#6965, Yunchuan Wen)

  • rbd: use image-spec and snap-spec in help (Vikhyat Umrao, Ilya Dryomov)

  • 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)

  • releases: what is merged where and when ? (pr#8358, Loic Dachary)

  • rest-bench: misc fixes (Shawn Chen)

  • rest-bench: support https (#3968 Yuan Zhou)

  • 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 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 max multipart upload parts (#12146 Abshishek Dixit)

  • rgw: add missing error code for admin op API (pr#7037, Dunrong Huang)

  • 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: 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 Trasnaction-Id to response (Abhishek Dixit)

  • rgw: add X-Timestamp for Swift containers (#10938 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: 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: always check if token is expired (#11367 Anton Aksola, Riku Lehto)

  • rgw: approximate AmazonS3 HostId error field. (pr#7444, Robin H. Johnson)

  • 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] 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: conversion tool to repair broken multipart objects (#12079 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: document layout of pools and objects (Pete Zaitcev)

  • 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 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 send a Content-Type on a ‘304 Not Modified’ response (issue#15119, pr#8253, Wido den Hollander)

  • 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: 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: 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: extend rgw_extended_http_attrs to affect Swift accounts and containers as well (pr#5969, Radoslaw Zarzynski)

  • rgw: fail if parts not specified on multipart upload (#11435 Yehuda Sadeh)

  • 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: fix a glaring syntax error (pr#6888, Pavan Rallabhandi)

  • rgw: fix assignment of copy obj attributes (#11563 Yehuda Sadeh)

  • rgw: fix a typo in error message (pr#8434, Abhishek Lekshmanan)

  • rgw: fix a typo in init-radosgw (pr#6817, Zhi Zhang)

  • 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 compilation warning (pr#7160, Yehuda Sadeh)

  • rgw: fix compiling error (pr#8394, xie xingguo)

  • 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: fixes for per-period metadata logs (pr#7827, Casey Bodley)

  • 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 lockdep false positive (pr#8284, Yehuda Sadeh)

  • rgw: fix log rotation (Wuxingyi)

  • rgw: fix mdlog (pr#8183, Orit Wasserman)

  • rgw: fix mulitipart upload in retry path (#11604 Yehuda Sadeh)

  • 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 quota enforcement on POST (#11323 Sergey Arkhipov)

  • rgw: fix reload on non Debian systems. (pr#6482, Hervé Rousseau)

  • rgw: fix reset_loc (#11974 Yehuda Sadeh)

  • rgw: fix response of delete expired objects (issue#13469, pr#6228, Yuan Zhou)

  • rgw: fix return code on missing upload (#11436 Yehuda Sadeh)

  • 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 sysvinit script

  • rgw: fix sysvinit script w/ multiple instances (Sage Weil, Pavan Rallabhandi)

  • rgw: fix the build failure (pr#6927, Kefu Chai)

  • rgw: fix typo in RGWHTTPClient::process error message (pr#6424, Brad Hubbard)

  • 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: 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: highres time stamps (pr#8108, Yehuda Sadeh, Adam C. Emerson, Matt Benjamin)

  • rgw: improve content-length env var handling (#11419 Robin H. Johnson)

  • rgw: improved support for swift account metadata (Radoslaw Zarzynski)

  • rgw: improve error handling in S3/Keystone integration (pr#7597, Radoslaw Zarzynski)

  • rgw: improve handling of already removed buckets in expirer (Radoslaw Rzarzynski)

  • rgw: increase verbosity level on RGWObjManifest line (pr#7285, magicrobotmonkey)

  • rgw: indexless (pr#7786, Yehuda Sadeh)

  • rgw: issue aio for first chunk before flush cached data (#11322 Guang Yang)

  • rgw: Jewel nfs fixes 3 (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: 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: 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: mdlog trim add usage prompt (pr#6059, Weijun Duan)

  • rgw: merge manifests properly with prefix override (#11622 Yehuda Sadeh)

  • 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: only scan for objects not in a namespace (#11984 Yehuda Sadeh)

  • rgw: orphan detection tool (Yehuda Sadeh)

  • rgw: Parse --subuser better (pr#7279, Pete Zaitcev)

  • rgw: pass in civetweb configurables (#10907 Yehuda Sadeh)

  • 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: rectify 202 Accepted in PUT response (#11148 Radoslaw Zarzynski)

  • rgw: refuse to calculate digest when the s3 secret key is empty (issue#13133, pr#6045, Sangdi Xu)

  • 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 meta file after deleting bucket (#11149 Orit Wasserman)

  • rgw: remove trailing :port from HTTP_HOST header (Sage Weil)

  • 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: return 412 on bad limit when listing buckets (#11613 Yehuda Sadeh)

  • rgw: Revert “rgw ldap” (pr#8075, Yehuda Sadeh)

  • rgw: rework X-Trans-Id header to conform with Swift API (Radoslaw Rzarzynski)

  • 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/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 encoding-type for get bucket (Jeff Weber)

  • rgw: S3: set EncodingType in ListBucketResult (pr#7712, Victor Makarov)

  • 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: 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 end marker on swift container GET (#10682 Radoslaw Zarzynski)

  • rgw: support for aws authentication v4 (Javier M. Mellid) (issue#10333, pr#7720, Yehuda Sadeh, Javier M. Mellid)

  • rgw: support for Swift expiration API (Radoslaw Rzarzynski, Yehuda Sadeh)

  • rgw: support json format for admin policy API (Dunrong Huang) (issue#14090, pr#8036, Yehuda Sadeh, Dunrong Huang)

  • rgw: swift: allow setting attributes with COPY (#10662 Ahmad Faheem, Dmytro Iurchenko)

  • rgw: swift bulk delete (Radoslaw Zarzynski)

  • 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: 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: 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: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: user rm is idempotent (Orit Wasserman)

  • rgw: use smart pointer for C_Reinitwatch (pr#6767, Orit Wasserman)

  • rgw: use unique request id for civetweb (#10295 Orit Wasserman)

  • rgw: warn on suspicious civetweb frontend parameters (pr#6944, Matt Benjamin)

  • rocksdb: add perf counters for get/put latency (Xinxin Shu)

  • rocksdb: build with PORTABLE=1 (pr#6311, Sage Weil)

  • rocksdb, leveldb: fix compact_on_mount (Xiaoxi Chen)

  • rocksdb: pass options as single string (Xiaoxi Chen)

  • 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: update to latest (Xiaoxi Chen)

  • rocksdb: use native rocksdb makefile (and our autotools) (pr#6290, Sage Weil)

  • rpm: add suse firewall files (Tim Serong)

  • rpm: always rebuild and install man pages for rpm (Owen Synge)

  • 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: 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)

  • 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 policy (Boris Ranto, Milan Broz)

  • selinux: Update policy to grant additional access (issue#14870, pr#7971, Boris Ranto)

  • set 128MB tcmalloc cache size by bytes (pr#8427, Star Guo)

  • sstring.hh: return type from str_len(…) need not be const (pr#7679, Matt Benjamin)

  • stringify outputted error code and fix unmatched parentheses. (pr#6998, xie.xingguo, xie xingguo)

  • Striper: reduce assemble_result log level (pr#8426, Jason Dillaman)

  • 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: 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

  • 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)

  • sysvinit: allow custom cluster names (pr#6732, Richard Chan)

  • sysvinit compat: misc fixes (Owen Synge)

  • 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 exit values on test.sh, fix tier.cc (issue#15165, pr#8266, Samuel Just)

  • 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/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: misc fs test improvements (John Spray, Loic Dachary)

  • 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: python tests, linter cleanup (Alfredo Deza)

  • 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)

  • tests: fix a few build warnings (pr#7608, Sage Weil)

  • tests: fixes for rbd xstests (Douglas Fuller)

  • 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 tiering health checks (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 for low-level performance (Haomai Wang)

  • tests: ignore test-suite.log (pr#6584, Loic Dachary)

  • tests: Improving ‘make check’ execution time (pr#8131, Erwan Velu)

  • tests: many ec non-regression improvements (Loic Dachary)

  • tests: many many ec test improvements (Loic Dachary)

  • 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 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)

  • upstart: throttle restarts (#11798 Sage Weil, Greg Farnum)

  • 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)

由 Ceph 基金会提供

Ceph 文档是一个由非盈利Ceph 基金会资助和托管的社会资源。。如果您想支持此项目和其他工作,请考虑现在加入.