注意
本文档适用于 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”提供无效的密钥环将导致错误。
更改日志
管理:将 sphinx 提升到 1.6 (问题#21717, 补丁#18166, Kefu Chai, Alfredo Deza)
认证:ceph auth add 不会检查 caps (问题#22525, 补丁#21367, Jing Li, Nathan Cutler, Kefu Chai, Sage Weil)
构建/操作:rpm:在 RHEL 基础上提前提升 ceph-common 的 epoch (问题#20508, 补丁#21190, Ken Dreyer)
构建/操作:upstart:如果 ceph-base 没有安装,radosgw-all 在启动时不会启动 (问题#18313, 补丁#16294, Ken Dreyer)
ceph-disk:启用时修复 --runtime 省略 (ceph-osd@$ID.服务设备后端 OSD 的单元 (问题#21498, 补丁#17942, Carl Xiong)
ceph-disk flake8 测试在非常旧和非常新的 flake8 版本上失败 (问题#22207, 补丁#19153, Nathan Cutler)
cephfs:ceph.in:将 RADOS 实例传递给 LibCephFS (问题#21406, 问题#21967, 补丁#19907, Patrick Donnelly)
cephfs:客户端::mkdirs 在两个客户端为同一目录发送 mkdir 请求时处理不当 (问题#20592, 补丁#20271, dongdong tao)
cephfs:客户端:防止在 dentry_invalidate_cb 为 true 但 root->dir 为 NULL 时回退到重新挂载 (问题#23211, 补丁#21189, Zhi Zhang)
cephfs:修复 tmap_upgrade 崩溃 (问题#23529, 补丁#21208, “Yan, Zheng”)
cephfs:fuse 客户端:::rmdir() 使用已删除的 dentry 内存结构导致 … (问题#22536, 补丁#19993, YunfeiGuan)
cephfs-journal-tool:添加“设置 pool_id”选项 (问题#22631, 补丁#20111, dongdong tao)
cephfs-journal-tool:将关闭移动到 MDSUtility 的析构函数中 (问题#22734, 补丁#20333, dongdong tao)
cephfs:osdc:在 powercycle-wip-yuri-master-1.19.18-distro-basic-smithi 中“FAILED assert(bh->last_write_tid > tid)” (问题#22741, 补丁#20312, “Yan, Zheng”)
cephfs:osdc/Journaler:确保 flush() 写入足够的数据 (问题#22824, 补丁#20435, “Yan, Zheng”)
cephfs:进程卡在等待写入时使用 ceph-fuse (问题#22008, 问题#22207, 补丁#19141, “Yan, Zheng”)
ceph-fuse:启动测试中的重挂载失败没有正确处理 client_die_on_failed_remount (问题#22269, 补丁#21162, Patrick Donnelly)
ceph-objectstore-tool 命令用于修剪 pg 日志 (问题#23242, 补丁#20882, Josh Durgin, David Zafman)
ceph-objectstore-tool: “$OBJ get-omaphdr” 和 “$OBJ list-omap” 扫描所有 pgs 而不是使用特定的 pg (问题#21327, 补丁#20284, David Zafman)
ceph.restart + ceph_manager.wait_for_clean 是竞争条件 (问题#15778, 补丁#20508, Warren Usui, Sage Weil)
ceph_volume_client:修复为 IDs 设置 caps (问题#21501, 补丁#18084, Ramana Raja)
类 rbd.Image discard----OSError: [errno 2147483648] 错误丢弃区域 (问题#16465, 问题#21966, 补丁#20287, Nathan Cutler, Huan Zhang, Jason Dillaman)
cli/crushtools/build.t 有时在 jenkins 的 make check run 中失败 (问题#21758, 补丁#21158, Kefu Chai)
客户端:默认情况下将 client_try_dentry_invalidate 设置为 false (问题#21423, 补丁#17925, “Yan, Zheng”)
常规:使用 contents.size() 而不是 lru 计算 SimpleLRU 的大小 … (问题#22613, 补丁#19978, Xuehan Xu)
常规/配置:将 rocksdb_cache_size 设置为 OPT_U64 (问题#22104, 补丁#18850, Vikhyat Umrao, liuhongtong)
常规:修复 rados bench 写入 JSON 输出中的拼写错误 (问题#24199, 补丁#22407, Sandor Zeestraten)
核心:在线 osd ‘omap’压缩命令的添加 (问题#19592, 补丁#17101, liuchang0812, Sage Weil)
核心:全局/signal_handler.cc:修复拼写错误 (问题#21432, 补丁#17883, Kefu Chai)
核心:librados:在 rados_getxattrs_next 中发生双重释放 (问题#22042, 补丁#20381, Gu Zhongyan)
核心:Objecter::C_ObjectOperation_sparse_read 在 -ENOENT 上抛出/捕获异常 (问题#21844, 补丁#18743, Jason Dillaman)
删除活动 notify 延迟操作的池可能导致段错误 (问题#23966, 补丁#22188, Kefu Chai, Jason Dillaman)
文档:在 INSTALL CEPH OBJECT GATEWAY 中删除区域 (问题#21610, 补丁#18303, Orit Wasserman)
随后:osd:be_select_auth_object() 进行合理性检查 oi soid (问题#20471, 补丁#20622, David Zafman)
安装依赖项.sh:readlink /usr/bin/gcc 不是 /usr/bin/x86_64-linux-gnu-gcc (问题#22220, 补丁#19521, Kefu Chai)
[日志] 标签如果没有其他客户端注册则不会被过期 (问题#21960, 补丁#20282, Jason Dillaman)
librbd:如果有超过 64 个键/值对,则无法克隆所有图像元数据 (问题#21814, 补丁#21228, PCzhangPC)
librbd:如果有超过 64 个键/值对,则无法复制所有图像元数据 (问题#21815, 补丁#21203, PCzhangPC)
librbd:list_children 不应尝试刷新图像 (问题#21670, 补丁#21224, Jason Dillaman)
librbd:对象映射批量更新可能导致 OSD 自杀超时 (问题#22716, 问题#21797, 补丁#21220, Song Shun, Jason Dillaman)
librbd:将已删除的父指针设置为 null (问题#22158, 补丁#19098, Jason Dillaman)
日志:修复 AddressSanitizer: new-delete-type-mismatch (问题#23324, 补丁#21084, Brad Hubbard)
mds:在 CDir::mark_dirty 中 FAILED assert(get_version() < pv) (问题#21584, 补丁#21156, Yan, Zheng, “Yan, Zheng”)
mds:会话引用泄漏 (问题#22821, 补丁#21175, Nathan Cutler, “Yan, Zheng”)
mds:RecoveryQueue 代码中的 auth_pin/auth_unpin 不平衡 (问题#22647, 补丁#20067, “Yan, Zheng”)
mds:在 CDir::_omap_fetched 中的水下 dentry 检查是竞争条件 (问题#23032, 补丁#21185, Yan, Zheng)
mon/LogMonitor:在忽略的日志消息上调用 no_reply() (问题#24180, 补丁#22431, Sage Weil)
mon/MDSMonitor:在 MMDSLoadTargets 上 no_reply (问题#23769, 补丁#22189, Sage Weil)
mon/OSDMonitor.cc:修复 expected_num_objects 解释错误 (问题#22530, 补丁#22050, Yang Honggang)
mon/OSDMonitor:修复 OSDUtilizationDumper 中的除以零错误 (问题#22662, 补丁#20344, Mingxin Liu)
ObjectStore/StoreTest.FiemapHoles/3 在使用 kstore 时失败 (问题#21716, 补丁#20143, Kefu Chai, Ning Yao)
osd:也检查“CEPH_SNAPDIR”请求的克隆 obc 的存在 (问题#17445, 补丁#17707, Xuehan Xu)
osdc/Objecter:防止挂起操作回调的双调用 (问题#23872, 补丁#21754, Jason Dillaman)
osd 操作(发送和?)以 osd 为序到达 (问题#19133, 问题#19139, 补丁#17893, Jianpeng Ma, Sage Weil)
osd:osd_scrub_during_recovery 仅考虑主副本,不考虑副本 (问题#18206, 补丁#17815, David Zafman)
osd/PrimaryLogPG:转储 snap_trimq 大小 (问题#22448, 补丁#21200, Piotr Dałek)
osd:恢复副本:将对象添加到缺失集合中用于回填,但不在恢复中,错误! (问题#18162, 问题#14513, 补丁#18690, huangjun, Adam C. Emerson, David Zafman)
测试:src/test/libcephfs/test.cc:376: 预期:(len)> (0),实际:-34 vs 0 (问题#22221, 补丁#21172, Patrick Donnelly)
测试:使用 xfs 而不是 btrfs 与文件存储一起使用 (问题#20169, 问题#20911, 补丁#18165, Sage Weil)
测试:使用 xfs 而不是 btrfs 与文件存储一起使用 (问题#21481, 补丁#17847, Patrick Donnelly)
radosgw:修复 awsv4 标头行的排序顺序 (问题#21607, 补丁#18080, Marcus Watts)
rbd:在使用非设置池上使用镜像命令时清理警告 (问题#21319, 补丁#21227, Jason Dillaman)
rbd:在 qemu_rebuild_object_map.sh 和 qemu_dynamic_features.sh 中 is_qemu_running 可能返回假阳性 (问题#23502, 补丁#21207, Mykola Golub)
rbd:[日志] 在获取锁后分配新标签应使用磁盘提交位置 (问题#22945, 补丁#21206, Jason Dillaman)
rbd-mirror:集群监视器应确保它拥有最新的 OSD 映射 (问题#22461, 补丁#19644, Jason Dillaman)
rbd-mirror:在格式化状态消息时修复潜在的无限循环 (问题#22932, 补丁#20418, Mykola Golub)
rbd-mirror:忽略 rbd_mirroring 对象的权限错误 (问题#20571, 补丁#21225, Jason Dillaman)
rbd-mirror:为远程集群删除环境/CLI 覆盖 (问题#21894, 补丁#21223, Jason Dillaman)
[rbd-nbd] Fedora 没有注册调整事件 (问题#22131, 补丁#19115, Jason Dillaman)
rbd:rbd 在映射期间崩溃 (问题#21808, 补丁#18843, Peter Keresztes Schmidt)
rbd-mirror 分裂脑测试用例可能直到 teuthology 出现假阳性失败 (问题#22485, 补丁#21205, Jason Dillaman)
rbd:TestLibRBD.RenameViaLockOwner 可能仍然在 -ENOENT 时失败 (问题#23068, 补丁#20627, Mykola Golub)
rgw:15912 15673(修复 GC 期间重复标签删除,cls/refcount:存储和使用已退役标签的列表) (问题#20107, 补丁#16708, Jens Rosenboom)
rgw:在容器中运行时列出映射的 nbd 设备时中止 (问题#22012, 问题#22011, 补丁#20286, Li Wang, Pan Liu)
rgw:添加从管理员 api 同步用户统计的功能 (问题#21301, 补丁#20179, Nathan Johnson)
rgw:在 cors 选项请求中添加 cors 标头规则检查 (问题#22002, 补丁#19057, yuliyang)
rgw:添加 radosgw-admin 同步错误修剪以修剪同步错误日志 (问题#23287, 补丁#21210, fang yuxiang)
rgw:RGWCopyObj_ObjStore_S3 响应消息中添加 xml 输出标头 (问题#22416, 补丁#19887, Enming Zhang)
rgw:bi 列表条目计数在错误时增加,导致错误代码失真 (问题#21205, 补丁#18207, Nathan Cutler)
rgw:boto3 v4 SignatureDoesNotMatch 失败是由于 sse-kms 标头的排序导致的 (问题#21832, 补丁#18772, Nathan Cutler)
rgw:桶重分片不应更新桶 ACL 或用户统计 (问题#22124, 补丁#20421, Orit Wasserman)
rgw:复制没有 http 标头 x-amz-copy-source-range 的部分将被误认为是复制对象 (问题#22729, 补丁#21294, Malcolm Lee)
rgw:RGWKeystoneTokenCache 的递归锁定导致核心转储 (问题#23171, 补丁#20639, Mark Kogan, Adam Kupczyk)
rgw:版本化对象的 数据 同步,注意更新 bi 标记 (问题#18885, 补丁#21213, Yehuda Sadeh)
rgw:不要在“同步错误列表”中记录 EBUSY 错误 (问题#22473, 补丁#19908, Casey Bodley)
rgw:在 rgw_get_system_obj() 中 ECANCELED 导致无限循环 (问题#17996, 补丁#20561, Yehuda Sadeh)
rgw:修复 s3/swift 服务器端复制时出现双下划线 (问题#22529, 补丁#19747, Matt Benjamin)
rgw:dir_suggest_changes 中的索引更新 (问题#24280, 补丁#22677, Tianshan Qu)
rgw:修复标记编码问题 (问题#20463, 补丁#17731, Orit Wasserman, Marcus Watts)
rgw:修复 swift 对象过期时未删除对象 (问题#22084, 补丁#18925, Pavan Rallabhandi)
rgw:修复在完成后无法删除部分索引的 bug (问题#19604, 补丁#16763, Zhang Shaowen, Matt Benjamin)
rgw:libcurl & ssl 修复 (问题#22951, 问题#23203, 问题#23162, 补丁#20749, Marcus Watts, Abhishek Lekshmanan, Jesse Williamson)
rgw:使 init 环境方法返回错误 (问题#23039, 补丁#20800, Abhishek Lekshmanan)
RGW: 多部分上传可能会使配额翻倍 (问题#21586, 补丁#18121, Sibei Gao, Matt Benjamin)
rgw:多站点:尽管 RGWListBucketIndexesCR 中失败,数据同步状态仍然前进 (问题#21735, 补丁#20269, Casey Bodley)
rgw:多站点:获取位于另一个 zonegroup 中的桶位置将返回 301 Moved Permanently (问题#21125, 补丁#18305, Shasha Lu, lvshuhua, Jiaying Ren)
rgw:启用版本化时 null 实例 mtime 不正确 (问题#21743, 补丁#20262, Shasha Lu)
rgw:radosgw-admin:添加一个选项来重置用户统计 (问题#23335, 问题#23322, 补丁#20877, Abhishek Lekshmanan)
rgw:如果 RGWCompleteMultipart 中获取,则释放 cls 锁 (问题#21596, 问题#22368, 补丁#18116, Casey Bodley, Matt Benjamin)
rgw:在 Swift PutObject (22517) 中出现随机的 500 错误 (问题#22517, 问题#21560, 补丁#19769, Adam C. Emerson, Matt Benjamin)
rgw:rgw_file:在 LRU 排空时可能会发生递归锁定 (问题#20374, pr#17149, Matt Benjamin)
rgw:S3 POST 策略不应要求 Content-Type (问题#20201, 补丁#19635, Matt Benjamin)
rgw:s3website 错误处理程序使用原始对象名 (问题#23201, 问题#20307, 补丁#21100, liuhong, Casey Bodley)
rgw:在运行 radosgw-admin data sync init 后段错误 (问题#22083, 补丁#19783, Casey Bodley, Abhishek Lekshmanan)
rgw:在还原 .rgw.root 后启动 radosgw 时出现段错误 (问题#21996, 补丁#20292, Orit Wasserman, Casey Bodley)
rgw:在对象删除后,陈旧的桶索引条目仍然存在 (问题#22555, 补丁#20293, J. Eric Ivancich)
rgw:用户创建可以覆盖现有用户,即使给定不同的 uid (问题#21685, 补丁#20074, Casey Bodley)
RHEL 7.3 Selinux 拒绝在 OSD 启动时 (问题#19200, 补丁#18780, Boris Ranto)
刷洗错误在副本上未清除会导致副本接管主副本时 pg 状态不一致 (问题#23267, 补丁#21194, David Zafman)
snapset xattr 损坏从主副本传播到其他分片 (问题#20186, 问题#18409, 问题#21907, 补丁#20331, David Zafman)
systemd:添加显式的 Before=ceph.target (问题#21477, 补丁#17841, Tim Serong)
测试/CMakeLists:禁用 test_pidfile.sh (问题#20975, 补丁#20557, Sage Weil)
测试/librbd:在升级场景下修复元数据测试 (问题#21911, 补丁#18548, Jason Dillaman)
测试:rbd_mirror_helpers.sh request_resync_image 函数将图像 id 保存到错误的变量中 (问题#21663, 补丁#19804, Jason Dillaman)
测试:test_admin_socket.sh 可能在对 wait_for_clean 等待时失败 (问题#23499, 补丁#21125, Mykola Golub)
测试:测试/librbd:更新 test_notify 以处理新的发布锁语义 (问题#21912, 补丁#18560, Jason Dillaman)
测试:unittest_pglog 超时 (问题#23504, 问题#18030, 补丁#21135, Nathan Cutler, Loic Dachary)
工具:ceph-objectstore-tool set-size 应该清除数据摘要 (问题#22112, 补丁#20070, David Zafman)
Ubuntu amd64 客户端无法发现 ubuntu arm64 ceph 集群 (问题#19705, 补丁#18294, Kefu Chai)
v10.2.10 Jewel
此版本发布在 Ceph 的所有主要组件中修复了若干重要错误。我们建议所有 Jewel 10.2.x 用户升级。
要获取详细更改列表,请参阅:下载:完整更改日志 <../changelog/v10.2.10txt>
显著变化
构建/操作:向 ceph-disk 添加修复子命令,修复 SELinux 拒绝,并加快从非 SELinux 启用的 ceph 升级到 SELinux 启用的 ceph (问题#20077, 问题#20184, 问题#19545, 补丁#14346, Boris Ranto)
构建/操作:deb:修复 logrotate 打包 (问题#19938, 补丁#15428, Nathan Cutler)
构建/操作:扩展、可定制的 systemd ceph-disk 超时 (问题#18740, 补丁#15051, Alexey Sheplyakov)
构建/操作:rpm:修复 SUSE 上的 python-Sphinx 包名 (问题#19924, 补丁#15196, Nathan Cutler, Jan Matejek)
构建/操作:rpm:在 spec 文件中设置 subman cron 属性 (问题#20074, 补丁#15473, Thomas Serlin)
cephfs:ceph-fuse 在挂载时间段的 ceph::log::Log::stop 中断 (问题#18157, 补丁#16963, Greg Farnum)
cephfs:get_quota_root 发送每个缓冲的写入的 lookupname 操作 (问题#20945, 补丁#17396, Dan van der Ster)
cephfs:osdc/Filer:逐个修剪大文件 (问题#19755, 补丁#15442, “Yan, Zheng”)
核心:即使传递了 osd_failsafe_full_ratio,也会看到 ENOSPC 的 OSD (问题#20544, 问题#16878, 问题#19733, 问题#15912, 补丁#15050, Sage Weil, David Zafman)
核心:interval_set:优化 intersect_of 插入操作 (问题#21229, 补丁#17514, Zac Medico)
核心:kv:在 db 重置后让 ceph_logger 析构 (问题#21336, 补丁#17626, wumingqiao)
核心:test_envlibrados_for_rocksdb.yaml 在加密重启时失败 (问题#19741, 补丁#16293, Kefu Chai)
libradosstriper:在 Jewel 中默默地失败删除空对象 (问题#20325, 补丁#15760, Stan K)
librbd:当无法获得排他锁时失败 IO 请求 (问题#20168, 问题#21251, 补丁#17402, Jason Dillaman)
librbd:重新获取锁应更新锁所有者客户端 id (问题#19929, 补丁#17385, Jason Dillaman)
mds:通过 ino 号报告损坏报告是无用的 (问题#18509, 问题#16016, 补丁#14699, John Spray, Michal Jarzabek)
mds:如果 mds 重生,日志旋转不起作用 (问题#19291, 补丁#14673, Patrick Donnelly)
mds:将投影路径保存到 inode_t::stray_prior_path 中 (问题#20340, 补丁#16150, “Yan, Zheng”)
mon:在关闭时崩溃,lease_ack_timeout 事件 (问题#19825, 补丁#15083, Kefu Chai, Michal Jarzabek, Alexey Sheplyakov)
mon:不允许将“hashpspool”选项启用到没有 --i-understand-this-will-remap-all-pgs 标志的池 (问题#18468, 补丁#13507, Vikhyat Umrao)
mon:将 mon_osd_full_ratio 因子合并到 MAX AVAIL 计算 (问题#18522, 补丁#15236, Sage Weil)
mon:无法形成大型配额;消息/异步忙循环 (问题#20230, 补丁#15726, Haomai Wang, Michal Jarzabek)
mon:修复 force_pg_create pg 停留在创建 bug (问题#18298, 补丁#17008, Alexey Sheplyakov)
mon:osd crush set crushmap 需要合理性检查 (问题#19302, 补丁#16144, Loic Dachary)
osd:为 Jumbo Frames (MTU 9000) 添加心跳消息 (问题#20087, 问题#20323, 补丁#16059, Piotr Dałek, Sage Weil, Greg Farnum)
osd:修复 fiemap 中的无限循环 (问题#19996, 补丁#15189, Sage Weil, Ning Yao)
osd:对象器 full_try 行为与 osd 不一致 (问题#19430, 补丁#15474, Sage Weil)
osd:osd_internal_types:在 put_read 锁上唤醒 snaptrimmer,太早了 (问题#19131, 补丁#16015, Sage Weil)
osd:PrimaryLogPG:如果 (pg.deleting) 则不调用 on_shutdown() (问题#19902, 补丁#15065, Kefu Chai)
osd:在没有任何访问权限的池上运行 rados ls 返回没有错误 (问题#20043, 问题#19790, 补丁#16473, Nathan Cutler, Kefu Chai, John Spray, Sage Weil, Brad Hubbard)
osd:ReplicatedPG:解决缓存层 osd 高内存消耗 (问题#20464, 补丁#16169, Peng Xie)
osd:在关闭时重置 snaptrimmer 并不要默认中止泄露的 pg 引用 (问题#19931, 补丁#15322, Greg Farnum)
osd:scrub_to 指定克隆版本,但事务包含头部写入版本 (问题#20041, 补丁#16405, David Zafman)
osd:使用 sdata_lock 持有 osd_lock_ordering_lock 以避免错过唤醒信号 (问题#20427, 补丁#15947, Alexey Sheplyakov)
rbd:api:is_exclusive_lock_owner 不应返回 -EBUSY (问题#20182, 补丁#16296, Jason Dillaman)
rbd:cli:在强制转换之前确保位置参数存在 (问题#20185, 补丁#16295, Jason Dillaman)
rbd:cli:禁用 cephx 时映射会导致错误消息 (问题#19035, 补丁#16297, Jason Dillaman)
rbd:默认功能应与 OSD 协商 (问题#17010, 补丁#14874, Mykola Golub, Jason Dillaman)
rbd:为具有克隆的池启用镜像可能会失败 (问题#19798, 问题#19130, 补丁#14663, Mykola Golub, Jason Dillaman)
rbd-mirror:图像同步应发送 NOCACHE 建议标志 (问题#17127, 补丁#16285, Mykola Golub)
rbd:对象映射:在修剪操作期间进行批量更新 (问题#17356, 补丁#15460, Mykola Golub, Venky Shankar, Nathan Cutler)
rbd:如果图像在读取请求正在进行时展平,则可能导致 IO 挂起 (问题#19832, 补丁#15464, Jason Dillaman)
rbd:rbd_clone_copy_on_read 在排他锁下无效 (问题#18888, 补丁#16124, Nathan Cutler, Venky Shankar, Jason Dillaman)
rbd:rbd-mirror:确保在检测到缺失图像时重新同步 (问题#19811, 补丁#15488, Jason Dillaman)
rbd:rbd-mirror:未修改的图像的故障转移和故障恢复会导致分裂脑 (问题#19858, 补丁#14977, Jason Dillaman)
rbd:rbd-nbd:内核报告无效设备大小(0,预期 1073741824) (问题#19871, 补丁#15463, Mykola Golub)
rgw:添加删除 swift 对象过期的 remove-x-delete 功能 (问题#19074, 补丁#14659, Jing Wenjun)
rgw:aws4:添加 rgw_s3_auth_aws4_force_boto2_compat 配置选项 (问题#16463, 补丁#17009, Javier M. Mellid)
rgw:radosgw-admin 删除桶索引检查会删除有效索引 (问题#18470, 补丁#16856, Zhang Shaowen, Pavan Rallabhandi)
rgw:cls:ceph::timespan tag_timeout 错误单位 (问题#20380, 补丁#16289, Matt Benjamin)
rgw:在从属 zonegroup 中删除非空桶 (问题#19313, 补丁#15477, Zhang Shaowen)
rgw:当缓存值为零时不要减少统计缓存 (问题#20661, 问题#20934, 补丁#16720, Aleksei Gutikov, Pavan Rallabhandi)
rgw:修复列出数据日志时由于分片 id 超出范围而导致的崩溃 (问题#19732, 补丁#15465, redickwang)
rgw:RGWRealmReloader::reload 在 SIGHUP 上挂起 (问题#20686, pr#17281, fang.yuxiang)
rgw:rest api 对于日志列表中的无限循环 (问题#20386, 补丁#15988, xierui, Casey Bodley)
rgw: fix race in RGWCompleteMultipart (issue#20861, pr#16767, Abhishek Varshney, Matt Benjamin)
rgw:一次检查最多 1000 条目 (问题#20772, 补丁#16880, Orit Wasserman, Matt Benjamin)
rgw:以 _ 下划线开头的文件夹不在桶索引中 (问题#19432, 补丁#16276, Giovani Rinaldi, Orit Wasserman)
rgw:‘gc list --include-all’ 命令无限循环前 1000 项 (问题#19978, 补丁#15719, Shasha Lu, fang yuxiang)
rgw:RGWMetaSyncShardCR 中的元数据同步线程崩溃 (问题#20251, 补丁#16711, fang yuxiang, Nathan Cutler)
rgw:multipart copy-part 移除 s3 java sdk 请求标头中的 ‘/’ (问题#20075, 补丁#16266, donglingpeng)
rgw:多部分上传的桶创建版本化桶索引条目 (问题#19604, 问题#17964, 补丁#17278, Zhang Shaowen)
rgw:多站点:在 CreateBucket 转发到主节点后,本地桶可能使用不同的值作为桶索引分片 (问题#19745, 补丁#15450, Shasha Lu)
rgw:多站点:RGWMetaSyncShardCR::full_sync() 失败时未释放锁 (问题#18077, 补丁#17155, Zhang Shaowen)
rgw:多站点:在次要区域上记录元数据会导致元数据同步的连续循环 (问题#20357, 问题#20244, 补丁#17148, Orit Wasserman, Casey Bodley)
rgw:多站点:在 RGWDataSyncShardCR 中失败的租约上出现内存泄漏 (问题#19861, 问题#19834, 问题#19446, 补丁#15457, Casey Bodley, weiqiaomiao)
rgw:多站点:在从属区域上操作桶的 acl&cors 没有受到限制 (问题#16888, 补丁#15453, Casey Bodley, Shasha Lu, Guo Zhandong)
rgw:多站点:rest api 在“period commit”上无法解码大时间段 (问题#19505, 补丁#15447, Casey Bodley)
rgw:RGWPeriodPuller 没有在新的时间段上调用 RGWPeriod::reflect (问题#19816, 问题#19817, 补丁#17167, Casey Bodley)
rgw:多站点:RGWRadosRemoveOmapKeysCR::request_complete 返回值错误 (问题#20539, 补丁#17156, Shasha Lu)
rgw:未初始化的指针导致 rgw 在 ec 数据池中崩溃 (问题#20542, 补丁#17164, Aleksei Gutikov, fang yuxiang)
rgw:radosgw-admin:使用 --bypass-gc 和没有 --purge-data 的桶删除不会报错消息 (问题#20688, 补丁#17159, Abhishek Varshney)
rgw:radosgw-admin data sync 运行崩溃 (问题#20423, 补丁#17165, Shasha Lu)
rgw:radosgw-admin:修复桶限制检查 argparse,div(0) (问题#20966, 补丁#16952, Matt Benjamin)
rgw:将‘storing entry at’ 在 cls_log 中的日志级别降低 (问题#19835, 补丁#15455, Willem Jan Withagen)
rgw:删除不必要的“错误在 read_id for object name: default’ (问题#19922, 补丁#15197, weiqiaomiao)
rgw:在规范查询字符串中用 “%20” 替换 ‘+’ 用于 s3 v4 认证 (问题#20501, 补丁#16951, Zhang Shaowen, Matt Benjamin)
rgw: rgw_common.cc:修改 RGWHTTPArgs::sys_get 中的末尾检查 (问题#16072, 补丁#16268, zhao kun)
rgw:rgw_file:无法删除具有 uxattrs 的桶 (问题#20061, 问题#20047, 问题#19214, 问题#20045, 补丁#15459, Matt Benjamin)
rgw:rgw_file:evict_block() 中的 lanes 锁行为不正确 (issue#19653, pr#15449, Matt Benjamin)
rgw: rgw_file: incorrect lane lock behavior in evict_block() (问题#21141, 补丁#17597, Matt Benjamin)
rgw:rgw_file:防止在重启之间 mkdir 冲突 (问题#20275, 补丁#17147, Gui Hecheng)
rgw:rgw_file:v3 写入计时器不会关闭打开的句柄 (问题#19932, 补丁#15456, Matt Benjamin)
rgw:在创建桶的元数据期间访问未初始化issue#20774, pr#17280, Radoslaw Zarzynski)
rgw: usage logging on tenated buckets causes invalid memory reads (issue#20779, pr#17279, Radoslaw Zarzynski)
rgw: user quota did not work well on multipart upload (issue#19285, issue#19602, pr#17277, Zhang Shaowen)
rgw: VersionIdMarker and NextVersionIdMarker are not returned when listing object versions (issue#19886, pr#16316, Zhang Shaowen)
rgw: when uploading objects continuously into a versioned bucket, some objects will not sync (issue#18208, pr#15452, lvshuhua)
tools: ceph cli: Rados object in state configuring race (issue#16477, pr#15762, Loic Dachary)
tools: ceph-disk: dmcrypt cluster must default to ceph (issue#20893, pr#16870, Loic Dachary)
tools: ceph-disk: don’t activate suppressed journal devices (issue#19489, pr#16703, David Disseldorp)
tools: ceph-disk: separate ceph-osd --check-needs-* logs (issue#19888, pr#15503, Loic Dachary)
tools: ceph-disk: systemd unit timesout too quickly (issue#20229, pr#17133, Loic Dachary)
tools: ceph-disk: Use stdin for ‘config-key put’ command (issue#21059, pr#17084, Brad Hubbard, Loic Dachary, Sage Weil)
tools: libradosstriper processes arbitrary printf placeholders in user input (issue#20240, pr#17574, Stan K)
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
.
显著变化
cephfs: Damaged MDS with 10.2.8 (issue#20599, pr#16282, Nathan Cutler)
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
.
显著变化
librbd: possible race in ExclusiveLock handle_peer_notification (issue#19368, pr#14233, Mykola Golub)
osd: Increase priority for inactive PGs backfill (issue#18350, pr#13232, Bartłomiej Święcki)
osd: Scrub improvements and other fixes (issue#17857, issue#18114, issue#13937, issue#18113, pr#13146, Kefu Chai, David Zafman)
osd: fix OSD network address in OSD heartbeat_check log message (issue#18657, pr#13108, Vikhyat Umrao)
rbd-mirror: deleting a snapshot during sync can result in read errors (issue#18990, pr#13596, Jason Dillaman)
rgw: ‘period update’ does not remove short_zone_ids of deleted zones (issue#15618, pr#14140, Casey Bodley)
rgw: DUMPABLE flag is cleared by setuid preventing coredumps (issue#19089, pr#13844, Brad Hubbard)
rgw: clear data_sync_cr if RGWDataSyncControlCR fails (issue#17569, pr#13886, Casey Bodley)
rgw: fix openssl (issue#11239, issue#19098, issue#16535, pr#14215, Marcus Watts)
rgw: fix swift cannot disable object versioning with empty X-Versions-Location (issue#18852, pr#13823, Jing Wenjun)
rgw: librgw: RGWLibFS::setattr fails on directories (issue#18808, pr#13778, Matt Benjamin)
rgw: make sending Content-Length in 204 and 304 controllable (issue#16602, pr#13503, Radoslaw Zarzynski, Matt Benjamin)
rgw: multipart uploads copy part support (issue#12790, pr#13219, Yehuda Sadeh, Javier M. Mellid, Matt Benjamin)
rgw: multisite: RGWMetaSyncShardControlCR gives up on EIO (issue#19019, pr#13867, Casey Bodley)
rgw: radosgw/swift: clean up flush / newline behavior (issue#18473, pr#14100, Nathan Cutler, Marcus Watts, Matt Benjamin)
rgw: radosgw/swift: clean up flush / newline behavior. (issue#18473, pr#13143, Marcus Watts, Matt Benjamin)
rgw: rgw_fh: RGWFileHandle dtor must also cond-unlink from FHCache (issue#19112, pr#14231, Matt Benjamin)
rgw: rgw_file: avoid interning .. in FHCache table and don’t ref for them (issue#19036, pr#13848, Matt Benjamin)
rgw: rgw_file: interned RGWFileHandle objects need parent refs (issue#18650, pr#13583, Matt Benjamin)
rgw: rgw_file: restore (corrected) fix for dir partial match (return of FLAG_EXACT_MATCH) (issue#19060, issue#18992, issue#19059, pr#13858, Matt Benjamin)
rgw: rgw_file: FHCache residence check should be exhaustive (issue#19111, pr#14169, Matt Benjamin)
rgw: rgw_file: ensure valid_s3_object_name for directories, too (issue#19066, pr#13717, Matt Benjamin)
rgw: rgw_file: fix marker computation (issue#19018, issue#18989, issue#18992, issue#18991, pr#13869, Matt Benjamin)
rgw: rgw_file: wip dir orphan (issue#18992, issue#18989, issue#19018, issue#18991, pr#14205, Gui Hecheng, Matt Benjamin)
rgw: rgw_file: various fixes (pr#14206, Matt Benjamin)
rgw: rgw_file: expand argv (pr#14230, Matt Benjamin)
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
build/ops: add hostname sanity check to run-{c}make-check.sh (issue#18134, pr#12302, Nathan Cutler)
build/ops: add ldap lib to rgw lib deps based on build config (issue#17313, pr#13183, Nathan Cutler)
build/ops: ceph-create-keys loops forever (issue#17753, pr#11884, Alfredo Deza)
build/ops: ceph daemons DUMPABLE flag is cleared by setuid preventing coredumps (issue#17650, pr#11736, Patrick Donnelly)
build/ops: fixed compilation error when --with-radowsgw=no (issue#18512, pr#12729, Pan Liu)
build/ops: fixed the issue when --disable-server, compilation fails. (issue#18120, pr#12239, Pan Liu)
build/ops: fix undefined crypto references with --with-xio (issue#18133, pr#12296, Nathan Cutler)
build/ops: install-deps.sh based on /etc/os-release (issue#18466, issue#18198, pr#12405, Jan Fajerski, Nitin A Kamble, Nathan Cutler)
build/ops: Remove the runtime dependency on lsb_release (issue#17425, pr#11875, John Coyle, Brad Hubbard)
build/ops: rpm: /etc/ceph/rbdmap is packaged with executable access rights (issue#17395, pr#11855, Ken Dreyer)
build/ops: selinux: Allow ceph to manage tmp files (issue#17436, pr#13048, Boris Ranto)
build/ops: systemd: Restart Mon after 10s in case of failure (issue#18635, pr#13058, Wido den Hollander)
build/ops: systemd restarts Ceph Mon to quickly after failing to start (issue#18635, pr#13184, Wido den Hollander)
ceph-disk: fix flake8 errors (issue#17898, pr#11976, Ken Dreyer)
cephfs: fuse client crash when adding a new osd (issue#17270, pr#11860, John Spray)
cli: ceph-disk: convert none str to str before printing it (issue#18371, pr#13187, Kefu Chai)
client: Fix lookup of “/..” in jewel (issue#18408, pr#12766, Jeff Layton)
client: fix stale entries in command table (issue#17974, pr#12137, John Spray)
client: populate metadata during mount (issue#18361, pr#13085, John Spray)
cli: implement functionality for adding, editing and removing omap values with binary keys (issue#18123, pr#12755, Jason Dillaman)
common: Improve linux dcache hash algorithm (issue#17599, pr#11529, Yibo Cai)
common: utime.h: fix timezone issue in round_to_* funcs. (issue#14862, pr#11508, Zhao Chao)
doc: Python Swift client commands in Quick Developer Guide don’t match configuration in vstart.sh (issue#17746, pr#13043, Ronak Jain)
librbd: allow to open an image without opening parent image (issue#18325, pr#13130, Ricardo Dias)
librbd: metadata_set API operation should not change global config setting (issue#18465, pr#13168, Mykola Golub)
librbd: new API method to force break a peer’s exclusive lock (issue#15632, issue#16773, issue#17188, issue#16988, issue#17210, issue#17251, issue#18429, issue#17227, issue#18327, issue#17015, pr#12890, Danny Al-Gaaf, Mykola Golub, Jason Dillaman)
librbd: properly order concurrent updates to the object map (issue#16176, pr#12909, Jason Dillaman)
librbd: restore journal access when force disabling mirroring (issue#17588, pr#11916, Mykola Golub)
mds: Cannot create deep directories when caps contain path=/somepath (issue#17858, pr#12154, Patrick Donnelly)
mds: cephfs metadata pool: deep-scrub error omap_digest != best guess omap_digest (issue#17177, pr#12380, Yan, Zheng)
mds: cephfs test failures (ceph.com/qa is broken, should be download.ceph.com/qa) (issue#18574, pr#13023, John Spray)
mds: ceph-fuse crash during snapshot tests (issue#18460, pr#13120, Yan, Zheng)
mds: ceph_volume_client: fix recovery from partial auth update (issue#17216, pr#11656, Ramana Raja)
mds: ceph_volume_client.py : Error: Can’t handle arrays of non-strings (issue#17800, pr#12325, Ramana Raja)
mds: Cleanly reject session evict command when in replay (issue#17801, pr#12153, Yan, Zheng)
mds: client segfault on ceph_rmdir path / (issue#9935, pr#13029, Michal Jarzabek)
mds: Clients without pool-changing caps shouldn’t be allowed to change pool_namespace (issue#17798, pr#12155, John Spray)
mds: Decode errors on backtrace will crash MDS (issue#18311, pr#12836, Nathan Cutler, John Spray)
mds: false failing to respond to cache pressure warning (issue#17611, pr#11861, Yan, Zheng)
mds: finish clientreplay requests before requesting active state (issue#18461, pr#13113, Yan, Zheng)
mds: fix incorrect assertion in Server::_dir_is_nonempty() (issue#18578, pr#13459, Yan, Zheng)
mds: fix MDSMap upgrade decoding (issue#17837, pr#13139, John Spray, Patrick Donnelly)
mds: fix missing ll_get for ll_walk (issue#18086, pr#13125, Gui Hecheng)
mds: Fix mount root for ceph_mount users and change tarball format (issue#18312, issue#18254, pr#12592, Jeff Layton)
mds: fix null pointer dereference in Locker::handle_client_caps (issue#18306, pr#13060, Yan, Zheng)
mds: lookup of /.. in returns -ENOENT (issue#18408, pr#12783, Jeff Layton)
mds: MDS crashes on missing metadata object (issue#18179, pr#13119, Yan, Zheng)
mds: mds fails to respawn if executable has changed (issue#17531, pr#11873, Patrick Donnelly)
mds: MDS: false failing to respond to cache pressure warning (issue#17716, pr#11856, Yan, Zheng)
mds: MDS goes damaged on blacklist (failed to read JournalPointer: -108 ((108) Cannot send after transport endpoint shutdown) (issue#17236, pr#11413, John Spray)
mds: MDS long-time blocked ops. ceph-fuse locks up with getattr of file (issue#17275, pr#11858, Yan, Zheng)
mds: speed up readdir by skipping unwanted dn (issue#18519, pr#12921, Xiaoxi Chen)
mds: standby-replay daemons can sometimes miss events (issue#17954, pr#13126, John Spray)
mon: cache tiering: base pool last_force_resend not respected (racing read got wrong version) (issue#18366, pr#13115, Sage Weil)
mon: ceph osd down detection behaviour (issue#18104, pr#12677, xie xingguo)
mon: Error EINVAL: removing mon.a at 172.21.15.16:6789/0, there will be 1 monitors (issue#17725, pr#11999, Joao Eduardo Luis)
mon: health does not report pgs stuck in more than one state (issue#17515, pr#11660, Sage Weil)
mon: monitor assertion failure when deactivating mds in (invalid) fscid 0 (issue#17518, pr#11862, Patrick Donnelly)
mon: monitor cannot start because of FAILED assert(info.state == MDSMap::STATE_STANDBY) (issue#18166, pr#13123, John Spray, Patrick Donnelly)
mon: osd flag health message is misleading (issue#18175, pr#13117, Sage Weil)
mon: OSDMonitor: clear jewel+ feature bits when talking to Hammer OSD (issue#18582, pr#13131, Piotr Dałek)
mon: OSDs marked OUT wrongly after monitor failover (issue#17719, pr#11947, Dong Wu)
mon: peon wrongly delete routed pg stats op before receive pg stats ack (issue#18458, pr#13045, Mingxin Liu)
mon: send updated monmap to its subscribers (issue#17558, pr#11743, Kefu Chai)
msgr: don’t truncate message sequence to 32-bits (issue#16122, pr#12416, Yan, Zheng)
msgr: msg/simple: clear_pipe when wait() is mopping up pipes (issue#15784, pr#13062, Sage Weil)
msgr: msg/simple/Pipe: error decoding addr (issue#18072, pr#12291, Sage Weil)
osd: Add config option to disable new scrubs during recovery (issue#17866, pr#11944, Wido den Hollander)
osd: collection_list shadow return value # (issue#17713, pr#11737, Haomai Wang)
osd: do not send ENXIO on misdirected op by default (issue#18751, pr#13255, Sage Weil)
osd: FileStore: fiemap cannot be totally retrieved in xfs when the number of extents > 1364 (issue#17610, pr#11998, Kefu Chai, Ning Yao)
osd: leveldb corruption leads to Operation not permitted not handled and assert (issue#18037, pr#12789, Nathan Cutler)
osd: limit omap data in push op (issue#16128, pr#11991, Wanlong Gao)
osd: osd crashes when radosgw-admin bi list --max-entries=1 command runing (issue#17745, pr#11758, weiqiaomiao)
osd: osd_max_backfills default has changed, documentation should reflect that. (issue#17701, pr#11735, huangjun)
osd: OSDMonitor: only reject MOSDBoot based on up_from if inst matches (issue#17899, pr#12868, Samuel Just)
osd: osd/PG: publish PG stats when backfill-related states change (issue#18369, pr#12875, Alexey Sheplyakov, Sage Weil)
osd: Remove extra call to reg_next_scrub() during splits (issue#16474, pr#11606, David Zafman)
osd: Revert “Merge pull request #12978 from asheplyakov/jewel-18581” (issue#18809, pr#13280, Samuel Just)
osd: update_log_missing does not order correctly with osd_ops (issue#17789, pr#11997, Samuel Just)
qa/tasks: backport rbd_fio fixes to jewel (issue#13512, pr#13104, Ilya Dryomov)
qa/tasks/workunits: backport misc fixes to jewel (issue#18336, pr#12912, Sage Weil)
rados: crash adding snap to purged_snaps in ReplicatedPG::WaitingOnReplicas (part 2) (issue#15943, issue#18504, pr#12791, Samuel Just)
rados: Memory leaks in object_list_begin and object_list_end (issue#18252, pr#13118, Brad Hubbard)
rados: The request lock RPC message might be incorrectly ignored (issue#17030, pr#10865, Jason Dillaman)
rbd: add image id block name prefix APIs (issue#18270, pr#12529, Jason Dillaman)
rbd: add max_part and nbds_max options in rbd nbd map, in order to keep consistent with (issue#18186, pr#12426, Pan Liu)
rbd: Attempting to remove an image w/ incompatible features results in partial removal (issue#18315, pr#13156, Dongsheng Yang)
rbd: bench-write will crash if --io-size is 4G (issue#18422, pr#13129, Gaurav Kumar Garg)
rbd: diff calculate can hide parent extents when examining first snapshot in clone (issue#18068, pr#12322, Jason Dillaman)
rbd: Exclusive lock improperly initialized on read-only image when using snap_set API (issue#17618, pr#11852, Jason Dillaman)
rbd: FAILED assert(m_processing == 0) while running test_lock_fence.sh (issue#17973, pr#12323, Venky Shankar)
rbd: Improve error reporting from rbd feature enable/disable (issue#16985, pr#13157, Gaurav Kumar Garg)
rbd: JournalMetadata flooding with errors when being blacklisted (issue#18243, pr#12739, Jason Dillaman)
rbd: librbd: use proper snapshot when computing diff parent overlap (issue#18200, pr#12649, Xiaoxi Chen)
rbd: partition func should be enabled When load nbd.ko for rbd-nbd (issue#18115, pr#12754, Pan Liu)
rbd: Potential race when removing two-way mirroring image (issue#18447, pr#13233, Mykola Golub)
rbd: [qa] crash in journal-enabled fsx run (issue#18618, pr#13128, Jason Dillaman)
rbd: ‘rbd du’ of missing image does not return error (issue#16987, pr#11854, Dongsheng Yang)
rbd: rbd-mirror: gmock warnings in bootstrap request unit tests (issue#18048, issue#18012, issue#18156, issue#16991, issue#18051, pr#12425, Mykola Golub)
rbd: rbd-mirror: image sync object map reload logs message (issue#16179, pr#12753, runsisi)
rbd: rbd-mirror: snap protect of non-layered image results in split-brain (issue#16962, pr#11869, Mykola Golub)
rbd: [rbd-mirror] sporadic image replayer shut down failure (issue#18441, pr#13155, Jason Dillaman)
rbd: rbd-nbd: disallow mapping images >2TB in size (issue#17219, pr#11870, Mykola Golub)
rbd: rbd-nbd: invalid error code for “failed to read nbd request” messages (issue#18242, pr#12756, Mykola Golub)
rbd: status json format has duplicated/overwritten key (issue#18261, pr#12741, Mykola Golub)
rbd: TestLibRBD.DiscardAfterWrite doesn’t handle rbd_skip_partial_discard = true (issue#17750, pr#11853, Jason Dillaman)
rbd: truncate can cause unflushed snapshot data lose (issue#17193, pr#12324, Yan, Zheng)
: ReplicatedBackend: take read locks for clone sources during recovery (issue#17831, issue#18583, pr#12978, Samuel Just)
rgw: add option to log custom HTTP headers (rgw_log_http_headers) (issue#18891, pr#12490, Matt Benjamin)
rgw: add suport for Swift-at-root dependent features of Swift API (issue#18526, issue#16673, pr#11497, Pritha Srivastava, Radoslaw Zarzynski, Pete Zaitcev, Abhishek Lekshmanan)
rgw: add support for the prefix parameter in account listing of Swift API (issue#17931, pr#12258, Radoslaw Zarzynski)
rgw: Add workaround for upgrade issues for older jewel versions (issue#17820, pr#12316, Orit Wasserman)
rgw: be aware abount tenants on cls_user_bucket -> rgw_bucket conversion (issue#18364, issue#16355, pr#13276, Radoslaw Zarzynski)
rgw: bucket check remove _multipart_ prefix (issue#13724, pr#11470, Weijun Duan)
rgw: bucket resharding (issue#17549, issue#17550, pr#13341, Yehuda Sadeh, Robin H. Johnson)
rgw: disable virtual hosting of buckets when no hostnames are configured (issue#17440, issue#15975, issue#17136, pr#11760, Casey Bodley, Robin H. Johnson)
rgw: do not abort when accept a CORS request with short origin (issue#18187, pr#12397, LiuYang)
rgw: don’t store empty chains in gc (issue#17897, pr#12174, Yehuda Sadeh)
rgw:fix for deleting objects name beginning and ending with underscores of one bucket using POST method of js sdk. (issue#17888, pr#12320, Casey Bodley)
rgw: fix period update crash (issue#18631, pr#13273, Orit Wasserman)
rgw: fix put_acls for objects starting and ending with underscore (issue#17625, pr#11675, Orit Wasserman)
rgw: fix use of marker in List::list_objects() (issue#18331, pr#13358, Yehuda Sadeh)
rgw: for the create_bucket api, if the input creation_time is zero, we … (issue#16597, pr#11990, weiqiaomiao)
rgw: Have a flavor of bucket deletion in radosgw-admin to bypass garbage collection (issue#15557, pr#10661, Pavan Rallabhandi)
rgw: json encode/decode of RGWBucketInfo missing index_type field (issue#17755, pr#11759, Yehuda Sadeh)
rgw: ldap: enforce simple_bind w/LDAPv3 redux (issue#18339, pr#12678, Weibing Zhang)
rgw: leak from RGWMetaSyncShardCR::incremental_sync (issue#18412, issue#18300, pr#13004, Casey Bodley, Sage Weil)
rgw: leak in RGWFetchAllMetaCR (issue#17812, pr#11872, Casey Bodley)
rgw: librgw: objects created from s3 apis are not visible from nfs mount point (issue#18651, pr#13177, Matt Benjamin)
rgw: log name instead of id for SystemMetaObj on failure (issue#15776, pr#12622, Wido den Hollander, Abhishek Lekshmanan)
rgw: multimds: mds entering up:replay and processing down mds aborts (issue#17670, pr#11857, Patrick Donnelly)
rgw: multipart upload copy (issue#12790, pr#13068, Yehuda Sadeh, Javier M. Mellid, Matt Benjamin)
rgw: multisite: after finishing full sync on a bucket, incremental sync starts over from the beginning (issue#17661, issue#17624, pr#11864, Zengran Zhang, Casey Bodley)
rgw: multisite: assert(next) failed in RGWMetaSyncCR (issue#17044, pr#11477, Casey Bodley)
rgw: multisite: coroutine deadlock assertion on error in FetchAllMetaCR (issue#17571, pr#11866, Casey Bodley)
rgw: multisite: coroutine deadlock in RGWMetaSyncCR after ECANCELED errors (issue#17465, pr#12738, Casey Bodley)
rgw: multisite doesn’t retry RGWFetchAllMetaCR on failed lease (issue#17047, pr#11476, Casey Bodley)
rgw: multisite: ECANCELED & 500 error on bucket delete (issue#17698, pr#12044, Casey Bodley)
rgw: multisite: failed assertion in ‘radosgw-admin bucket sync status’ (issue#18083, pr#12314, Casey Bodley)
rgw: multisite: fix ref counting of completions (issue#17792, issue#18414, issue#17793, issue#18407, pr#13001, Casey Bodley)
rgw: multisite: metadata master can get the wrong value for ‘oldest_log_period’ (issue#16894, pr#11868, Casey Bodley)
rgw: multisite: obsolete ‘radosgw-admin period prepare’ command (issue#17387, pr#11574, Gaurav Kumar Garg)
rgw: multisite: race between ReadSyncStatus and InitSyncStatus leads to EIO errors (issue#17568, pr#11865, Casey Bodley)
rgw: multisite requests failing with ‘400 Bad Request’ with civetweb 1.8 (issue#17822, pr#12313, Casey Bodley)
rgw: multisite: segfault after changing value of rgw_data_log_num_shards (issue#18488, pr#13180, Casey Bodley)
rgw: multisite: sync status reports master is on a different period (issue#18064, pr#13175, Abhishek Lekshmanan)
rgw: multisite upgrade from hammer -> jewel ignores rgw_region_root_pool (issue#17963, pr#12156, Casey Bodley)
rgw: radosgw-admin period update reverts deleted zonegroup (issue#17239, pr#13171, Orit Wasserman)
rgw: Realm set does not create a new period (issue#18333, pr#13182, Orit Wasserman)
rgw: remove spurious mount entries for RGW buckets (issue#17850, pr#12045, Matt Benjamin)
rgw: Replacing ‘+’ with “%20” in canonical uri for s3 v4 auth. (issue#17076, pr#12542, Pritha Srivastava)
rgw: rgw-admin: missing command to modify placement targets (issue#18078, pr#12428, Yehuda Sadeh, Casey Bodley)
rgw: RGWRados::get_system_obj() sends unnecessary stat request before read (issue#17580, pr#11867, Casey Bodley)
rgw: rgw_rest_s3: apply missed base64 try-catch (issue#17663, pr#11672, Matt Benjamin)
rgw: RGW will not list Argonaut-era bucket via HTTP (but radosgw-admin works) (issue#17372, pr#11863, Yehuda Sadeh)
rgw: sends omap_getvals with (u64)-1 limit (issue#17985, pr#12419, Yehuda Sadeh, Sage Weil)
rgw: slave zonegroup cannot enable the bucket versioning (issue#18003, pr#13173, Orit Wasserman)
rgw: TempURL properly handles accounts created with the implicit tenant (issue#17961, pr#12079, Radoslaw Zarzynski)
rgw: the value of total_time is wrong in the result of ‘radosgw-admin log show’ opt (issue#17598, pr#11876, weiqiaomiao)
rgw: Unable to commit period zonegroup change (issue#17364, pr#12315, Orit Wasserman)
rgw: valgrind “invalid read size 4” RGWGetObj (issue#18071, pr#12997, Matt Benjamin)
rgw: work around curl_multi_wait bug with non-blocking reads (issue#15915, issue#16368, issue#16695, pr#11627, John Coyle, Casey Bodley)
tests: add require_jewel_osds before upgrading last hammer node (issue#18719, pr#13161, Nathan Cutler)
tests: add require_jewel_osds to upgrade/hammer-x/tiering (issue#18920, pr#13404, Nathan Cutler)
tests: assertion failure in a radosgw-admin related task (issue#17167, pr#12764, Orit Wasserman)
tests: Cannot reserve CentOS 7.2 smithi machines (issue#18416, issue#18401, pr#13050, Nathan Cutler, Sage Weil, Yuri Weinstein)
tests: ignore bogus ceph-objectstore-tool error in ceph_manager (issue#16263, pr#13240, Nathan Cutler, Kefu Chai)
tests: objecter_requests workunit fails on wip branches (issue#18393, pr#12761, Sage Weil)
tests: qa/suites/upgrade/hammer-x: break stress split ec symlinks (issue#19006, pr#13533, Nathan Cutler)
tests: qa/suites/upgrade/hammer-x/stress-split: finish thrashing before final upgrade (issue#19004, pr#13222, Sage Weil)
tests: qa/tasks/ceph_deploy.py: use dev option (issue#18736, pr#13106, Vasu Kulkarni)
tests: qa/workunits/rbd: use more recent qemu-iotests that support Xenial (issue#18149, issue#10773, pr#13103, Jason Dillaman)
tests: remove qa/suites/buildpackages (issue#18846, pr#13299, Loic Dachary)
tests: SUSE yaml facets in qa/distros/all are out of date (issue#18856, issue#18846, pr#13331, Nathan Cutler)
tests: update rbd/singleton/all/formatted-output.yaml to support ceph-ci (issue#18440, pr#12822, Nathan Cutler, Venky Shankar)
tests: update Ubuntu image url after ceph.com refactor (issue#18542, pr#12959, Jason Dillaman)
tests: upgrade:hammer-x: install firefly only on Ubuntu 14.04 (issue#18089, pr#13153, Nathan Cutler)
tests: use ceph-jewel branch for s3tests (issue#18384, pr#12745, Nathan Cutler)
tests: Workunits needlessly wget from git.ceph.com (issue#18336, issue#18271, issue#18388, pr#12686, Nathan Cutler, Sage Weil)
test: temporarily disable fork()’ing tests (issue#16556, issue#17832, pr#11953, John Spray)
test: test fails due to The UNIX domain socket path (issue#16014, pr#12151, Loic Dachary)
tools: ceph-disk: ceph-disk@.service races with ceph-osd@.service (issue#17889, issue#17813, pr#12147, Loic Dachary)
tools: ceph-disk --dmcrypt create must not require admin key (issue#17849, pr#12033, Loic Dachary)
tools: ceph-disk prepare writes osd log 0 with root owner (issue#18538, pr#13025, Samuel Matzek)
tools: crushtool --compile is create output despite of missing item (issue#17306, pr#11410, Kefu Chai)
tools: rados bench seq must verify the hostname (issue#17526, pr#13049, Loic Dachary)
tools: snapshotted RBD extent objects can’t be manually evicted from a cache tier (issue#17896, pr#11968, Mingxin Liu)
tools: systemd/ceph-disk: reduce ceph-disk flock contention (issue#18049, issue#13160, pr#12210, David Disseldorp)
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
.
msg/simple/Pipe: avoid returning 0 on poll timeout (issue#18185, pr#12376, Sage Weil)
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
.
build/ops: aarch64: Compiler-based detection of crc32 extended CPU type is broken (issue#17516, pr#11492, Alexander Graf)
build/ops: allow building RGW with LDAP disabled (issue#17312, pr#11478, Daniel Gryniewicz)
build/ops: backport ‘logrotate: Run as root/ceph’ (issue#17381, pr#11201, Boris Ranto)
build/ops: ceph installs stuff in %_udevrulesdir but does not own that directory (issue#16949, pr#10862, Nathan Cutler)
build/ops: ceph-osd-prestart.sh fails confusingly when data directory does not exist (issue#17091, pr#10812, Nathan Cutler)
build/ops: disable LTTng-UST in openSUSE builds (issue#16937, pr#10794, Michel Normand)
build/ops: i386 tarball gitbuilder failure on master (issue#16398, pr#10855, Vikhyat Umrao, Kefu Chai)
build/ops: include more files in “make dist” tarball (issue#17560, pr#11431, Ken Dreyer)
build/ops: incorrect value of CINIT_FLAG_DEFER_DROP_PRIVILEGES (issue#16663, pr#10278, Casey Bodley)
build/ops: remove SYSTEMD_RUN from initscript (issue#7627, issue#16441, issue#16440, pr#9872, Vladislav Odintsov)
build/ops: systemd: add install section to rbdmap.service file (issue#17541, pr#11158, Jelle vd Kooij)
common: Enable/Disable of features is allowed even the features are already enabled/disabled (issue#16079, pr#11460, Lu Shi)
common: Log.cc: Assign LOG_INFO priority to syslog calls (issue#15808, pr#11231, Brad Hubbard)
common: Proxied operations shouldn’t result in error messages if replayed (issue#16130, pr#11461, Vikhyat Umrao)
common: Request exclusive lock if owner sends -ENOTSUPP for proxied maintenance op (issue#16171, pr#10784, Jason Dillaman)
common: msgr/async: Messenger thread long time lock hold risk (issue#15758, pr#10761, Wei Jin)
doc: fix description for rsize and rasize (issue#17357, pr#11171, Andreas Gerstmayr)
filestore: can get stuck in an unbounded loop during scrub (issue#17859, pr#12001, Sage Weil)
fs: Failure in snaptest-git-ceph.sh (issue#17172, pr#11419, Yan, Zheng)
fs: Log path as well as ino when detecting metadata damage (issue#16973, pr#11418, John Spray)
fs: client: FAILED assert(root_ancestor->qtree == __null) (issue#16066, issue#16067, pr#10107, Yan, Zheng)
fs: client: add missing client_lock for get_root (issue#17197, pr#10921, Patrick Donnelly)
fs: client: fix shutdown with open inodes (issue#16764, pr#10958, John Spray)
fs: client: nlink count is not maintained correctly (issue#16668, pr#10877, Jeff Layton)
fs: multimds: allow_multimds not required when max_mds is set in ceph.conf at startup (issue#17105, pr#10997, Patrick Donnelly)
librados: memory leaks from ceph::crypto (WITH_NSS) (issue#17205, pr#11409, Casey Bodley)
librados: modify Pipe::connect() to return the error code (issue#15308, pr#11193, Vikhyat Umrao)
librados: remove new setxattr overload to avoid breaking the C++ ABI (issue#18058, pr#12207, Josh Durgin)
librbd: cannot disable journaling or remove non-mirrored, non-primary image (issue#16740, pr#11337, Jason Dillaman)
librbd: discard after write can result in assertion failure (issue#17695, pr#11644, Jason Dillaman)
librbd::Operations: update notification failed: (2) No such file or directory (issue#17549, pr#11420, Jason Dillaman)
mds: Crash in Client::_invalidate_kernel_dcache when reconnecting during unmount (issue#17253, pr#11414, Yan, Zheng)
mds: Duplicate damage table entries (issue#17173, pr#11412, John Spray)
mds: Failure in dirfrag.sh (issue#17286, pr#11416, Yan, Zheng)
mds: Failure in snaptest-git-ceph.sh (issue#17271, pr#11415, Yan, Zheng)
mon: Ceph Status - Segmentation Fault (issue#16266, pr#11408, Brad Hubbard)
mon: Display full flag in ceph status if full flag is set (issue#15809, pr#9388, Vikhyat Umrao)
mon: Error EINVAL: removing mon.a at 172.21.15.16:6789/0, there will be 1 monitors (issue#17725, pr#12267, Joao Eduardo Luis)
mon: OSDMonitor: only reject MOSDBoot based on up_from if inst matches (issue#17899, pr#12067, Samuel Just)
mon: OSDMonitor: Missing nearfull flag set (issue#17390, pr#11272, Igor Podoski)
mon: Upgrading 0.94.6 -> 0.94.9 saturating mon node networking (issue#17365, issue#17386, pr#11679, Sage Weil, xie xingguo)
mon: ceph mon Segmentation fault after set crush_ruleset ceph 10.2.2 (issue#16653, pr#10861, song baisen)
mon: crash: crush/CrushWrapper.h: 940: FAILED assert(successful_detach) (issue#16525, pr#10496, Kefu Chai)
mon: don’t crash on invalid standby_for_fscid (issue#17466, pr#11389, John Spray)
mon: fix missing osd metadata (again) (issue#17685, pr#11642, John Spray)
mon: osdmonitor: decouple adjust_heartbeat_grace and min_down_reporters (issue#17055, pr#10757, Zengran Zhang)
mon: the %USED of ceph df is wrong (issue#16933, pr#10860, Kefu Chai)
osd: condition OSDMap encoding on features (issue#18015, pr#12167, Sage Weil)
osd: PG::_update_calc_stats wrong for CRUSH_ITEM_NONE up set items (issue#16998, pr#10883, Samuel Just)
osd: PG::choose_acting valgrind error or ./common/hobject.h: 182: FAILED assert(!max || (*this == hobject_t(hobject_t::get_max()))) (issue#13967, pr#10885, Tao Chang)
osd: Potential crash during journal::Replay shut down (issue#16433, pr#10645, Jason Dillaman)
osd: add peer_addr in heartbeat_check log message (issue#15762, pr#9739, Vikhyat Umrao, Sage Weil)
osd: adjust scrub boundary to object without SnapSet (issue#17470, pr#11311, Samuel Just)
osd: ceph osd df does not show summarized info correctly if one or more OSDs are out (issue#16706, pr#10759, xie xingguo)
osd: journal: do not prematurely flag object recorder as closed (issue#17590, pr#11634, Jason Dillaman)
osd: mark_all_unfound_lost() leaves unapplied changes (issue#16156, pr#10886, Samuel Just)
osd: segfault in ObjectCacher::FlusherThread (issue#16610, pr#10864, Yan, Zheng)
qa: remove EnumerateObjects from librados upgrade tests (pr#11728, Josh Durgin)
rbd: Disabling pool mirror mode with registered peers results orphaned mirrored images (issue#16984, pr#10857, Jason Dillaman)
rbd: ImageWatcher: use after free within C_UnwatchAndFlush (issue#17289, issue#17254, pr#11466, Jason Dillaman)
rbd: Prevent the creation of a clone from a non-primary mirrored image (issue#16449, pr#10650, Mykola Golub)
rbd: RBD should restrict mirror enable/disable actions on parents/clones (issue#16056, pr#11459, zhuangzeqiang)
rbd: TestJournalReplay: sporadic assert(m_state == STATE_READY || m_state == STATE_STOPPING) failure (issue#17566, pr#11590, Jason Dillaman)
rbd: bench io-size should not be larger than image size (issue#16967, pr#10796, Jason Dillaman)
rbd: ceph 10.2.2 rbd status on image format 2 returns (2) No such file or directory (issue#16887, pr#10652, Jason Dillaman)
rbd: helgrind: TestLibRBD.TestIOPP potential deadlock closing an image with read-ahead enabled (issue#17198, pr#11463, Jason Dillaman)
rbd: image.stat() call in librbdpy fails sometimes (issue#17310, pr#11464, Jason Dillaman)
rbd: krbd qa scripts and concurrent.sh test fix (issue#17223, pr#11018, Ilya Dryomov)
rbd: krbd-related CLI patches (issue#17554, pr#11400, Ilya Dryomov)
rbd: mirror: improve resiliency of stress test case (issue#16855, issue#16555, issue#14738, issue#15259, issue#17446, issue#17355, issue#16538, issue#16974, issue#17283, issue#17317, issue#17416, issue#16227, pr#11433, Mykola Golub, Ricardo Dias, Jason Dillaman)
rbd: rbd-nbd IO hang (issue#16921, pr#11467, Jason Dillaman)
rbd: update_features API needs to support backwards/forward compatibility (issue#17330, pr#11462, Jason Dillaman)
rgw: COPY broke multipart files uploaded under dumpling (issue#16435, pr#10866, Yehuda Sadeh)
rgw: Config parameter rgw keystone make new tenants in radosgw multitenancy does not work (issue#17293, pr#11473, SirishaGuduru)
rgw: Do not archive metadata by default (issue#17256, pr#11321, Pavan Rallabhandi, Matt Benjamin)
rgw: ERROR: got unexpected error when trying to read object: -2 (issue#17111, pr#11472, Yang Honggang)
rgw: Modification for TEST S3 ACCESS section in INSTALL CEPH OBJECT GATEWAY page (issue#15603, pr#11475, la-sguduru)
rgw: RGW loses realm/period/zonegroup/zone data: period overwritten if somewhere in the cluster is still running Hammer (issue#17371, pr#11519, Orit Wasserman)
rgw: RGWDataSyncCR fails on errors from RGWListBucketIndexesCR (issue#17073, pr#11330, Casey Bodley)
rgw: S3 object versioning fails when applied on a non-master zone (issue#16494, pr#11367, Yehuda Sadeh)
rgw: add orphan options to radosgw-admin --help and man page (issue#17281, issue#17280, pr#11139, Ken Dreyer, Thomas Serlin)
rgw: back off bucket sync on failures, don’t store marker (issue#16742, pr#11021, Yehuda Sadeh)
rgw: combined LDAP backports (issue#17544, issue#17185, pr#11332, Harald Klein, Matt Benjamin)
rgw: cors auto memleak (issue#16564, pr#10656, Yan Jun)
rgw: default quota fixes (issue#16410, pr#10832, Pavan Rallabhandi, Daniel Gryniewicz)
rgw: doc: description of multipart part entity is wrong (issue#17504, pr#11342, weiqiaomiao)
rgw: don’t loop forever when reading data from 0 sized segment. (issue#17692, pr#11626, Marcus Watts)
rgw: fix put_acls for objects starting and ending with underscore (issue#17625, pr#11669, Orit Wasserman)
rgw: fix regression with handling double underscore (issue#17443, issue#16856, pr#11563, Yehuda Sadeh, Orit Wasserman)
rgw: handle empty POST condition (issue#17635, pr#11662, Yehuda Sadeh)
rgw: metadata sync can skip markers for failed/incomplete entries (issue#16759, pr#10657, Yehuda Sadeh)
rgw: nfs backports (issue#17393, issue#17311, issue#17367, issue#17319, issue#17321, issue#17322, issue#17323, issue#17325, issue#17326, issue#17327, pr#11335, Min Chen, Yan Jun, Weibing Zhang, Matt Benjamin)
rgw: period commit loses zonegroup changes: region_map converted repeatedly (issue#17051, pr#10890, Casey Bodley)
rgw: period commit return error when the current period has a zonegroup which doesn’t have a master zone (issue#17110, pr#10867, weiqiaomiao)
rgw: radosgw daemon core when reopen logs (issue#17036, pr#10868, weiqiaomiao)
rgw: rgw file uses too much CPU in gc/idle thread (issue#16976, pr#10889, Matt Benjamin)
rgw: s3tests-test-readwrite failing with 500 (issue#16930, pr#11471, Yehuda Sadeh)
rgw: upgrade from old multisite to new multisite fails (issue#16751, pr#10891, Orit Wasserman)
rgw:response information is error when geting token of swift account (issue#15195, pr#11474, Qiankun Zheng)
rgw:user email can modify to empty when it has values (issue#13286, pr#11469, Yehuda Sadeh, Weijun Duan)
tests: ceph-disk must ignore debug monc (issue#17607, pr#11548, Loic Dachary)
tests: fix TestClsRbd.mirror_image failure in upgrade:jewel-x-master-distro-basic-vps (issue#16529, pr#10888, Jason Dillaman)
tests: scsi_debug fails /dev/disk/by-partuuid (issue#17100, pr#11411, Loic Dachary)
tests: test/ceph_test_msgr: do not use Message::middle for holding transient… (issue#17365, issue#17728, issue#16955, pr#11742, Haomai Wang, Kefu Chai, Michal Jarzabek, Sage Weil)
tools: Missing comma in ceph-create-keys causes concatenation of arguments (issue#17815, pr#11822, Patrick Donnelly)
tools: add a tool to rebuild mon store from OSD (issue#17179, issue#17400, pr#11126, Kefu Chai, xie xingguo)
tools: ceph-create-keys: sometimes blocks forever if mds allow is set (issue#16255, pr#11417, John Spray)
tools: ceph-disk should timeout when a lock cannot be acquired (issue#16580, pr#10758, Loic Dachary)
tools: ceph-disk: expected systemd unit failures are confusing (issue#15990, pr#10884, Boris Ranto)
tools: ceph-disk: using a regular file as a journal fails (issue#16280, issue#17662, pr#11657, Jayashree Candadai, Anirudha Bose, Loic Dachary, Shylesh Kumar)
tools: ceph-objectstore-tool crashes if --journal-path <a-directory> (issue#17307, pr#11407, Kefu Chai)
tools: ceph-objectstore-tool: add a way to split filestore directories offline (issue#17220, pr#11252, Josh Durgin)
tools: ceph-post-file: use new ssh key (issue#14267, pr#11746, David Galloway)
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
.
显著变化
build/ops: 60-ceph-partuuid-workaround-rules still needed by debian jessie (udev 215-17) (issue#16351, pr#10653, runsisi, Loic Dachary)
build/ops: ceph Resource Agent does not work with systemd (issue#14828, pr#9917, Nathan Cutler)
build/ops: ceph-base requires parted (issue#16095, pr#10008, Ken Dreyer)
build/ops: ceph-osd-prestart.sh contains Upstart-specific code (issue#15984, pr#10364, Nathan Cutler)
build/ops: mount.ceph: move from ceph-base to ceph-common and add symlink in /sbin for SUSE (issue#16598, issue#16645, pr#10357, Nathan Cutler, Dan Horák, Ricardo Dias, Kefu Chai)
build/ops: need rocksdb commit 7ca731b12ce for ppc64le build (issue#17092, pr#10816, Nathan Cutler)
build/ops: rpm: OBS needs ExclusiveArch (issue#16936, pr#10614, Michel Normand)
cli: ceph command line tool chokes on ceph –w (the dash is unicode ‘en dash’ &ndash, copy-paste to reproduce) (issue#12287, pr#10420, Oleh Prypin, Kefu Chai)
common: expose buffer const_iterator symbols (issue#16899, pr#10552, Noah Watkins)
common: global-init: fixup chown of the run directory along with log and asok files (issue#15607, pr#8754, Karol Mroz)
fs: ceph-fuse: link to libtcmalloc or jemalloc (issue#16655, pr#10303, Yan, Zheng)
fs: client: crash in unmount when fuse_use_invalidate_cb is enabled (issue#16137, pr#10106, Yan, Zheng)
fs: client: fstat cap release (issue#15723, pr#9562, Yan, Zheng, Noah Watkins)
fs: essential backports for OpenStack Manila (issue#15406, issue#15614, issue#15615, pr#10453, John Spray, Ramana Raja, Xiaoxi Chen)
fs: fix double-unlock on shutdown (issue#17126, pr#10847, Greg Farnum)
fs: fix mdsmap print_summary with standby replays (issue#15705, pr#9547, John Spray)
fs: fuse mounted file systems fails SAMBA CTDB ping_pong rw test with v9.0.2 (issue#12653, issue#15634, pr#10108, Yan, Zheng)
librados: Missing export for rados_aio_get_version in src/include/rados/librados.h (issue#15535, pr#9574, Jim Wright)
librados: osd: bad flags can crash the osd (issue#16012, pr#9997, Sage Weil)
librbd: Close journal and object map before flagging exclusive lock as released (issue#16450, pr#10053, Jason Dillaman)
librbd: Crash when utilizing advisory locking API functions (issue#16364, pr#10051, Jason Dillaman)
librbd: ExclusiveLock object leaked when switching to snapshot (issue#16446, pr#10054, Jason Dillaman)
librbd: FAILED assert(object_no < m_object_map.size()) (issue#16561, pr#10647, Jason Dillaman)
librbd: Image removal doesn’t necessarily clean up all rbd_mirroring entries (issue#16471, pr#10009, Jason Dillaman)
librbd: Object map/fast-diff invalidated if journal replays the same snap remove event (issue#16350, pr#10010, Jason Dillaman)
librbd: Timeout sending mirroring notification shouldn’t result in failure (issue#16470, pr#10052, Jason Dillaman)
librbd: Whitelist EBUSY error from snap unprotect for journal replay (issue#16445, pr#10055, Jason Dillaman)
librbd: cancel all tasks should wait until finisher is done (issue#16517, pr#9752, Haomai Wang)
librbd: delay acquiring lock if image watch has failed (issue#16923, pr#10827, Jason Dillaman)
librbd: fix missing return statement if failed to get mirror image state (issue#16600, pr#10144, runsisi)
librbd: flag image as updated after proxying maintenance op (issue#16404, pr#9883, Jason Dillaman)
librbd: mkfs.xfs slow performance with discards and object map (issue#16707, issue#16689, pr#10649, Jason Dillaman)
librbd: potential use after free on refresh error (issue#16519, pr#9952, Mykola Golub)
librbd: rbd-nbd does not properly handle resize notifications (issue#15715, pr#10679, Mykola Golub)
librbd: the option ‘rbd_cache_writethrough_until_flush=true’ dosn’t work (issue#16740, issue#16386, issue#16708, issue#16654, issue#16478, pr#10797, Mykola Golub, xinxin shu, Xiaowei Chen, Jason Dillaman)
mds: tell command blocks forever with async messenger (TestVolumeClient.test_evict_client failure) (issue#16288, pr#10501, Douglas Fuller)
mds: Confusing MDS log message when shut down with stalled journaler reads (issue#15689, pr#9557, John Spray)
mds: Deadlock on shutdown active rank while busy with metadata IO (issue#16042, pr#10502, Patrick Donnelly)
mds: Failing file operations on kernel based cephfs mount point leaves unaccessible file behind on hammer 0.94.7 (issue#16013, pr#10199, Yan, Zheng)
mds: Fix shutting down mds timed-out due to deadlock (issue#16396, pr#10500, Zhi Zhang)
mds: MDSMonitor fixes (issue#16136, pr#9561, xie xingguo)
mds: MDSMonitor::check_subs() is very buggy (issue#16022, pr#10103, Yan, Zheng)
mds: Session::check_access() is buggy (issue#16358, pr#10105, Yan, Zheng)
mds: StrayManager.cc: 520: FAILED assert(dnl->is_primary()) (issue#15920, pr#9559, Yan, Zheng)
mds: enforce a dirfrag limit on entries (issue#16164, pr#10104, Patrick Donnelly)
mds: fix SnapRealm::have_past_parents_open() (issue#16299, pr#10499, Yan, Zheng)
mds: fix getattr starve setattr (issue#16154, pr#9560, Yan, Zheng)
mds: wrongly treat symlink inode as normal file/dir when symlink inode is stale on kcephfs (issue#15702, pr#9405, Zhi Zhang)
mon: “mon metadata” fails when only one monitor exists (issue#15866, pr#10654, John Spray, Kefu Chai)
mon: Monitor: validate prefix on handle_command() (issue#16297, pr#10036, You Ji)
mon: OSDMonitor: drop pg temps from not the current primary (issue#16127, pr#9998, Samuel Just)
mon: prepare_pgtemp needs to only update up_thru if newer than the existing one (issue#16185, pr#10001, Samuel Just)
msgr: AsyncConnection::lockmsg/async lockdep cycle: AsyncMessenger::lock, MDSDaemon::mds_lock, AsyncConnection::lock (issue#16237, pr#10004, Haomai Wang)
msgr: async messenger mon crash (issue#16378, issue#16418, pr#9996, Haomai Wang)
msgr: backports of all asyncmsgr fixes to jewel (issue#15503, issue#15372, pr#9633, Yan Jun, Haomai Wang, Piotr Dałek)
msgr: msg/async: connection race hang (issue#15849, pr#10003, Haomai Wang)
osd: FileStore: umount hang because sync thread doesn’t exit (issue#15695, pr#9105, Kefu Chai)
osd: Fixes for list-inconsistent-* (issue#15766, issue#16192, issue#15719, pr#9565, David Zafman)
osd: New pools have bogus stuck inactive/unclean HEALTH_ERR messages until they are first active and clean (issue#14952, pr#10007, Sage Weil)
osd: OSD crash with Hammer to Jewel Upgrade: void FileStore::init_temp_collections() (issue#16672, pr#10561, David Zafman)
osd: OSD failed to subscribe skipped osdmaps after ceph osd pause (issue#17023, pr#10804, Kefu Chai)
osd: ObjectCacher split BufferHead read fix (issue#16002, pr#10074, Greg Farnum)
osd: ReplicatedBackend doesn’t increment stats on pull, only push (issue#16277, pr#10421, Kefu Chai)
osd: Scrub error: 0/1 pinned (issue#15952, pr#9576, Samuel Just)
osd: crash adding snap to purged_snaps in ReplicatedPG::WaitingOnReplicas (issue#15943, pr#9575, Samuel Just)
osd: partprobe intermittent issues during ceph-disk prepare (issue#15176, pr#10497, Marius Vollmer, Loic Dachary)
osd: saw valgrind issues in ReplicatedPG::new_repop (issue#16801, pr#10760, Kefu Chai)
osd: sparse_read on ec pool should return extends with correct offset (issue#16138, pr#10006, kofiliu)
osd:sched_time not actually randomized (issue#15890, pr#9578, xie xingguo)
rbd: ImageReplayer::is_replaying does not include flush state (issue#16970, pr#10790, Jason Dillaman)
rbd: Journal duplicate op detection can cause lockdep error (issue#16363, pr#10044, Jason Dillaman)
rbd: Journal needs to handle duplicate maintenance op tids (issue#16362, pr#10045, Jason Dillaman)
rbd: Unable to disable journaling feature if in unexpected mirror state (issue#16348, pr#10042, Jason Dillaman)
rbd: bashism in src/rbdmap (issue#16608, pr#10786, Jason Dillaman)
rbd: doc: format 2 now is the default image format (issue#17026, pr#10732, Chengwei Yang)
rbd: hen journaling is enabled, a flush request shouldn’t flush the cache (issue#15761, pr#10041, Yuan Zhou)
rbd: possible race condition during journal transition from replay to ready (issue#16198, pr#10047, Jason Dillaman)
rbd: qa/workunits/rbd: respect RBD_CREATE_ARGS environment variable (issue#16289, pr#9721, Mykola Golub)
rbd: rbd-mirror should disable proxied maintenance ops for non-primary image (issue#16411, pr#10050, Jason Dillaman)
rbd: rbd-mirror: FAILED assert(m_local_image_ctx->object_map != nullptr) (issue#16558, pr#10646, Jason Dillaman)
rbd: rbd-mirror: FAILED assert(m_on_update_status_finish == nullptr) (issue#16956, pr#10792, Jason Dillaman)
rbd: rbd-mirror: FAILED assert(m_state == STATE_STOPPING) (issue#16980, pr#10791, Jason Dillaman)
rbd: rbd-mirror: ensure replay status formatter has completed before stopping replay (issue#16352, pr#10043, Jason Dillaman)
rbd: rbd-mirror: include local pool id in resync throttle unique key (issue#16536, issue#15239, issue#16488, issue#16491, issue#16329, issue#15108, issue#15670, pr#10678, Ricardo Dias, Jason Dillaman)
rbd: rbd-mirror: potential race condition accessing local image journal (issue#16230, pr#10046, Jason Dillaman)
rbd: rbd-mirror: reduce memory footprint during journal replay (issue#16321, issue#16489, issue#16539, issue#16539, issue#16223, issue#16349, pr#10684, Mykola Golub, Jason Dillaman)
rgw: A query on a static large object fails with 404 error (issue#16015, pr#9544, Radoslaw Zarzynski)
rgw: Add zone rename to radosgw_admin (issue#16934, pr#10663, Shilpa Jagannath)
rgw: Bucket index shards orphaned after bucket delete (issue#16412, pr#10525, Orit Wasserman)
rgw: Bug when using port 443s in rgw. (issue#16548, pr#10664, Pritha Srivastava)
rgw: Fallback to Host header for bucket name. (issue#15975, pr#10693, Robin H. Johnson)
rgw: Fix civetweb IPv6 (issue#16928, pr#10580, Robin H. Johnson)
rgw: Increase log level for messages occuring while running rgw admin command (issue#16935, pr#10765, Shilpa Jagannath)
rgw: No Last-Modified, Content-Size and X-Object-Manifest headers if no segments in DLO manifest (issue#15812, pr#9265, Radoslaw Zarzynski)
rgw: RGWPeriodPuller tries to pull from itself (issue#16939, pr#10764, Casey Bodley)
rgw: Set Access-Control-Allow-Origin to a Asterisk if allowed in a rule (issue#15348, pr#9453, Wido den Hollander)
rgw: Swift API returns double space usage and objects of account metadata (issue#16188, pr#10148, Albert Tu)
rgw: account/container metadata not actually present in a request are deleted during POST through Swift API (issue#15977, issue#15779, pr#9542, Radoslaw Zarzynski)
rgw: add socket backlog setting for via ceph.conf (issue#16406, pr#10216, Feng Guo)
rgw: add tenant support to multisite sync (issue#16469, issue#16121, issue#16665, pr#10845, Yehuda Sadeh, Josh Durgin, Casey Bodley, Pritha Srivastava)
rgw: add_zone only clears master_zone if --master=false (issue#15901, pr#9327, Casey Bodley)
rgw: aws4 parsing issue (issue#15940, issue#15939, pr#9545, Yehuda Sadeh)
rgw: aws4: add STREAMING-AWS4-HMAC-SHA256-PAYLOAD support (issue#16146, pr#10167, Radoslaw Zarzynski, Javier M. Mellid)
rgw: backport merge of static sites fixes (issue#15555, issue#15532, issue#15531, pr#9568, Robin H. Johnson)
rgw: can set negative max_buckets on RGWUserInfo (issue#14534, pr#10655, Yehuda Sadeh)
rgw: cleanup radosgw-admin temp command as it was deprecated (issue#16023, pr#9390, Vikhyat Umrao)
rgw: comparing return code to ERR_NOT_MODIFIED in rgw_rest_s3.cc (needs minus sign) (issue#16327, pr#9790, Nathan Cutler)
rgw: custom metadata aren’t camelcased in Swift’s responses (issue#15902, pr#9267, Radoslaw Zarzynski)
rgw: data sync stops after getting error in all data log sync shards (issue#16530, pr#10073, Yehuda Sadeh)
rgw: default zone and zonegroup cannot be added to a realm (issue#16839, pr#10658, Casey Bodley)
rgw: document multi tenancy (issue#16635, pr#10217, Pete Zaitcev)
rgw: don’t unregister request if request is not connected to manager (issue#15911, pr#9242, Yehuda Sadeh)
rgw: failed to create bucket after upgrade from hammer to jewel (issue#16627, pr#10524, Orit Wasserman)
rgw: fix ldap bindpw parsing (issue#16286, pr#10518, Matt Benjamin)
rgw: fix multi-delete query param parsing. (issue#16618, pr#10188, Robin H. Johnson)
rgw: improve support for Swift’s object versioning. (issue#15925, pr#10710, Radoslaw Zarzynski)
rgw: initial slashes are not properly handled in Swift’s BulkDelete (issue#15948, pr#9316, Radoslaw Zarzynski)
rgw: master: build failures with boost > 1.58 (issue#16392, issue#16391, pr#10026, Abhishek Lekshmanan)
rgw: multisite segfault on ~RGWRealmWatcher if realm was deleted (issue#16817, pr#10660, Casey Bodley)
rgw: multisite sync races with deletes (issue#16222, issue#16464, issue#16220, issue#16143, pr#10293, Yehuda Sadeh, Casey Bodley)
rgw: multisite: preserve zone’s extra pool (issue#16712, pr#10537, Abhishek Lekshmanan)
rgw: object expirer’s hints might be trimmed without processing in some circumstances (issue#16705, issue#16684, pr#10763, Radoslaw Zarzynski)
rgw: radosgw-admin failure for user create after upgrade from hammer to jewel (issue#15937, pr#9294, Orit Wasserman, Abhishek Lekshmanan)
rgw: radosgw-admin: EEXIST messages for create operations (issue#15720, pr#9268, Abhishek Lekshmanan)
rgw: radosgw-admin: inconsistency in uid/email handling (issue#13598, pr#10520, Matt Benjamin)
rgw: realm pull fails when using apache frontend (issue#15846, pr#9266, Orit Wasserman)
rgw: retry on bucket sync errors (issue#16108, pr#9425, Yehuda Sadeh)
rgw: s3website: x-amz-website-redirect-location header returns malformed HTTP response (issue#15531, pr#9099, Robin H. Johnson)
rgw: segfault in RGWOp_MDLog_Notify (issue#16666, pr#10662, Casey Bodley)
rgw: segmentation fault on error_repo in data sync (issue#16603, pr#10523, Casey Bodley)
rgw: selinux denials in RGW (issue#16126, pr#10519, Boris Ranto)
rgw: support size suffixes for --max-size in radosgw-admin command (issue#16004, pr#9743, Vikhyat Umrao)
rgw: updating CORS/ACLs might not work in some circumstances (issue#15976, pr#9543, Radoslaw Zarzynski)
rgw: use zone endpoints instead of zonegroup endpoints (issue#16834, pr#10659, Casey Bodley)
tests: improve rbd-mirror test case coverage (issue#16197, pr#9631, Mykola Golub, Jason Dillaman)
tests: rados/test.sh workunit timesout on OpenStack (issue#15403, pr#8904, Loic Dachary)
tools: ceph-disk: Accept bcache devices as data disks (issue#13278, pr#8497, Peter Sabaini)
tools: rados: Add cleanup message with time to rados bench output (issue#15704, pr#9740, Vikhyat Umrao)
tools: src/script/subman fails with KeyError: ‘nband’ (issue#16961, pr#10625, Loic Dachary, Ali Maredia)
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
.
显著变化
ceph: cli: exception when pool name has non-ascii characters (issue#15913, pr#9320, Ricardo Dias)
ceph-disk: workaround gperftool hang (issue#13522, issue#16103, pr#9427, Loic Dachary)
cephfs: backports needed for Manila (issue#15599, issue#15417, issue#15045, pr#9430, John Spray, Ramana Raja, Xiaoxi Chen)
ceph.spec.in: drop support for RHEL<7 and SUSE<1210 in jewel and above (issue#15725, issue#15627, issue#13445, issue#15822, issue#15472, issue#15987, issue#15516, issue#15549, pr#8938, Boris Ranto, Sage Weil, Nathan Cutler, Lars Marowsky-Bree)
ceph_test_librbd_fsx crashes during journal replay shut down (issue#16123, pr#9556, Jason Dillaman)
client: fix bugs accidentally disabling readahead (issue#16024, pr#9656, Patrick Donnelly, Greg Farnum)
cls_journal: initialize empty commit position upon client register (issue#15757, pr#9376, runsisi, Venky Shankar)
cls::rbd: mirror_image_status_list returned max 64 items (pr#9069, Mykola Golub)
cls_rbd: mirror image status summary should read full directory (issue#16178, pr#9608, Jason Dillaman)
common: BackoffThrottle spins unnecessarily with very small backoff while the throttle is full (issue#15953, pr#9579, Samuel Just)
common: Do not link lttng into libglobal (pr#9194, Karol Mroz)
debian: install systemd target files (issue#15573, pr#8815, Kefu Chai, Sage Weil)
doc: update mirroring guide to include pool/image status commands (issue#15746, pr#9180, Mykola Golub)
librbd: Disabling journaling feature results in “Transport endpoint is not connected” error (issue#15863, pr#9548, Yuan Zhou)
librbd: do not shut down exclusive lock while acquiring’ (issue#16291, issue#16260, pr#9691, Jason Dillaman)
librbd: Initial python APIs to support mirroring (issue#15656, pr#9550, Mykola Golub)
librbd: journal IO error results in failed assertion in AioCompletion (issue#16077, issue#15034, issue#15791, pr#9611, Hector Martin, Jason Dillaman)
librbd: journal: live replay might skip entries from previous object set (issue#15864, issue#15665, pr#9217, Jason Dillaman)
librbd: journal: support asynchronous shutdown (issue#15949, issue#14530, issue#15993, pr#9373, Jason Dillaman)
librbd: Metadata config overrides are applied synchronously (issue#15928, pr#9318, Jason Dillaman)
librbd: Object Map is showing as invalid, even when Object Map is disabled for that Image. (issue#16076, pr#9555, xinxin shu)
librbd: prevent error messages when journal externally disabled (issue#16114, pr#9610, Zhiqiang Wang, Jason Dillaman)
librbd: recursive lock possible when disabling journaling (issue#16235, pr#9654, Jason Dillaman)
librbd: refresh image if needed in mirror functions (issue#16096, pr#9609, Jon Bernard)
librbd: remove should ignore mirror errors from older OSDs (issue#16268, pr#9692, Jason Dillaman)
librbd: reuse ImageCtx::finisher and SafeTimer for lots of images case (issue#13938, pr#9580, Haomai Wang)
librbd: validate image metadata configuration overrides (issue#15522, pr#9554, zhuangzeqiang)
mds: order directories by hash and fix simultaneous readdir races (issue#15508, pr#9655, Yan, Zheng, Greg Farnum)
mon: Hammer (0.94.3) OSD does not delete old OSD Maps in a timely fashion (maybe at all?) (issue#13990, pr#9100, Kefu Chai)
mon/Monitor: memory leak on Monitor::handle_ping() (issue#15793, pr#9270, xie xingguo)
osd: acting_primary not updated on split (issue#15523, pr#8968, Sage Weil)
osd: boot race with noup being set (issue#15678, pr#9101, Sage Weil)
osd: deadlock in OSD::_committed_osd_maps (issue#15701, pr#9103, Xinze Chi)
osd: hobject_t::get_max() vs is_max() discrepancy (issue#16113, pr#9614, Samuel Just)
osd: LibRadosWatchNotifyPPTests/LibRadosWatchNotifyPP.WatchNotify2Timeout/1 segv (issue#15760, pr#9104, Sage Weil)
osd: remove reliance on FLAG_OMAP for reads (pr#9638, Samuel Just)
osd valgrind invalid reads/writes (issue#15870, pr#9237, Samuel Just)
pybind: rbd API should default features parameter to None (issue#15982, pr#9553, Mykola Golub)
qa: dynamic_features.sh races with image deletion (issue#15500, pr#9552, Mykola Golub)
qa/workunits: ensure replay has started before checking position (issue#16248, pr#9674, Jason Dillaman)
qa/workunits/rbd: fixed rbd_mirror teuthology runtime errors (pr#9232, Jason Dillaman)
radosgw-admin: fix ‘period push’ handling of --url (issue#15926, pr#9210, Casey Bodley)
rbd-mirror: Delete local image mirror when remote image mirroring is disabled (issue#15916, issue#14421, pr#9372, runsisi, Mykola Golub, Ricardo Dias)
rbd-mirror: do not propagate deletions when pool unavailable (issue#16229, pr#9630, Jason Dillaman)
rbd-mirror: do not re-use image id from mirror directory if creating image (issue#16253, pr#9673, Jason Dillaman)
rbd-mirror: FAILED assert(!m_status_watcher) (issue#16245, issue#16290, pr#9690, Mykola Golub)
rbd-mirror: fix deletion propagation edge cases (issue#16226, pr#9629, Jason Dillaman)
rbd-mirror: fix journal shut down ordering (issue#16165, pr#9628, Jason Dillaman)
rbd-mirror: potential crash during image status update (issue#15909, pr#9226, Mykola Golub, Jason Dillaman)
rbd-mirror: refresh image after creating sync point (issue#16196, pr#9627, Jason Dillaman)
rbd-mirror: replicate cloned images (issue#14937, pr#9423, Jason Dillaman)
rbd-mirror should disable the rbd cache for local images (issue#15930, pr#9317, Jason Dillaman)
rbd-mirror: support bootstrap canceling (issue#16201, pr#9612, Mykola Golub)
rbd-mirror: support multiple replicated pools (issue#16045, pr#9409, Jason Dillaman)
rgw: fix manager selection when APIs customized (issue#15974, issue#15973, pr#9245, Robin H. Johnson)
rgw: keep track of written_objs correctly (issue#15886, pr#9239, Yehuda Sadeh)
rpm: ceph gid mismatch on upgrade from hammer with pre-existing ceph user (SUSE) (issue#15869, pr#9424, Nathan Cutler)
systemd: ceph-{mds,mon,osd,radosgw} systemd unit files need wants=time-sync.target (issue#15419, pr#8802, Nathan Cutler)
test: failure in journal.sh workunit test (issue#16011, pr#9377, Mykola Golub)
tests: rm -fr /tmp/virtualenv (issue#16087, pr#9403, Loic Dachary)
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:
The
rbd du
command shows actual usage (quickly, when object-map is enabled).The object-map feature has seen many stability improvements.
The object-map and exclusive-lock features can be enabled or disabled dynamically.
You can now store user metadata and set persistent librbd options associated with individual images.
The new deep-flatten features allow flattening of a clone and all of its snapshots. (Previously snapshots could not be flattened.)
The export-diff command is now faster (it uses aio). There is also a new fast-diff feature.
The --size argument can be specified with a suffix for units (e.g.,
--size 64G
搜索)。There is a new
rbd status
command that, for now, shows who has the image open/mapped.
CephFS:
You can now rename snapshots.
There have been ongoing improvements around administration, diagnostics, and the check and repair tools.
The caching and revocation of client cache state due to unused inodes has been dramatically improved.
The ceph-fuse client behaves better on 32-bit hosts.
Distro compatibility
Starting with Infernalis, we have dropped support for many older distributions so that we can move to a newer compiler toolchain (e.g., C++11). Although it is still possible to build Ceph on older distributions by installing backported development tools, we are not building and publishing release packages for ceph.com.
We now build packages for the following distributions and architectures:
x86_64:
CentOS 7.x. We have dropped support for CentOS 6 (and other RHEL 6 derivatives, like Scientific Linux 6).
Debian Jessie 8.x. Debian Wheezy 7.x’s g++ has incomplete support for C++11 (and no systemd).
Ubuntu Xenial 16.04 and Trusty 14.04. Ubuntu Precise 12.04 is no longer supported.
Fedora 22 or later.
aarch64 / arm64:
Ubuntu Xenial 16.04.
Upgrading from Infernalis or Hammer
We now recommend against using
ext4
as the underlying file system for Ceph OSDs, especially when RGW or other users of long RADOS object names are used. For more information about why, please see Filesystem Recommendations.If you have an existing cluster that uses ext4 for the OSDs but uses only RBD and/or CephFS, then the ext4 limitations will not affect you. Before upgrading, be sure add the following to
ceph.conf
to allow the OSDs to start:osd max object name len = 256 osd max object namespace len = 64
Keep in mind that if you set these lower object name limits and later decide to use RGW on this cluster, it will have problems storing S3/Swift objects with long names. This startup check can also be disabled via the below option, although this is not recommended:
osd check max object name len on startup = false
There are no major compatibility changes since Infernalis. Simply upgrading the daemons on each host and restarting all daemons is sufficient.
The rbd CLI no longer accepts the deprecated ‘--image-features’ option during create, import, and clone operations. The ‘--image-feature’ option should be used instead.
The rbd legacy image format (version 1) is deprecated with the Jewel release. Attempting to create a new version 1 RBD image will result in a warning. Future releases of Ceph will remove support for version 1 RBD images.
The ‘send_pg_creates’ and ‘map_pg_creates’ mon CLI commands are obsolete and no longer supported.
A new configure option ‘mon_election_timeout’ is added to specifically limit max waiting time of monitor election process, which was previously restricted by ‘mon_lease’.
CephFS filesystems created using versions older than Firefly (0.80) must use the new ‘cephfs-data-scan tmap_upgrade’ command after upgrading to Jewel. See ‘Upgrading’ in the CephFS documentation for more information.
The ‘ceph mds setmap’ command has been removed.
The default RBD image features for new images have been updated to enable the following: exclusive lock, object map, fast-diff, and deep-flatten. These features are not currently supported by the RBD kernel driver nor older RBD clients. They can be disabled on a per-image basis via the RBD CLI, or the default features can be updated to the pre-Jewel setting by adding the following to the client section of the Ceph configuration file:
rbd default features = 1
The rbd legacy image format (version 1) is deprecated with the Jewel release.
After upgrading, users should set the ‘sortbitwise’ flag to enable the new internal object sort order:
ceph osd set sortbitwise
This flag is important for the new object enumeration API and for new backends like BlueStore.
The rbd CLI no longer permits creating images and snapshots with potentially ambiguous names (e.g. the ‘/’ and ‘@’ characters are disallowed). The validation can be temporarily disabled by adding “--rbd-validate-names=false” to the rbd CLI when creating an image or snapshot. It can also be disabled by adding the following to the client section of the Ceph configuration file:
rbd validate names = false
Upgrading from Hammer
All cluster nodes must first upgrade to Hammer v0.94.4 or a later v0.94.z release; only then is it possible to upgrade to Jewel 10.2.z.
For all distributions that support systemd (CentOS 7, Fedora, Debian Jessie 8.x, OpenSUSE), ceph daemons are now managed using native systemd files instead of the legacy sysvinit scripts. For example:
systemctl start ceph.target # start all daemons systemctl status ceph-osd@12 # check status of osd.12
The main notable distro that is not yet using systemd is Ubuntu trusty 14.04. (The next Ubuntu LTS, 16.04, will use systemd instead of upstart.)
Ceph daemons now run as user and group
ceph
by default. The ceph user has a static UID assigned by Fedora and Debian (also used by derivative distributions like RHEL/CentOS and Ubuntu). On SUSE the same UID/GID as in Fedora and Debian will be used, provided it is not already assigned. In the unlikely event the preferred UID or GID is assigned to a different user/group, ceph will get a dynamically assigned UID/GID.If your systems already have a ceph user, upgrading the package will cause problems. We suggest you first remove or rename the existing ‘ceph’ user and ‘ceph’ group before upgrading.
When upgrading, administrators have two options:
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.
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:
Upgrade the ceph package. This creates the ceph user and group. For example:
ceph-deploy install --stable jewel HOST
Stop the daemon(s):
service ceph stop # fedora, centos, rhel, debian stop ceph-all # ubuntu
Fix the ownership:
chown -R ceph:ceph /var/lib/ceph chown -R ceph:ceph /var/log/ceph
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:
Upgrade Ceph on monitor hosts
Restart all ceph-mon daemons
- Set noout::
ceph osd set noout
Upgrade Ceph on all OSD hosts
Stop all ceph-osd daemons
- Mark all OSDs down with something like::
ceph osd down seq 0 1000
Start all ceph-osd daemons
- Let the cluster settle and then unset noout::
ceph osd unset noout
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 基金会资助和托管的社会资源。。如果您想支持此项目和其他工作,请考虑现在加入.