v13.2.0 Mimic 发布
这是 Mimic 的第一个稳定版本,也是下一个长期版本系列。升级前请仔细阅读之前版本的升级说明。
Luminous 版本的主要变化 ¶
- Dashboard:
- RADOS:
- 配置选项现在可以由监视器集中存储和管理。
- 监视器守护进程在进行恢复或重新平衡操作时,使用的磁盘空间显著减少。
- 异步恢复功能可减少 OSD 从最近的故障中恢复时请求的尾部延迟。
- OSD 抢占由冲突请求导致的擦洗操作可减少尾部延迟。
- RGW:
- RGW 现在可以将区域(或部分存储桶)复制到 S3 等外部云存储服务。
- RGW 现在支持对版本控制存储桶的 S3 多因素身份验证 API。
- Beast 前端不再是实验性的,被认为是稳定且可用的。
- CephFS:
- 结合多个 MDS 守护进程时,快照现在是稳定的。
- RBD:
- 镜像克隆不再需要明确的 protect 和 unprotect 步骤。
- 镜像可以深度复制(包括与父镜像的任何克隆链接和相关快照)到新的存储池或使用更改的数据布局。
从 Luminous 升级 ¶
注意 ¶
- 我们建议您在升级过程中避免创建任何 RADOS 存储池。
- 您可以使用
ceph versions命令在每个阶段监控升级进度,该命令将告诉您正在运行的 ceph 版本以及每种守护程序的版本。
说明 ¶
确保您的集群稳定且健康(没有 down 或 recovering 的 OSD)。(可选,但推荐。)
在升级期间设置
noout标志。(可选,但建议这样做。)# ceph osd set noout
通过安装新软件包并重启监视器守护进程来升级监视器。
# systemctl restart ceph-mon.target
所有监视器启动后,通过在监视器映射中查找
mimic功能字符串来验证监视器升级是否完成。例如# ceph mon feature ls
应包含 mimic 在 persistent features 下
在当前 monmap (epoch NNN) persistent: [kraken,luminous,mimic] required: [kraken,luminous,mimic]
通过安装新软件包并使用以下命令重启
ceph-mgr守护进程# systemctl restart ceph-mgr.target
通过检查
ceph -s来验证 ceph-mgr 守护进程是否正在运行# ceph -s
... services: mon: 3 daemons, quorum foo,bar,baz mgr: foo(active), standbys: bar, baz ...
通过安装新软件包并在所有主机上重新启动 ceph-osd 守护进程来升级所有 OSD
# systemctl restart ceph-osd.target
您可以使用新的
ceph versions或ceph osd versions命令监控 OSD 升级的进度# ceph osd versions { "ceph version 12.2.5 (...) luminous (stable)": 12, "ceph version 13.2.0 (...) mimic (stable)": 22, }
升级所有 CephFS MDS 守护程序。对于每个 CephFS 文件系统,
将 ranks 数量减少到 1。(如果您计划稍后恢复它,请先记下原始 MDS 守护程序数量。)
# ceph status # ceph fs set <fs_name> max_mds 1
定期检查状态,等待集群停用任何非零 ranks
# ceph status
使用以下命令在适当的主机上关闭所有 standby MDS 守护程序
# systemctl stop ceph-mds@<daemon_name>
确认只有一个 MDS 在线,并且它是您的 FS 的 rank 0
# ceph status
通过安装新软件包并重新启动守护程序来升级最后一个剩余的 MDS 守护程序
# systemctl restart ceph-mds.target
重新启动所有已关闭的 standby MDS 守护程序
# systemctl start ceph-mds.target
恢复卷的原始
max_mds值# ceph fs set <fs_name> max_mds <original_max_mds>
通过升级软件包并在所有主机上重新启动守护程序来升级所有 radosgw 守护程序
# systemctl restart radosgw.target
通过禁止 pre-mimic OSD 并启用所有新的 Mimic-only 功能来完成升级
# ceph osd require-osd-release mimic
如果您在开始时设置了
noout,请务必使用以下命令清除它# ceph osd unset noout
使用
ceph health验证集群是否正常。
从 Luminous 之前的版本(如 Jewel)升级 ¶
在尝试升级到 Mimic 之前,您必须首先升级到 Luminous (12.2.z)。
升级兼容性说明 ¶
这些更改发生在 Luminous 和 Mimic 版本之间。
核心:
- 当 Luminous 监视器与 Mimic OSD 同时运行时,
pg force-recovery命令对纠删码 PG 无效。请按照推荐的监视器优先于 OSD 的升级顺序,以避免此问题。 - 示例
crush-location-hook脚本已被移除。其输出与内置的默认行为等效,因此已替换为 CRUSH 文档中的示例。 - rados 工具的
-f选项现在表示--format而不是--force,以与 ceph 工具保持一致。 - 通过 admin socket 输出的
config diff格式已更改。它现在反映了每个配置选项的来源(例如,默认值、配置文件、命令行)以及最终(活动)值。 - 各种标记为 del、delete、remove 等的命令现在都应标准化为 rm。已经支持 rm 替代方案的命令仍保持向后兼容。此变更集也适用于
radosgw-admin工具。 - 如果地图数量超过特定值(mon_osdmap_full_prune_min,默认值:10000),监视器现在将修剪磁盘上的完整地图,从而防止监视器数据存储无限增长。此功能默认启用,可以通过将 mon_osdmap_full_prune_enabled 设置为 false 来禁用。
- rados list-inconsistent-obj 格式更改
- 各种错误字符串已得到改进。例如,错误中的“oi”或“oi_attr”代表对象信息,现在是“info”(例如,oi_attr_missing 现在是 info_missing)。
- 对象的“selected_object_info”现在是 json 格式而不是字符串。
- 属性错误(attr_value_mismatch、attr_name_mismatch)仅适用于用户属性。仅输出用户属性,并且去除了内部前导下划线。
- 如果存在哈希信息错误(hinfo_missing、hinfo_corrupted、hinfo_inconsistency),则会添加“hashinfo”并包含信息的 json 格式。如果信息损坏,则“hashinfo”是一个包含值的字符串。
- 如果存在快照集错误(snapset_missing、snapset_corrupted、snapset_inconsistency),则会添加“snapset”并包含信息的 json 格式。如果信息损坏,则“snapset”是一个包含值的字符串。
- 如果存在对象信息错误(info_missing、info_corrupted、obj_size_info_mismatch、object_info_inconsistency),则会添加“object_info”并包含信息的 json 格式而不是字符串。如果信息损坏,则“object_info”是一个包含值的字符串。
- rados list-inconsistent-snapset 格式更改
- 各种错误字符串已得到改进。例如,错误中代表快照集信息的“ss_attr”现在是“snapset”(例如,ss_attr_missing 现在是 snapset_missing)。错误 snapset_mismatch 已重命名为 snapset_error,以更好地反映其含义。
- 头部快照集信息以 json 格式输出为“snapset”。这意味着即使没有头部错误,当任何分片出现错误时,头部对象也会被输出。此头部对象用于显示用于确定错误的快照集。
- osd_mon_report_interval_min 选项已重命名为 osd_mon_report_interval,并且 osd_mon_report_interval_max(未使用)已取消。如果此值在您的集群上已自定义,则应调整您的配置,以避免恢复为默认值。
- config-key 接口可以存储任意二进制 blob,但 JSON 只能表达可打印字符串。如果存在二进制 blob,'ceph config-key dump' 命令将它们显示为类似 <<< 长度为 N 的二进制 blob >>> 的内容。
- 在新部署时将自动生成引导身份验证密钥;如果缺少,在升级期间也会生成这些密钥。
osd force-create-pg命令现在需要 force 选项才能继续,因为该命令很危险:它声明数据丢失是永久性的,并指示集群在原地使用空 PG 继续,不再进一步尝试查找丢失的数据。
CephFS:
将 MDS 集群升级到 12.2.3+ 将导致所有活动 MDS 因功能不兼容而退出。操作员可以忽略错误消息并继续升级/重新启动,或遵循以下升级序列
将监视器升级到 Mimic 后,将等级数减少到 1(ceph fs set <fs_name> max_mds 1),等待所有其他 MDS 停用,只剩下一个活动 MDS,停止所有备用,升级单个活动 MDS,然后升级/启动备用。最后,恢复之前的 max_mds。
!!注意:如果您曾经在文件系统上启用了快照,请参阅 CephFS 中关于快照的发行说明。
几个
ceph mds ...命令已被废弃,并替换为等效的ceph fs ...命令mds dump->fs dumpmds getmap->fs dumpmds stop->mds deactivatemds set_max_mds->fs set max_mdsmds set->fs setmds cluster_down->fs set cluster_down truemds cluster_up->fs set cluster_down falsemds add_data_pool->fs add_data_poolmds remove_data_pool->fs rm_data_poolmds rm_data_pool->fs rm_data_pool
新的 CephFS 文件系统属性 session_timeout 和 session_autoclose 可通过
ceph fs set配置。MDS 配置选项 mds_session_timeout、mds_session_autoclose 和 mds_max_file_size 现已废弃。由于多 MDS 功能现在是标准功能,因此默认情况下已启用。
ceph fs set allow_multimds现已弃用,并将在未来版本中移除。由于目录碎片功能现在是标准功能,因此默认情况下已启用。
ceph fs set allow_dirfrags现已弃用,并将在未来版本中移除。MDS 守护进程现在根据 max_mds 的值激活和停用。因此,
ceph mds deactivate已被弃用,因为它现在是多余的。现在通过设置 down 标志来关闭 CephFS 集群,该标志会停用所有 MDS。例如:ceph fs set cephfs down true。
现在通过设置 joinable 标志来防止备用节点作为新的活动节点(以前是已弃用的 cluster_down 标志)加入文件系统。这主要用于测试,以便可以快速关闭和删除文件系统。
新的 CephFS 文件系统属性 session_timeout 和 session_autoclose 可通过 ceph fs set 配置。MDS 配置选项 mds_session_timeout、mds_session_autoclose 和 mds_max_file_size 现已废弃。
每个 mds rank 现在维护一个表,用于跟踪打开的文件及其祖先目录。恢复中的 MDS 可以快速获取打开文件的路径,显著减少加载打开文件 inode 的时间。如果该表不存在,MDS 会自动创建它。
CephFS 快照现在已稳定,并在新文件系统上默认启用。要在现有文件系统上启用快照,请使用以下命令
ceph fs set <fs_name> allow_new_snaps
快照元数据的磁盘格式已更改。旧格式的元数据在多活动 MDS 配置中无法正确处理。为确保现有文件系统上的所有快照元数据都得到更新,请严格执行 MDS 集群的升级序列。
请参阅 https://docs.ceph.net.cn/docs/mimic/cephfs/upgrading/
对于曾经启用过快照的文件系统,mimic 监视器守护进程会禁用多活动 MDS 功能。这将导致上述 URL 中的“恢复之前的 max_mds”步骤失败。要重新启用该功能,请删除所有旧快照或擦洗整个文件系统。
ceph daemon <mds of rank 0> scrub_path / force recursive repairceph daemon <mds of rank 0> scrub_path '~mdsdir' force recursive repair
Mimic 中增加了对 Linux 内核客户端 v4.17 配额的支持。
对 MDS 元数据均衡器进行了许多修复,该均衡器将负载分布到各个 MDS。预计自动均衡对于大多数用例都应该很好地工作。在 Luminous 中,建议使用子树 pinning 作为不良均衡器行为的手动解决方法。现在可能不再需要这样做,因此建议尝试实验性地禁用 pinning 作为负载均衡的一种形式,以查看内置均衡器是否能充分满足您的需求。如果升级后出现任何不良行为,请报告。
NFS-Ganesha 是一个 NFS 用户空间服务器,可以从多个文件系统(包括 CephFS)导出共享。Mimic 中对该 CephFS 客户端的支持显著改善。特别是,现在通过 libcephfs 库支持委托,以便 Ganesha 可以向其 NFS 客户端发出委托,从而实现安全的写入缓冲和一致的读取缓存。现在也提供了文档:https://docs.ceph.net.cn/docs/mimic/cephfs/nfs/
MDS 正常运行时间现在可在 MDS 管理套接字
status命令的输出中获取。客户端请求的 MDS 性能计数器现在包括平均延迟和计数。
- 当 Luminous 监视器与 Mimic OSD 同时运行时,
RBD
- RBD C API 的 rbd_discard 方法现在强制最大长度为 2GB,以匹配 C++ API 的 Image::discard 方法。此限制可防止结果代码溢出。
- rbd CLI 的
lock listJSON 和 XML 输出已更改。 - rbd CLI 的
showmappedJSON 和 XML 输出已更改。 - RBD 现在可选地支持简化的镜像克隆语义,其中可以克隆非受保护的快照;并且可以删除具有链接克隆的快照,并在所有剩余的链接克隆分离后自动回收空间。如果 OSD "require-min-compat-client" 标志设置为 mimic 或更高版本,则此功能默认启用;或者可以通过 "rbd_default_clone_format" 配置选项进行覆盖。
- RBD 现在支持保留快照历史记录的镜像深度复制。
RGW
- RGW Beast 前端现已声明稳定并可用于生产。有关详细信息,请参阅 HTTP 前端。
- Civetweb 前端已更新到最新的 1.10 版本。
- S3 API 现在支持多因素身份验证。有关详细信息,请参阅 RGW 对多因素身份验证的支持。
- RGW 现在有一个同步插件,可以同步到 AWS 和具有 S3 类似 API 的云。
MGR
Ceph Luminous 中引入的(只读)Ceph 管理器仪表板已被新实现取代,提供了即插即用的替代方案,并提供了许多额外的管理功能。要访问新的仪表板,您首先需要定义用户名和密码并创建 SSL 证书。有关功能概述和安装说明,请参阅仪表板文档。
ceph-rest-api命令行工具(已被 MGR restful 模块取代,并自 v12.2.5 起已弃用)已被删除。有一个名为 restful 的 MGR 模块通过“直通”方法提供类似功能。有关详细信息,请参阅 https://docs.ceph.net.cn/docs/master/mgr/restful。
新增了用于跟踪吞吐量和 IOPS 统计信息的命令,在
ceph -s和之前的ceph -w中也可用。要使用此命令,请启用iostat管理器模块并使用ceph iostat调用它。有关详细信息,请参阅 iostat 文档。
构建/打包
rcceph脚本(源代码树中的systemd/ceph,在 CentOS 和 SUSE 的 ceph-base 软件包中作为/usr/sbin/rcceph提供)已删除。该脚本用于对给定机器上运行的所有 OSD 和/或 MON 守护进程执行管理操作(启动、停止、重启等)。此功能由 systemd 目标单元(ceph-osd.target、ceph-mon.target等)提供。- python-ceph-compat 包已声明弃用,当所有支持的发行版都完成迁移到 Python 3 时将被删除。它已经从那些 Python 3 为标准且 Python 2 为可选的受支持发行版中删除(目前只有 SUSE)。
- Ceph 代码库现已迁移到 C++-17 标准。
- Ceph LZ4 压缩插件现已默认启用,并引入了一个新的构建依赖项。
详细更新日志 ¶
- arch/arm: 仅当构建主机支持 crc32cx 时才设置 ceph_arch_aarch64_crc32 (issue#19705, pr#17420, Kefu Chai)
assert(false)->ceph_abort() (pr#18072, Li Wang)
auth: 保持 /dev/urandom 打开以获取随机字节 (issue#21401, pr#17972, Casey Bodley)
bluestore: BlueStore::ExtentMap::dup impl (pr#19719, Shinobu Kinjo)
bluestore: bluestore/NVMEDevice: 准确的队列延迟性能计数器 (pr#17435, Ziye Yang, Pan Liu)
bluestore: bluestore/NVMEDevice: 转换与 SPDK 相关的传统配置选项 (pr#18502, Ziye Yang)
bluestore: bluestore/NVMEDevice: 不解引用悬空指针 (pr#19067, Kefu Chai)
bluestore: bluestore/NVMEDevice: 修复写入函数中的错误 (pr#17086, Ziye Yang, Pan Liu)
bluestore: bluestore/NVMeDevice: 由于 SPDK 升级而更新 NVMeDevice 代码 (pr#16927, Ziye Yang)
bluestore,build/ops: bluestore,cmake: 启用不带 aio 的 bluestore 构建 (pr#19017, Kefu Chai)
bluestore,build/ops: Build: 创建正确的 WITH_BLUESTORE 选项 (pr#18357, Alan Somers)
bluestore,build/ops: ceph.spec.in,debian/rules: 将 aio-max-nr 更改为 1048576 (pr#17894, chenliuzhong)
bluestore,build/ops,tests: os: 添加编译选项以构建 libbluefs.so (pr#16733, Pan Liu)
bluestore,build/ops,tests: test/fio: 修复序列器替换导致的构建失败 (pr#20387, Igor Fedotov)
bluestore: ceph-bluestore-tool: 更好的 fsck/repair, bluefs-bdev-{expand,sizes} (pr#17709, Sage Weil)
bluestore: ceph-bluestore-tool: 在 'bluefs-bdev-expand' 上检查 bdev 是否为空 (pr#17874, WANG Guoqin)
bluestore: ceph-bluestore-tool: 链接目标不应以 "n" 结尾 (pr#18585, Yao Zongyou)
bluestore,common: intarith: 摆脱 P2* 和 ROUND_UP* 宏 (pr#21085, xie xingguo)
bluestore: comp_min_blob_size 初始化错误 (pr#18318, linbing)
bluestore: config: 将 bluestore_cache_kv_max 更改为 INT64 类型 (pr#20255, Zhi Zhang)
bluestore,core: ceph-bluestore-tool: prime-osd-dir: 更新符号链接而不是中止 (pr#18565, Sage Weil)
bluestore,core: common/options: 默认 bluefs_buffered_io=true (pr#20542, Sage Weil)
bluestore,core: os/bluestore: 补偿不良的 freelistmanager size/blocks 元数据 (issue#21089, pr#17268, Sage Weil)
bluestore,core: os/bluestore: 修复 bluestore 中数据读取错误注入 (pr#19866, Sage Weil)
bluestore,core: os/bluestore: kv_max -> kv_min (pr#20544, Sage Weil)
bluestore,core: os/bluestore: 将默认分配器切换为 stupid;在 qa 中同时测试 bitmap 和 stupid (pr#16906, Sage Weil)
bluestore,core: src/bluestore/NVMEDevice: 使所有读取使用 aio_submit (pr#17655, Ziye Yang, Pan Liu)
bluestore,core,tests: test/unittest_bluefs: 检查 rmdir 是否成功 (pr#15363, shiqi)
bluestore,core: tool: ceph-kvstore-tool 未能正确卸载 BlueStore (issue#21625, pr#18083, Chang Liu)
bluestore: 仅定义一次 LoglevelV 的默认值(3 个模板)(pr#20727, Matt Benjamin)
bluestore: 丢弃 SharedDriverQueueData 中未使用的 friend 类 (pr#16894, Pan Liu)
bluestore: 修复 aio_t::rval 类型 (issue#23527, pr#21136, kungf)
bluestore: 修复 armhf 上的构建 (pr#20951, Kefu Chai)
bluestore: 修复了启用 spdk 和 gcc 4.8.5 时的编译错误 (pr#16945, Ziye Yang, Pan Liu)
bluestore: kv/RocksDBStore: 将通用代码提取到一个新函数中 (pr#16532, Pan Liu)
bluestore/NVMEDevice: 代码清理 (pr#17284, Ziye Yang, Pan Liu)
bluestore: os/bluestore: 将 bluestore_prefer_deferred_size_hdd/ssd 添加到跟踪键 (pr#17459, xie xingguo)
bluestore: os/bluestore: 添加 ssd 丢弃方法以提高性能 (pr#14727, Taeksang Kim)
bluestore: os/bluestore: 添加 deferred_queued 和 deferred_aio_wait 的延迟记录 (pr#17015, lisali)
bluestore: os/bluestore: 在 dout 中添加缺失的 __func__ (pr#17903, lisali)
bluestore: os/bluestore: 为分配器碎片添加 perf 计数器 (pr#21377, Igor Fedotov)
bluestore: os/bluestore: 一次性分配整个写入 (pr#17698, Sage Weil)
bluestore: os/bluestore: 允许从 bluestore bdev 标签重建 osd 数据目录 (pr#18256, Sage Weil)
bluestore: os/bluestore: 针对内核错误列表更改 allow_eio 策略 (issue#23333, pr#21306, Radoslaw Zarzynski)
bluestore: os/bluestore: 避免 _txc_release_alloc 中的过多操作 (pr#18854, Igor Fedotov)
bluestore: os/bluestore: 避免为 remove-collection 忽略缓存 (pr#18785, Jianpeng Ma)
bluestore: os/bluestore: 避免 blob_t 中 std::function 的开销 (pr#20294, Radoslaw Zarzynski)
bluestore: os/bluestore: 避免 _do_read() 中不必要的 BlobRefing (pr#19864, Radoslaw Zarzynski)
bluestore: os/bluestore: 在 extent map 中遇到未加载的分片时更详细 (pr#21245, Igor Fedotov)
bluestore: os/bluestore/BlueFS: 即使 sync_metadata 没有发现工作,也压缩日志 (pr#17354, Sage Weil)
bluestore: os/bluestore/BlueFS: 在任何条件下都不调用调试相关代码 (pr#17627, Jianpeng Ma)
bluestore: os/bluestore/BlueFS: 使用 _sync_write 时不需要等待 aio (pr#16066, Haodong Tang)
bluestore: os/bluestore/BlueFS: 修复异步日志压缩期间日志刷新的竞争条件 (issue#21878, pr#18428, Sage Weil)
bluestore: os/bluestore/BlueFS: 将释放未使用的 extent 工作移动到 _flush_and_syn_log (pr#17684, Jianpeng Ma)
bluestore: os/bluestore/BlueFS: 防止 _compact_log_async 重入 (issue#21250, pr#17503, Sage Weil)
bluestore: os/bluestore/BlueFS: 减少 collect_metadata 中不必要的操作 (pr#17995, Luo Kexue)
bluestore: os/bluestore/BlueFS: 健全性检查 alloc->allocate() 不会返回 0 (pr#18259, xie xingguo)
bluestore: os/bluestore/BlueFS: 几个清理工作 (pr#17966, xie xingguo)
bluestore: os/bluestore/bluefs_types: 使 block_mask 为 64 位 (pr#21629, Sage Weil)
bluestore: os/bluestore/BlueStore: 尽快唤醒 _kv_finalize_thread (pr#18203, Jianpeng Ma)
bluestore: os/bluestore/BlueStore: 在 _deferred_submit_unlock 中缩小 deferred_lock 范围 (pr#17628, Jianpeng Ma)
bluestore: os/bluestore: bluestore 修复应该使用 interval_set::union_insert (pr#20900, Igor Fedotov)
bluestore: os/bluestore: 清理 ExtentList、AllocExtent 和 bluestore_extent_t 类周围的代码 (pr#20360, Igor Fedotov)
bluestore: os/bluestore: 更清晰的注释,而不是更慢的代码 (pr#16872, Mark Nelson)
bluestore: os/bluestore: 正确检查所有块设备以确定 journal 是否是旋转的 (issue#23141, pr#20602, Greg Farnum)
bluestore: os/bluestore: 删除 KernelDevice.cc 中冗余的头文件 (pr#18631, Jing Li)
bluestore: os/bluestore: 如果 BlueFS 再平衡无法分配足够的空间,不要断言 (pr#18494, Igor Fedotov)
bluestore: os/bluestore: 当 BlueRocksEnv 收到 EEXIST 错误时,不要核心转储 (issue#20871, pr#17357, liuchang0812)
bluestore: os/bluestore: 尝试两次打开 kvstore 时不要核心转储 (pr#18161, Chang Liu)
bluestore: os/bluestore: 不释放空的 bluefs_extents_reclaiming (pr#18671, Igor Fedotov)
bluestore: os/bluestore: 在 kraken 升级调试打印中不段错误 (issue#20977, pr#16992, Sage Weil)
bluestore: os/bluestore: 不重新初始化现有 blob 的校验和设置 (issue#21175, pr#17398, xie xingguo)
bluestore: os/bluestore: 在 mkfs 上执行 SSD 丢弃 (pr#20897, Igor Fedotov)
bluestore: os/bluestore: 丢弃 deferred_submit_lock,修复 aio 泄漏 (issue#21171, pr#17352, Sage Weil)
bluestore: os/bluestore: 丢弃未使用的函数声明 (pr#18075, Li Wang)
bluestore: os/bluestore: 丢弃 apply() 中未使用的参数 "what" (pr#17251, songweibin)
bluestore: os/bluestore: _dump_onode() 不再延长 Onode (pr#19841, Radoslaw Zarzynski)
bluestore: os/bluestore: 动态 CF 配置;将 pglog omap 放入单独的 CF (pr#18224, Sage Weil)
bluestore: os/bluestore: 扩大 aligned_size 避免过多 vector (> IOV_MAX) (issue#21932, pr#18828, Jianpeng Ma)
bluestore: os/bluestore: ExtentMap::reshard - 修复错误的分片长度 (pr#17334, chenliuzhong)
bluestore: os/bluestore: 对非常大的对象尽早失败 (issue#20923, pr#16924, Sage Weil)
bluestore: os/bluestore: 修复另一个 aio 停滞/死锁 (issue#21470, pr#18118, Sage Weil)
bluestore: os/bluestore: 修复 _balance_bluefs_freespace() 中断裂的 cap (pr#21097, Igor Fedotov)
bluestore: os/bluestore: 再次修复克隆 dirty_range (issue#20983, pr#16994, Sage Weil)
bluestore: os/bluestore: 修复 dirty_shard 差一错误 (pr#16850, Sage Weil)
bluestore: os/bluestore: 修复 KernelDevice 中超出最大 IO 队列深度的问题 (issue#23246, pr#20996, Radoslaw Zarzynski)
bluestore: os/bluestore: 修复拆分集合时潜在的断言 (pr#19519, Igor Fedotov)
bluestore: os/bluestore: 修复 SharedBlob 注销 (issue#22039, pr#18805, Sage Weil)
bluestore: os/bluestore: 修复一些代码格式 (pr#21037, Gu Zhongyan)
bluestore: os/bluestore: 修复 bluefs 中的分配 (pr#19030, tangwenjun)
bluestore: os/bluestore: 修复 StupidAllocator::init_rm_free 中的降级 (pr#20430, Kefu Chai)
bluestore: os/bluestore: 修复 map_any 的错误用法 (pr#18939, Jianpeng Ma)
bluestore: os/bluestore: 修复 BlueFS::_allocate 的错误用法 (pr#20708, Jianpeng Ma)
bluestore: os/bluestore: 在 SharedDriverQueueData 的析构函数中正确释放 spdk qpair 资源 (pr#20929, Jianyu Li)
bluestore: os/bluestore: 正确处理小型主设备 (pr#17416, xie xingguo)
bluestore: os/bluestore: 忽略 luminous 升级中 0x2000~2000 范围的奇怪之处 (issue#21408, pr#17845, Sage Weil)
bluestore: os/bluestore: 实现 BlueStore 修复 (pr#19843, Igor Fedotov)
bluestore: os/bluestore: 使 bluefs 在接近 enospc 时表现更好 (pr#18120, Sage Weil)
bluestore: os/bluestore: 将 AioContext 的派生类标记为 final (pr#20227, Radoslaw Zarzynski)
bluestore: os/bluestore: 将 aio_callback{,_priv} 移动到基类 BlockDevice (pr#17002, mychoxin)
bluestore: os/bluestore: 将 read/write 的 assert 移动到基类 (pr#17033, mychoxin)
bluestore: os/bluestore: 将 size 和 block_size 移动到基类 BlockDevice (pr#16886, Pan Liu)
bluestore: os/bluestore: 写入标签失败时不需要 fsync (pr#20092, tangwenjun)
bluestore: os/bluestore: 如果没有要修剪的,则不进行修剪调试噪音 (pr#20684, Sage Weil)
bluestore: os/bluestore/NVMEDevice: 将 write_bl 更改为 bl (pr#17145, Ziye Yang, Pan Liu)
bluestore: os/bluestore/NVMEDevice: 修复 nvme 队列深度问题 (pr#17200, Ziye Yang, Pan Liu)
bluestore: os/bluestore/NVMEDevice: 移除使用 dpdk 线程 (pr#17769, Ziye Yang, Pan Liu)
bluestore: os/bluestore: OpSequencer: 如果 _is_all_kv_submitted() 返回 true,则减少 kv_submitted_waiters (pr#18622, Jianpeng Ma)
bluestore: os/bluestore: 优化 _collection_list (pr#18777, Jianpeng Ma)
bluestore: os/bluestore: 将 strict 标志传递给 bluestore_blob_use_tracker_t::equal() (pr#15705, xie xingguo)
bluestore: os/bluestore: 预分配内存避免 list_collection 中重新分配 (pr#18804, Jianpeng Ma)
bluestore: os/bluestore: 如果 osd_max_object_size >= 4G,则阻止挂载 (pr#19043, Sage Weil)
bluestore: os/bluestore: 批量打印 aio (pr#18873, Kefu Chai)
bluestore: os/bluestore: 将泄漏的 extent 打印到调试输出 (pr#17225, Sage Weil)
bluestore: os/bluestore: 将 read-EIO 传播到高级调用者 (pr#17744, xie xingguo)
bluestore: os/bluestore: 将缓存的 attrs 放入正确的 mempool (issue#21417, pr#18001, Sage Weil)
bluestore: os/bluestore: 解码 bluefs_fnode_t 时 recalc_allocated() (issue#23212, pr#20701, Jianpeng Ma, Kefu Chai)
bluestore: os/bluestore: 减少无意义的刷新 (pr#19027, tangwenjun)
bluestore: os/bluestore: 重构 FreeListManager 以更清晰地查看数字 (issue#22535, pr#19718, Igor Fedotov)
bluestore: os/bluestore: 批量释放磁盘 extents (pr#17913, Radoslaw Zarzynski)
bluestore: os/bluestore: 移除无效的 BlueFS fnode extent 计算 (pr#18905, Igor Fedotov)
bluestore: os/bluestore: 移除未使用的参数 (pr#18635, Jianpeng Ma)
bluestore: os/bluestore: 移除未使用的变量 (pr#21063, Gu Zhongyan)
bluestore: os/bluestore: 移除无用函数 submit (pr#17537, mychoxin)
bluestore: os/bluestore: 重新排序 bluefs_extent_t 的成员以提高空间效率 (pr#21034, Radoslaw Zarzynski)
bluestore: os/bluestore: 在 StupidAllocator 中用 ldout 替换 dout (pr#17404, Radoslaw Zarzynski)
bluestore: os/bluestore: 在磁盘错误发生时正确报告错误并退出 (issue#21263, pr#17522, Pan Liu)
bluestore: os/bluestore: Revert "os/bluestore: 允许一次有多个 DeferredBatches 在飞行" (issue#20925, issue#20295, pr#16900, Sage Weil)
bluestore: os/bluestore: s/bluefs_total/bluefs_free/ (pr#21036, xie xingguo)
bluestore: os/bluestore: 为 deferred_try_submit 分离完成器 (issue#21207, pr#17409, Sage Weil)
bluestore: os/bluestore: 将位图空闲列表分辨率设置为 min_alloc_size (pr#17610, Sage Weil)
bluestore: os/bluestore: 将 aio 提交大小缩小到 pending 值 (pr#17588, kungf)
bluestore: os/bluestore: 静默 -Wreturn-type 警告 (pr#18286, Kefu Chai)
bluestore: os/bluestore: 支持使用 spdk 时计算成本 (pr#17091, Ziye Yang, Pan Liu)
bluestore: os/bluestore: synchronous on_applied completions (pr#18196, Sage Weil)
bluestore: os/bluestore: 每 50ms 修剪一次缓存(而不是 200ms)(pr#20498, Sage Weil)
bluestore: os/bluestore: 更新 bluestore_compression_[min|max|_blob_size 选项的描述 (pr#21244, Igor Fedotov)
bluestore: os/bluestore: 使用宏 OBJECT_MAX_SIZE 检查 osd_max_object_size (pr#19622, Jianpeng Ma)
bluestore: osd/bluestore: 删除 KernelDevice 中未使用的变量 (pr#20857, Leo Zhang)
bluestore: osd,os/bluestore: 显示 osd_max_object_size 的当前大小 (pr#19725, Shinobu Kinjo)
bluestore: Revert "os/bluestore: 将 strict 标志传递给 bluestore_blob_use_tracker_t::equal()" (issue#21293, pr#17569, Sage Weil)
bluestore,rgw: rgw,unittest_bit_alloc: 静默 clang 分析器警告 (pr#17294, Kefu Chai)
bluestore,tests: objectstore/store_test: 修复 collection_empty() 之前缺少 flush 的问题... (issue#22409, pr#19764, Igor Fedotov)
bluestore,tests: Revert "bluestore/fio: 修复所有对象具有相同哈希的问题 (pr#18352, Radoslaw Zarzynski)
bluestore,tools: ceph-bluestore-tool: 在创建 kvdb 完整路径之前创建 out_dir (pr#18367, Leo Zhang)
bluestore,tools: os/bluestore/bluestore_tool: 添加 log-dump 命令以转储 bluefs 的日志 (pr#18535, Yang Honggang)
build: 修复 dpdk 构建错误 (pr#18087, chunmei)
使用 gcc 7 构建 mimic-dev1 (issue#22438, pr#19548, Kefu Chai)
build/ops: automake: 移除 automake 所需的文件 (pr#17937, Kefu Chai)
build/ops: blkin: 链接到 lttng-ust-fork (pr#17673, Mohamad Gebai)
build/ops: boost: 移除 boost 子模块 (pr#17405, Kefu Chai)
build/ops: build: do_cmake: 允许覆盖 ARGS (pr#19876, Abhishek Lekshmanan)
build/ops: build: 从 libcommon 移除 PGMap.cc (pr#18496, Sage Weil)
build/ops: ceph-disk activate 解锁 bluestore 数据分区 (issue#20488, pr#16357, Felix Winterhalter)
build/ops: ceph_disk: 允许激活时“无 fsid” (pr#18991, Dan Mick)
build/ops,cephfs: ceph-object-corpus: 更新以修复 make check (pr#21261, Patrick Donnelly)
build/ops,cephfs: cmake, test/fs, client: 修复 clang 构建问题 (pr#20392, Adam C. Emerson)
build/ops: ceph.spec: 在 aarch64 上使用 devtoolset-6-gcc-c++ (issue#22301, pr#19341, Kefu Chai)
build/ops: ceph-volume: 需要 lvm2,移动到 osd 包 (issue#22443, pr#19529, Theofilos Mouratidis)
build/ops: ceph-volume: tests 添加 is_mounted 工具的测试 (pr#16962, Alfredo Deza)
build/ops: change WITH_SYSTEMD default to ON (pr#20404, Nathan Cutler)
build/ops: cmake/BuildBoost: 修复 seastar 准备工作 (pr#20616, Kefu Chai, Casey Bodley)
build/ops: cmake,deb: 使用 cmake 安装系统单元 (pr#20618, Kefu Chai)
build/ops: cmake: 如果 WITH_STATIC_LIBSTDCXX,则静态链接 libcommon 和 libstdc++ (issue#22438, pr#19515, Kefu Chai)
build/ops: cmake,make-dist: 将 boost 版本提高到 1.67 (pr#21572, Kefu Chai)
build/ops: cmake,mds: 在使用 std::map::merge() 之前检测它 (pr#21211, Willem Jan Withagen, Kefu Chai)
build/ops: cmake/mgr: 如果 mgr 子解释器是 Python 3,则使用 Python 3 virtualenv (pr#21446, Nathan Cutler)
build/ops,common: cmake, common: 静默 cmake 和 gcc 警告 (issue#23774, pr#21484, Kefu Chai)
build/ops: common/time: 为 Alpine 构建添加 time.h (pr#19863, huanwen ren)
build/ops,common: 更新 C++ 标准到 14 并清理 (pr#19490, Adam C. Emerson)
build/ops,core: ceph-crush-location: 移除 (pr#19881, Sage Weil)
build/ops,core: ceph-volume: mkfs 期间不使用 –key (issue#22283, pr#19276, Kefu Chai, Sage Weil)
build/ops,core: /etc/sysconfig/ceph: 移除 jemalloc 选项 (issue#20557, pr#18487, Sage Weil)
build/ops,core: mimic: cmake,common,filestore: 静默 gcc-8 警告/错误 (pr#21862, Kefu Chai)
build/ops,core: mimic: cmake: 不再检查 aligned_alloc() (issue#23653, pr#22048, Kefu Chai)
build/ops,core: msg/async: 更新以与 spdk v17.10 附带的 dpdk 配合使用 (pr#19470, Kefu Chai)
build/ops,core: zstd: 升级到 v1.3.2 (pr#18407, Adam C. Emerson)
build/ops: debian/control: 调整 ceph-{osdomap,kvstore,monstore}-tool 功能移动 (issue#22319, pr#19328, Sage Weil)
build/ops: debian/control: 调整 ceph-{osdomap,kvstore,monstore}-tool 功能移动 (issue#22319, pr#19395, Kefu Chai, Sage Weil)
build/ops: debian/control: 调整 ceph-{osdomap,kvstore,monstore}-tool 功能移动 (pr#19356, Kefu Chai)
build/ops: debian: 修复 40caf6a6 后的软件包关系 (issue#21762, pr#18474, Kefu Chai)
build/ops: debian: 清理期间锁定 ceph 用户 (pr#15118, Caleb Boylan)
build/ops: debian/rules: 不再有 ChangeLog (pr#18023, Sage Weil)
build/ops: debian/rules: 删除 ceph-base 库 (issue#22640, pr#19870, Sage Weil)
build/ops: do_{cmake,freebsd}: 不在 FreeBSD 上调用 nproc(1) (pr#17949, Alan Somers)
build/ops: dpdk: 移除冗余的 dpdk 子模块 (pr#18712, chunmei)
build/ops: EventKqueue: Clang 需要 realloc 返回类型 (pr#21550, Willem Jan Withagen)
build/ops: filestore,rgw: 修复类型/转换使 clang 在 32 位上工作 (pr#21055, Daniel Glaser)
build/ops: 修复 ppc64 对 ceph 的支持 (pr#16753, Boris Ranto)
build/ops: 修复 dpdk 库中发生的两个 dpdk 断言 (pr#18409, chunmei)
build/ops: FreeBSD: 添加新的所需安装包 (pr#21349, Willem Jan Withagen)
build/ops: githubmap: 添加一些已知的 Ceph 审阅者 (pr#17507, Patrick Donnelly)
build/ops: .githubmap: 添加 wjwithagen 作为已知的 Ceph 审阅者 (pr#17518, Willem Jan Withagen)
build/ops: .githubmap: 更新 (pr#18230, Sage Weil)
build/ops: .gitignore: 允许 debian .patch 文件 (pr#17577, Ken Dreyer)
build/ops: include: compat.h, 修复 pthread_set_name() 的返回值 (pr#20474, Willem Jan Withagen)
build/ops: install-deps: 添加对 'opensuse-tumbleweed' 的支持 (pr#21650, Ricardo Marques)
build/ops: install-deps.sh: 避免重新安装 g++-7 (pr#19468, Kefu Chai)
build/ops: install-deps.sh, cmake: 在 xenial 上也使用 GCC-7 (pr#19418, Kefu Chai)
build/ops: install-deps.sh: 以正确的方式安装新的 gcc 作为默认值 (pr#19417, Kefu Chai)
build/ops: install-deps.sh: 传递 –no-recommends 给 zypper (issue#22998, pr#20434, Nathan Cutler)
build/ops: install-deps.sh: 通过环境变量设置 python2 %bcond (issue#22999, pr#20436, Nathan Cutler)
build/ops: install-deps.sh: 如果 GCC 太旧,则在 centos 上使用 DTS (pr#19398, Kefu Chai)
build/ops: install-deps.sh: 使用 tee 写入文件 (pr#19516, Kefu Chai)
build/ops: install-deps: 在 aarch64 上使用 DTS-7,并且只下载镜像的软件包索引 (pr#19645, Kefu Chai, Songbo Wang)
build/ops: libmpem: Revert "submodule: 使 libmpem 成为子模块。" (pr#18414, Jianpeng Ma)
build/ops: logrotate: 在 centos minimal 没有 killall 的情况下,在 logrotate 中添加 systemd reload (pr#16586, Tianshan Qu)
build/ops: make-dist,cmake: 避免重新下载 boost (pr#19124, Kefu Chai)
build/ops: make-dist,cmake: 将 boost 压缩包位置移动到 download.ceph.com (pr#17980, Sage Weil)
build/ops: make-dist,cmake: 尝试多个 URL 下载 boost,然后才失败 (pr#18048, Brad Hubbard)
build/ops: make-dist: 退回到 python3 (pr#21127, Nathan Cutler)
build/ops,mgr: mgr/dashboard: 构建调整 (pr#20752, John Spray)
build/ops,mgr: mgr/dashboard: 移除 node/npm 系统安装 (pr#20898, Tiago Melo)
build/ops,mgr: packaging: dashboard 的显式 jinja2 依赖项 (issue#22457, pr#19598, John Spray)
build/ops,mgr,tests: mgr/dashboard: 用 dashboard_v2 替换 dashboard (pr#20912, Ricardo Dias)
build/ops: mimic: cmake: 使用 javac -h 创建 JNI 本机头文件 (issue#24012, pr#21824, Kefu Chai)
build/ops: mimic: 静默各种警告以启用 GCC-8 构建 (pr#22081, Adam C. Emerson, Kefu Chai)
build/ops: mon,osd: 不使用 crush_device_class 文件为新 osd 初始化类 (pr#19939, Sage Weil)
build/ops: mstart.sh: 支持从 env var 读取 CLUSTERS_LIST (pr#16988, Jiaying Ren)
build/ops: os/CMakeLists: 修复启用 WITH_PMEM=ON 时的链接错误 (pr#20658, Jianpeng Ma)
build/ops: osdc,os,osd: 修复 osx 上的构建 (pr#20029, Kefu Chai)
build/ops: SUSE 的 python-numpy-devel 构建依赖项 (issue#21176, pr#17366, Nathan Cutler)
build/ops: qa/tests - 添加了具有子集的套件可以使用 'testing' ... (pr#21454, Yuri Weinstein)
build/ops,rbd: ceph-dencoder: 将 RBD 类型移动到 RGW 预处理器保护之外 (issue#22321, pr#19343, Jason Dillaman)
build/ops: rbdmap: 修复多个挂载使用相同 RBD 时的卸载问题 (pr#17978, Alexandre Marangone)
build/ops: Revert "make-dist: 在 SUSE 上添加 OBS 特定的发行版后缀" (pr#20813, Nathan Cutler)
build/ops,rgw: radosgw: 使 CryptoPP 编译成为可能 (pr#14955, Adam Kupczyk)
build/ops: rocksdb: 不使用 aligned_alloc (issue#23653, pr#21632, Kefu Chai)
build/ops: rpm: 调整 ceph-{osdomap,kvstore,monstore}-tool 功能移动 (issue#22558, pr#19777, Kefu Chai)
build/ops: rpm: suse 的 build-depends on "cunit-devel" (pr#18997, Kefu Chai)
build/ops: rpm: 条件化 Python 2 可用性以在仅支持 Python 3 的系统上启用 Ceph 构建 (pr#20018, Nathan Cutler)
build/ops: rpm,debian: 确保所有 ceph-disk 运行时依赖项都声明在 ceph-base 中 (issue#23657, pr#21356, Nathan Cutler)
build/ops: rpm,deb: 打包 ceph-kvstore-tool 手册页 (pr#17387, Sage Weil)
build/ops: rpm: 删除 /usr/lib64/qemu 中旧的 librbd.so.1 符号链接 (pr#17324, Nathan Cutler)
build/ops: rpm: 修复 _defined_if_python2_absent 条件 (pr#20166, Nathan Cutler)
build/ops: rpm: 修复 ceph-volume@.service 的 systemd 宏 (issue#22217, pr#19081, Nathan Cutler)
build/ops: rpm: 将 ceph-*-tool 二进制文件移出 ceph-test 子包 (issue#21762, pr#18289, Nathan Cutler)
build/ops: rpm: 仅 Python 3 的 ceph-disk 和 ceph-volume (pr#20140, Nathan Cutler)
build/ops: rpm: 推荐 chrony 而不是 ntp-daemon (pr#20138, Nathan Cutler)
build/ops: rpm: 推荐 python-influxdb 与 ceph-mgr 配合使用 (pr#18511, Nathan Cutler, Tim Serong)
build/ops: rpm: Revert "ceph.spec: 解决 build.opensuse.org 问题" (pr#21716, Nathan Cutler)
build/ops: rpm: 删除 rcceph 脚本 (pr#19899, Nathan Cutler)
build/ops: rpm: selinux-policy 修复 (pr#19026, Brad Hubbard)
build/ops: rpm: 根据可用内存设置构建并行度 (pr#19122, Nathan Cutler, Richard Brown)
build/ops: rpm: 设置 rbd 资源代理的权限为 0755 (issue#22362, pr#19494, Nathan Cutler)
build/ops: run-make-check.sh: 修复 SUSE 支持 (issue#22875, pr#20234, Nathan Cutler)
build/ops: run-make-check.sh: 处理 Python 2 缺失 (issue#23035, pr#20480, Nathan Cutler)
build/ops: run-make-check.sh: 无 sudo 运行 ulimit (pr#17361, yang.wang)
build/ops: script/build-integration-branch: 打印带有标题的 pr url 列表 (pr#17426, Sage Weil)
build/ops: selinux: 允许 nvme 设备 (issue#19200, pr#15597, Boris Ranto)
build/ops: setup-virtualenv.sh: 不硬编码 python 二进制文件 (issue#23437, pr#21002, Nathan Cutler)
build/ops: spdk: 更新 SPDK 以修复 aarch64 上的构建失败 (pr#20134, Tone Zhang, Kefu Chai)
build/ops: spdk: 更新 SPDK 到 v17.10 (pr#19208, Kefu Chai)
build/ops: spdk: 更新子模块到最新的上游版本 (pr#20077, Nathan Cutler)
build/ops: specs: 需要 e2fsprogs (pr#21345, Guillaume Abrioux)
build/ops: src/script/build-integration-branch (pr#17382, Sage Weil)
build/ops: src: s/pip –use-wheel/pip/ (pr#21159, Kefu Chai)
build/ops: submodule: 将 libmpem 作为子模块 (pr#17036, Jianpeng Ma)
build/ops: sysctl.d: 设置 kernel.pid_max=4194304 (issue#21929, pr#18544, David Disseldorp)
build/ops: systemd: rbd-mirror 在重启时未启动 (pr#17969, Sébastien Han)
build/ops: test: 正确删除 asok 目录 (pr#21023, Chang Liu)
build/ops: test/fio: 启用 objectstore FIO 插件构建,无需安装和构建 FIO 源代码 (pr#20535, Igor Fedotov)
build/ops,tests: common,test,cmake: 各种更改以重新启用 osx 上的构建 (pr#18888, Kefu Chai)
build/ops,tests: qa/tests: 将 rhel7.4 更改为 rhel7.5 (pr#21336, Yuri Weinstein)
build/ops,tests: test/fio: 修复 fio objectstore 插件构建因 (pr#20514, Igor Fedotov)
build/ops: udev: 修复 udev OSD 规则文件中的拼写错误 (pr#18976, Mitch Birti)
build/ops: 在 centos/rhel-7 上使用 devtoolset-7 (pr#18863, Kefu Chai)
cephfs: Client: 修复 readdir 错误 (pr#18784, dongdong tao)
cephfs: Client: setattr 应该为 mtime 和 size 丢弃 "Fs" 而不是 "As" (pr#18786, dongdong tao)
cephfs,common,rbd: common/common_init: 禁用客户端的 ms 子系统日志收集 (issue#21860, pr#18418, Jason Dillaman)
cephfs,common,rbd: 各种 SCA 问题修复 (pr#21708, Danny Al-Gaaf)
cephfs,core: mon/OSDMonitor: 在 cephfs 快照删除时设置 FLAG_SELFMANAGED_SNAPS (issue#23949, pr#21756, Sage Weil)
cephfs: MDS: 在 push_back "onfinish" 之前添加空检查 (pr#18892, dongdong tao)
cephfs: MDS: 修正初始化 mon 客户端时的错误信息 (pr#18836, dongdong tao)
cephfs: MDS: 使流行计数器以适当的速度衰减 (pr#18776, Jianyu Li)
cephfs: MDS: 使再平衡器以相同的标准评估每个 mds 的过载状态 (pr#19255, Jianyu Li)
cephfs: messages: is_primary 的初始化 (pr#16897, amitkuma)
cephfs: messages: 成员变量的初始化 (pr#16898, amitkuma)
cephfs: mimic: MDSMonitor: 清理未提交操作中 pending fsmap 的使用 (issue#23768, pr#22005, Patrick Donnelly)
cephfs: mon/MDSMonitor: 在清理之前等待可读的 OSDMap (issue#21945, pr#18603, Patrick Donnelly)
cephfs,mon: mon/MDSMonitor: 修复 preprocess_beacon 的一个 bug (pr#17415, wangshuguang)
cephfs: osdc/Journaler: 使用新样式选项 (pr#17806, Kefu Chai)
cephfs: qa: 检查 pool full 标志 (issue#22475, pr#19588, Patrick Donnelly)
cephfs: qa: 修复 test_full 中的拼写错误 (issue#23643, pr#21334, Patrick Donnelly)
cephfs: Revert "ceph_context: 在子进程中重新扩展 admin_socket 元变量" (pr#18545, Patrick Donnelly)
cephfs,tests: qa/suites/powercycle/osd/whitelist_health: 白名单慢速修剪 (pr#17307, Sage Weil)
cephfs,tests: qa/workunits/cephtool/test.sh: 修复 test_mon_mds() (pr#21579, Kefu Chai)
cephfs,tools: mount.fuse.ceph: 修复拼写错误 (pr#19128, Jos Collin)
cephfs: vstart_runner: 修复最近的 cephfs 更改 (pr#19533, Patrick Donnelly)
ceph-volume: 为功能测试添加 ANSIBLE_SSH_RETRIES=5 (pr#20592, Andrew Schoen)
ceph-volume 为简单添加功能测试,重新排列 lvm 测试 (pr#18882, Alfredo Deza)
ceph-volume: 写入 JSON 文件时在文件末尾添加 linesep/newline (pr#19458, Wido den Hollander)
ceph-volume: 为 ceph-volume lvm zap 添加 --destroy 标志 (issue#22653, pr#20010, Andrew Schoen)
ceph-volume: 为 lvm prepare 和 create 添加 --crush-device-class 标志 (pr#19949, Andrew Schoen)
ceph-volume: 为简单添加自定义集群名称支持 (pr#20367, Andrew Schoen)
ceph-volume: 添加功能性 CI 测试 (pr#16919, Andrew Schoen, Alfredo Deza)
ceph-volume: 为 bluestore 添加功能测试 (pr#18656, Andrew Schoen)
ceph-volume: 为 'lvm list' 添加裸设备支持 (issue#23140, pr#20620, Andrew Schoen)
ceph-volume: 为 lvm prepare/activate/create 添加成功消息 (issue#22307, pr#19875, Andrew Schoen)
ceph-volume: 添加对 zap 加密设备的支持 (issue#22878, pr#20537, Andrew Schoen)
ceph-volume: 添加 ceph-volume lvm zap 子命令 (pr#18513, Andrew Schoen)
ceph-volume 允许按 uuid 过滤,不需要 osd id (pr#17606, Andrew Schoen, Alfredo Deza)
ceph-volume: 允许并行创建 (issue#23757, pr#21489, Theofilos Mouratidis)
ceph-volume: 允许在 activate/create 上跳过 systemd 交互 (issue#23678, pr#21496, Alfredo Deza)
ceph-volume: 允许使用设备或分区作为 lvm --data (pr#18924, Alfredo Deza)
ceph-volume 对 $PATH 问题具有弹性 (pr#20650, Alfredo Deza)
ceph-volume 从 ceph.conf 消费 mount/format 选项 (pr#20408, Alfredo Deza)
ceph-volume: 当未指定对象存储时,正确回退到 bluestore (pr#19213, Alfredo Deza)
ceph-volume 正确规范化挂载标志 (pr#20543, Alfredo Deza)
ceph-volume: 创建 ceph-volume 和 ceph-volume-systemd 手册页 (issue#21030, pr#17152, Alfredo Deza)
ceph-volume: lvm 的 dmcrypt 支持 (issue#22619, pr#20054, Alfredo Deza)
ceph-volume 简单的 dmcrypt 支持 (issue#22620, pr#20264, Andrew Schoen, Alfredo Deza)
ceph-volume/doc: 在示例中添加缺失的子命令 (pr#19381, Guillaume Abrioux)
ceph-volume: 确保正确的 --filestore/--bluestore 行为 (pr#18518, Alfredo Deza)
ceph-volume 失败的 ceph-osd --mkfs 命令不会暂停 OSD 创建过程 (issue#23874, pr#21685, Alfredo Deza)
ceph-volume: 修复测试中的 action plugins 路径 (pr#20910, Guillaume Abrioux)
ceph-volume 修复 mon-config 更改后的 filestore OSD 创建 (issue#23260, pr#20787, Alfredo Deza)
ceph-volume: 修复 ceph-volume lvm prepare 帮助中的拼写错误 (pr#21196, Jeffrey Zhang)
ceph-volume: 修复 --osd-id 标志的使用 (issue#22642, issue#22836, pr#20203, Andrew Schoen)
ceph-volume 在无法使用 vg/lv 时正确格式化 (issue#22299, pr#19285, Alfredo Deza)
ceph-volume 处理 ceph.conf 文件中的行内注释 (issue#22297, pr#19319, Alfredo Deza)
ceph-volume: 处理 ceph.conf 中的前导空格/制表符 (issue#22280, pr#19259, Alfredo Deza)
ceph-volume 实现 'activate all' 以帮助密集服务器或迁移 OSD (pr#21130, Alfredo Deza)
ceph-volume 提高测试中重新加载虚拟机时的健壮性 (pr#21070, Alfredo Deza)
ceph-volume: 记录当前正在运行的命令,以便于调试 (issue#23004, pr#20594, Andrew Schoen)
ceph-volume lvm api 重构/移动 (pr#18110, Alfredo Deza)
ceph-volume lvm list (pr#18095, Alfredo Deza)
ceph-volume lvm.prepare 更新以使用 create_osd_path (pr#18514, Alfredo Deza)
ceph-volume: lvm zap 将卸载被 zap 设备使用的 osd 路径 (issue#22876, pr#20265, Andrew Schoen)
ceph-volume: 在研究代码时发现的缺陷 (pr#21455, Dan Mick)
ceph-volume 永久存储非 lv 设备作为日志 (pr#17403, Alfredo Deza)
ceph-volume 首先处理可执行文件的绝对路径 (issue#23259, pr#20824, Alfredo Deza)
ceph-volume: 移除 sudo 的显式使用 (issue#22282, pr#19363, Andrew Schoen)
ceph-volume: 移除多余的空格 (pr#21140, Sébastien Han)
ceph-volume 失败 OSD prepare/create 时的回滚 (issue#22281, pr#19351, Alfredo Deza)
ceph-volume 应该能够处理多个 LVM (VG/LV) 标签 (issue#22305, pr#19321, Alfredo Deza)
ceph-volume: 支持 GPT 和其他已部署的 OSD (pr#18823, Alfredo Deza)
ceph-volume 测试为 vagrant 添加可选标志 (pr#20849, Alfredo Deza)
ceph-volume 测试缓解重新加载时 libvirt 超时问题 (issue#23163, pr#20718, Alfredo Deza)
ceph-volume tests.devices.lvm prepare 不再是 bluestore 特定的了 (pr#18984, Alfredo Deza)
ceph-volume 测试移除未使用的导入 (pr#20459, Alfredo Deza)
ceph-volume 测试为 vagrant 使用更细粒度的环境变量 (pr#20864, Alfredo Deza)
ceph-volume: 在扫描目录时尝试将 OSD 元数据转换为整数 (pr#19477, Wido den Hollander)
ceph-volume 更新 prepare/activate 标志的手册页 (pr#21570, Alfredo Deza)
ceph-volume 检查挂载时使用 realpath (issue#22988, pr#20427, Alfredo Deza)
ceph-volume: 使用唯一的逻辑卷 (pr#17207, Alfredo Deza)
ceph-volume: 对 {vg|pv|lv}s 命令使用 --readonly (pr#21409, Erwan Velu)
ceph-volume: 缺少 ceph.conf 文件时发出警告 (issue#22326, pr#19347, Alfredo Deza)
ceph-volume 混合使用 filestore 和 bluestore 标志时发出警告 (issue#23003, pr#20513, Alfredo Deza)
cleanup: 用 std::min,std::max 替换 MIN,MAX (pr#18124, Amit Kumar)
cli: rados: 支持使用 stat2 的高精度时间 (issue#21199, pr#17395, Abhishek Lekshmanan)
cls_acl/_crypto: 添加 modeline (pr#19010, Shinobu Kinjo)
cmake: 添加 chrono 到 BOOST_COMPONENTS (issue#23424, pr#20977, Nathan Cutler)
cmake: 添加 cython_rbd 作为 vstart 目标的依赖项 (pr#18382, Ali Maredia)
cmake: 如果 GCC 版本低于 5.1,则退出 (pr#19344, Kefu Chai)
cmake: BuildBoost.cmake: 使用指定的编译器构建 boost (pr#19898, Kefu Chai)
cmake: 将目标 jdk 提高到 1.7 (issue#23458, pr#21082, Shengjing Zhu)
cmake: 将所需的 cmake 版本提高到 2.8.12 (pr#18285, Kefu Chai)
cmake: BuildBoost.cmake 的更改以准备 seastar (pr#21404, Kefu Chai)
cmake: 检查 aligned_alloc() 而不是检查 tcmalloc 版本 (pr#18557, Kefu Chai)
cmake: 检查 gcc 版本而不是发布日期以确保 libstdc++ 健全性 (pr#18938, Kefu Chai)
cmake: 检查 src/boost 中 boost 的版本 (pr#19914, Kefu Chai)
cmake: 清理 (pr#18597, Kefu Chai)
cmake,common: 将部分 ceph 移植到 osx 的更改 (pr#17615, Kefu Chai)
cmake: 将 nvml 编译为外部项目 (pr#17462, Jianpeng Ma)
cmake: 为 libstdc++ 和 libc++ 定义 HAVE_STDLIB_MAP_SPLICING (pr#21284, Kefu Chai)
cmake: 如果 cmake 版本低于 3.1,禁用 DOWNLOAD_NO_PROGRESS (pr#20492, Kefu Chai)
cmake: 为 rocksdb 禁用 FAIL_ON_WARNINGS (pr#19426, Kefu Chai)
cmake: 在 options.cc 上禁用 VTA (pr#17393, Kefu Chai)
cmake: 不为 rocksdb 查找 bzip2/lz4 (pr#19963, runsisi)
cmake: 不链接 librados.a (pr#18576, Kefu Chai)
cmake: 不链接未使用的或重复的库 (pr#18092, Kefu Chai)
cmake: 启用仅 py3 构建 (pr#20064, Kefu Chai)
cmake: 默认启用 LZ4 (pr#21332, Grant Slater, Casey Bodley)
cmake: 启用新策略以消除 cmake 警告 (pr#21662, Kefu Chai)
cmake: 修复无 mgr 模块的构建 (pr#21591, Yuan Zhou)
cmake: 修复前端 cmake 构建 (pr#21449, Ricardo Dias)
cmake: 修复 libcephfs-test.jar 构建失败 (issue#22828, pr#20175, Tone Zhang)
cmake: 修复构建 boost::python 的包含目录 (pr#20324, Kefu Chai)
cmake: 修复状态消息中的拼写错误 (pr#21464, Lenz Grimmer)
cmake: 隐藏 libcls_* 中从其他库导入的符号 (issue#23517, pr#21571, Kefu Chai)
cmake: 识别 rocksdb 和 tcmalloc 可能的不兼容性 (issue#21422, pr#17788, Kefu Chai)
cmake: 在选择错误的“ALLOCATOR”时发出警告 (pr#17422, Adam Kupczyk)
cmake: 将前端构建包含在“all”目标中 (pr#21466, John Spray)
cmake: 让“tests”依赖于“mgr-dashboard-frontend-build” (pr#21468, Kefu Chai)
cmake: ‘make check’ 构建 radosgw 及其 cls 依赖项 (pr#20422, Casey Bodley)
cmake: mgr: 排除 .gitignore (pr#19174, Nathan Cutler)
cmake/modules/BuildRocksDB.cmake: 启用 rocksdb 的压缩功能 (issue#24025, pr#22183, Kefu Chai)
cmake: 仅在 linux 上创建 sysctl 文件 (pr#19029, Kefu Chai)
cmake: 将静态链接标志传递给链接 libcommon 的链接器 (pr#19763, Kefu Chai)
cmake: s/boost_256/boost_sha256/ (pr#21573, Kefu Chai)
cmake: 以正确的方式设置支持的语言 (pr#18216, Kefu Chai)
cmake: 应将 GPERFTOOLS_LIBRARIES 的值用作 REQUIRED_VARS (pr#18645, Kefu Chai)
cmake: s/sysconf/sysconfig/ (pr#20631, Kefu Chai)
cmake: 将 nvml 子模块同步到最新代码 (pr#20411, Jianpeng Ma)
cmake: 系统包含以消除子模块和库的警告! (pr#18711, Adam C. Emerson)
cmake: npm 未找到时的拼写错误修复 (pr#20801, Abhishek Lekshmanan)
cmake: 更新最低 boost 版本至 1.66 (issue#20048, issue#22600, pr#19808, Casey Bodley)
cmake: 更新 gperftools bug 的错误消息 (pr#17901, Kefu Chai)
cmake: 如果使用低于 5.1.0 的 libstdc++,则发出警告 (pr#18837, Kefu Chai)
cmake: 默认情况下 WITH_SPDK=ON (pr#18944, Liu-Chunmei, Kefu Chai, wanjun.lp, Ziye Yang)
common: 在某些 cli 结果末尾添加换行符 (issue#21019, pr#16687, songweibin)
common: 为 “ceph daemon TYPE.ID version” 添加换行符 (pr#17146, Zhu Shangzhong)
common: 添加仅包含 Ceph 版本号和发布信息的元数据 (pr#21095, Wido den Hollander)
common: 添加 ms_async_op_threads 的最小值/最大值 (pr#19942, Shinobu Kinjo)
common: 添加 noreturn 属性以消除未初始化警告 (pr#19348, Adam C. Emerson)
common: auth: 在 load 函数中为日志信息添加错误原因 (pr#17256, Luo Kexue)
common: 当 bench 测试进入死循环时
=0 (pr#16382, PC) common: buffer: 通过移除新的 _mempool 字段避免更改 bufferlist ABI (issue#21573, pr#18408, Sage Weil)
common: 默认情况下,不在 shared_cache 代码中的泄漏上断言 (issue#21737, pr#18201, Greg Farnum)
common: ceph: 在帮助消息中为 watch-channel 参数添加正确的括号 (pr#19698, Chang Liu)
common: ceph.in: 使用相同的 python 执行 execv (pr#17713, Kefu Chai)
common: ceph_release: s/rc/stable/ (pr#22264, Sage Weil)
common: 更改例程为公共访问 (pr#20003, Willem Jan Withagen)
common: 使用前检查 this->data.op_size (pr#18816, Amit Kumar)
common: 清理 address_helper (pr#19643, Shinobu Kinjo)
common: cmake,common/RWLock: 检查 libpthread 扩展 (pr#19202, Kefu Chai)
common: common: 为廉价字符串分割添加 for_each_substr() (pr#18798, Casey Bodley)
common: common: 为 json/xml 转义添加流接口 (pr#19806, Casey Bodley)
common: common/admin_socket: 在将命令 json 传递给 hook 之前验证它 (pr#20437, Kefu Chai)
common: common/blkdev: 修复 FreeBSD 环境中的构建 (pr#19316, Mykola Golub)
common: common/buffer: 清理 (pr#18312, Shinobu Kinjo)
common: common/buffer: 将 crc 缓存切换到单个对而不是 map (pr#18906, Piotr Dałek)
common: common/config: 为选项添加单位 (issue#22747, pr#20419, Kefu Chai)
common: common/config: 限制对 normalize_key_name 的调用 (pr#20318, Piotr Dałek)
common: common/config: 使 internal_safe_to_start_threads 内部化 (pr#18884, Sage Weil)
common: common/ConfUtils: 在实际标准化之前检查 key (pr#20370, Piotr Dałek)
common: common/dns_resolv.cc: 如果 ms_bind_ipv6 为 True,则查询 AAAA 记录 (issue#23078, pr#20530, Wido den Hollander)
common: common/dns_resolve: 修复内存泄漏 (pr#19649, Yao Zongyou)
common: common/event_socket.h: 包含 <errno.h> 以使用 errno (pr#18351, Kefu Chai)
common: common/Formatter: 修复 {json,xml}_stream_escaper 的 string_view 用法 (issue#23622, pr#21317, Sage Weil)
common: common/hobject: 直接比较两个对象的 key (pr#21062, xie xingguo)
common: common/hobject: 保留 hobject 的顺序 (pr#21217, Kefu Chai)
common: common/ipaddr: 不选择链路本地 IPv6 地址 (issue#21813, pr#20862, Wido den Hollander)
common: common/lockdep: 丢弃 hash<pthread_t> 特化 (pr#20574, Kefu Chai)
common: common/LogClient: 原子地分配 seq 和 queue (issue#18209, pr#16828, Sage Weil)
common: common/log: 提高日志速度 (pr#19100, Adam Kupczyk, Kefu Chai)
common: common/OpHistory: 将 insert/cleanup 移到单独的线程中 (pr#20540, Piotr Dałek)
common: common/options: 丢弃未使用的选项 (pr#20895, Kefu Chai)
common: common/options: log_stderr_prefix 的长描述 (pr#19869, Sage Weil)
common: common/options: 按引用传递并使用用户字面量表示大小 (pr#18034, Kefu Chai)
common: common/options: 使用用户定义的字面量表示默认值 (pr#17180, Kefu Chai)
common: common/perf_counters: 移除未使用的参数 (pr#19805, Kefu Chai)
common: common/pick_address.cc: 清理 (pr#19707, Shinobu Kinjo)
common: common/pick_address: pick_iface() 中的错误 prefix_len (pr#20128, Gu Zhongyan)
common: common/str_list: s/boost::string_view/std::string_view (pr#20475, Kefu Chai)
common: common/strtol: 修复 strict_strtoll() 以接受以 0x 开头的十六进制数 (pr#21521, Kefu Chai)
common: common/strtoll: 移除多余的 const 修饰符 (pr#21560, Jan Fajerski)
common: common/throttle: 开始使用 64 位值 (issue#22539, pr#19759, Igor Fedotov)
common: common/types: 显示空间使用情况时让数字更美观 (pr#17126, xie xingguo)
common: common/util: 如果 VERSION_ID 缺失,不打印错误 (pr#17787, Kefu Chai)
common: compressor: 为 type="random" 使用 generate_random_number() (pr#18272, Casey Bodley)
common: compressor/zstd: 改进 (pr#18879, Sage Weil)
common: 使用 contents.size() 而不是 lru.size() 计算 SimpleLRU 的大小 (issue#22613, pr#19813, Xuehan Xu)
common: config: 展开 ~/.ceph/$cluster.conf 的波浪号 (issue#23215, pr#20774, Rishabh Dave)
common: config: 在 set_mon_vals() 上通知配置观察者 (pr#21161, Casey Bodley)
common: config: 移除 _get_val (pr#18222, Adam C. Emerson)
common/config: 使用 with_val() 以提高性能 (pr#19056, Adam C. Emerson)
common: 合并自旋锁 (pr#15816, Jesse Williamson)
common,core: common, osd: 各种清理 (pr#18149, Kefu Chai)
common,core: common/pick_address: 添加 {public,cluster}_network_interface 选项 (pr#18028, Sage Weil)
common,core: common/Throttle: 清理 (pr#16618, Adam C. Emerson)
common,core: 修复 streamstream::rdbuf() 的错误使用 (issue#22715, pr#19998, Sage Weil)
common,core: include/ceph_features: 弃用大量功能 (pr#18546, Sage Weil)
common,core: include,messages,rbd: 初始化 counter,group_pool (pr#17774, Amit Kumar)
common,core: options: 不使用指针的链表! (pr#17984, Adam C. Emerson)
common,core: osdc/Objecter: 在 LingerOp 上获取预算而不是在子 Ops 上 (issue#22882, pr#20519, Greg Farnum)
common,core: osd/OpRequest: 禁用跟踪时减少开销 (pr#18470, Haomai Wang)
common,core: rados: 优先使用模板而不是宏 (pr#19913, Adam C. Emerson)
common,core,rbd,rgw: common,osd,rgw: 修复 SCA 期间发现的问题 (pr#21419, Danny Al-Gaaf)
common,core,rbd,tests,tools: common,mds,mgr,mon,osd: 仅在添加事件时存储事件 (pr#16312, Kefu Chai)
common,core: 恢复 “msg/async/AsyncConnection: 竞争发生时注销连接” (issue#22231, pr#19586, Sage Weil)
common,core: 恢复 “osd/OSDMap: 允许 pg-upmap-items 的双向交换” (issue#21410, pr#17760, Sage Weil)
common: Coverity 和 SCA 修复 (pr#17431, Danny Al-Gaaf)
common/crc/aarch64: 添加了 cpu 功能 pmull 并使其特定于 aarch64… (pr#22184, Adam Kupczyk)
common: crush/CrushWrapper: 修复越界访问 (issue#20926, pr#16869, Sage Weil)
common: crypto: 移除 cryptopp 库 (pr#20015, Casey Bodley)
common: denc 清理和其他修复 (pr#19877, Adam C. Emerson)
common: denc: 支持带有底层类型的枚举 (pr#18701, Kefu Chai)
common: 在初始化后销毁 RWLock 的 attr (pr#17103, Wen Zhang)
common: dmclock: 更新 mClockPriorityQueue,带子树更改 (pr#20992, Casey Bodley)
common: dout: DoutPrefixProvider 直接在流上操作 (pr#21608, Casey Bodley)
common: 丢弃 std 的命名空间 using 指令 (pr#19159, Shinobu Kinjo)
common: 丢弃 opts 中未使用的变量 “bluestore_csum_*_block” (pr#17394, songweibin)
common: encoding: 如果 optional<> 未初始化,则重置它 (pr#17599, Kefu Chai)
common: 扩展 random.h: 数字类型放宽到兼容类型 (与 (pr#20670, Jesse Williamson)
common: 修复 BoundedKeyCounter const_pointer_iterator (issue#22139, pr#18953, Casey Bodley)
common: 修复守护程序在解析无效参数时异常退出 (issue#21365, issue#21338, pr#17664, Yan Jun)
common: 修复 HTMLFormatter 中潜在的内存泄漏 (pr#20699, Yao Zongyou)
common: 修复注释中的拼写错误 deamon (pr#17687, yonghengdexin735)
common: 修复 options.cc 中的拼写错误 (pr#20549, songweibin)
common: FreeBSD 需要正确的 ipv6 结构选择 (issue#21813, pr#21143, Willem Jan Withagen)
common: global: 在联系 mons 之前输出 -h, --help 或无参数的用法 (pr#20812, Sage Weil)
common: 根据默认详细程度提示 dout() 的主分支 (pr#21259, Radoslaw Zarzynski)
common: 实现随机数生成器 (遵循 N3551) (issue#18873, pr#15341, Jesse Williamson)
common: 改进向用户发送信号时的消息 (issue#23320, pr#21000, Erwan Velu)
common: include/encoding: 修复兼容版本错误消息 (pr#19660, Xinying Song)
common: include/interval_set: 按 map 类型参数化并删除 btree_interval_set.h (pr#18611, Sage Weil)
common: include/rados: 修复 librados.h 中的拼写错误 (pr#17988, wumingqiao)
common: include: 移除未使用的头文件 ciso646 (pr#18320, Shinobu Kinjo)
common: include/types: 用十进制因子格式化十进制数 (issue#22095, pr#19117, Jan Fajerski)
common: include: xlist: 修复 Clang 缺少字符串错误 (pr#19367, Willem Jan Withagen)
common: interval_set: 删除 subset_of() (pr#21108, xie xingguo)
common: interval_set: 优化 intersect_of 插入操作 (issue#21229, pr#17265, Zac Medico)
common: 引入 md_config_cacher_t (pr#20320, Radoslaw Zarzynski)
common: 启动 mimic (pr#16993, Sage Weil)
common: lockdep 修复 (issue#20988, pr#17738, Jeff Layton)
common: log: 在重用时清除线程局部流的 ios 标志 (pr#20174, Casey Bodley)
common: shunique_lock.h 中逻辑上死代码 (pr#17341, Amit Kumar)
common: 使 ceph_clock_now() 可内联 (pr#20443, Radoslaw Zarzynski)
common: 使调用 assert() 的代码更小 (pr#20445, Adam Kupczyk)
common: 使一些消息具有信息性,而不是错误 (pr#16594, Willem Jan Withagen)
common: 在 TrackedOp 构造函数之外标记事件 (issue#22608, pr#19828, Xuehan Xu)
common: mgr/dashboard_v2: 修复 test_cluster_configuration 测试 (issue#23265, pr#20782, Sebastian Wagner)
common: mimic: include/types: 数字和单位之间有空格 (pr#22107, Sage Weil)
common,mon: crush,mon: 修复 weight-set vs crush 设备类 (issue#20939, pr#16883, Sage Weil)
common,mon,osd,pybind: 消除警告并移除可执行模式位 (pr#17512, Kefu Chai)
common: msg/async/AsyncConnection: 调试噪音较少 (pr#20600, Sage Weil)
common: msg/async: 在 core_id 指定的核心上执行,而不是其索引 (pr#20659, Kefu Chai)
common: msg/msg_types: 修复 entity_addr_t 的解码器 (pr#17699, Kefu Chai)
common: msg/simple: s/ceph::size/std::size/ (pr#19896, Kefu Chai)
common/options.cc: 清理默认大小的可读字面量 (pr#18425, Enming Zhang)
common/options.cc: 设置 Filestore rocksdb 压缩预读选项 (issue#21505, pr#17900, Mark Nelson)
common: OpTracker 在 nref == 0 时不访问 TrackedOp (issue#24037, pr#22160, Radoslaw Zarzynski)
common: osdc/Objecter: 修复警告 (pr#21757, Sage Weil)
common: osdc/Objecter: 正确记录 l_osdc_op_send_bytes 的值 (issue#21982, pr#18810, Jianpeng Ma)
common: osd/PrimaryLogPG: 缓存未命中时向 primary 发送请求 (issue#20919, pr#16884, Sage Weil)
common: osd_types: 将 eversion_t::max() 中的 max 定义为 static (pr#17453, yang.wang)
common,os: 初始化 commit_data,cmount,iocb (pr#17766, Amit Kumar)
common: ZFS 上的 posix_fallocate 返回 EINVAL (pr#20398, Willem Jan Withagen)
common: rados: 清理 rados_getxattrs() 和 rados_striper_getxattrs() (pr#20259, Gu Zhongyan)
common: 用于更新 PerfCounters 的 RAII 风格机制 (pr#19149, Radoslaw Zarzynski)
common: random: 恢复从 boost::optional 到 std::optional 的更改 (issue#23778, pr#21567, Casey Bodley)
common: 移除 ceph_clock_gettime, extern 关键字 (pr#19353, Shinobu Kinjo)
common: retry_sys_call 无需获取函数指针的地址 (pr#21281, Leo Zhang)
common: 恢复 “common/config: 返回 const 引用而不是副本” (pr#18934, Kefu Chai)
common: 恢复 “core: 提示 dout() 的消息制作是冷代码。” (issue#23169, pr#20636, Kefu Chai)
common,rgw: rgw,common,rbd: s/boost::regex/std::regex/ (pr#19393, Kefu Chai)
common,rgw: rgw,common: 移除已包含的头文件 (pr#19390, Yao Zongyou)
common: 消除 jenkins 在 obj_bencher.cc 中的构建警告 (pr#17272, Luo Kexue)
common: src/common: 更新一些 ms_* 选项以使其更一致 (pr#20652, shangfufei)
common: src/msg/async/rdma: 通过 rdtsc 指令降低 cpu 使用率 (pr#16965, Jin Cai)
common: 静态指针 (pr#19079, Adam C. Emerson)
common: strict_strtol INT_MAX 和 INT_MIN 有效 (pr#18574, Shasha Lu)
common: s/unique_lock/lock_guard/,如果不需要手动 lock/unlock (pr#19770, Shinobu Kinjo)
common: 将单例切换为使用 immobile_any 并清理 (pr#20273, Adam C. Emerson)
common: test: 修复单元测试内存泄漏以消除 valgrind 警告 (pr#19654, Yao Zongyou)
common,tests: test/common: unittest_mclock_priority_queue 通过 “make” 命令构建 (pr#17582, J. Eric Ivancich)
common,tests: test/librados: 创建唯一的锁名称 (issue#20798, pr#16953, Neha Ojha)
common: tools/crushtool: 如果不存在名称,则跳过设备 id (issue#22117, pr#18901, Jan Fajerski)
common: 将 mono 时钟用于 HeartbeatMap (pr#17827, Xinze Chi, Kefu Chai)
common: 在 build_options() 中使用移动而不是复制 (pr#18003, Casey Bodley)
common: utime:修复 __32u 秒时间溢出 (pr#21113, kungf)
compressor: 重新添加 zstd (pr#21106, Kefu Chai)
compressor: 根据 HAVE_LZ4 条件化 (pr#17059, Kefu Chai)
compressor: 删除已损坏的 AsyncCompressor (pr#18472, Haomai Wang)
core: blkin: 修复 OSD 中无条件跟踪 (pr#19156, Yingxin)
core: ceph-debug-docker.sh: 添加 ceph-osd-dbg 包 (pr#17947, Patrick Donnelly)
core: ceph.in: 添加 scrub 和 deep-scrub 的阻塞模式 (pr#19793, Brad Hubbard)
core: ceph.in: 如果参数缺失,打印所有匹配的命令 (issue#22344, pr#19547, Kefu Chai)
core: ceph-kvstore-tool: 复制到不同的存储类型并正确清理 (pr#18029, Josh Durgin)
core: ceph-mgr: 使用后退出 (issue#23482, pr#21401, Sage Weil)
core: ceph_osd.cc: 丢弃遗留或冗余代码 (pr#18718, Shinobu Kinjo)
core: ceph-osd: 某些标志在帮助输出中未文档化 (issue#20057, pr#15565, Yanhu Cao)
core: ceph: 以字符串而不是字节打印 “status” 的输出 (pr#21297, Kefu Chai)
core: ceph-rest-api: 当 port=0 时使用 DEFAULT_PORT (pr#17443, You Ji)
core: ceph_test_objectstore: 为测试禁用 filestore_fiemap (issue#21880, pr#18452, Sage Weil)
core: ceph_test_objectstore: 不为 0 长度的零改变模型 (issue#21712, pr#18519, Sage Weil)
core: ceph_test_rados_api_aio: 修复满池和 osdmap 的竞争 (issue#23916, issue#23917, pr#21709, Sage Weil)
core: ceph_test_rados_api_tier: 添加 ListSnap 测试 (pr#17706, Xuehan Xu)
core: client,osd,test: 初始化 fuse_req_key,snap,who,seq (pr#17772, Amit Kumar)
core: common/admin_socket: 各种清理 (pr#20274, Adam C. Emerson)
core: common/config: 清理删除一些未使用的宏 (pr#19599, Yao Zongyou)
core: common,mds,osd: 如果不可复制,显式删除复制构造函数 (pr#19465, Shinobu Kinjo)
core: common/options: 为 filestore 启用多个 rocksdb 压缩线程 (pr#18232, Josh Durgin)
core: common, osd: OpTracker 中重复的 “start” 事件,改进 OpTracker::dump_ops (pr#21119, Chang Liu)
core: compressor: 添加 Brotli 压缩器 (pr#19549, BI SHUN KE)
core: config: 降低默认一次恢复的 omap 条目数 (issue#21897, pr#19910, Josh Durgin)
core: crush/CrushWrapper: 修复迭代器潜在的无效使用 (pr#21325, xie xingguo)
core: dmclock: dmclock delta、rho 和 phase 参数的传递 + 启用客户端服务跟踪器 (pr#16369, Byungsu Park, Taewoong Kim)
core: erasure-code: 重构接口以隐藏内部细节 (pr#18683, Kefu Chai)
core: erasure-code: 使用 jerasure_free_schedule 正确释放调度 (pr#19650, Yao Zongyou)
core: erasure-code: 改用 std::count() (pr#19428, Kefu Chai)
core: etc/default/ceph: 移除 jemalloc 选项 (issue#20557, pr#18486, Sage Weil)
core: filestore: 包含 <linux/falloc.h> (pr#20415, wumingqiao)
core: 修复 fio 进行 rdma 性能测试时死锁 (pr#17016, Wang Chuanhong)
core: 修复大量 OSD 重启后残留 DNE pg 导致的断言 (issue#21833, pr#20571, David Zafman)
core: include: 删除 MIN 和 MAX 宏 (pr#20886, Sage Weil)
core: interval_set: 优化 intersection_of (pr#17088, Zac Medico)
core: kv/KeyValueDB: 添加列族 (pr#18049, Jianjian Huo, Adam C. Emerson, Sage Weil)
core: kv/RocksDB: 获取索引和过滤器块内存使用量 (pr#19934, Zhi Zhang)
core: kv/RocksDBStore: 修复禁用块缓存时 rocksdb 错误 (issue#23816, pr#21583, Yang Honggang)
core: librados: 添加 OPERATION_ORDERSNAP 标志和另一个 aio_operate 方法 (pr#20343, Mykola Golub)
core: librados.h: 添加 LIBRADOS_SUPPORTS_APP_METADATA (pr#16542, Matt Benjamin)
core: libradosstriper: 修复 rados_striper_trunc 的函数声明 (pr#20301, yuelongguang)
core: libradosstriper: 消除 -Wreorder 警告 (pr#16890, songweibin)
core: 使主要 dout() 路径更快更易于维护 (pr#20290, Radoslaw Zarzynski)
core: messages: 变量 beat 的初始化 (pr#17641, Amit Kumar)
core: messages: 初始化成员变量 (pr#16846, amitkuma)
core: messages: 初始化 MMDSFindIno 中的变量 tid (pr#16793, amitkuma)
core: messages: 初始化 MOSDPGUpdateLogMissing 中的成员 (pr#16928, amitkuma)
core: messages: 初始化变量 ceph_mds_reply_head (pr#17090, amitkuma)
core: messages,journal: 初始化 stats_period,m_active_set (pr#17792, Amit Kumar)
core: messages/MOSDMap: 也进行 crush map 的兼容重新编码 (issue#21882, pr#18454, Sage Weil)
core: messages/MOSDOp: encode_payload 的修复 (pr#16836, Ying He)
core: messages: 消除未初始化成员警告 (pr#17596, Amit Kumar)
core: mgr/DaemonServer.cc: 解码 caps 错误时添加 ‘is_valid=false’ (issue#20990, pr#16978, Yanhu Cao)
core,mgr: mgr/balancer: 改进错误消息 (issue#22814, pr#21427, Sage Weil)
core,mgr: osd,mgrclient: 通过右值引用传递 daemon_status 并进行其他清理 (pr#18509, Kefu Chai)
core,mgr: osd,mgr: 向 mgr 报告慢请求和待创建的 pgs (pr#18614, Kefu Chai)
core: mimic: crush: 在 bucket 移除时更新 choose_args (issue#24167, pr#22120, Sage Weil)
core: mimic: osdc: 使用锁保护 op->on_notify_finish (issue#23966, pr#21834, Kefu Chai)
core: mimic: osd: 清理智能探测 (issue#23899, issue#24104, pr#21959, Sage Weil, Gu Zhongyan)
core: mimic: osd: 即使抢占已以较小块重新开始,也不驱逐 (pr#22041, David Zafman)
core: mimic: osd/PrimaryLogPG: 修复 try_flush_mark_clean 写入竞争情况 (issue#24200, issue#24174, pr#22113, Sage Weil)
core: mon/ConfigKeyService: dump: 打印二进制 blob 的占位符值 (issue#23622, pr#21329, Sage Weil)
core,mon: crush, mon: 仅当我们真正创建了 weight-set 时才增加 map 版本 (pr#20178, xie xingguo)
core: mon/LogMonitor: 按通道分离摘要 (pr#21395, Sage Weil)
core,mon: mon/AuthMonitor: 在 create_initial() 上创建引导密钥 (pr#21236, Joao Eduardo Luis)
core,mon: mon/LogMonitor: 如果没有消息,则不会在 log sub w/ 上崩溃 (pr#21469, Sage Weil)
core,mon: mon,osd,crush: 杂项清理 (pr#20687, songweibin)
core,mon: mon/OSDMonitor: 注释掉未使用的函数 (pr#20275, Brad Hubbard)
core,mon: mon/OSDMonitor: 如果池已删除,则不创建 pgs (issue#21309, pr#17600, Joao Eduardo Luis)
core,mon: mon/OSDMonitor: 实现集群 pg 限制 (pr#17427, Sage Weil)
core,mon: mon/OSDMonitor: 在命名桶中列出 osd 树 (pr#19564, kungf)
core: mon, osd: 为池添加创建时间 (pr#21690, xie xingguo)
core: mon, osd: 修复 PG 重新映射后潜在的冲突 *Up Set* (issue#23118, pr#20653, xie xingguo)
core,mon: osd,mon: 添加 max-pg-per-osd 限制 (pr#18358, Kefu Chai)
core: mon/OSDMonitor: 从 force-create-pg 中过滤掉不应存在的 pgs (pr#20267, Sage Weil)
core: mon/OSDMonitor: 修复复制池的 min_size 默认值 (pr#20555, Josh Durgin)
core: mon/OSDMonitor: 修复 OSDMonitor 错误消息输出 (issue#22351, pr#20022, Brad Hubbard)
core: mon/OSDMonitor: 使 ‘osd crush class rename’ 幂等 (pr#17330, xie xingguo)
core: mon/OSDMonitor: 重命名外部名称声明以避免遮蔽 (pr#20032, Sage Weil)
core: mon/OSDMonitor: force-create-pg 需要 –yes-i-really-mean-it (pr#21619, Sage Weil)
core: mon,osd,osdc: 重构快照修剪 (阶段 1) (pr#18276, Sage Weil)
core: mon, osd: 每个池的空间满标志支持 (pr#17371, xie xingguo)
core: mon, osd: 降低非错误 scrub 消息严重性 (issue#20947, pr#16916, John Spray)
core: mon/PGMap: 修复 PGMapDigest 解码 (pr#22099, Sage Weil)
core: mon/PGMap: 修复 %USED 计算错误 (issue#22247, pr#19165, Xiaoxi Chen)
core: mon/PGMap: 移除或缩小 ‘pg ls’ 输出的列 (pr#20945, Sage Weil)
core: mon/PGMap: ‘unclean’ 不意味着损坏 (pr#18493, Sage Weil)
core: MOSDPGRecoveryDelete[Reply]: 增加 header 版本 (pr#17585, Josh Durgin)
core: msg/asyc/rmda: 修复 Infiniband::recv_msg 收到断开连接消息时断言的错误 (pr#17688, Jin Cai)
core: msg/async/AsyncConnection: 将多次分配合并为一次 (pr#18833, Haomai Wang)
core: msg/async/AsyncConnection: 修复 process_connection 中的 FPE (issue#23618, pr#21314, Brad Hubbard)
core: msg/async/AsyncConnection: 如果被另一个替换,状态将为 NONE (issue#21883, pr#18467, Haomai Wang)
core: msg/async/AsyncConnection: 竞争发生时注销连接 (pr#19013, Haomai Wang)
core: msg/async: 批量处理 numevents (pr#18321, Jianpeng Ma)
core: msg/async: 如果替换则不杀死连接 (issue#21143, pr#17288, Haomai Wang)
core: msg/async: 不陷入 resetsession/retrysession 循环 (pr#17276, Haomai Wang)
core: msg/async: 修复 uint64_t -> int -> uint64_t 类型转换的 bug (pr#18210, shangfufei)
core: msg/async: 如果 add_event 失败,打印错误日志 (pr#17102, mychoxin)
core: msg/async/rdma: 修复多 cephcontext 冲突 (pr#16893, Haomai Wang)
core: msg/async/rdma: 修复 rdma 轮询线程与 msg worker 使用相同线程名的 bug (pr#16936, Jin Cai)
core: msg/async/rdma: 改进 RX 缓冲区管理 (pr#16693, Alex Mikheev)
core: msg/async/rdma: 未初始化变量修复 (pr#18091, Vasily Philipov)
core: msg/DispatchQueue: wait() 后清除队列 (issue#18351, pr#20374, Sage Weil)
core: msgr/simple: 将 Pipe::out_seq 设置为连接端的 in_seq (issue#23807, pr#21585, Xuehan Xu)
core: os/bluestore: 调试 bluestore 缓存关闭 (issue#21259, pr#17844, Sage Weil)
core: os/bluestore: 禁用 on_applied sync_complete (issue#22668, pr#20169, Sage Weil)
core: os/bluestore: 使 bdev 标签解析错误更有意义且噪音更小 (pr#20090, Sage Weil)
core: os/bluestore: 使通过 start_kv_only 打开的 BlueStore 可卸载 (issue#21624, pr#18082, Chang Liu)
core: os/bluestore: 使用 db->rm_range_keys 删除键范围 (pr#18279, Xiaoyan Li)
core: OSD/admin_socket: 添加 get_mapped_pools 命令 (pr#19112, Xiaoxi Chen)
core: osdc, class_api: 杀死隐式字符串转换 (pr#16648, Piotr Dałek)
core: osdc: 为 pool_dne 情况减少 num_in_flight (pr#21110, Jianpeng Ma)
core: osdc: 不使用 lock_guard 作为 unique_lock (pr#19756, Shinobu Kinjo)
core: osdc: 在 linger 提交失败时调用 notify finish context (issue#23966, pr#21786, Jason Dillaman)
core: osdc/Objecter: 如果收到重定向回复,添加 ignore overlay 标志 (pr#21275, Ting Yi Lin)
core: osdc/Objecter: 在 _send_op 中延迟 hobject_t 的初始化 (issue#21845, pr#18427, Jason Dillaman)
core: osdc/Objecter: 修复 _finish_command 中的递归锁定 (issue#23940, pr#21742, Sage Weil)
core: osdc/Objecter: 杂项清理 (pr#18476, Jianpeng Ma)
core: osdc/Objecter: 防止 linger op 回调双重调用 (issue#23872, pr#21649, Jason Dillaman)
core: osdc/Objecter: 如果 bufferlist 为空,则跳过稀疏读取结果解码 (issue#21844, pr#18400, Jason Dillaman)
core: osd,compressor: 通过 MOSDBoot 暴露压缩算法 (issue#22420, pr#20558, Jesse Williamson)
core: osdc: 移除未使用的函数 (pr#21081, Jianpeng Ma)
core: osd,dmclock: 使用指向 ClientInfo 的指针而不是副本 (pr#18387, Kefu Chai)
core: osd: 不忘记未能发送的 pg_stat acks (pr#16702, huangjun)
core: OSD: 丢弃传递给 check_osdmap_features 的未使用参数 (pr#18466, Leo Zhang)
core: osd/ECBackend: 在深度 scrub 期间注入睡眠 (pr#20531, xie xingguo)
core: osd/ECBackend: 仅在完成恢复读取时检查所需的分片 (issue#23195, pr#21273, Josh Durgin)
core: osd/ECBackend: 更新关于 EIO 处理的误导性注释 (pr#21686, Josh Durgin)
core: osd/ECBackend: 等待 luminous peers 的 apply (pr#21604, Sage Weil)
core: osd/ECMsgTypes: 修复 ECSubRead 兼容解码 (pr#20948, Sage Weil)
core: osd, librados: 添加一个 rados op (TIER_PROMOTE) (pr#19362, Myoungwon Oh)
core: osd,librados: 为分块对象添加 manifest 和操作 (pr#15482, Myoungwon Oh)
core: osd,messages: 初始化 read_length,options,send_reply (pr#17799, Amit Kumar)
core: osd/OSD: 批量列出对象以减少内存消耗 (pr#20767, xie xingguo)
core: osd/OSD.cc: 解析 caps 失败时添加 ‘isvalid=false’ (pr#16888, Yanhu Cao)
core: osd/OSD.cc: 改用选项 ‘osd_scrub_cost’ (pr#18479, Liao Weizhong)
core: osd/OSDMap: 打印信息摘要时添加 osdmap epoch 信息 (pr#20184, shun-s)
core: osd/OSDMap: 修复 encode() 中的 HAVE_FEATURE 逻辑 (pr#20922, Ilya Dryomov)
core: osd/OSDMap: 忽略来自故障域 OSD 池的 PG (pr#20703, xie xingguo)
core: osd/OSDMap: print_oneline_summary() 中误导性消息 (issue#22350, pr#20313, Gu Zhongyan)
core: osd/OSDMap: 更多 pg upmap 修复 (issue#23878, pr#21670, xiexingguo)
core: osd/OSDMap: 移除对 null 的不必要检查 (pr#18636, Kefu Chai)
core: osd/OSDMap: 跳过 out/crush-out osd (pr#20655, xie xingguo)
core: osd/OSDMap: upmap 应该尊重 osd reweights (issue#21538, pr#17944, Theofilos Mouratidis)
core: osd/osd_type: get_clone_bytes - 内联 size() 以获取重叠大小 (pr#17823, xie xingguo)
core: osd/osd_types.cc: 在创建克隆时也复制 extents map (pr#18396, xie xingguo)
core: osd/osd_types: 修复 pg 的理想下限 object-id (pr#21235, xie xingguo)
core: osd/osd_types: 修复 object_stat_sum_t 解码 (pr#18551, Sage Weil)
core: osd/osd_types: 修复 hammer 的 pg_pool_t 编码 (pr#21282, Sage Weil)
core: osd/osd_types: 删除 pg_t 中的 preferred 字段 (pr#20567, Sage Weil)
core: osd/osd_types: object_info_t: 移除未使用的函数 (pr#17905, Kefu Chai)
core: osd/osd_types: pg_pool_t: 移除 crash_replay_interval 成员 (pr#18379, Sage Weil)
core: osd/osd_types: 移除 pg_log_entry_t 的 backlog 类型 (pr#20887, Sage Weil)
core: osd/OSD: 使用 Wait 而不是 WaitInterval 等待 queue.is_empty() (pr#17659, Jianpeng Ma)
core: osd/PG: 允许 scrub 抢占 (pr#18971, Sage Weil)
core: osd/PGBackend: 如果未能完成删除请求,则删除回复 (issue#20913, pr#17183, Kefu Chai)
core: osd/PGBackend: 从 objects_list_range() 中删除输入 “snapid_t” (pr#21151, xie xingguo)
core: osd/PGBackend: 修复 large_omap_objects 检查 (pr#21150, xie xingguo)
core: osd/PGBackend: 使用 msg->put() 释放 msg 而不是 delete (issue#20913, pr#17246, Kefu Chai)
core: osd/PG: 可恢复/可读谓词的 const 清理 (pr#18982, Neha Ojha)
core: osd/PG: 如果 scrub 被抢占,也衰减 scrub_chunk_max (pr#20552, xie xingguo)
core: osd/PG: 丢弃来自 down peers 的消息 (issue#19605, pr#17217, Kefu Chai)
core: osd/PG: 丢弃 PG.h 中未使用的变量 “oldest_update” (pr#17142, songweibin)
core: osd/PG: 扩展 pg 状态位以修复 pg ls 命令错误 (issue#21609, pr#18058, Yan Jun)
core: osd/PG: 修复 misplaced objects 的计算 (pr#18528, Kefu Chai)
core: osd/PG: 修复 DeferRecovery vs AllReplicasRecovered 竞争 (issue#23860, pr#21706, Sage Weil)
core: osd/PG: 修复 objects degraded 高于 100% 的问题 (issue#21803, issue#21898, pr#18297, Sage Weil, David Zafman)
core: osd/PG: 修复 PG 删除的乱序优先级 (pr#21613, xie xingguo)
core: osd/PG: 修复恢复操作泄漏 (pr#18524, Sage Weil)
core: osd/PG: 修复 Incomplete::react(AdvMap&) 中的未初始化读取 (issue#23980, pr#21798, Sage Weil)
core: osd/PG: 在 jewel 升级时强制重建 missing set (issue#20958, pr#16950, Sage Weil)
core: osd/PG: 在 ec pools 的 PG operator<< 中包含 primary (pr#19453, Sage Weil)
core: osd/PGLog: 断言溢出日志修剪 (pr#21580, xie xingguo)
core: osd/PGLog: 清理未使用的函数 revise_have (pr#19329, Enming Zhang)
core: osd/PGLog: 修复针对 **complete-to** iter 的健全性检查 (pr#21612, songweibin)
core: osd/PGLog: 消除低效的容器操作 (pr#19161, xie xingguo)
core: osd/PGLog: 仅写入更改的 dup 条目 (issue#21026, pr#17245, Josh Durgin)
core: osd, pg, mgr: 使快照修剪队列问题可见 (issue#22448, pr#19520, Piotr Dałek)
core: osd/PG: 杂项清理 (pr#18340, Yan Jun)
core: osd/PG: 杂项选择 acting 更改和清理 (pr#18481, xie xingguo)
core: osd/PG: 将 scrub 优先级传递给副本 (pr#20317, Sage Weil)
core: osd/PG: 优先选择 async_recovery_targets,按成本逆序排列 (pr#21578, xie xingguo)
core: osd/PG: 优先选择 EC async_recovery_targets,按成本逆序排列 (pr#21588, xie xingguo)
core: osd/PG: PGPool::update: 避免昂贵的 union_of (pr#17239, Zac Medico)
core: osd/PGPool::update: 使用 subset_of 优化 (pr#17820, Zac Medico)
core: osd/PG: 减少操作 MissingLoc 的开销 (pr#18186, xie xingguo)
core: osd/PG: 远程恢复抢占,以及新的功能位来对其进行条件化 (pr#18553, Sage Weil)
core: osd/PG: 移除 calc_ec_acting 中未使用的参数 (pr#17304, yang.wang)
core: osd/PG: 如果 NotRecovering 且发现 unfound,则重启恢复 (issue#22145, pr#18974, Sage Weil)
core: osd/PG: 恢复近似大小 (issue#22654, pr#18755, Adam Kupczyk)
core: osd/PG: 重新编写 _update_calc_stats 并改进 pg 降级状态 (issue#20059, pr#19850, David Zafman)
core: osd/PG: 一些清理 && 为循环日志添加 should_gather 过滤器 (pr#19546, Enming Zhang)
core: osd/PG: 两次清理 (pr#17171, xie xingguo)
core: osd/PG: 使用 osd_backfill_retry_interval 进行 schedule_backfill_retry() (pr#18686, xie xingguo)
core: osd/PrimaryLogPG: 在 chunky_scrub 中检查对象时添加条件 “is_chunky_scrub_active” (pr#18506, Jianpeng Ma)
core: osd/PrimaryLogPG: 按缺失对象数量排列恢复顺序 (pr#18292, xie xingguo)
core: osd/PrimaryLogPG: 避免 flush 与 write lock 冲突时的无限循环 (pr#21653, Sage Weil)
core: osd/PrimaryLogPG: 以更高效简洁的方式计算 clone_overlap 大小 (pr#17928, xie xingguo)
core: osd/PrimaryLogPG: 清理 do_sub_op && do_sub_op_reply 并在 prepare_transaction 中更适当地定义 soid (pr#19495, Enming Zhang)
core: osd/PrimaryLogPG: 如果 skip_data_digest,则在 WRITEFULL 上清除数据摘要 (pr#21676, Sage Weil)
core: osd/PrimaryLogPG: 在 scrub-repair 完成时正确清除 pin_stats_invalid 位 (pr#18052, xie xingguo)
core: osd/PrimaryLogPG: 如果 head *或* 对象与 scrub 间隔相交,则延迟驱逐 (issue#23646, pr#21628, Sage Weil)
core: osd/PrimaryLogPG: 不将 snapc 上拉到 snapset (pr#18713, Sage Weil)
core: osd/PrimaryLogPG: 不为 bluestore 设置数据摘要 (pr#17515, xie xingguo)
core: osd/PrimaryLogPG: 不盲目设置数据/omap 摘要 (pr#18061, xie xingguo)
core: osd/PrimaryLogPG: 不为日志修剪使用 approx_size() (pr#18338, xie xingguo)
core: osd/PrimaryLogPG: do_osd_ops - 在 failok 上传播 EAGAIN/EINPROGRESS (pr#17222, xie xingguo)
core: osd/PrimaryLogPG: 丢弃未使用的参数 (pr#18581, Liao Weizhong)
core: osd/PrimaryLogPG: 修复异步读取的 dup 统计 (pr#18693, Xinze Chi)
core: osd/PrimaryLogPG: 修复日志消息 (pr#21639, Gu Zhongyan)
core: osd/PrimaryLogPG: 修复稀疏读取不会正确触发修复 (pr#17221, xie xingguo)
core: osd/PrimaryLogPG: 修复 oi 大小与实际对象大小不匹配 (issue#23701, pr#21408, Peng Xie)
core: osd/PrimaryLogPG: 在回退降级对象时启动恢复 (pr#17987, xie xingguo)
core: osd/PrimaryLogPG: 删除 add_interval_usage (pr#17807, xie xingguo)
core: osd/PrimaryLogPG: maybe_handle_manifest_detail - 健全性检查 obc 存在性 (pr#17298, xie xingguo)
core: osd/PrimaryLogPG: 杂项清理 (pr#17830, Yan Jun)
core: osd/PrimaryLogPG: 更多 oi.extents 修复 (pr#18616, xie xingguo)
core: osd/PrimaryLogPG: prepare_transaction - 修复 EDQUOT vs ENOSPC (pr#17808, xie xingguo)
core: osd/PrimaryLogPG: 在正确块中请求 osdmap 更新 (issue#21428, pr#17828, Josh Durgin)
core: osd/PrimaryLogPG: 几次 oi.extents 修复 (pr#18527, xie xingguo)
core: osd/PrimaryLogPG: 在全对象大小 CRC 错误时触发自动修复 (pr#18353, xie xingguo)
core: osd/ReplicatedBackend: 清理代码 (pr#20127, Jianpeng Ma)
core: osd/ReplicatedBackend: ‘osd_deep_scrub_keys’ 不起作用 (pr#20221, fang yuxiang)
core: osd/ReplicatedPG: 将 omap 写入字节添加到 delta_stats (pr#18471, Haomai Wang)
core: osd_types.cc: 重新排序序列化 pg_stat_t 中的字段 (pr#19965, Piotr Dałek)
core: os/filestore: 禁用 rocksdb 压缩 (pr#18707, Sage Weil)
core: os/filestore/FileStore: 通过 nullptr, NULL 或 0 初始化 (pr#18980, Shinobu Kinjo)
core: os/filestore: 修复设备/分区元数据检测 (issue#20944, pr#16913, Sage Weil)
core: os/filestore: 修复 do_copy_range 重放错误 (issue#23298, pr#20832, Sage Weil)
core: os/Filestore: 修复 wbthrottle 断言 (pr#14213, Xiaoxi Chen)
core: os/filestore: 如果 do_read_entry() 失败,则打印错误 (pr#18346, Kefu Chai)
core: os: FileStore, 使用 stl min | max,而不是 MIN | MAX 宏 (pr#19832, Shinobu Kinjo)
core: os: 修复 0 长度零语义,添加测试 (issue#21712, pr#18159, Sage Weil)
core: os/FuseStore: 修复 fuse 的 statfs 接口中不正确的已用空间统计信息 (pr#19033, Zhi Zhang)
core: os/kstore: 丢弃未使用的函数声明 (pr#18077, Jos Collin)
core: os/kstore: 修复 statfs 问题并添加 vstart.sh 支持 (issue#23590, pr#21287, Yang Honggang)
core: os/memstore: 修复 lock_guard 的错误使用 (pr#20914, Shen-Ta Hsieh)
core: os/ObjectStore: 修复 get_data_alignment 返回 -1 导致消息头问题 (pr#18475, Haomai Wang)
core: os/ObjectStore.h: 修复注释 TRANSACTION ISOLATION 中的错误 (pr#16840, mychoxin)
core: os,osd: 丢弃 onreadable/onapplied 回调的初始工作 (issue#23029, pr#20177, Sage Weil)
core: os: 统一 Sequencer 和 CollectionHandle (pr#20173, Sage Weil)
core: PG: 修复 WaitActingChange 的名称 (pr#18768, wumingqiao)
core: pg: 在 down 状态处理 MNotifyRec 事件 (pr#20959, Mingxin Liu)
core: PGPool::update: 尽可能优化 removed_snaps 比较 (pr#17410, Zac Medico)
core: PGPool::update: 使用 interval_set.swap 优化 (pr#17121, Zac Medico)
core: PG: primary 不应在 peer_info 中,如果是则跳过 (pr#20189, Neha Ojha)
core: ptl-tool: 创建后检出分支 (pr#18157, Patrick Donnelly)
core: ptl-tool: 加载已标记的 PR (pr#18231, Patrick Donnelly)
core: ptl-tool: 使分支名称可配置 (pr#18499, Patrick Donnelly)
core: ptl-tool: 打印提交消息/注释中引用的 bzs/tickets (pr#18547, Patrick Donnelly)
core: pybind/ceph_argparse: 修复 cli 输出信息 (pr#17667, Luo Kexue)
core: pybind/ceph_argparse: 修复命令未验证时的 UnboundLocalError (pr#21342, Tim Serong)
core: pybind/ceph_argparse.py: 调用 run_in_thread 时,'timeout' 必须在 kwargs 中 (pr#21659, yangdeliu)
core,pybind: pybind/ceph_argparse: 接受灵活的 req (pr#20791, Gu Zhongyan)
core,pybind: pybind/rados: 为 IoCtx 添加对齐 getter (pr#21222, Bruce Flynn)
core,pybind: pybind/rados: 添加 rados_service_*() (pr#18812, Kefu Chai)
core,pybind: pybind/rados: 添加支持 open_ioctx2 API (pr#17710, songweibin)
core,pybind: rados: 支持 “set_osdmap_full_try” 的 python API (pr#17418, songweibin)
core: qa: 修复 pg 状态变化的潜在延迟 (pr#17253, huangjun)
core: qa/standalone/osd/repro_long_log: cot 无 mon-config (pr#20919, Sage Weil)
core: qa/standalone/scrub/osd-scrub-repair: diff 无 -y (issue#21618, pr#18079, Sage Weil)
core: qa/suite/rados: 修复 balancer vs firefly tunables 失败 (pr#18826, Sage Weil)
core: qa/suites/rados: 更少的 msgr 失败 (pr#20918, Sage Weil)
core: qa/suites/rados/perf: 白名单健康警告 (pr#18878, Sage Weil)
core: qa/suites/rados/rest/mgr: 配置 openstack 卷 (pr#20573, Sage Weil)
core: qa/suites/rados/singleton/all/mon-seesaw: 白名单 MON_DOWN (pr#18246, Sage Weil)
core: qa/suites/rados/singleton/all/recover-preemption: 处理慢启动 osd (pr#18078, Sage Weil)
core: qa/suites/rados/singleton/all/recovery_preemption: 白名单 SLOW_OPS (pr#21250, Sage Weil)
core: qa/suites/rados/singleton/diverget_priors*: 拓宽白名单 (pr#17379, Sage Weil)
core: qa/suites/rados/thrash: 当注入许多 msgr 失败时,延长 mgr beacon grace (issue#21147, pr#19242, Sage Weil)
core: qa/suites/rados/verify/tasks/rados_api_tests: 白名单 OBJECT_MISPLACED (pr#21646, Sage Weil)
core: qa/workunits/rest/test.py: 停止尝试测试过时的 cluster_up/down (pr#18552, Sage Weil)
core: rados/objclass.h: 修复在所有情况下定义 CEPH_CLS_API 的构建 (pr#21606, Danny Al-Gaaf)
core: rados: 使用 WaitInterval() 的返回值而不是手动计时 (pr#20028, Mohamad Gebai)
core,rbd: common,rbd-nbd: 修复 prefork 行为与 AsyncMessenger 单例的冲突 (issue#23143, pr#20681, Sage Weil)
core,rbd: librbd,os: 解决 coverity 误报 (pr#17793, Amit Kumar)
core,rbd: mgr,osd,kv: 修复 Clang 和 GCC7 的各种警告 (pr#17976, Adam C. Emerson)
core: rdma: 赋值而不是比较 (pr#16664, amitkuma)
core: 移除 startsync (issue#20604, pr#16396, Amit Kumar)
core: rocksdb: 与上游同步 (issue#20529, pr#17388, Kefu Chai)
core: rocksdb: 与上游同步 (pr#21320, Kefu Chai)
core: 副本上未清除的 scrub 错误可能导致副本接管 primary 时 PG 状态不一致 (issue#23267, pr#21101, David Zafman)
core: Snapset 不一致性通过其自身错误检测到 (issue#22996, pr#20450, David Zafman)
core: src/messages/MOSDMap: 为较旧客户端重新编码 OSDMap (issue#21660, pr#18134, Sage Weil)
core: src/osd/PG.cc: 6455: FAILED assert(0 == “我们收到了一个错误的状态机事件”) (pr#20933, David Zafman)
core: src/test/osd: 为 manifest 对象添加两个池测试 (pr#20096, Myoungwon Oh)
core: test/cli/osdmaptool/test-map-pgs.t: 移除非确定性测试 (pr#20872, Sage Weil)
core: test/objectstore_bench: 不要忘记判断是否调用 usage (pr#21369, Jianpeng Ma)
core,tests: ceph_test_filestore_idempotent_sequence: 多处修复 (issue#22920, pr#20279, Sage Weil)
core,tests: ceph_test_objectstore: 丢弃 expect regex (pr#16968, Sage Weil)
core,tests: 纠删码读取测试和代码清理 (issue#14513, pr#17703, David Zafman)
core,tests: 纠删码恢复应在必要时发送额外的读取 (issue#21382, pr#17920, David Zafman)
core,tests: osd,dmclock: 修复 dmclock 测试模拟器更改 (pr#20270, J. Eric Ivancich)
core,tests: os: kstore 修复 FiemapHole 的单元测试 (pr#17313, Ning Yao)
core,tests: os/memstore: memstore_page_set=false (issue#20738, pr#16995, Sage Weil)
core,tests: qa/ceph_manager: 在超时前再次检查 pg 状态 (issue#21294, pr#17810, huangjun)
core,tests: qa/clusters/fixed-[23]: 每个节点 4 个 osd,而不是 3 个 (pr#16799, Sage Weil)
core,tests: qa: 修改 rgw 默认池名称 (pr#21630, Neha Ojha)
core,tests: qa/objectstore/bluestore*: 减少调试输出 (issue#20910, pr#17505, Sage Weil)
core,tests: qa/overrides/2-size-2-min-size: 白名单 REQUEST_STUCK (pr#17243, Sage Weil)
core,tests: qa/standalone/ceph-helpers: 将 –verbose 传递给 ceph-disk (pr#19456, Sage Weil)
core,tests: qa/standalone/scrub/osd-scrub-repair: 修复 grep 模式 (issue#21127, pr#17258, Sage Weil)
core,tests: qa/standalone/scrub/osd-scrub-snaps: 调整测试以适应缺少 snapdir 对象 (pr#17927, Sage Weil)
core,tests: qa/suites/rados/monthrash: 在 mon thrashing 期间容忍 PG_AVAILABILITY (pr#18122, Sage Weil)
core,tests: qa/suites/rados/monthrash: 白名单 SLOW_OPS (pr#21331, Sage Weil)
core,tests: qa/suites/rados/objectstore: 日志 (issue#20738, pr#16923, Sage Weil)
core,tests: qa/suites/rados/perf: 创建 pg_num 较低的池 (pr#17819, Neha Ojha)
core,tests: qa/suites/rados/rest/mgr-restful: 白名单更多健康 (pr#18457, Sage Weil)
core,tests: qa/suites/rados/rest: 将 rest_test 从 qa/suites/rest/ 移出 (pr#19175, Sage Weil)
core,tests: qa/suites/rados/thrash: 修复 thrashing 与 ec vs map discon 的冲突 (pr#16842, Sage Weil)
core,tests: qa/suites/rados/thrash-old-clients: 添加 hammer 客户端 (pr#21703, Sage Weil)
core,tests: qa/suites/rados/thrash-old-clients: 添加 rbd 测试 (pr#21704, Sage Weil)
core,tests: qa/suites/rados/thrash-old-clients: 使用 jewel 和 luminous 客户端进行一些 thrashing (pr#21679, Sage Weil)
core,tests: qa/suites/rados/thrash-old-clients: 仅限 centos 和 16.04 (pr#22125, Sage Weil)
core,tests: qa/suites/upgrade/jewel-x/stress-split: 容忍 sloppypast_intervals (pr#17226, Sage Weil)
core,tests: qa/suites/upgrade/luminous-x/stress-split: 避免 enospc (pr#21753, Sage Weil)
core,tests: qa/tasks/ceph_manager: 在进行最终 rerr 重置之前恢复 osd (issue#21206, pr#17406, Sage Weil)
core,tests: qa/tasks/ceph_manager: 容忍 tell osd.* 错误 (pr#19365, Sage Weil)
core,tests: qa/tasks/ceph.py: 容忍 flush pg stats 异常 (pr#16905, Sage Weil)
core,tests: qa/tasks/filestore_idempotent: 较短的测试 (pr#20509, Sage Weil)
core,tests: qa/tasks/thrashosds: 将 min_in 默认设置为 4 (issue#21997, pr#18670, Sage Weil)
core,tests: qa/tests: 在 installer.0 角色/节点上运行 ceph-ansible 任务 (pr#19605, Yuri Weinstein)
core,tests: qa: 容忍强制回填失败 (issue#22614, pr#19765, Sage Weil)
core,tests: qa/workunits/rados/test_rados_tool: 修复了多余的
|,避免竞态条件(issue#22676, pr#19946, Sage Weil)core,tests: qa/workunits/rados/test.sh: 确保 tee 输出是有效文件名(pr#21507, Sage Weil)
core,tests: rados: 对齐初始化(pr#17723, Amit Kumar)
core,tests: rados: 初始化 librados/TestCase.h 的成员(pr#16896, amitkuma)
core,tests: test: 关闭前检查 fd 是否为负(pr#17190, amitkuma)
core,tests: test: 检查避免除以零(pr#17220, amitkuma)
core: tool: 将默认对象存储从 filestore 更改为 bluestore(pr#18066, Song Shun)
core: tool: ceph-kvstore-tool 的杂项清理(issue#22092, pr#18815, Chang Liu)
core,tools: 添加导出和删除 ceph-objectstore-tool 命令选项(issue#21272, pr#17538, David Zafman)
core,tools: ceph-objectstore-tool: 修复从拆分前祖先导入拆分后 pg 的问题(issue#21753, pr#18229, Sage Weil)
core: tools/ceph-objectstore-tool: 离线将 filestore 目录拆分到目标哈希级别(issue#21366, pr#17666, Zhi Zhang)
core,tools: common, tool: 更新 kvstore-tool 以修复键/值数据库(issue#17730, issue#21744, pr#16745, liuchang0812, Chang Liu)
core,tools: osd,os/bluestore: 消除 clang 分析器警告(pr#18015, Kefu Chai)
core: tools/rados: 添加 touch 命令以更改对象修改时间(pr#18913, Yao Zongyou)
core,tools: scripts: 为脚本合并添加 ptl-tool(pr#17926, Patrick Donnelly)
core: vstart.sh: 丢弃 .ceph_port 并使用随机选择的可用端口(pr#19268, Shinobu Kinjo)
core: vstart.sh: 丢弃 –{mon,osd,mds,rgw,mgr}_num 选项(pr#18648, Kefu Chai)
crush: 清理 update_device_class() 日志消息(pr#21174, Gu Zhongyan)
crush: 修复 CrushCompiler 无法编译带有空影子树的映射的问题(pr#17058, xie xingguo)
crush: 修复 device_class_clone 在未填充/空权重集情况下的问题(issue#23386, pr#22169, Sage Weil)
crush: 修复统一时快速规则查找的问题(pr#17510, Sage Weil)
crush: 交换桶后强制重建影子层次结构(pr#17083, xie xingguo)
crush: 提高 straw2 算法的可读性(pr#20196, Yao Zongyou)
crush: “osd crush class rename” 支持(pr#16961, xie xingguo)
crush, osd: 应用 pg upmaps 时正确处理多个父级(issue#23921, pr#21835, xiexingguo)
crush: 对 ‘ceph osd crush swap-bucket’ 进行安全检查(pr#17335, Carudy)
crush: CrushWrapper 的各种清理(pr#17360, Kefu Chai)
crush: 各种权重集修复(pr#17014, xie xingguo)
denc: 应该检查元素的类型而不是 ‘size_t’(pr#19986, Kefu Chai)
denc: 使用 constexpr-if 替换一些 SFINAE 实现(pr#19662, Kefu Chai)
doc: 12.1.3 发布说明(pr#16975, Abhishek Lekshmanan)
doc: 12.2.0 主要发布公告(pr#16915, Abhishek Lekshmanan)
doc: 12.2.1 发布说明(pr#18014, Abhishek Lekshmanan)
doc: 12.2.4 发布说明(pr#20619, Abhishek Lekshmanan)
doc: 添加 12.2.2 发布说明(pr#19264, Abhishek Lekshmanan)
doc: 添加 allow_multimds 和 fs_name 参数(pr#15847, Jan Fajerski)
doc: 添加 ceph-kvstore-tool 的手册(pr#17092, liuchang0812)
doc: 添加 12.2.1 的更新日志(pr#18020, Abhishek Lekshmanan)
doc: 添加 v11.2.1 的更新日志(pr#16956, Abhishek Lekshmanan)
doc: 添加 v12.2.2 的更新日志(pr#19284, Abhishek Lekshmanan)
doc: 添加 iSCSI 的 CHAP 配置说明(pr#18423, Ashish Singh)
doc: 添加在 cephfs 布局中设置池的示例(pr#17372, John Spray)
doc: 添加 10.2.10 的更新日志(pr#18151, Abhishek Lekshmanan)
doc: 添加关于运行 rbd-mirror 的不同方式的介绍(pr#19692, Yu Shengzuo)
doc: 为 radosgw-admin(8) 添加 --max-buckets(pr#17439, Clément Pellegrini)
doc: 添加缺失的空行(pr#18724, iliul)
doc: 从文档中添加缺失的 pg 状态(pr#20504, David Zafman)
doc: 将 mount.fuse.ceph 添加到索引(issue#22595, pr#19792, Jos Collin)
doc: 对 Helm 启动文档进行新手友好更新(pr#18886, Blaine Gardner)
doc: 在 osd 配置中添加 osd_max_object_size(pr#18115, Mohamad Gebai)
doc: build-doc: 升级 ceph python 库(pr#20726, Boris Ranto)
doc: ceph-disk: 创建弃用警告(issue#22154, pr#18988, Alfredo Deza)
doc: ceph-volume: 自动 VDO 检测(issue#23581, pr#21451, Alfredo Deza)
doc: ceph-volume 文档(pr#17068, Alfredo Deza)
doc: ceph-volume 文档多路径支持(pr#20878, Alfredo Deza)
doc: ceph-volume 文档更新(pr#20758, Alfredo Deza)
doc: ceph-volume 列表时包含与 LV 关联的物理设备(pr#21645, Alfredo Deza)
doc: ceph-volume lvm bluestore 支持(pr#18448, Alfredo Deza)
doc/ceph-volume OSD 使用 fsid 文件,而不是 osd_fsid(issue#22427, pr#20059, Alfredo Deza)
doc: 将布尔选项的默认值从零更改为 false(pr#17733, Yao Zongyou)
doc: 将 cn 镜像更改为 ustc 域(pr#18081, Shengjing Zhu)
doc: v12.2.3 的更新日志(pr#20503, Abhishek Lekshmanan)
doc: 清理关于 cephfs 使用的纠删码池文档(pr#20572, Patrick Donnelly)
doc: CodingStyle: 添加 python 和 javascript/typescript(pr#20186, Joao Eduardo Luis)
doc: common/options: 文档 filestore 和 filejournal 选项(pr#17739, Sage Weil)
doc: common/options: 文档 objecter, filer, 和 journal 选项(pr#17740, Sage Weil)
doc: 完成并更新子系统日志级别信息表(pr#18500, Luo Kexue)
doc: 更正 bluestore-config-ref 和 bluestore-migration 中的拼写错误(pr#19154, Katie Holly)
doc: 更正错误的 bluestore 配置类型(pr#18205, Yao Zongyou)
doc: 删除重复词(pr#17104, iliul)
doc: 异步恢复的开发描述(pr#21051, Neha Ojha, Josh Durgin)
doc: doc/bluestore: 为 bluestore 添加 SPDK 用法(pr#17654, Haomai Wang)
doc: doc/cephfs/experimental-features: 内核客户端快照限制(pr#18579, Ilya Dryomov)
doc: doc/cephfs/posix: 移除 seekdir 的过时信息(pr#17658, “Yan, Zheng”)
doc: doc/conf.py: 不要显式设置 html_use_smartypants(pr#17127, Kefu Chai)
doc: doc/dev: 添加序列化的简要指南(pr#20131, John Spray)
doc: doc/dev/cxx: 添加 C++11 ABI 相关文档(pr#20030, Kefu Chai)
doc: doc/dev/iana: 文档我们的官方 IANA 号码(pr#16910, Sage Weil)
doc: doc/dev/index: 更新 rados 引导(pr#16911, Sage Weil)
doc: doc/dev/macos: 添加在 MacOS 上构建的文档(pr#20031, Kefu Chai)
doc: doc/dev/msgr2.rst: 关于协议目标的一些说明(pr#20083, Sage Weil)
doc: doc/dev/perf: 添加禁用 -fomit-frame-pointer 的文档(pr#17358, Kefu Chai)
doc: mount.fuse.ceph 文档(issue#21539, pr#19172, Jos Collin)
doc: doc/man 移除 ceph-disk 手册页标题的弃用(pr#19325, Alfredo Deza)
doc: doc/mgr: 添加插件指南的限制部分(pr#21347, Tim Serong)
doc: doc/mgr: 将 “local pool” 插件添加到目录(pr#17961, Kefu Chai)
doc: doc/mgr/balancer: 文档(issue#22789, pr#21421, Sage Weil)
doc: doc/mgr: 使用 automethod 指令文档 facilities 方法(pr#18680, Kefu Chai)
doc: doc/mgr/plugins: 添加关于配置和 kv 存储区别的说明(pr#21671, Jan Fajerski)
doc: doc/mgr: 从文档中移除非面向用户的代码(pr#20372, Kefu Chai)
doc: doc,os,osdc: 删除并修改注释(pr#17732, songweibin)
doc: doc/rados: 添加 straw2 的解释(pr#19247, Shinobu Kinjo)
doc: doc/rados/operations/bluestore-migration: 文档 bluestore 迁移过程(pr#16918, Sage Weil)
doc: doc/rados/operations/bluestore-migration: 更新文档(pr#17011, Sage Weil)
doc: doc 使用基类抛出异常(pr#18152, Alfredo Deza)
doc: doc/rbd: 添加 rbd 组的信息(pr#17633, yonghengdexin735)
doc: doc/rbd: 在 rbd CLI 手册页中添加缺失的几个命令(issue#14539, issue#16999, pr#19659, songweibin)
doc: doc/rbd: 更正 librbd python API 的路径(pr#19690, songweibin)
doc: doc/rbd: 修复拼写错误 s/morror/mirror(pr#19997, songweibin)
doc: doc/rbd: iSCSI Gateway 文档(issue#20437, pr#17376, Aron Gunn, Jason Dillaman)
doc: doc/rbd: 指定额外的 ESX 先决条件(pr#18517, Jason Dillaman)
doc: doc/rbd: LIO iSCSI 网关的调整(issue#21763, pr#18250, Jason Dillaman)
doc: doc/rbd: Windows iSCSI 发起程序方向的调整(pr#18704, Jason Dillaman)
doc: doc/release-notes: 添加 jewel->kraken 注释(pr#18482, Sage Weil)
doc: doc/release-notes: 澄清 require-osd-release 的目的(pr#17270, Sage Weil)
doc: doc/release-notes: 澄清您需要保留现有的 OSD caps(pr#18825, Jason Dillaman)
doc: doc/release-notes: 确保 RBD 用户可以在升级前进行黑名单操作(issue#21353, pr#17755, Jason Dillaman)
doc: doc/release-notes: 修复拼写错误 ‘psd’ 为 ‘osd’(pr#18695, wangsongbo)
doc: doc/releases: Kraken sleepeth, faintest sunlights flee(pr#17424, Abhishek Lekshmanan)
doc: doc/releases: 更新发布周期文档(pr#18117, Sage Weil)
doc: doc/rgw: 添加 http 前端配置页面(issue#13523, pr#20058, Casey Bodley)
doc: doc/scripts: py3 兼容(pr#17640, Kefu Chai)
doc: docs: 不要使用 “min size = 1” 作为示例(pr#17912, Alfredo Deza)
doc: docs 修复 ceph-volume 缺失的子命令(issue#23148, pr#20673, Alfredo Deza)
doc: doc/start/os-recommendations.rst: 升级 krbd 内核(pr#21478, Ilya Dryomov)
doc: docs 更新 ceph-deploy 参考以反映 ceph-volume API(pr#20510, Alfredo Deza)
doc: 文档 ceph-disk 准备类层次结构(pr#17019, Loic Dachary)
doc: 文档 include/ipaddr.h(issue#12056, pr#17613, Nathan Cutler)
doc: 删除 ceph-bluestore-tool 手册页中的重复行(pr#19169, Xiaojun Liao)
doc: 消除无用的 cat 语句(pr#17154, Ken Dreyer)
doc: examples: 添加新的 librbd 示例(pr#18314, Mahati Chamarthy)
doc: 扩展单元测试的开发人员文档(pr#19594, Nathan Cutler)
doc: 修复 rbd-snapshot.rst 中的语法错误(pr#21470, Zeqing Tyler Qi)
doc: 修复 doc/dev/cpu-profiler.rst 中的 CFLAGS(pr#19752, Chang Liu)
doc: 修复选项 “mon cluster log file” 的描述(pr#18770, Kefu Chai)
doc: 修复 doc/radosgw/admin.rst 拼写错误(pr#17397, Enming Zhang)
doc: 修复动态重分片文档格式(pr#20970, Ashish Singh)
doc: 修复 osd scrub 负载阈值中的错误(pr#21678, Dirk Sarpe)
doc: 修复拼写错误和断开的超链接(pr#20442, Jordan Hus)
doc: 修复 rbd 快照展平示例(issue#17723, pr#17436, Ashish Singh)
doc: 修复 osd-config-ref 中的语法(issue#21733, pr#18188, Joshua Schmid)
doc: 修复 CephFS 快照目录的名称(pr#18710, Jordan Rodgers)
doc: 修复指向 radosgw/config-ref 的超链接(pr#17986, Kefu Chai)
doc: 修复 librbdpy 示例(pr#20019, Yuan Zhou)
doc: 修复 osd new 中选项的顺序(issue#21023, pr#17326, Neha Ojha)
doc: 修复 sphinx 构建警告和错误(pr#17025, Alfredo Deza)
doc: 修复 “osd max pg per osd hard ratio” 的描述(pr#18373, Kefu Chai)
doc: 修复拼写错误和 URL(pr#18040, Jos Collin)
doc: 修复拼写错误 e.g,. => e.g(pr#18607, Yao Zongyou)
doc: 修复 bluestore-migration.rst 中的拼写错误(pr#18389, Yao Zongyou)
doc: 修复 mount.fuse.ceph 中的拼写错误(pr#19215, Jos Collin)
doc: 修复 php.rst 中的拼写错误(pr#17762, Yao Zongyou)
doc: 修复 radosgw/dynamicresharding.rst 中的拼写错误(pr#18651, Alexander Ermolaev)
doc: 修复指定 db 块设备时的拼写错误(pr#17590, Xiaoxi Chen)
doc: 修复拼写错误 s/applicatoin/application/(pr#20720, Francois Deppierraz)
doc: 修复 placement-groups.rst 中的拼写错误(pr#17973, Matt Boyle)
doc: 修复发布说明中的拼写错误(pr#18950, Stefan Knorr)
doc: .githubmap: 添加 cbodley(pr#18946, Jos Collin)
doc: githubmap: 添加 GitHub 贡献者查找映射(pr#17457, Patrick Donnelly)
doc: .githubmap, .mailmap, .organizationmap, .peoplemap: 更新 Igor(pr#19314, Igor Fedotov)
doc: 全局将 CRUSH ruleset 更改为 CRUSH rule(issue#20559, pr#19435, Nathan Cutler)
doc: 改进的仪表板文档(pr#21443, Lenz Grimmer)
doc: 改进的 hitset 参数描述(pr#19691, Alexey Stupnikov)
doc: 改进 doc/releases.rst 中的链接(pr#18155, Nathan Cutler)
doc: 改进 mgr/restful 模块文档(pr#20717, Boris Ranto)
doc: 改进 ceph fs set max_mds 命令(issue#21007, pr#17044, Bara Ancincova)
doc: 在索引中包含 ceph-disk 和 ceph-disk-volume 手册页(pr#17168, Alfredo Deza)
doc: rados 示例中将标志初始化为 0(pr#20671, Patrick Donnelly)
doc: Kube + Helm 安装(pr#18520, Alexandre Marangone)
doc: legal: 移除文档许可证歧义(issue#23336, pr#20876, Nathan Cutler)
doc: lock_timeout 是每个映射选项(pr#21563, Ilya Dryomov)
doc: log-and-debug: 修复 “log max recent” 的默认值(pr#20316, Nathan Cutler)
doc: mailmap: 添加 Sibei, XueYu 隶属关系(pr#18395, Sibei Gao)
doc: mailmap: 修复维护指南 URL(pr#18076, Jos Collin)
doc: mailmap, organizationmap: 添加 Dongsheng, Liuzhong, Pengcheng, Yang 隶属关系(pr#17548, Dongsheng Yang)
doc: .mailmap, .organizationmap: 添加 Fufei, Mingqiao 和 Ying 隶属关系(pr#17540, Ying He)
doc: .mailmap, .organizationmap: 添加 Liu Lei 的 mailmap 和隶属关系(pr#17105, iliul)
doc: .mailmap, .organizationmap: 更新 JingChen, ZongyouYao, ShanchunLv 的…(pr#18960, Chang Liu)
doc: mailmap: 更新 Mykola Golub 的隶属关系(pr#18069, Mykola Golub)
doc: mailmap: 更新 Mykola Golub 的隶属关系(pr#19667, Mykola Golub)
doc: mailmap: 更新 umcloud 隶属关系(pr#17441, Yixing Yan)
doc/man: 将 “ls” 添加到 “ceph osd” 命令的子命令列表(pr#19382, Rishabh Dave)
doc: “mds blacklist interval” 与手动黑名单(pr#18195, Ken Dreyer)
doc: mgr/dashboard.rst: 提及 ceph.conf 和 ceph mgr 服务(pr#20961, Nathan Cutler)
doc/mgr/plugins: init 期间的 mgr 访问器导致异常(pr#16973, Jan Fajerski)
doc: mimic: doc: 更新仪表板文档(功能,SSL 配置)(pr#22079, Lenz Grimmer)
doc: 杂项修复 osd/OSD 和 doc 中的拼写错误(pr#17107, songweibin)
doc: misc: 修复各种拼写错误(pr#20831, Shengjing Zhu)
doc: 杂项 iSCSI 文档更新(pr#19931, Mike Christie)
doc: 将 glance_api_version 选项移动到正确的位置(pr#17337, Luo Kexue)
doc: options.cc: 文档 rgw 配置选项(pr#18007, Yehuda Sadeh)
doc: organizationmap: 添加 Adam Wolfe Gordon 的隶属关系(pr#18295, Adam Wolfe Gordon)
doc: organizationmap: 添加 Ashish Singh 隶属关系(pr#17109, Ashish Singh)
doc: .organizationmap: 添加 Xin Yuan 和 Yichao Li 的隶属关系(pr#21170, Li Wang)
doc: PendingReleaseNotes: 添加关于 Dashboard v2 的说明,修复拼写错误(pr#21597, Lenz Grimmer)
doc: PendingReleaseNotes: 宣布 FreeBSD 可用(pr#16782, Willem Jan Withagen)
doc: PendingReleaseNotes: 提及一些监视器更改(pr#21474, Joao Eduardo Luis)
doc: PendingReleaseNotes: 关于 luminous 发布说明中 upmap 映射更改的说明(pr#17813, Sage Weil)
doc: qa,doc: 放弃对 ubuntu trusty 的支持(pr#19307, Kefu Chai)
doc/rados/operations/bluestore-migration: 拼写错误和空格(pr#16991, Sage Weil)
doc/rados/operations/bluestore-migration: 拼写错误(pr#17581, Sage Weil)
doc: 设置 “allow_multimds” 时冗余的 “cephfs”(pr#20045, Shangzhong Zhu)
doc: 发布说明: 修复语法/风格问题(pr#18876, Nathan Cutler)
doc: 12.2.3 的发布说明(pr#20500, Abhishek Lekshmanan)
doc: v12.1.4 Luminous 的发布说明(pr#17037, Abhishek Lekshmanan)
doc/release-notes: 移除对 crush 权重优化的提及(pr#16974, Sage Weil)
doc: release-notes.rst: 添加 Kraken v11.2.1 并更新 releases.rst(pr#16879, Nathan Cutler)
doc: 10.2.10 的发布说明更新(pr#18148, Abhishek Lekshmanan)
doc/releases: 从第二张图中删除 LTS/stable 行(pr#18153, Sage Weil)
doc: 移除替换 OSD 时的附加参数(pr#18345, Wido den Hollander)
doc: 移除重复的 --max-buckets 选项描述(pr#19737, Kefu Chai)
doc: 移除对未版本化存储库地址的引用(pr#21357, Greg Farnum)
doc: 移除未使用的配置: “osd op threads”(pr#21319, Jianpeng Ma)
doc: 将 changelog 重命名为 .txt 扩展名(pr#18156, Abhishek Lekshmanan)
doc: 重新组织发布(pr#20784, Abhishek Lekshmanan)
doc: 将 injectargs 用法替换为 “config set”(pr#18789, John Spray)
doc: 在配置桶分片部分将 region 替换为 zonegroup(issue#21610, pr#18063, Orit Wasserman)
doc: 重构 bluestore 迁移说明(pr#17603, Sage Weil)
doc: 修改桶策略示例(pr#17362, zhangwen)
doc: rgw: 在 12.2.1 文档中添加重分片的说明(pr#17675, Abhishek Lekshmanan)
doc: rgw 添加一些关于同步插件和 ES 的基本文档(pr#15849, Abhishek Lekshmanan)
doc: rgw adminops 绑定库(pr#19164, hrchu)
doc: rgw 提及 s3api 中的标签和桶策略(pr#16907, Abhishek Lekshmanan)
doc: rgw: 提及 civetweb 支持绑定到多个端口(issue#20942, pr#17141, Abhishek Lekshmanan)
doc: 从 mds config ref 中删除多余的 “)” 字符(pr#18228, Ken Dreyer)
docs: ceph-volume CLI 更新(pr#17425, Alfredo Deza)
doc: s/deamon/daemon/(pr#20931, ashitakasam)
doc: 对 ceph-conf.rst 的一些改进(pr#21268, Nathan Cutler)
doc: 在 ceph-fuse 中指定挂载详细信息(pr#20071, Jos Collin)
doc: SubmittingPatches: 澄清 PR 标题部分(pr#17143, Nathan Cutler)
doc/templates update toctree call to include hidden entries(pr#17076, Alfredo Deza)
doc: 客户端输入池名称而不是池 ID(pr#17672, Frank Yu)
doc: 拼写错误修复(pr#21077, Ashita Dashottar)
doc: 更新黑名单和 OSD epoch 屏障(issue#22542, pr#19701, Jos Collin)
doc: 使用状态转换图更新 ceph-disk(pr#17639, Kefu Chai)
doc: 更新 ceph iscsi 内核和包信息(pr#20020, Mike Christie)
doc: 更新 radosgw-admin 中的命令和选项(pr#18267, Jos Collin)
doc: 更新组件技术负责人和维护者到规范位置(pr#18376, Patrick McGarry)
doc: 更新配置文件搜索路径以反映实际情况(pr#19882, Adam Wolfe Gordon)
doc: 更新了 CloudStack 最新版本 (4.11) 的主存储文档(pr#21050, James McClune, John Wilkins)
doc: 更新了仪表板功能列表(添加了 RGW 管理)(pr#21781, Lenz Grimmer)
doc: 更新了仪表板功能列表(添加了新的 RGW 详细信息,池)(pr#21562, Lenz Grimmer)
doc: 更新了仪表板功能列表(pr#21693, Lenz Grimmer)
doc: 更新了仪表板 v2 功能列表(pr#20755, Lenz Grimmer)
doc: 更新了 Zabbix Mgr 模块的文档(pr#18356, Wido den Hollander)
doc: 更新选项 mon_sync_timeout 的默认值(pr#17802, Yao Guotao)
doc: 更新参数 mon_subscribe_interval 的默认值(pr#17669, yaoguotao)
doc: 更新文档以移除 gitbuilder 并添加 shaman 引用(pr#17022, Alfredo Deza)
doc: 更新了仪表板功能列表(pr#21531, Lenz Grimmer)
doc: 更新了 get-packages.rst 到 luminous(pr#20815, Kai Wagner)
doc: 更新防火墙文档以提及 ceph-mgr(pr#17974, John Spray)
doc: 更新 iSCSI 上游内核到 4.16(pr#20695, Mike Christie)
doc: 更新指向 placing-different-pools 的链接(pr#17833, Mohamad Gebai)
doc: 更新 Li Wang 隶属关系(pr#18060, Li Wang)
doc: 更新手册页以解释 ceph-volume 支持 bluestore(issue#22663, pr#19960, lijing)
doc: 更新手动部署(issue#20309, pr#15811, Jens Rosenboom)
doc: 更新 mgr/dashboard 文档关于备用节点(pr#19879, John Spray)
doc: 更新 mgr 文档关于如何启用 Zabbix 模块(pr#16861, Wido den Hollander)
doc: 更新 mgr 相关认证设置(pr#20126, Kefu Chai)
doc: 更新 monitoring.rst(pr#20630, Jos Collin)
doc: 更新 rbd-mirroring 文档(issue#20701, pr#16908, Jason Dillaman)
doc: 更新引用以使用 ceph-volume(pr#19241, Alfredo Deza)
doc: 更新发布到当前状态(pr#17364, Abhishek Lekshmanan)
doc: Bluestore 迁移文档更新(pr#17602, David Galloway)
doc: v12.2.5 luminous 发布说明(pr#21621, Abhishek Lekshmanan)
doc: 各种清理(pr#18480, Kefu Chai)
examples: 修复 librados 示例 Makefile 中的链接顺序(pr#17842, Mahati Chamarthy)
Fix ceph-mgr restarts(pr#22051, Boris Ranto)
atomic_t spinlocks 的后续修复(pr#17611, Jesse Williamson)
githubmap: 添加 ktdreyer(pr#19209, Jos Collin)
include/buffer.h: 修复注释中的拼写错误(pr#17489, mychoxin)
include/ceph_features: 修复 OS_PERF_STAT_NS 的版本(pr#21467, Kefu Chai)
install-deps.sh: 修复错误条件表达式(pr#20819, Yao Guotao)
java/native: 修复毫秒到 mtime/atime 的转换(pr#17460, dengquan)
java/native: s/jni: lstat/jni: native_ceph_stat 中的 stat(pr#20142, Shangzhong Zhu)
KStore: FreeBSD 上 statfs 需要额外的包含(pr#21429, Willem Jan Withagen)
kv/leveldb: 修复关闭 db 时的死锁(pr#16643, Zengran)
kv: 统一 {create_and_,}open() 方法(pr#18177, Kefu Chai)
librados: 添加用于网络 TS 的异步接口(pr#19054, Casey Bodley)
librados: 阻塞 MgrClient::start_command 直到 mgrmap(pr#21832, John Spray, Kefu Chai)
librados: 扩展 C API 以接受带 NUL 字符的键(pr#20314, Piotr Dałek)
librados: 修复 buffer::list::claim_prepend(list& b… 的潜在风险(issue#21338, pr#17661, Guan yunfei)
librados: 修复通知立即失败时的潜在竞态条件(issue#23966, pr#21859, Jason Dillaman)
librados: 兼容客户端最小版本获取器(pr#20080, Jason Dillaman)
librados: rados_getxattrs_next() 中的无效 free()(issue#22042, pr#20260, Gu Zhongyan)
librados: 使 rados_remove() 的 OPERATION_FULL_FORCE 成为默认值(issue#22413, pr#20534, Kefu Chai)
librbd: 抽象 IO 路径上硬编码的日志和缓存钩子(pr#20682, Jason Dillaman)
librbd: 添加列出镜像观察者的函数(pr#19188, Adam Wolfe Gordon)
librbd: 添加获取镜像名称的 API 函数(pr#20935, Mykola Golub)
librbd: 添加用于检测比较和写入支持的预处理器宏(issue#22036, pr#18708, Jason Dillaman)
librbd: 添加 eventtrace 支持(pr#19251, Mahati Chamarthy)
librbd: 添加对新操作功能位的初步支持(pr#19903, Jason Dillaman)
librbd: 解决 coverity 误报(pr#17696, Amit Kumar)
librbd: 解决 coverity 误报(pr#17721, Amit Kumar)
librbd: 镜像删除时自动移除回收站快照(issue#22873, pr#20376, Jason Dillaman)
librbd: 默认情况下,深层复制目标使用新格式(pr#20222, Mykola Golub)
librbd: 缓存最后一个索引位置以加速快照创建/删除(issue#22716, pr#19974, Song Shun)
librbd: 如果有超过 64 个键/值对,则无法克隆所有 image-meta(pr#18327, PCzhangPC)
librbd: 如果有超过 64 个键/值对,则无法复制所有 image-meta(pr#18328, PCzhangPC)
librbd: 清理 ManagedLock 日志前缀(pr#20159, shun-s)
librbd: 对克隆的比较和写入可能导致失败(issue#20789, pr#18887, Jason Dillaman)
librbd: deep_copy: 不要在 snap_id_end 之上创建快照(pr#19383, Mykola Golub)
librbd: 默认将父级读取本地化设置为 false(issue#20941, pr#16882, Jason Dillaman)
librbd: 默认情况下,对于任何超过 64K 的 IO 操作,都使用稀疏读取(issue#21849, pr#18405, Jason Dillaman)
librbd: 在对象缓存器中禁用 ENOENT 跟踪(issue#23597, pr#21308, Jason Dillaman)
librbd: 禁止创建 v1 镜像格式(pr#20460, Julien COLLET, Julien Collet)
librbd: 打开镜像时不要两次读取元数据(pr#18542, Mykola Golub)
librbd: 移除对空 ImageCtx 的冗余检查(pr#18265, Jianpeng Ma)
librbd: 过滤掉镜像重命名可能发生的竞态条件(issue#18435, pr#19618, Jason Dillaman)
librbd: 修复未初始化成员的 coverity 警告(pr#18129, Li Wang)
librbd: 修复子镜像的深层复制(pr#20099, songweibin)
librbd: 修复如果未启用条带化则不发送 get_stripe_unit_count 的问题(issue#21360, pr#17660, Yanhu Cao)
librbd: 修复升级测试中克隆 v2 发现的问题(issue#22979, pr#20406, Jason Dillaman)
librbd: 修复 NotifyMessage::get_notify_op 中缺失的 return(pr#20656, Yao Zongyou)
librbd: 修复 rbd close 与 rewatch 的竞态条件(pr#21141, Song Shun)
librbd: 修复 rewatch 时 cookie 相同的情况下拒绝释放锁的问题(pr#20868, Song Shun)
librbd: 修复 rbd_mirror_image_get_info/status 中的结构大小检查(pr#20478, Mykola Golub)
librbd: 强制移除快照不能忽略依赖子级(issue#22791, pr#20105, Jason Dillaman)
librbd: 通用深层复制函数(pr#16238, Mykola Golub)
librbd: 组和快照清理(pr#19990, Jason Dillaman)
librbd: 组快照(pr#11544, Victor Denisov, Jason Dillaman)
librbd: 清除缓存不存在标志时持有 cache_lock(issue#21558, pr#17992, Jason Dillaman)
librbd: image-meta 配置覆盖应动态刷新(issue#21529, pr#18042, Dongsheng Yang, Jason Dillaman)
librbd: 克隆 v2 支持的初始钩子(pr#20176, Jason Dillaman)
librbd: 状态成员变量的初始化(pr#16866, amitkuma)
librbd: 初始化成员 image,operation,journal(pr#16934, amitkuma)
librbd: 初始化成员变量(pr#16867, amitkuma)
librbd: 日志应忽略来自比较和写入的 -EILSEQ 错误(issue#21628, pr#18099, Jason Dillaman)
librbd,librados: 不在 C++ 头文件中包含 stdbool.h(pr#19945, Kefu Chai)
librbd: list_children 不应尝试刷新镜像(issue#21670, pr#18114, Jason Dillaman)
librbd: IO 路径的小清理(pr#20560, Jason Dillaman)
librbd: 小代码清理(pr#21165, songweibin)
librbd: deep_copy::ObjectCopyRequest::send_read_object 中缺少 ‘return’(pr#21493, Mykola Golub)
librbd: 新标签应使用磁盘提交位置(issue#22945, pr#20423, Jason Dillaman)
librbd: 对象映射批量更新可能导致 OSD 自杀超时(issue#21797, pr#18315, Jason Dillaman)
librbd: 同步维护操作可能导致死锁(issue#22120, pr#18909, Jason Dillaman)
librbd: 如果对象映射检查遇到错误,则可能崩溃(issue#22819, pr#20214, Jason Dillaman)
librbd: 丢弃和回写之间的潜在竞态条件(pr#21248, Jason Dillaman)
librbd: RewatchRequest 在重置 watch_handle 时可能存在竞态条件(pr#20420, Mykola Golub)
librbd: 偏好模板而不是宏(pr#19912, Adam C. Emerson)
librbd: 防止丢弃 API 结果代码溢出(issue#21966, pr#18923, Jason Dillaman)
librbd: 防止观察者在进行中的操作时取消注册(issue#23955, pr#21763, Jason Dillaman)
librbd: 应用新元数据后刷新镜像(issue#21711, pr#18158, Jason Dillaman)
librbd: 释放锁执行深层复制进度回调(issue#23929, pr#21727, Mykola Golub)
librbd: 移除 FlattenRequest 中未使用的成员(pr#19416, Mykola Golub)
librbd: 移除 ReadResult 重构中未使用的变量(pr#18277, Jason Dillaman)
librbd: 重命名不存在的镜像导致段错误(issue#21248, pr#17502, Jason Dillaman)
librbd: 将已删除的父指针设置为 null(issue#22158, pr#19003, Jason Dillaman)
librbd: 不应将自身设置为远程对等体(pr#17300, songweibin)
librbd: 最近合并代码的小清理(pr#20578, Mykola Golub)
librbd: 快照应针对数据池创建/删除(issue#21567, pr#18043, Jason Dillaman)
librbd: 加快对象映射磁盘使用和大小调整(pr#20218, shun-s)
librbd: 在对象映射可用时加快稀疏复制(pr#18967, Song Shun)
librbd: 根据代码更新 mirror::EnableRequest 图表(pr#19130, Mykola Golub)
librbd: 在 AioCompletion 中使用稳定时钟测量经过时间(pr#20007, Mohamad Gebai)
librbd: 验证 dst 组快照名称是否与 src 相同(pr#20395, songweibin)
log: 修复 AddressSanitizer: new-delete-type-mismatch(issue#23324, pr#20930, Brad Hubbard)
log: 修复 osx 上的构建问题(pr#18213, Kefu Chai)
log: 消除 -Wsign-compare 的警告(pr#18326, Jos Collin)
log: 在日志时间戳中使用粗略的实时时钟(pr#18141, Adam C. Emerson)
mds: 检查元数据池而非集群是否已满(issue#22483, pr#19602, Patrick Donnelly)
mds: 修复 CEPH_STAT_RSTAT 定义(pr#21633, “Yan, Zheng”)
mds: 移除循环内不必要的 “if” 检查(pr#18904, dongdong tao)
mds: 移除冗余的空指针检查(pr#19750, Brad Hubbard)
mds: 简化 replay_alloc_ids 中的代码逻辑(pr#18893, dongdong tao)
mempool: 修复 JSON 格式 mempool:dump 输出中缺少池名称的问题(pr#18329, Igor Fedotov)
messages: 各类未初始化成员的初始化(pr#16848, amitkuma)
messages/MDentryLink: 为成员函数添加 const(pr#15479, yonghengdexin735)
messages,test,msg: 初始化 h,reply_type,owner(pr#17767, Amit Kumar)
mgr: 将 mgr 守护程序添加到 DaemonStateIndex 并附带元数据(hostname)(issue#23286, pr#20875, Jan Fajerski)
mgr: 添加对 pick_addresses 的缺失调用(issue#20955, pr#16940, John Spray)
mgr: 添加备用节点的 IP 地址(pr#16476, huanwen ren)
mgr: 为性能计数器添加单位(issue#22747, pr#20152, Rubab Syed)
mgr: 允许服务守护程序从 ServiceMap 注销(pr#20761, Sage Weil)
mgr: 对 perf counter prios 应用阈值(pr#16699, John Spray)
mgr: balancer: 修复了 “AttributeError: ‘Logger’ object has no attribute ‘err’” 拼写错误(pr#20130, Konstantin Shalygin)
mgr: mgr 配置的集中设置/获取(pr#21442, John Spray, Rubab Syed)
mgr: ceph-mgr: 无法更改 mgr 的 prometheus 端口(pr#17746, wujian)
mgr: TSDB 模块的通用接口(pr#17735, Jan Fajerski, John Spray, My Do)
mgr/dashboard: 如果 server_addr 未设置,则调整帮助文本(pr#21640, Volker Theile)
mgr/dashboard: 使 RBD 表单适应新的 application_metadata 类型(pr#21602, Volker Theile)
mgr/dashboard: 添加 Api 模块(pr#21126, Tiago Melo)
mgr/dashboard: 添加 ‘autofocus’ 指令(pr#21559, Volker Theile)
mgr/dashboard: 添加 CdDatePipe(pr#21087, Ricardo Marques)
mgr/dashboard: 添加 ‘cd-error-panel’ 组件以显示错误消息(pr#21558, Volker Theile)
mgr/dashboard: 添加 ‘cd-loading-panel’ 组件(pr#21618, Volker Theile)
mgr/dashboard: 添加自定义验证器(pr#21041, Volker Theile)
mgr/dashboard: 添加 DimlessBinaryDirective(pr#20972, Ricardo Marques)
mgr/dashboard: 添加 ErasureCodeProfile 控制器(issue#23345, pr#20920, Sebastian Wagner, Stephan Müller)
mgr/dashboard: 为数据表添加 ‘forceIdentifier’ 属性(pr#21497, Volker Theile)
mgr/dashboard: 添加辅助组件(pr#20971, Ricardo Marques)
mgr/dashboard: 块页面的额外修复(pr#20941, Jason Dillaman)
mgr/dashboard: 添加最小化可浏览 API(pr#20873, Sebastian Wagner)
mgr/dashboard: 添加通知服务/组件(pr#21078, Tiago Melo)
mgr/dashboard: 将池创建添加到后端(issue#23345, pr#20865, Sebastian Wagner)
mgr/dashboard: 添加 RGW 用户和桶管理功能(pr#21351, Volker Theile)
mgr/dashboard: 添加可重用删除对话框(pr#20899, Stephan Müller, Tiago Melo)
mgr/dashboard: 添加提交按钮组件(pr#21011, Tiago Melo)
mgr/dashboard: 添加使用条组件(pr#21128, Ricardo Marques)
mgr/dashboard: Angular 模块清理(pr#21402, Tiago Melo)
mgr/dashboard: 异步任务(前端)(pr#20962, Ricardo Marques)
mgr/dashboard: awsauth: 修复 python3 字符串解码问题(pr#21875, Ricardo Dias)
mgr/dashboard: 更改复选框的字体族(pr#21787, Tiago Melo)
mgr/dashboard: 清理 Pylint 警告(pr#21694, Sebastian Wagner)
mgr/dashboard: 将浮点值转换为字节(pr#21677, Stephan Müller)
mgr/dashboard: 将 RBD 功能名称转换为字符串列表(pr#21024, Tatjana Dehler)
mgr/dashboard: 删除对话框在按 “取消” 时错误地执行删除(pr#22032, Volker Theile)
mgr/dashboard: 如果 RGW 未配置,则显示通知(pr#21977, Volker Theile)
mgr/dashboard: 提交时显示 RBD 表单错误(pr#21529, Ricardo Marques)
mgr/dashboard: 在 KV 表中启用对象渲染(pr#21701, Stephan Müller)
mgr/dashboard: 修复块设备 iSCSI 状态页面上的 500 错误(pr#20928, Jason Dillaman)
mgr/dashboard: 修复仪表板 python 3 支持(pr#21007, Ricardo Dias)
mgr/dashboard: 修复数据竞态和使用前赋值(pr#21590, Sebastian Wagner)
mgr/dashboard: 修复 Auth 控制器中的密码生成(issue#23404, pr#21006, Ricardo Dias)
mgr/dashboard: 修复文档链接 - 在新标签页中打开(pr#22262, Kanika Murarka)
mgr/dashboard: 修复 RBD 表单中的类型错误(pr#21681, Stephan Müller)
mgr/dashboard: 修复前端 e2e 测试(pr#20943, Tiago Melo)
mgr/dashboard: 修复旧 MDS 守护程序上的 FS 状态(issue#20692, pr#16960, John Spray)
mgr/dashboard: 修复 linting 问题(pr#22277, Tiago Melo)
mgr/dashboard: 修复删除模态中缺失的 $event(pr#21667, Ricardo Marques)
mgr/dashboard: 修复 moment.js 弃用警告(pr#22052, Tiago Melo)
mgr/dashboard: 修复名为 default 的对象无法访问的问题(pr#20976, Sebastian Wagner)
mgr/dashboard: 修复 RBD 任务元数据(pr#22152, Tiago Melo)
mgr/dashboard: 修复没有 fetchData 的表格(pr#21086, Ricardo Marques)
mgr/dashboard: 修复数据表动作选择器(pr#21270, Stephan Müller)
mgr/dashboard: 修复 mypy 发现的两个类型错误(pr#21774, Sebastian Wagner)
mgr/dashboard: 处理删除过程中的错误(pr#22029, Volker Theile)
mgr/dashboard: 实现 RGW 代理(pr#21258, Volker Theile, Patrick Nawracay)
mgr/dashboard: 改进后台任务样式(pr#21462, Ricardo Marques)
mgr/dashboard: 改进错误处理(pr#18182, Nick Erdmann)
mgr/dashboard: 改进错误面板(pr#21978, Volker Theile)
mgr/dashboard: 改进 npm 启动脚本(pr#20989, Ricardo Marques)
mgr/dashboard: 改进表格搜索(pr#20807, Stephan Müller)
mgr/dashboard: 在组件初始化时加载数据表内容(pr#21595, Volker Theile)
mgr/dashboard: 导航栏下拉按钮对移动浏览器无响应(pr#21979, Volker Theile)
mgr/dashboard: 通知改进(pr#21350, Tiago Melo)
mgr/dashboard: pool: 修复 python3 dict_keys 错误(pr#21636, Ricardo Dias)
mgr/dashboard: 池列表(pr#21353, Stephan Müller)
mgr/dashboard: rbd: 为快照控制器添加 @AuthRequired(pr#21517, Ricardo Dias)
mgr/dashboard: RBD 复制、RBD 展平和平坦快照克隆(前端)(pr#21526, Ricardo Marques, Ricardo Dias)
mgr/dashboard: RBD 管理(前端)(pr#21385, Ricardo Marques)
mgr/dashboard: 重构 get_rate() 的多个重复项(pr#21022, Sebastian Wagner)
mgr/dashboard: 重构 RGW 后端(pr#21855, Volker Theile)
mgr/dashboard: 重命名并重构 ApiInterceptorService 类(pr#21386, Volker Theile)
mgr/dashboard: 将 font-awesome 替换为 fork-awesome(pr#21327, Lenz Grimmer)
mgr/dashboard: restcontroller: 修复元素请求中 id 参数的检测(pr#21290, Ricardo Dias)
mgr/dashboard: RESTController 改进(pr#21516, Ricardo Dias)
mgr/dashboard: run-tox: 将 CEPH_BUILD_DIR 值传递给 tox 脚本(pr#21445, Ricardo Dias)
mgr: dashboard: 在健康页面显示每个池的 IOPS (#22495)(issue#22495, pr#19981, Konstantin Shalygin)
mgr/dashboard: 支持 ‘cd-view-cache’ 上的附加信息(pr#21060, Ricardo Marques)
mgr/dashboard: TaskManager bug 修复(pr#21240, Ricardo Dias)
mgr/dashboard: 更新表格刷新时选定的项目(pr#21099, Ricardo Marques)
mgr/dashboard: 使用 Bootstrap CSS(pr#21780, Volker Theile)
mgr/dashboard: 使用 RoutesDispatcher 作为 HTTP 请求调度器(pr#21239, Ricardo Dias)
mgr/dashboard_v2: 将 mgr 添加到 perf 计数器列表(pr#20783, Tiago Melo)
mgr/dashboard_v2: 为 TcmuIscsiService 添加模拟服务提供商(pr#20775, Tiago Melo)
mgr/dashboard_v2: 添加可切换列(pr#20806, Stephan Müller)
mgr/dashboard_v2: 配置设置支持(pr#20743, Ricardo Dias)
mgr/dashboard_v2: 修复和改进表格详细信息(pr#20811, Tiago Melo)
mgr/dashboard_v2: 修复 cephfs 模板表使用问题(pr#20804, Stephan Müller)
mgr/dashboard_v2: 修复集群配置页面(pr#20821, Tiago Melo)
mgr/dashboard_v2: 改进图表工具提示(pr#20757, Tiago Melo)
mgr/dashboard_v2: 池控制器(pr#20823, Ricardo Dias)
mgr/dashboard_v2: 加载时旋转刷新图标(pr#20805, Stephan Müller)
mgr: bind() 失败时退出(pr#20595, John Spray)
mgr: 收到报告时断开未注册的服务守护程序的连接(issue#22286, pr#19261, Jason Dillaman)
mgr: 在 serve() 异常时发出集群日志消息(issue#21999, pr#18672, John Spray)
mgr: 暴露 rgw 性能计数器(pr#21269, Boris Ranto)
mgr: 修复 “access denied” 消息(pr#19518, John Spray)
mgr: 修复 DaemonStateIndex::get 调用中的崩溃(issue#17737, pr#17933, John Spray)
mgr: 修复 MonCommandCompletion 中的崩溃(issue#21157, pr#17308, John Spray)
mgr: 修复 python 错误处理(issue#23406, pr#21005, Ricardo Dias)
mgr: 修复 MSG_MGR_MAP 处理(pr#20892, Gu Zhongyan)
mgr: 修复如果 OSD 不在 pgmap stats 中,则 “osd status” 命令异常(issue#21707, pr#18173, Yanhu Cao)
mgr: 修复 py3 支持(issue#22880, pr#20362, Kefu Chai)
mgr: 修复 dne 服务性能计数器的 py 调用(issue#21253, pr#17605, John Spray)
mgr: 实现 osd MetadataUpdate 的完成(issue#21159, pr#16925, Yanhu Cao)
mgr: 实现 ‘osd safe-to-destroy’ 和 ‘osd ok-to-stop’ 命令(pr#16976, Sage Weil)
mgr: 改进的模块加载,用于错误报告等(issue#21999, issue#21683, issue#21502, pr#19235, John Spray)
mgr: 改进不可加载模块的报告(issue#23358, pr#20921, John Spray)
mgr: 增加 Commit/Apply OSD 延迟的时间分辨率(pr#19232, Коренберг Марк)
mgr: 更早初始化 PyModuleRegistry(issue#22918, pr#20321, John Spray)
mgr: 在插件中,‘module’ 类不再需要命名为 “Module”(issue#17454, pr#18526, Kefu Chai, bhavishyagopesh)
mgr: 锁定修复(issue#21158, pr#17309, John Spray)
mgr: mgr/balancer: 将配置值转换为 int 或 float(issue#22429, pr#19493, Dan van der Ster)
mgr: mgr/balancer: 不要在命令上使用 ‘foo’ 标签(issue#22361, pr#19482, John Spray)
mgr: mgr/balancer: 修复 balancer rm 中的 KeyError(issue#22470, pr#19578, Dan van der Ster)
mgr: mgr/balancer: 修复 OPTIONS 定义(pr#21620, John Spray)
mgr: mgr/balancer: 修复 upmap;默认启用 balancer 模块(pr#18691, Sage Weil)
mgr: mgr/balancer: 使 crush-compat 模式工作(pr#17983, Sage Weil)
mgr: mgr/balancer: mgr 模块,用于自动平衡 OSD 之间的 PG(pr#16272, Spandan Kumar Sahu, Sage Weil)
mgr: mgr/balancer: 更多针对池的增强功能(pr#20225, xie xingguo)
mgr: mgr/balancer: 针对池的优化支持和 bug 修复(pr#20154, xie xingguo)
mgr: mgr/balancer: 替换 DEFAULT_CHOOSE_ARGS 的魔术值 -1(pr#20258, Kefu Chai)
mgr: mgr/balancer: 跳过 CRUSH_ITEM_NONE(pr#18894, Sage Weil)
mgr: mgr/balancer: 另外两个修复(pr#20180, xie xingguo)
mgr: mgrc: 在 handle_mgr_close 中释放 MMgrClose(issue#23846, pr#21626, Casey Bodley)
mgr: mgr/DaemonServer: 将 overrides 值添加到 ‘config show’(pr#21093, Gu Zhongyan)
mgr: mgr/DaemonServer.cc: [清理] 更改为使用 get_val 模板函数(pr#18717, Shinobu Kinjo)
mgr: mgr/DaemonServer: [清理] 移除冗余代码(pr#18716, Shinobu Kinjo)
mgr: mgr/dashboard: 添加配置设置浏览器(issue#22522, pr#20043, Rubab Syed)
mgr: mgr/dashboard: 将镜像 id 添加到 mgr rbd info 而不是 block_name_prefix(pr#20884, zouaiguo)
mgr: mgr/dashboard: 添加监视器列表(pr#19632, Rubab Syed)
mgr: mgr/dashboard: 添加 RGW 用户和桶列表(只读)(pr#20869, Volker Theile)
mgr: mgr/dashboard: 添加 TLS(pr#21627, John Spray)
mgr: mgr/dashboard: 为 FormatterService 添加 toBytes() 方法(pr#20978, Volker Theile)
mgr: mgr/dashboard: 异步任务支持(pr#20870, Ricardo Dias)
mgr: mgr/dashboard: 根据使用情况更改原始使用图表的颜色(pr#17421, Nick Erdmann)
mgr: mgr/dashboard: 修复审计日志加载(pr#18848, John Spray)
mgr: mgr/dashboard: 修复新 CherryPy 版本的后端测试(pr#20778, Patrick Nawracay)
mgr: mgr/dashboard: 修复 PG 状态着色(pr#19431, Wido den Hollander)
mgr: mgr/dashboard: 将工具提示标签格式化为用户友好字符串(pr#18769, Yao Zongyou)
mgr: mgr/dashboard: 处理 format_number 中的 null(issue#21570, pr#17991, John Spray)
mgr: mgr/dashboard: HTTP 请求日志记录(pr#20797, Ricardo Dias)
mgr: mgr/dashboard: 改进认证拦截器(pr#20847, Volker Theile)
mgr: mgr/dashboard: 性能计数器浏览器(issue#22521, pr#19922, Rubab-Syed)
mgr: mgr/dashboard: RBD 管理(后端)(pr#21360, Ricardo Dias)
mgr: mgr/dashboard: 移除未使用的代码(pr#21045, Volker Theile)
mgr: mgr/dashboard: 移除无用代码(pr#20958, Volker Theile)
mgr: mgr/dashboard: 如果数据过时或监视器宕机,则显示警告(pr#18847, John Spray)
mgr: mgr/dashboard: 在 OSD 列表中排序服务器和 OSD(issue#21572, pr#17993, John Spray)
mgr: mgr/dashboard: 为 favicon 使用 rel=”icon”(pr#18013, Kefu Chai)
mgr: mgr/dashboard v2: 为必填表单字段添加 CSS 类(pr#20747, Volker Theile)
mgr: mgr/dashboard_v2: 为 Python 后端添加 RBD 创建功能(pr#20751, Tatjana Dehler)
mgr: mgr/dashboard v2: 为性能计数器添加单位(pr#20742, Volker Theile)
mgr: mgr/dashboard v2: 在首次加载期间在数据表中显示加载指示器(pr#20744, Volker Theile)
mgr: mgr/dashboard v2: 如果选择了多个 OSD,则不显示详细信息(pr#20772, Volker Theile)
mgr: mgr/dashboard v2: 实现 can_run 方法(pr#20728, John Spray)
mgr: mgr/dashboard_v2: 基于 Web 的管理 UI 的首次提交(替代现有仪表板)(pr#20103, Stephan Müller, Lenz Grimmer, Tiago Melo, Ricardo Marques, Sebastian Wagner, Patrick Nawracay, Ricardo Dias, Volker Theile, Kai Wagner, Tatjana Dehler)
mgr: mgr/dashboard v2: 引入 CdTableSelection 模型(pr#20746, Volker Theile)
mgr: mgr/dashboard_v2: 移除了未使用的 tools.detail_route()(pr#20765, Sebastian Wagner)
mgr: mgr/influx: 添加了附加统计信息(pr#21424, mhdo2)
mgr: mgr/influx: 添加 InfluxDB SSL 选项(pr#19374, Tobias Gall)
mgr: mgr/influx: 只在点号 (.) 第一次出现时分割字符串(issue#23996, pr#21795, Wido den Hollander)
mgr: mgr/influx: Influx 模块的 PEP-8 和其他修复(pr#19229, Wido den Hollander)
mgr: mgr/influx: 各种修复和改进(pr#20187, Wido den Hollander)
mgr: mgr/influx: 各种时间修复(pr#20494, Wido den Hollander)
mgr: mgr/localpool: 默认为 3x;允许调整 min_size(pr#18089, Sage Weil)
mgr: mgr/MgrClient: 使用锁保护 send_pgstats()(issue#23370, pr#20909, Kefu Chai)
mgr: mgr/MgrClient: 服务注册按服务名称而不是守护程序名称过滤(pr#21459, runsisi)
mgr: mgr/PGMap: 丢弃 REQUEST_{SLOW,STUCK} HEALTH_WARNs(pr#19114, Kefu Chai)
mgr: mgr/prometheus: 添加 ceph_disk_occupation 系列(issue#21594, pr#18021, John Spray)
mgr: mgr/prometheus: 在 ceph-mgr prometheus 插件中为 PG_STATES 添加缺失的 ‘deep’ 状态(issue#22116, pr#18890, Peter Woodman)
mgr: mgr/prometheus: MDS 指标修复(issue#20899, pr#17318, John Spray, Jeremy H Austin)
mgr: mgr/prometheus: 修复 PG 状态名称(pr#21288, John Spray)
mgr: mgr/prometheus: 跳过错误的条目(pr#20456, Boris Ranto)
mgr: mgr/prometheus: 如果 CRUSH 设备中缺少 OSD 输出,则跳过(pr#20644, John Spray)
mgr: mgr/restful: 一些 restful 修复(pr#18649, Boris Ranto)
mgr: mgr/restful: 未配置时消息更清晰(issue#21292, pr#17573, John Spray)
mgr: mgr/smart: 修复 python3 模块加载(pr#21047, Ricardo Dias)
mgr: mgr/status: 修复 ceph fs status 返回错误(issue#21752, pr#18233, Yanhu Cao)
mgr: mgr/status: 以 2 的倍数格式化字节量(issue#21189, pr#17380, John Spray)
mgr: mgr/telemetry: 添加 Ceph Telemetry 模块以将报告发送回项目(pr#21970, Wido den Hollander)
mgr: mgr/zabbix: 修复除以零(issue#21518, pr#17931, John Spray)
mgr: mgr/zabbix: 忽略容量为 0 kb 的 osd(issue#21904, pr#18809, Ilja Slepnev)
mgr: mgr/zabbix: 实现健康检查(pr#20198, Wido den Hollander)
mgr: mgr/zabbix: 将 OSD 的最大、最小和平均 PG 发送给 Zabbix(pr#21043, Wido den Hollander)
mgr: mgr/Zabbix: Zabbix 模块的各种修复(pr#19452, Wido den Hollander)
mgr: mimic: mgr/telegraf: Ceph Mgr 的 Telegraf 模块(pr#22013, Wido den Hollander)
mgr: 修改 mgr-influx 模块数据库检查,不需要管理员权限(pr#18102, Benjeman Meekhof)
mgr: mon,mgr: 改进 ‘mgr module disable’ 命令(pr#21188, Gu Zhongyan)
mgr: mon, mgr: 将 “osd pool stats” 命令移动到 mgr 和 mgr python 模块(pr#19985, Chang Liu)
mgr: mon/MgrStatMonitor: 修复 pending_digest 格式(issue#22991, pr#20426, Patrick Donnelly)
mgr,mon: mon/MgrMonitor: 如果 update_from_paxos() 为空,则读取 cmd descs(issue#21300, pr#17846, Joao Eduardo Luis)
mgr,mon: mon,mgr: 从 ceph 命令行描述中删除单个通配符 ‘*’(pr#21139, Gu Zhongyan)
mgr,mon: mon/mgr: 将 “mgr_command_descs”,”osd_metadata” 和 “mgr_metadata” 前缀同步到新的 mons(issue#21527, pr#17929, huanwen ren)
mgr,mon: mon/MonCommands: mgr 元数据 - 改进参数命名一致性(issue#23330, pr#20866, Jan Fajerski)
mgr: 防止 DaemonState 中的空主机名(issue#20887, issue#21060, pr#17138, liuchang0812)
mgr: prometheus: 添加 osd 提交/应用延迟指标 (#22718)(issue#22718, pr#19980, Konstantin Shalygin)
mgr: prometheus: 如果 OSD 没有元数据,则不崩溃(pr#20539, Christopher Blum)
mgr: prometheus 修复元数据标签(pr#21557, Jan Fajerski)
mgr: prometheus: 将元数据指标值设置为 ‘1’ (#22717)(issue#22717, pr#19979, Konstantin Shalygin)
mgr: pybind/mgr/balancer: 添加针对空 adjusted_map 的健全性检查(pr#20836, xie xingguo)
mgr: pybind/mgr/balancer: 修复池删除与自动优化竞态条件(pr#20706, xie xingguo)
mgr: pybind/mgr/balancer: 修复针对空权重集的健全性检查(pr#20278, xie xingguo)
mgr: pybind/mgr/balancer: 妥善增加 bad_steps (pr#20194, xie xingguo)
mgr: pybind/mgr/balancer: 从 ms 加载权重集 (pr#20197, xie xingguo)
mgr: pybind/mgr/balancer: 更具体的命令输出 (pr#20305, xie xingguo)
mgr: pybind/mgr/balancer: 妥善移除优化计划 (pr#20224, xie xingguo)
mgr: pybind/mgr/balancer: 另外两个修复 (pr#20788, xie xingguo)
mgr: pybind/mgr/dashboard: 添加 url_prefix (issue#20568, pr#17119, Nick Erdmann)
mgr: pybind/mgr/dashboard: 修复 html href 中重复的斜杠 (issue#22851, pr#20229, Shengjing Zhu)
mgr,pybind: mgr/dashboard: 修复池大小基数转换 (pr#16771, Yixing Yan)
mgr: pybind/mgr/dashboard: 修复反向代理支持 (issue#22557, pr#19758, Nick Erdmann)
mgr,pybind: mgr/iostat: 以表格形式打印输出 (pr#21338, Mohamad Gebai)
mgr: pybind/mgr/localpool: 模块自动创建本地化池 (pr#17528, Sage Weil)
mgr: pybind/mgr/mgr_module: 为 MgrStandbyModule.get_con… 添加默认参数 (pr#19948, Kefu Chai)
mgr: pybind/mgr/mgr_module: 使 rados 句柄可用于所有模块 (pr#19972, Sage Weil)
mgr: pybind/mgr_module: 将 PRIO_* 和 PERFCOUNTER_* 移动到 MgrModule 类 (pr#18251, Jan Fajerski)
mgr: pybind/mgr: 新的“hello world” mgr 模块骨架 (pr#19491, Yaarit Hatuka)
mgr: pybind/mgr/prometheus: 添加 file_sd_config 命令 (pr#21061, Jan Fajerski)
mgr: pybind/mgr/prometheus: 添加 osd_in/out 指标;将 osd_weight 设为指标 (pr#18243, Jan Fajerski)
mgr: pybind/mgr/prometheus: 添加 StandbyModule 并处理失败的 MON 集群 (pr#19744, Jan Fajerski)
mgr: pybind/mgr/prometheus: 遇到未知 PG 状态时不要崩溃 (pr#18903, Jan Fajerski)
mgr: pybind/mgr/prometheus: 不要导出死守护进程的指标;新指标 (pr#20506, Jan Fajerski)
mgr: pybind/mgr/prometheus: 修复 osd_metadata 指标的创建 (pr#21530, Jan Fajerski)
mgr: pybind/mgr/prometheus: 修复指标类型 undef -> untyped (issue#22313, pr#19524, Ilya Margolin)
mgr: pybind/mgr/prometheus: 修复指标类型 undef -> untyped (pr#18208, Jan Fajerski)
mgr,pybind: pybing/mgr/prometheus: 如果 config-key get 返回…则返回默认端口 (pr#21696, Jan Fajerski)
mgr: python 接口重构 + 使模块能够在 standby 模式下运行 (issue#21593, issue#17460, pr#16651, John Spray, Sage Weil)
mgr: 抑制 OSD 统计信息缺失的日志记录 (pr#20485, John Spray)
mgr,rbd: mgr/dashboard: 添加 iSCSI IOPS/吞吐量指标 (issue#21391, pr#18653, Jason Dillaman)
mgr,rbd: mgr/dashboard: 修复 iSCSI 状态页面上列出的重复映像 (issue#21017, pr#17055, Jason Dillaman)
mgr: 协调 can_run 检查和自检 (pr#21607, John Spray, Kefu Chai)
mgr: 删除一些无用行 (pr#20005, John Spray)
mgr: 从 dashboard 模块中删除未使用的静态文件 (pr#16762, John Spray)
mgr: 从未知服务器收到报告时请求守护进程的元数据 (issue#21687, pr#18484, Chang Liu)
mgr,rgw: mgr/dashboard: RGW 页面 (pr#19512, Chang Liu)
mgr,rgw: prometheus: 实现 rgw_metadata 指标 (pr#21383, Boris Ranto)
mgr: pyThreadState 使用的安全检查 (pr#18093, John Spray)
mgr: 设置显式线程名称 (issue#21404, pr#17756, John Spray)
mgr: 消除 -Wsign-compare 的警告 (pr#17881, Jos Collin)
mgr: 跳过 PGMap::apply_incremental() 中的第一个非零增量 (issue#21773, pr#18347, Aleksei Gutikov)
mgr/status: 输出到 stdout,而不是 stderr (issue#24175, pr#22135, John Spray)
mgr: 将 declared_types 存储在 MgrSession 中 (issue#21197, pr#17932, John Spray)
mgr: systemd: 在重启 ceph-mgr 之前等待 10 秒 (issue#23083, pr#20533, Wido den Hollander)
mgr,tests: mgr/dashboard: 跳过非 bluestore 集群的数据池测试用例 (pr#21004, Tatjana Dehler)
mgr,tests: mgr/dashboard_v2: 修复 test_perf_counters_mgr_get (pr#20916, Tiago Melo)
mgr,tests: qa: 将新的 prometheus 测试添加到 rados/mgr 套件 (pr#20047, John Spray)
mgr,tests: qa: 在自检前正确配置 zabbix (issue#22514, pr#19634, John Spray)
mgr,tests: qa: 修复 mgr _load_module 帮助器 (pr#18685, John Spray)
mgr,tools: mgr/iostat: 将 'ceph iostat' 实现为 mgr 插件 (pr#20100, Mohamad Gebai)
mgr: 使用新式配置选项 + 添加元数据 (pr#17374, John Spray)
mgr/zabbix: 修复错误的日志消息 (pr#21237, Gu Zhongyan)
mgr/zabbix: 监控模板改进 (pr#19901, Marc Schoechlin)
mon: 添加 ceph osd get-require-min-compat-client 命令 (pr#19015, hansbogert)
mon: 添加 'ceph osd pool get erasure allow_ec_overwrites' 命令 (pr#21102, Mykola Golub)
mon: 重新添加 MMonHealth (issue#22462, pr#20528, Kefu Chai)
mon: 添加 mon_health_preluminous_compat_warning (pr#16902, Sage Weil)
mon: 一些到单调时钟的转换 (pr#18595, Patrick Donnelly)
mon: 对齐 lspools 输出 (pr#19597, Jos Collin)
mon: 允许集群和调试日志输出到 stderr,并带有适当的前缀 (pr#19385, Sage Weil)
mon: 缓存重新编码的 osdmaps (issue#23713, pr#21605, Sage Weil, Xiaoxi CHEN)
mon: 集中配置 (pr#20172, Sage Weil)
mon: "ceph osd crush rule rename" 支持 (pr#17029, xie xingguo)
mon: 检查监视器地址配置 (pr#18073, Li Wang)
mon: 清理 mon 事件上的集群日志记录 (issue#22082, pr#18822, John Spray)
mon: 清理 optracker 代码 (pr#21371, John Spray)
mon: 清理未使用的选项 mon_health_data_update_interval (pr#17728, Yao Guotao)
mon: common/options: 设置 max_background_jobs 而不是 max_background_compactions (pr#18397, Kefu Chai)
mon: 压缩未 scrub 或 deep-scrub 的 pgs 警告 (pr#17295, Zhi Zhang)
mon: 不使用 per_pool_sum_delta 显示恢复摘要 (issue#22727, pr#20009, Chang Liu)
mon: 升级时不要破坏 bootstrap-mgr (issue#20950, pr#18399, John Spray)
mon: 将 mon_mgr_mkfs_grace 加倍从 60s -> 120s (pr#20955, Sage Weil)
mon: 删除冗余访问修饰符等 (清理) (pr#19028, Shinobu Kinjo)
mon: 将 percent_used PGMap 字段以浮点数形式转储 (pr#20439, John Spray)
mon: 将 servicemap 与 MgrStatMonitor 转储信息一起转储 (pr#18760, Zhi Zhang)
mon: 扩展 mgr, osd, mds 的容量有效性检查 (issue#22525, pr#21311, Jing Li, Sage Weil)
mon: 最终的 luminous compatset 功能和 osdmap 标志 (pr#17333, Sage Weil)
mon: 修复 mon 集群升级期间发布的命令 (pr#16871, Sage Weil)
mon: 修复活动 mgr 的 mgr 元数据丢失问题 (#21260) (issue#21260, pr#17571, John Spray)
mon: 修复 "fs new" 池元数据更新,测试 (issue#20959, pr#16954, Greg Farnum)
mon: 修复升级期间 "ceph status" 中的旧健康检查;修复 jewel-x 升级组合 (pr#16967, Sage Weil)
mon: 修复使用 auth_client_required 策略的 mgr (pr#20048, John Spray)
mon: 修复 osd out clog 消息 (issue#21249, pr#17525, John Spray)
mon: 修复 mon 上的慢操作警告,改进慢操作警告 (issue#23769, pr#21684, Sage Weil)
mon: 修复 'features' 命令的结构 (pr#20115, Sage Weil)
mon: 修复两个遗留的 get_health() 调用者 (pr#17269, Sage Weil)
mon: 修复 'ceph features' 命令中错误的 mon-num 计数逻辑 (pr#16887, xie xingguo)
mon: 优雅地处理错误的快照删除请求 (issue#18746, pr#20835, Paul Emmerich)
mon: 处理杀死 mgrs 时的监视器滞后 (issue#20629, pr#18268, John Spray)
mon: "ceph df" 中 MAX AVAIL 不正确 (issue#21243, pr#17513, liuchang0812)
mon: 查询池参数时返回无效 JSON (issue#23200, pr#20745, Chang Liu)
mon/LogMonitor: 在忽略的日志消息上调用 no_reply() (pr#22104, Sage Weil)
mon: 将 mgr 报告标记为 no_reply (issue#22114, pr#21057, Kefu Chai)
mon: 将 mon_allow_pool_delete 标记为已观察 (pr#18125, Dan van der Ster)
mon: 将 OSD 信标和 pg_create 消息标记为 no_reply (issue#22114, pr#20517, Greg Farnum)
mon: mon/AuthMonitor: 不要使用 valid_caps() 验证 fs 授权 caps (pr#21418, Joao Eduardo Luis)
mon: mon/ConfigMonitor: 清理 prepare_command() (pr#20911, Gu Zhongyan)
mon: mon/Elector: 启动时强制选举 epoch 增加 (issue#20949, pr#16944, Sage Weil)
mon: mon/Elector: 移除未使用的成员字段 start_stamp 和 ack_stamp (pr#21091, runsisi)
mon: mon/LogMonitor: "log last" 应该返回最多 n 个条目 (pr#18759, Kefu Chai)
mon: mon/MDSMonitor: 修复 clang 构建失败 (pr#20637, Willem Jan Withagen)
mon: mon,mgr: 使 osd_metric 更受欢迎并将慢操作报告给 mgr (issue#23045, pr#20660, lvshanchun)
mon: mon/MgrMonitor: 限制 mgrmap 历史记录 (issue#22257, pr#19185, Sage Weil)
mon: mon/MonCommands: 修复复制粘贴错误 (pr#17271, xie xingguo)
mon: mon,option: 为 mon_dns_srv_name 设置默认值 (issue#21204, pr#17539, Kefu Chai)
mon: mon/OSDMonitor: 为 "crush add-bucket" 命令添加 location 选项 (pr#17125, xie xingguo)
mon: mon/OSDMonitor: 添加 'osd crush set-all-straw-buckets-to-straw2' (pr#18460, Sage Weil)
mon: mon/OSDMonitor: 为 "crush class ls-osd" 命令添加纯文本输出 (pr#17034, xie xingguo)
mon: mon/OSDMonitor: 在日志消息中 __func__ 后添加空格 (pr#19127, Kefu Chai)
mon: mon/OSDMonitor: 改进 prepare_command_pool_set E2BIG 错误消息 (pr#19944, Brad Hubbard)
mon: mon/OSDMonitor.cc: 修复 expected_num_objects 解释错误 (issue#22530, pr#19651, Yang Honggang)
mon: mon/OSDMonitor.cc : 创建副本池时将 erasure-code-profile 设置为 "" (pr#19673, zouaiguo)
mon: mon/OSDMonitor: 发送创建时检查 last_scan_epoch 而不是 (issue#20785, pr#17248, Kefu Chai)
mon: mon/OSDMonitor: 清理 cmd 'osd tree-from' (pr#20839, Gu Zhongyan)
mon: mon/OSDMonitor: 不发送带有陈旧信息的 send_pg_creates (issue#20785, pr#17065, Kefu Chai)
mon: mon/OSDMonitor: 如果设置 ruleset-* ec profile 属性则出错 (pr#17848, Sage Weil)
mon: mon/OSDMonitor: 修复 crush somke 测试的输入/测试范围不当 (pr#17179, xie xingguo)
mon: mon/OSDMonitor: 修复 'osd pg temp' 无法清理 pg-temp 的问题 (pr#16892, xie xingguo)
mon: mon/OSDMonitor: 实现 'osd crush ls
’ (pr#16920, Sage Weil) mon: mon/OSDMonitor: 如果池已消失,也杀死待定的 upmap 更改 (pr#20704, xie xingguo)
mon: mon/OSDMonitor: 处理 osd 信标时记录非活动 osd id (pr#21092, runsisi)
mon: mon/OSDMonitor: 使 'osd crush rule rename' 幂等 (issue#21162, pr#17329, xie xingguo)
mon: mon/OSDMonitor: "osd pool application get" 支持 (issue#20976, pr#16955, xie xingguo)
mon: mon/OSDMonitor: txsize 应大于或等于 prune_interval - 1 (pr#21430, Kefu Chai)
mon: mon/PGMap: 删除 DISK LOG 列 (pr#17617, Sage Weil)
mon: mon/PGMap: 修复 "0 stuck requests are blocked > 4096 sec" 警告 (pr#17099, xie xingguo)
mon: mon/PGMap: 'ceph df' 命令 'data' 部分的漂亮数字 (pr#17368, xie xingguo)
mon: mon/PGMap: 移除不必要的头文件 (pr#18343, Shinobu Kinjo)
mon: mon/PGMap: reweight::by_utilization - 跳过 DNE osds (issue#20970, pr#17064, xie xingguo)
mon: mon/pgmap: 更新池 nearfull 显示 (pr#17043, huanwen ren)
mon: 更积极地将 crush rulesets 转换为不同的规则 (pr#17508, John Spray, Sage Weil)
mon: 更多 constness (pr#17748, Kefu Chai)
mon: 节点 ls 改进 (pr#20820, Gu Zhongyan)
mon: 'node ls' mgr 支持 (pr#20711, Gu Zhongyan)
mon: 使用前检查 logger 是否为 NULL (pr#18788, Amit Kumar)
mon,osd: 在 "mon metadata" 中转储 "compression_algorithms" (issue#24135, issue#22420, pr#22004, Kefu Chai, Casey Bodley)
mon: osd 功能检查,0 个 osds 在线 (issue#21471, issue#20751, pr#17831, Brad Hubbard, Sage Weil)
mon: osdmap 修剪 (pr#19331, Joao Eduardo Luis)
mon/OSDMonitor: 清理: 在使用前移动 bufferlist (pr#18258, Shinobu Kinjo)
mon/OSDMonitor: 使用新式选项 (pr#18209, Kefu Chai)
mon: osd/OSDMap.h: 如果 osd 没有更多待定状态,则将其淘汰 (pr#19642, xie xingguo)
mon: paxos 清理 (pr#20078, huanwen ren)
mon/PGMap: 让 pg_string_state() 返回 boost::optional<> (issue#21609, pr#18218, Kefu Chai)
mon/PGMap: 使用新式选项并清理 (pr#18647, Kefu Chai)
mon: 后luminous清理 (第3部分?) (pr#17607, Sage Weil)
mon: 对健康检查更新日志记录进行速率限制 (issue#20888, pr#16942, John Spray)
mon: 当 paxos 暂时不活动时,重新启用发送摘要的计时器 (issue#22142, pr#19404, Jan Fajerski)
mon: 移除健康服务 (pr#20119, Chang Liu)
mon: remove_is_write_ready() (pr#19191, Kefu Chai)
mon: 移除 pre-luminous 兼容的无用代码 (2/many) (pr#17322, Sage Weil)
mon: 移除未使用的 waiting_for_commit (pr#18617, Kefu Chai)
mon: health_events_cleanup 后直接返回 (pr#16964, wang yang)
mon: 恢复 mds metadata 参数名称更改 (issue#22527, pr#19926, Patrick Donnelly)
mon: 打印 MonSession 时显示功能标志 (pr#17535, Paul Emmerich)
mon: 一些清理 (pr#17067, huanwen ren)
mon,tests: vstart: 在初始 ceph.conf 中设置 osd_pool_default_erasure_code_profile (pr#21008, Mykola Golub)
mon: 更新 get_store_prefixes 实现 (issue#21534, pr#17940, John Spray, huanwen ren)
mon: 在 PaxosService::maybe_trim() 中更新 PaxosService::cached_first_committed (issue#11332, pr#19397, Xuehan Xu, yupeng chen)
mon: 如果消息是自生成的,则使用 ceph_clock_now (pr#17311, huangjun)
mon: 警告使用 osd new 而不是 osd create (issue#21023, pr#17242, Neha Ojha)
msg/async/AsyncConnection: 移除旧版功能案例处理 (pr#18469, Haomai Wang)
msg/async: 避免引用临时字符串 (pr#20640, Kefu Chai)
msg/async: 批量处理 msg_iovlen (pr#18415, Jianpeng Ma)
msg/async/dpdk: 移除 xsky 版权和 LGPL 复制 (pr#21121, Kefu Chai)
msg/async/EventKqueue: OOM 时断言 (pr#21488, Kefu Chai)
msg/async: 修复 ms_dpdk_coremask 和 ms_dpdk_coremask 冲突 (pr#18678, chunmei)
msg/async: 修复 EventCenter::process_events() 的传入参数类型 (pr#20607, shangfufei)
msg/async 杂项清理 (pr#18531, Jianpeng Ma)
msg/async: 杂项清理 (pr#18575, Jianpeng Ma)
msg/async/rdma: 一个小小的拼写修正 (pr#18660, Yan Lei)
msg/async/rdma: 修复 PR #18053 引入的 core dump (pr#18204, Yan Lei)
msg/async/rdma: 修复处理重载 RDMA 下 tx_buffers 时潜在的 core dump (pr#18036, Yan Lei)
msg/async/rdma: 修复多 rados 客户端在同一进程内崩溃的问题 (pr#16981, Alex Mikheev, Haomai Wang, Adir Lev)
msg/async/rdma: 修复 Tx 缓冲区泄漏导致“heartbeat no reply”的问题 (pr#18053, Yan Lei)
msg/async/rdma: 重构 rx 缓冲区池分配器 (pr#17018, Alex Mikheev)
msg/async/rdma: 迭代器不必要的重新初始化 (pr#18190, JustL)
msg/async: EventCenter::file_events 的大小应大于 fd (issue#23253, pr#20764, Yupeng Chen)
msg/async: 使用 bitset<> 进行 popcnt 操作 (pr#18681, Kefu Chai)
msg/async: 在检查设备之前使用设备 (pr#19738, Xiaoyan Li)
msg: 删除重复包含 (pr#19623, /bin/bash)
msg: 删除不必要的 polling_stop() (pr#17079, Jos Collin)
msg: 初始化 lkey,bound,port_cnt,num_chunk,gid_idx (pr#17797, Amit Kumar)
msg: 初始化模块 msg 中的类成员 (pr#17568, Amit Kumar)
msg: 重新实现 sigpipe 阻塞 (pr#18105, Greg Farnum)
msg: 移除 ), 它是多余的 (pr#17544, linxuhua)
msg: 恢复对 !CEPH_FEATURE_MSG_AUTH 的支持 (pr#19044, Ilya Dryomov)
msgr: 连接建立优化 (pr#16006, shangfufei)
msg/simple: 传递 char 用于从 shutdown_rd_fd 读取 (pr#19094, Kefu Chai)
NVMDevice: 修复 #17002 导致的问题 (pr#17112, Ziye Yang)
objclass-sdk: 将 __cls_init() 暴露给外部 (pr#21581, Kefu Chai)
objecter: 次要清理 (pr#19994, runsisi)
os/bluestore/bluestore_tool: 将冗余代码移动到一个方法中 (pr#19160, Shinobu Kinjo)
os/bluestore: 实现 BlueRocksEnv::AreFilesSame() (issue#21842, pr#18392, Kefu Chai)
os/bluestore: 简化并修复 SharedBlob::put() (issue#24211, pr#22170, Sage Weil)
osd: 对越界 EC 读取的额外保护 (issue#21629, pr#18088, Jason Dillaman)
osd: 添加多个 objecter 结束器 (pr#16521, Myoungwon Oh)
osd: 添加 num_object_manifest (pr#20690, Myoungwon Oh)
osd: 添加 numpg_removing 指标 (pr#18450, Sage Weil)
osd: 为 cls_cxx_subop_version() 添加 processed_subop_count (issue#21964, pr#18610, Casey Bodley)
osd: 添加 scrub 星期限制 (pr#18368, kungf)
osd: 调整 osd_min_pg_log_entries (issue#21026, pr#17075, J. Eric Ivancich)
osd: 允许故障安全后 FULL_TRY (pr#17177, Pan Liu)
osd: 允许 PG 恢复调度抢占 (pr#17839, Sage Weil)
osd: 异步恢复 (pr#19811, Neha Ojha)
osd: 避免为不同的对等体重复编码相同的日志条目 (pr#20201, Jianpeng Ma)
osd: 避免读取路径上配置的 get_val() 开销 (pr#20217, Radoslaw Zarzynski)
osd: 避免在 PrimaryLogPG::get_rw_locks 中不必要的引用计数 (pr#21028, Radoslaw Zarzynski)
osd: 在重建缺失集时,对我们的断言和情况更精确 (issue#20985, pr#17000, Greg Farnum)
osd: 引入 dmclock 库更改 (pr#16755, J. Eric Ivancich)
osd: 引入最新的 dmclock 库更新 (pr#17997, J. Eric Ivancich)
osd: 将 snaptrimq_len 限制在 2^32 (pr#21107, Kefu Chai)
osd: 暂缓 pg 创建时更改日志级别 (issue#22440, pr#20167, Dan van der Ster)
osd: 将 op delayed 状态更改为 'waiting for scrub' (pr#19295, kungf)
osd: 更改分片摘要为十六进制,如对象信息摘要 (pr#21362, David Zafman)
osd: 更改 _update_calc_stats 中的条件 (pr#13383, Zhiqiang Wang)
osd: 编码 objectstore_perf_stat_t 时检查功能位 (pr#20378, Kefu Chai)
osd: 清理 dup 索引逻辑;在更少的地方维护索引标志逻辑 (pr#16829, J. Eric Ivancich)
osd: 清理 pre-luminous 兼容的无用代码 (第1部分) (pr#17247, Sage Weil)
osd: 清理 (pr#17753, Kefu Chai)
osdc/Objecter: 使用 coarse_mono 代替 (pr#18473, Haomai Wang)
osdc/Objector: 使用 std::shared_mutex 而不是 boost::shared_mutex (issue#23910, pr#21702, Abhishek Lekshmanan)
osd: 更正注释中的几个拼写错误 (pr#21064, songweibin)
osdc: 移除有点多余的公共标签 (pr#19466, Shinobu Kinjo)
osdc: 自管理快照助手应捕获解码异常 (issue#24103, issue#24000, pr#21958, Jason Dillaman)
osd: 调试未发送查询的 dispatch_context 情况 (pr#20917, Sage Weil)
osd: 删除死代码 PrimaryLogPG.cc (pr#17339, Amit Kumar)
osd: 空快照集时不要崩溃 (issue#23851, pr#21058, Mykola Golub, Igor Fedotov)
osd: 不要两次包含相同的头文件 (pr#18319, Shinobu Kinjo)
osd: 不要用 NULL 或 0 初始化指针 (pr#18311, Shinobu Kinjo)
osd: 在 PrimaryLogPG::close_op_ctx() 中不要 memcpy hobject_t (pr#21029, Radoslaw Zarzynski)
osd: 不在调试时处理 ostream 字符串 (pr#20298, Mark Nelson)
osd: 删除冗余注释 (pr#20347, songweibin)
osd: 删除 OSD::_collect_metadata 中未使用的代码 (pr#17131, Luo Kexue)
osd: 删除未使用的 osd_disk_tp 相关选项 (pr#21339, Gu Zhongyan)
osd: 消除无效的容器操作 (pr#19099, Igor Fedotov)
osd: 以简单的方式枚举设备名称 (pr#18453, Sage Weil)
osd: 如果初始化失败,直接 exit(1) 而不加锁 (pr#16647, Kefu Chai)
osd: peer 事件和 pg_map 的快速调度 + osd 分片 wq 重构 (pr#19973, Sage Weil)
osd: 逻辑对象空间使用的细粒度统计信息 (pr#15199, xie xingguo)
osd: 修复检查缺失版本时的断言 (issue#21218, pr#20410, David Zafman)
osd: 修复 valgrind 问题 (条件跳转依赖于未初始化值) (issue#22641, pr#19874, Myoungwon Oh)
osd: 修复导致无法擦除 OSDShardPGSlot 的错误 (pr#21771, Jianpeng Ma)
osd: 修复 build_initial_pg_history (issue#21203, pr#17423, w11979, Sage Weil)
osd: 修复心跳代码中除以零导致的崩溃 (pr#21373, Piotr Dałek)
osd: 修复 dpdk memzon mz_name 设置问题 (pr#19809, chunmei Liu)
osd: 修复基于 spdk/dpdk 库的 dpdk 运行时问题 (pr#19559, chunmei Liu)
osd: 修复 dpdk worker 引用问题 (pr#19886, chunmei Liu)
osd: 修复 osd_scrub_during_recovery 处理问题 (issue#18206, pr#17039, David Zafman)
osd: 修复旧消息从 down osd 被处理导致的乱序问题 (issue#22570, pr#19796, Mingxin Liu)
osd: 修复 pg 与 slot 竞争的 _process 处理 (pr#21745, Sage Weil)
osd: 修复恢复保留 bug,并实现远程保留抢占 (pr#18485, Sage Weil)
osd: 修复副本/回填目标处理 REJECT 的问题 (issue#21613, pr#18070, Sage Weil)
osd: 修复 OpRequest 中回复消息的 reqid 分配 (pr#17060, Yingxin Cheng)
osd: 修复 s390x 构建失败 (issue#23238, pr#20969, Nathan Cutler)
osd: 修复错别字和一些清理 (pr#19211, Enming Zhang)
osd: 修复乱序读取 bug (对于分块对象) (issue#22369, pr#19464, Myoungwon Oh)
osd: 修复 waiting_for_peered 与 flushing 的问题 (issue#21407, pr#17759, Sage Weil)
osd: 分块对象刷新操作 (pr#19294, Myoungwon Oh)
osd: 泛化 OpWq 的排队和锁接口 (pr#16030, Myoungwon Oh, Kefu Chai, Samuel Just)
osd: 对于 scrub 负载阈值检查,获取每个 cpu 的 loadavg (pr#17718, kungf)
osd: 摆脱 object_info 中的 extent map (pr#19616, Igor Fedotov)
osd: 访问 recovery_needs_sleep 时持有锁 (issue#21566, pr#18022, Neha Ojha)
osd: 通过使用 peer_missing 和 missing_loc 信息改进恢复统计处理 (issue#22837, pr#20220, Sage Weil, David Zafman)
osd: 改进大小 scrub 错误处理并忽略 xattr 检查中的系统属性 (issue#20243, issue#18836, pr#16407, David Zafman)
osd: 在元数据中包含 front_iface+back_iface (issue#20956, pr#16941, John Spray)
osd: 数据成员的初始化 (pr#17691, Amit Kumar)
osd: 指针 cls 的初始化 (pr#17115, amitkuma)
osd: 初始化 start_offset,last_offset,offset (pr#19333, Amit Kumar)
osd: 清理 PG 接口的初步最小努力 (pr#17708, Sage Weil)
osd: 引入子块到擦除码插件接口 (issue#19278, pr#15193, Myna Vajha)
osd: 杀死 snapdirs (pr#17579, Sage Weil)
osd: 使 dmclock 的预期超时可配置 (pr#18827, Taewoong Kim)
osd: 使 ReplicatedBackend::in_progress_ops 上的操作更有效 (pr#19035, Igor Fedotov)
osd: 使 PG::*Force* 事件结构公开 (pr#21312, Willem Jan Withagen)
osd: 当最大间隔为零时,使 scrub 没有截止日期 (pr#18354, kungf)
osd: 当 pg stats_invalid 为真时,立即进行 scrub (pr#17884, kungf)
osd: 使 scrub 等待 ec read/modify/writes 应用 (issue#23339, pr#20944, Sage Weil)
osd: 使 snapmapper 警告+清理而不是断言 (issue#22752, pr#20040, Sage Weil)
osd: 使 stat_bytes 和 stat_bytes_used 计数器为 PRIO_USEFUL (issue#21981, pr#18637, Yao Zongyou)
osd: 使 PG 的 SORTBITWISE 断言成为更宽松的关机 (issue#20416, pr#18047, Greg Farnum)
osd: 利用 find 减少计算复杂性 (pr#19732, Shinobu Kinjo)
osd: 将 PGLOG_* 宏迁移到 constexpr (issue#20811, pr#19352, Jesse Williamson)
osd: 对 op wq 进行次要优化 (pr#17704, Sage Weil, J. Eric Ivancich)
osd: min_pg_log_entries == max == pg_log_dups_tracked (pr#20394, Sage Weil)
osd: 杂项清理 (pr#17430, songweibin)
osd: 杂项清理 (pr#21431, songweibin)
osd: 对 snapmapper bug 进行更多调试 (issue#21557, pr#19366, Sage Weil)
osd: 对象已添加到回填的缺失集中,但不在恢复中,错误!(issue#18162, pr#18145, David Zafman)
osd: 只有当 *最新* 映射说我们被销毁时才退出 (issue#22673, pr#19988, Sage Weil)
osd: 只扫描一次 omap 损坏 (issue#21328, pr#17705, David Zafman)
osd,os,io: 初始化 C_ProxyChunkRead 成员、队列、请求 (pr#19336, amitkuma)
osd: 将 ops_blocked_by_scrub() 传递给 requeue_scrub() (pr#20319, Kefu Chai)
osd: 在 pg 创建时将池选项传递给 ObjectStore (issue#22419, pr#19486, Sage Weil)
osd/PG: 修复 clang 构建与私有状态事件的冲突 (pr#18217, Sage Weil)
osd/PG: 直接处理 flushed 事件 (pr#19441, wumingqiao)
osd/PrimaryLogPG: 当对象大小超过 osd_max_object_size 时 derr (pr#19049, Shinobu Kinjo)
osd: 使用所有带有头的快照处理 _scan_snaps() (issue#22881, issue#23909, pr#21546, David Zafman)
osd: 在启动 wq 线程之前向 OSDService 发布 osdmap (issue#21977, pr#21623, Sage Weil)
osd: 拉取最新 dmclock 子树 (pr#19345, J. Eric Ivancich)
osd: 将 peering 事件放入主分片 wq (pr#18752, Sage Weil)
osd: 将 pg 移除放入 op_wq (pr#19433, Sage Weil)
osd: 减少 all_info map find 以获取 primary (pr#19425, kungf)
osd: manifest 对象的引用计数 (redirect, chunked) (pr#19935, Myoungwon Oh)
osd: 移除 mclock op 队列中的 cost;dmclock 未能很好处理 cost (pr#21428, J. Eric Ivancich)
osd: 移除双空格 (pr#19296, Shinobu Kinjo)
osd: 移除 OpTracker 中重复的 "commit_queued_for_journal_write" (issue#23440, pr#21018, ashitakasam)
osd: 移除 pg_pool_t 中重复的函数 ec_pool (pr#18059, Chang Liu)
osd: 移除冗余局部变量声明 (pr#19812, Shinobu Kinjo)
osd: 移除不必要的头文件 (pr#19735, Shinobu Kinjo)
osd: 移除未使用的 ReplicatedBackend::objects_read_async() (pr#18779, Kefu Chai)
osd: 移除 do_proxy_write 中未使用的变量 (pr#17391, Myoungwon Oh)
osd: 将 mclock subop opclass 替换为 rep_op opclass;合并重复代码 (pr#18194, J. Eric Ivancich)
osd: 将 vectors_equal() 替换为 operator==(vector<>, vector<>) (pr#18064, Kefu Chai)
osd: 需要时从 PG 请求新映射 (issue#21428, pr#17795, Josh Durgin)
osd: 如果未 ack,则重新发送 osd_pgtemp (issue#23610, pr#21310, Kefu Chai)
osd: 恢复使用 dmclock 消息功能位,因为它尚未最终确定 (pr#21398, J. Eric Ivancich)
osd,rgw,librbd: SCA 修复 (pr#18495, Danny Al-Gaaf)
osd: 在 maybe_force_recovery 中将 min_version 设置为最新版本 (pr#17752, Xinze Chi)
osd: 早期 SIGHUP 信号登录 (issue#22746, pr#19958, huanwen ren)
osd: 消除 maybe-uninitialized 假阳性警告 (pr#19820, Yao Zongyou)
osd: 消除 -Wsign-compare 的警告 (pr#17872, Jos Collin)
osd: 跳过转储逻辑设备 (pr#20740, songweibin)
osd: 加速 get_key_name (issue#21026, pr#17071, J. Eric Ivancich)
osd: s/random_shuffle()/shuffle()/ (pr#19872, Willem Jan Withagen, Kefu Chai, Greg Farnum)
osd: 如果有待定 pgs,则订阅 osdmaps (issue#22113, pr#18916, Kefu Chai)
osd: 在 waiting_for_healthy 时订阅新的 osdmap (issue#21121, pr#17244, Sage Weil)
osd: 支持 caps 内的类方法白名单 (pr#19786, Jason Dillaman)
osd: 对日志修剪成功和错误的写入一视同仁 (issue#22050, pr#20827, Josh Durgin)
osd: 两次清理 (pr#20830, songweibin)
osd: 使用 git subtree pull 更新 dmclock 库 (pr#17737, J. Eric Ivancich)
osd: 仅当 new_interval 时更新信息 (pr#17437, Kefu Chai)
osd: 创建 pg 后更新存储选项 (issue#22419, pr#20044, Kefu Chai)
osd: 动态使用 dmclock 库 client_info_f 函数 (pr#17063, bspark)
osd: 使用现有 osd_required 变量进行 messenger 策略 (pr#20223, Yan Jun)
osd: 对非平凡迭代器使用前缀增量 (pr#19097, Kefu Chai)
osd: 使用特化、typedef 代替 (pr#19354, Shinobu Kinjo)
osd: 警告对象拥有过多的 omap 条目 (pr#16332, Brad Hubbard)
os/filestore/HashIndex.h: 修复注释中的拼写错误 (pr#17685, yaoguotao)
os: 初始化未初始化的成员 aio_info (pr#17066, amitkuma)
os: 从 LFNIndex.cc 移除死代码 (pr#17297, Amit Kumar)
prometheus: 处理 TIME 性能计数器类型指标 (pr#21749, Boris Ranto)
pybind: 在 rbd.pyx 中添加返回说明 (pr#21768, Zheng Yin)
pybind/ceph_daemon: 扩大量级 (issue#23962, pr#21836, Guan yunfei)
pybind: 修复刷新时图表大小变大的问题 (issue#20746, pr#16857, Yixing Yan)
pybind: mgr/dashboard: 修复 rbd 的池子菜单 (pr#16774, yanyx)
pybind,rbd: pybind/rbd: 支持通过 image_id 打开映像 (pr#19361, songweibin)
pybind: 移除未使用的 get_ceph_version() (pr#17727, Kefu Chai)
qa: 添加 cbt 仓库参数 (pr#18543, Neha Ojha)
qa: 添加 cephmetrics 套件 (pr#18451, Zack Cerza)
qa: 添加 upgrade/luminous-x 套件 (pr#17160, Yuri Weinstein)
qa/crontab: 每天运行 perf-basic 套件 (pr#21252, Neha Ojha)
qa: 减少 master、kraken、luminous 运行的作业量 (pr#17069, Yuri Weinstein)
qa: 使用 cbt 任务安装 collectl (pr#19324, Neha Ojha)
qa: mimic-dev1 后向移植以避免 trusty 节点 (pr#19600, Kefu Chai)
qa: 保留 cbt 任务结果 (pr#19364, Neha Ojha)
qa: qa/ceph-disk: 扩大模拟 SCSI 磁盘 (issue#22136, pr#19199, Kefu Chai)
qa/suites/perf-basic: 添加关于测试机的描述 (pr#21183, Neha Ojha)
qa/suites/rados/multimon/tasks/mon_lock_with_skew: 白名单 PG (pr#17004, Sage Weil)
qa/suites/rados/perf: 添加优化设置 (pr#17786, Neha Ojha)
qa/suites/rados/perf: 添加工作负载 (pr#18573, Neha Ojha)
qa/suites/rados/verify/validater/valgrind: 白名单 PG (pr#17005, Sage Weil)
qa/suites/upgrade/jewel-x/parallel: 容忍滞后的 mgr (pr#17227, Sage Weil)
qa/suites/upgrade/kraken-x: 修复 (pr#16881, Sage Weil)
qa/suites/upgrade/luminous-x 修复 (pr#22101, Sage Weil)
qa/tests - 添加了同时使用 mon.a 和 installer.0 的选项 (pr#19745, Yuri Weinstein)
qa/tests - 修复了 crontab 条目中的拼写错误 (pr#21482, Yuri Weinstein)
qa/tests: 修复拼写错误 (pr#21728, Yuri Weinstein)
qa/tests - 次要清理并使 perf-suite 运行 3 次,以便我们… (pr#21309, Yuri Weinstein)
qa/tests - 又修复了一个拼写错误 :( (pr#21483, Yuri Weinstein)
qa/tests: 从混合中移除 rest 套件 (pr#21743, Yuri Weinstein)
qa: 等待更长时间让 osd 刷新 pg 统计信息 (issue#24321, pr#22288, Kefu Chai)
qa/workunits/ceph-disk: --no-mon-config (pr#21956, Kefu Chai)
rados: 使 ceph_perf_msgr_client 适用于多个作业 (issue#22103, pr#18877, Jeegn Chen)
rbd: 添加深拷贝 CLI 方法 (pr#19996, songweibin)
rbd: 添加组重命名方法 (issue#22981, pr#20577, songweibin)
rbd: 为 rbd map 添加 notrim 选项 (pr#21056, Hitoshi Kamei)
rbd: 将子图像移动到回收站时添加父图像信息 (pr#19280, songweibin)
rbd: 调整 "lock list" JSON 和 XML 格式输出 (pr#19900, Jason Dillaman)
rbd: 调整 "showmapped" JSON 和 XML 格式输出 (pr#19937, Mykola Golub)
rbd: 允许删除所有未受保护的快照 (issue#23126, pr#20608, songweibin)
rbd: 当池配额已满时允许 trash rm/purge (pr#20697, songweibin)
rbd: mimic bug 修复的后向移植 (issue#24009, issue#24008, pr#21930, Jason Dillaman)
rbd: 在 rbd map 之前检查映像是否已映射 (issue#20580, pr#16517, Jing Li)
rbd: 子列表应支持可选的快照 id (issue#23399, pr#20966, Jason Dillaman)
rbd: 清理 IEC 字节单位的处理 (pr#21564, Jason Dillaman)
rbd: 清理在未设置池时使用镜像命令的警告 (issue#21319, pr#17636, Jason Dillaman)
rbd: cls/journal: 确保标签正确过期 (issue#21960, pr#18604, Jason Dillaman)
rbd: cls/journal: 修复 expire_tags 中可能的无限循环 (issue#21956, pr#18592, Jason Dillaman)
rbd: cls/journal: tag_list 类方法中可能的无限循环 (issue#21771, pr#18270, Jason Dillaman)
rbd: cls/rbd: group_image_list 错误地标记为 RW (issue#23388, pr#20939, Jason Dillaman)
rbd: cls/rbd: metadata_list 未遵循 max_return 参数 (issue#21247, pr#17499, Jason Dillaman)
rbd: cls/rbd: 消除 gcc7 maybe-uninitialized 警告 (pr#18504, Brad Hubbard)
rbd: common/options,librbd/Utils: 重构 RBD 功能验证 (pr#20014, Sage Weil)
rbd: 空池的磁盘使用不再返回错误消息 (issue#22200, pr#19045, Jason Dillaman)
rbd: 如果没有组快照,则不显示标题 (pr#20311, songweibin)
rbd: 不要覆盖删除操作的错误代码 (pr#20481, Jason Dillaman)
rbd: 删除不必要的 using 声明等 (pr#19005, Shinobu Kinjo)
rbd: 预先厚置备支持 (pr#18317, Hitoshi Kamei)
rbd: 导出/导入映像时导出/导入 image-meta (pr#17134, PCzhangPC)
rbd: 在 do_disk_usage 中过滤掉 UserSnapshotNamespace (pr#20532, songweibin)
rbd: 修复 map 期间指定 "rw" 选项时崩溃的问题 (issue#21808, pr#18313, Peter Keresztes Schmidt)
rbd: 修复函数 list_process_image 中逻辑死代码 (pr#16971, Luo Kexue)
rbd: 修复 rbd children listing 当子项在垃圾箱中时 (issue#21893, pr#18483, songweibin)
rbd: 修复 rbd bench 的 thread_offsets 计算 (pr#20590, Hitoshi Kamei)
rbd: 组杂项清理并更新 rbd man 页面 (pr#20199, songweibin)
rbd: 组快照重命名 (pr#12431, Victor Denisov)
rbd: 在令牌桶算法中实现映像 QoS (pr#17032, Dongsheng Yang)
rbd: 选项 --export-format 2 导入失败,无法保护快照 (issue#23038, pr#20613, songweibin)
rbd: 改进 'import-diff' 损坏输入错误消息 (issue#18844, pr#21249, Jason Dillaman)
rbd: 初始化 m_finalize_ctx (pr#17563, Amit Kumar)
rbd: 引入 "image-meta ls/rm" 命令 (pr#16591, PCzhangPC)
rbd: journal: 限制一个 librados 操作中发送的 append 数量 (issue#23526, pr#21157, Mykola Golub)
rbd: journal: 琐碎清理 (pr#19317, Shinobu Kinjo)
rbd: krbd: 包含 sys/sysmacros.h 以获取 major, minor 和 makedev (pr#20773, Ilya Dryomov)
rbd: krbd: 重写 "already mapped" 代码 (pr#17638, Ilya Dryomov)
rbd: librados/snap_set_diff: 不在空快照集上断言 (pr#20648, Mykola Golub)
rbd: librbd: 为全对象分层丢弃创建+截断 (issue#23285, pr#20809, Ilya Dryomov)
rbd: librbd: 使重命名请求完成过滤代码 (issue#23068, pr#20507, Mykola Golub)
rbd: librbd 杂项清理 (pr#18419, Jianpeng Ma)
rbd: librbd: 深度复制超出映像大小的对象时跳过 head object map 更新 (pr#21586, Mykola Golub)
rbd: librbd: 同步刷新应重用现有异步刷新逻辑 (pr#18403, Jason Dillaman)
rbd: librbd,test: 解决 coverity 假阳性问题 (pr#17825, Amit Kumar)
rbd: mimic: librbd: 深拷贝可选支持展平克隆映像 (issue#22787, pr#22038, Mykola Golub)
rbd: mimic: rbd-mirror: 可选支持主动/主动复制 (pr#22105, Jason Dillaman)
rbd: mimic: rbd-mirror: 运行 asok 'flush' 命令时可能出现死锁 (issue#24141, pr#22039, Mykola Golub)
rbd-mirror: 附加 thrash 测试 (pr#21697, Jason Dillaman)
rbd-mirror: 清理虚假错误日志消息 (issue#21961, pr#18601, Jason Dillaman)
rbd-mirror: 集群观察者应确保拥有最新的 OSD 映射 (issue#22461, pr#19550, Jason Dillaman)
rbd-mirror: 确保使用唯一的服务守护进程名称 (pr#19492, Jason Dillaman)
rbd-mirror: 修复格式化状态消息时可能出现的无限循环 (issue#22932, pr#20349, Mykola Golub)
rbd-mirror: 强制提升可能导致不正确的状态 (issue#21559, pr#17979, Jason Dillaman)
rbd-mirror: ImageMap 内存泄漏修复 (pr#19163, Venky Shankar)
rbd-mirror: 创建映像时改进数据池选择 (pr#18006, Adam Wolfe Gordon)
rbd-mirror: 将映像映射策略集成到主动-主动的增量步骤中 (pr#21300, Jason Dillaman)
rbd-mirror: 引入基本映像映射策略 (issue#18786, pr#15691, Venky Shankar)
rbd-mirror: 重新发送 update_sync_point 时缺失锁 (pr#19011, Mykola Golub)
rbd-mirror: 持久化映像映射时间戳 (pr#19338, Venky Shankar)
rbd-mirror: 主映像应在远程非主映像的日志中注册 (issue#21561, pr#18136, Jason Dillaman)
rbd-mirror: 为本地镜像正确翻译远程标签镜像 uuid (issue#23876, pr#21657, Jason Dillaman)
rbd-mirror: 从映像删除器中移除专用线程 (issue#15322, pr#19000, Jason Dillaman)
rbd-mirror: 映像重命名时重命名 asok 钩子以匹配映像名称,如果未重播 (issue#23888, pr#21682, Jason Dillaman)
rbd-mirror: 映像策略中的回滚状态转换 (pr#19577, Venky Shankar)
rbd-mirror: 创建映像时正确设置数据池 (issue#20567, pr#17073, Adam Wolfe Gordon)
rbd-mirror: 简化映像分配通知 (issue#15764, pr#16642, Jason Dillaman)
rbd-mirror: 为远程集群剥离环境/CLI 覆盖 (issue#21894, pr#18490, Jason Dillaman)
rbd-mirror: 支持镜像映像的延迟删除 (pr#19536, Jason Dillaman)
rbd-mirror: 传输远程映像时同步映像元数据 (issue#21535, pr#18026, Jason Dillaman)
rbd-mirror: 跟踪策略映射中的映像以支持 A/A (issue#18786, pr#15788, Venky Shankar)
rbd-mirror: 映像重命名时更新 asok 钩子名称 (issue#20860, pr#16998, Mykola Golub)
rbd-mirror: 使用下一个转换状态检查转换完整性 (pr#18969, Venky Shankar)
rbd-nbd: 允许通过映像或快照规范取消映射 (pr#19666, Mykola Golub)
rbd-nbd: 容器中运行时的 bug 修复 (issue#22012, issue#22011, pr#18663, Li Wang)
rbd-nbd: 某些内核可能无法发现已调整大小的块设备 (issue#22131, pr#18947, Jason Dillaman)
rbd-nbd: 清理 NBDServer 关闭 (pr#17283, Pan Liu)
rbd-nbd: 修复 map 时 ebusy 问题 (issue#23528, pr#21142, Li Wang)
rbd-nbd: 修复通用选项问题 (issue#20426, pr#17375, Pan Liu)
rbd-nbd: list-mapped 命令的输出格式支持 (pr#19704, Mykola Golub)
rbd-nbd: 支持可选设置设备超时 (issue#22333, pr#19436, Mykola Golub)
rbd: pool_name 使用前的空检查 (pr#18790, Amit Kumar)
rbd: 观看时输出 notifyOp 请求名称 (pr#20551, shun-s)
rbd: 并行化 "rbd ls -l" (pr#15579, Piotr Dałek)
rbd: pool_percent_used 不应除以 100 (pr#20795, songweibin)
rbd: 正确地将 ceph 全局命令行参数传递给子进程 (pr#19821, Mykola Golub)
rbd: pybind/rbd: 添加 deep_copy 方法 (pr#19406, Mykola Golub)
rbd: pybind/rbd: 修复元数据函数错误处理 (issue#22306, pr#19337, Mykola Golub)
rbd: python 绑定修复和改进 (issue#23609, pr#21304, Ricardo Dias)
rbd: rbd-ggate: 修复解析 ceph 全局选项 (pr#19822, Mykola Golub)
rbd: rbd-ggate: 修复语法错误 (pr#19919, Willem Jan Withagen)
rbd: rbd-ggate: 使 list 命令生成有效的 xml 格式输出 (pr#19823, Mykola Golub)
rbd: rbd-ggate: 小修复和改进 (pr#19679, Mykola Golub)
rbd: rbd-ggate: 通过 GEOM Gate 在 FreeBSD 上映射映像的工具 (pr#15339, Mykola Golub)
rbd: rbd: 引入 rbd bench rw (用于读写混合) 测试 (pr#17461, PCzhangPC)
rbd: rbd: 为 nbd map 中的选项设置默认值 (pr#20529, songweibin)
rbd: 在 get_path() 中将 positional_path 参数替换为 arg_index (pr#19722, songweibin)
rbd: 替换垃圾箱延迟选项,添加 rbd trash purge 命令 (pr#18323, Theofilos Mouratidis)
rbd: 资源代理需要是可执行的 (issue#22980, issue#22362, pr#20397, Tim Bishop)
rbd: 在 image-meta 函数中移除不必要的字符串到 char* 转换 (pr#17184, PCzhangPC)
rbd: 在 readwrite bench test 的信息中显示读写比例 (pr#18249, PCzhangPC)
rbd: 快照限制不应小于现有快照的数量 (pr#16597, PCzhangPC)
rbd: 支持从非主快照克隆映像 (issue#18480, pr#19724, Jason Dillaman)
rbd: 支持在列出时迭代元数据项 (issue#21179, pr#17532, Jason Dillaman)
rbd: 支持 rbd 映射中的 lock_timeout (pr#21344, Dongsheng Yang)
rbd: 在 rbd map 命令中支持 osd_request_timeout (issue#23073, pr#20792, Dongsheng Yang)
rbd: 从旧版切换到新版配置选项 (issue#20737, pr#16737, Jason Dillaman)
rbd,tests: qa: 附加 krbd discard 测试用例 (pr#20499, Ilya Dryomov)
rbd,tests: qa: 修复 krbd:unmap 套件中的 POOL_APP_NOT_ENABLED 警告 (pr#16966, Ilya Dryomov)
rbd,tests: qa: 在现有测试中引入 rbd-mirror thrasher (issue#18753, pr#21541, Jason Dillaman)
rbd,tests: qa: krbd_exclusive_option.sh: 添加 lock_timeout 测试用例 (pr#21522, Ilya Dryomov)
rbd,tests: qa: krbd_fallocate.sh: 添加 notrim 测试用例 (pr#21513, Ilya Dryomov)
rbd,tests: qa: krbd 巨型映像测试 (pr#20692, Ilya Dryomov)
rbd,tests: qa: krbd latest-osdmap-on-map 测试 (pr#20591, Ilya Dryomov)
rbd,tests: qa: krbd msgr-segments 测试 (pr#20714, Ilya Dryomov)
rbd,tests: qa: krbd parent-overlap 测试 (pr#20721, Ilya Dryomov)
rbd,tests: qa: krbd 全对象丢弃测试 (pr#20750, Ilya Dryomov)
rbd,tests: qa/suites/krbd: 添加 krbd BLKROSET 测试 (pr#18652, Ilya Dryomov)
rbd,tests: qa/suites/krbd: 启用 generic/050 和 generic/448 (pr#18795, Ilya Dryomov)
rbd,tests: qa/suites/krbd: 启用 xfstests blockdev 测试 (pr#17621, Ilya Dryomov)
rbd,tests: qa/suites/krbd: 排除 shared/298 (pr#17971, Ilya Dryomov)
rbd,tests: qa/suites/krbd: rbd_xfstests 作业大修 (pr#17346, Ilya Dryomov)
rbd,tests: qa/suites/rbd: 减少套接字故障 (pr#19617, Sage Weil)
rbd,tests: qa/suites/rbd: 杂项测试修复 (issue#21251, pr#17504, Jason Dillaman)
rbd,tests: qa/suites/rbd: 隔离v1镜像格式测试 (issue#22738, pr#20729, Jason Dillaman)
rbd,tests: qa/suites/rbd: 设置qemu任务 time_wait 参数 (pr#21131, Mykola Golub)
rbd,tests: qa/tasks/cram: 为所有命令在PATH中包含/usr/sbin (pr#18793, Ilya Dryomov)
rbd,tests: qa/tasks/rbd: 运行所有xfstests直到完成 (pr#18583, Ilya Dryomov)
rbd,tests: qa/workunits/rbd: 修复rbd默认格式1的cli_generic test_purge (pr#20389, Mykola Golub)
rbd,tests: qa/workunits/rbd: 修复resync image id的变量名 (issue#21663, pr#18097, Jason Dillaman)
rbd,tests: qa/workunits/rbd: 修复权限测试中的问题 (issue#23043, pr#20491, Jason Dillaman)
rbd,tests: qa/workunits/rbd: 小型集群创建pool可能失败 (pr#18067, Mykola Golub)
rbd,tests: qa/workunits/rbd: 镜像断开测试中潜在的竞争条件 (issue#23938, pr#21733, Mykola Golub)
rbd,tests: qa/workunits/rbd: 放宽greps以支持升级格式更改 (issue#21181, pr#17559, Jason Dillaman)
rbd,tests: qa/workunits/rbd: 删除journal.sh测试中的健全性检查 (pr#20490, Jason Dillaman)
rbd,tests: qa/workunits/rbd: 移除test_admin_socket.sh中的健全性检查 (pr#21116, Mykola Golub)
rbd,tests: qa/workunits/rbd: 移除“trash purge –threshold”测试 (issue#22803, pr#20170, Mykola Golub)
rbd,tests: qa/workunits/rbd: 简化split-brain测试以避免潜在的竞争条件 (issue#22485, pr#19604, Jason Dillaman)
rbd,tests: qa/workunits/rbd: 将devstack tempest切换到17.2.0标签 (issue#22961, pr#20599, Jason Dillaman)
rbd,tests: qa/workunits/rbd: 将devstack切换到pike版本 (pr#20124, Jason Dillaman)
rbd,tests: qa/workunits/rbd: 测试数据池是否正确镜像 (pr#17062, Mykola Golub)
rbd,tests: qa/workunits/rbd: 移除失败后不必要的休眠 (pr#18619, Mykola Golub)
rbd,tests: qa/workunits/rbd: 使用命令行选项指定watcher asok (issue#20954, pr#16917, Mykola Golub)
rbd,tests: qa/workunits/rbd: 等待降级状态传播 (pr#19073, Mykola Golub)
rbd,tests: qa/workunits/rbd: 仅在守护进程启动时等待状态传播 (pr#19082, Mykola Golub)
rbd,tests: rbd/test: 为 ex/import 添加快照保护测试 (pr#20689, songweibin)
rbd,tests: stop.sh: 尝试unmap rbd设备时使用–no-mon-config (pr#21020, Mykola Golub)
rbd,tests: test: 解决coverity误报 (pr#17803, Amit Kumar)
rbd,tests: test/cls_rbd: 掩码更新的特性位以支持升级测试 (issue#21217, pr#17509, Jason Dillaman)
rbd,tests: test/librados_test_stub: 始终创建传递给操作的缓冲区的副本 (pr#21074, Mykola Golub)
rbd,tests: test/librbd: 添加update_features RPC消息到test_notify (issue#21936, pr#18561, Jason Dillaman)
rbd,tests: test/librbd: 清理多个模拟函数测试 (pr#18952, Jason Dillaman)
rbd,tests: test/librbd: 不要实例化TrimRequest模板类 (pr#19402, Boris Ranto)
rbd,tests: test/librbd: 确保OutOfOrder测试有足够的并发管理操作 (pr#21436, Mykola Golub)
rbd,tests: test/librbd: 修复set_journal_policy的模拟方法宏 (pr#17216, Yan Jun)
rbd,tests: test/librbd: 修复OSD map刷新中的竞争条件 (issue#20918, pr#16877, Jason Dillaman)
rbd,tests: test/librbd: 修复valgrind内存泄漏警告 (pr#17187, Mykola Golub)
rbd,tests: test/librbd: 初始化on_finish,locker,force,snap_id (pr#17800, Amit Kumar)
rbd,tests: test/librbd: 使fsx在非linux平台上构建 (pr#16939, Mykola Golub)
rbd,tests: test/librbd: 最近添加的测试中存在内存泄漏 (pr#18478, Mykola Golub)
rbd,tests: test/librbd: fsx的rbd-ggate模式 (pr#19315, Mykola Golub)
rbd,tests: test/librbd: 测试metadata_set/remove是否应用 (pr#18288, Mykola Golub)
rbd,tests: test/librbd: TestMirroringWatcher单元测试应忽略重复项 (issue#21029, pr#17078, Jason Dillaman)
rbd,tests: test/librbd: 利用唯一池进行缓存分层测试 (issue#11502, pr#20486, Jason Dillaman)
rbd,tests: test/librbd: valgrind警告在TestMockManagedLockBreakRequest.DeadLockOwner中 (pr#18940, Mykola Golub)
rbd,tests: test/pybind/rbd: 如果未启用分层,则跳过test_deep_copy_clone (pr#20295, Mykola Golub)
rbd,tests: test/rbd: 如果v1镜像格式或deep-flatten禁用,cli_generic会失败 (issue#22950, pr#20364, songweibin)
rbd,tests: test/rbd_mirror: 修复单元测试中的valgrind警告 (pr#19016, Mykola Golub)
rbd,tests: test/rbd-mirror: 镜像映射策略测试 (pr#19320, Venky Shankar)
rbd,tests: test/rbd-mirror: 改进对死实例处理的覆盖率 (pr#21403, Jason Dillaman)
rbd,tests: test/rbd_mirror: “use of uninitialised value” valgrind警告 (pr#19437, Mykola Golub)
rbd,tools: rbd-fuse: 确保PATH_MAX已定义 (pr#18615, Roberto Oliveira)
rbd,tools: rbd-replay: 移除boost依赖 (pr#21202, Kefu Chai)
rbd: tools/rbd: 在bencher中使用steady clock (pr#20008, Mohamad Gebai)
rbd: 'trash list --long' 将对非克隆镜像返回失败 (pr#19540, Jason Dillaman)
rbd: 'trash ls -l' 仅当存在非USER垃圾镜像时才显示列标题 (pr#21343, songweibin)
rbd: 使用不同驱动程序映射镜像的统一方式 (pr#19711, Mykola Golub)
rbd: 在基准序列测试中使用不同的逻辑扰动线程偏移量 (pr#17218, PCzhangPC)
Revert "ceph-fuse: Delete inode's bufferhead was in Tx state would le... (pr#21976, "Yan, Zheng")
Revert "msg/async/rdma: fix multi cephcontext confllicting" (pr#16980, Haomai Wang)
Revert "os/bluestore: compensate for bad freelistmanager size/blocks metadata" (pr#17275, Xie Xingguo)
rgw: 为提高效率,能够以未排序方式列出桶内容 (pr#21026, J. Eric Ivancich)
rgw: 如果上传元对象不存在,则中止多部分上传 (pr#19918, fang yuxiang)
rgw: 通过RGWEnv访问RGWConf (pr#17432, Jos Collin)
rgw: 将“Accept-Ranges”添加到Swift API的响应头 (issue#21554, pr#17967, Tone Zhang)
rgw: 为区域添加默认重定向字段 (pr#9571, Yehuda Sadeh)
rgw: 添加一个选项以清除所有使用条目 (pr#19322, Abhishek Lekshmanan)
rgw: 添加一个选项以重新计算用户统计信息 (issue#23335, pr#20853, Abhishek Lekshmanan)
rgw: 为fetch_remote_obj的压缩添加缓冲过滤器 (issue#23547, pr#21479, Casey Bodley)
rgw: 在cors选项请求中添加cors头规则检查 (issue#22002, pr#18556, yuliyang)
rgw: 添加动态重新分片文档 (issue#21553, pr#15941, Orit Wasserman)
rgw: 如果get_data在RGWPutObj::execute中返回错误,则添加日志 (pr#18642, Zhang Shaowen)
rgw: 将元数据和数据同步相关命令添加到radosgw-admin用法中 (pr#18921, lvshanchun)
rgw: 在list_keys_init()中添加缺失的override (pr#17254, Jos Collin)
rgw: 添加radosgw-admin sync error trim以修剪同步错误日志 (pr#19854, fang yuxiang)
rgw: 添加重新分片命令 (issue#21617, pr#18180, Orit Wasserman)
rgw: 解决由于格式代码不正确而导致的警告 (pr#18796, J. Eric Ivancich)
rgw: 添加retry_raced_bucket_write
rgw: 在radosgw-admin用法和文档中添加rewrite命令和选项 (pr#18918, Enming Zhang)
rgw: 为beast前端添加ssl支持 (issue#22832, pr#20464, Casey Bodley)
rgw: 添加对Swift的每个存储策略统计信息支持 (issue#17932, pr#12704, Radoslaw Zarzynski)
rgw: 添加对Swift的反向账户列表支持 (issue#21148, pr#17320, Radoslaw Zarzynski)
rgw: 在策略中添加对标签和其他条件的支持 (pr#17094, Abhishek Lekshmanan)
rgw: 添加尾部标签以跟踪尾部实例 (issue#20234, pr#16145, Yehuda Sadeh)
rgw: 在RGWDeleteLC::execute()中将租户添加到shard_id (pr#10460, Wei Qiaomiao)
rgw: 在函数parse_v4_auth_header中添加时间偏差检查 (issue#22418, pr#19476, Bingyin Zhang)
rgw: 添加try_refresh_bucket_info函数
rgw: 在RGWCopyObj_ObjStore_S3响应消息中添加xml输出头 (issue#22416, pr#19475, Enming Zhang)
rgw: 调整生命周期的日志格式 (pr#19576, Bingyin Zhang)
rgw: admin api - 添加从admin api同步用户统计信息的能力 (issue#21301, pr#17589, Nathan Johnson)
rgw: Admin API支持桶配额更改 (issue#21811, pr#18324, Jeegn Chen)
rgw: 如果用户没有创建任何桶,admin rest api在获取用户统计信息时不应返回错误 (pr#21551, Zhang Shaowen)
rgw: 允许beast前端监听特定IP地址 (issue#22778, pr#20000, Yuan Zhou)
rgw: 允许删除swift acls (issue#22897, pr#20471, Marcus Watts)
rgw: 未配置时避免记录keystone撤销消息 (issue#21400, pr#17775, Abhishek Lekshmanan)
rgw: aws4 auth支持PutBucketRequestPayment (issue#23803, pr#21569, Casey Bodley)
rgw: AWS v4授权在INIT_MULTIPART分块时工作 (issue#22129, pr#18956, Jeegn Chen)
rgw: beast前端可以监听多个端点 (issue#22779, pr#20188, Casey Bodley)
rgw: beast前端不再是实验性的 (pr#21272, Casey Bodley)
rgw: 更好的ERANGE错误消息 (issue#22351, pr#20023, Brad Hubbard)
rgw: 无限中断发送数据日志列表 (issue#20951, pr#16926, fang.yuxiang)
rgw: 桶重新分片不应更新桶ACL或用户统计信息 (issue#22742, issue#22124, pr#20038, Orit Wasserman)
rgw: 桶头缓存 (issue#22517, pr#19581, Adam C. Emerson)
rgw: 缓存注册! (issue#22604, issue#22603, pr#20144, Adam C. Emerson)
rgw: 启用压缩时,带范围下载对象可能失败 (issue#22852, pr#20226, fang yuxiang)
rgw: ceph-dencoder: 为RGWObjManifest添加缺失的begin_iter & end_iter项 (pr#19509, wangsongbo)
rgw: ceph-dencoder: 添加对cls_rgw_lc_obj_head的支持 (pr#18920, Yao Zongyou)
rgw: ceph-dencoder: 添加对RGWLifecycleConfiguration的支持 (pr#18959, wangsongbo)
rgw: 将ObjectCache::lru从deque改回list (issue#22560, pr#19768, Casey Bodley)
rgw: 支持ragweed的更改 (pr#13644, Yehuda Sadeh)
rgw: 在策略中检查桶CORS操作 (issue#21578, pr#18000, Adam C. Emerson)
rgw: 在策略中检查桶GetBucketLocation (issue#21582, pr#18002, Adam C. Emerson)
rgw: 在策略中检查桶网站操作 (issue#21597, pr#18024, Adam C. Emerson)
rgw: 生命周期处理时检查going_down() (issue#22099, pr#18846, Yao Zongyou)
rgw: 在策略中检查支付操作 (issue#21389, pr#17742, Adam C. Emerson)
rgw: 检查RGWRados::copy_obj_data中read_op.read返回值 (pr#18962, Enming Zhang)
rgw: civetweb v1.1升级修复 (pr#21123, Abhishek Lekshmanan)
rgw: 使用辅助函数dump_header_if_nonempty清理代码 (pr#18979, Xinying Song)
rgw: 清理并修复加密的一些错误 (issue#21581, pr#17882, Enming Zhang)
rgw: 使用std::min清理MIN宏 (pr#17546, Jiaying Ren)
rgw: 清理RGWRados::copy_obj_data中未使用的参数 (pr#18917, Enming Zhang)
rgw: 云同步修复 (pr#21648, Yehuda Sadeh)
rgw: cls/log: cls_log_list始终返回下一个标记 (issue#20906, pr#17024, Casey Bodley)
rgw: cls/rgw: 修复bi_log_iterate_entries返回错误的截断 (issue#22737, pr#20021, Tianshan Qu)
rgw: cls/rgw: 未初始化成员的初始化 (pr#16932, amitkuma)
rgw: cls/rgw: rgw_bucket_dir_entry_meta中的mtime未真正解码 (issue#22148, pr#18981, Yao Zongyou)
rgw: cls/rgw: 移除未使用的变量bl (pr#19570, Yao Zongyou)
rgw: cls/rgw: 在cls_rgw中修剪所有使用条目 (issue#22234, pr#19131, Abhishek Lekshmanan)
rgw: cls_rgw: 在get_obj_vals中使用更有效的容器操作 (pr#19272, Xinying Song)
rgw: 有符号和无符号整数表达式之间的比较 (pr#21105, ashitakasam)
rgw: 整合实现哈希算法的代码 (pr#18248, J. Eric Ivancich)
rgw: 复制对象添加响应错误消息 (pr#18291, Enming Zhang)
rgw: 修正函数parse_credentials中的注释 (pr#19275, Bingyin Zhang)
rgw: 修正RGWListBucketIndexesCR中元数据部分名称的日志输出 (pr#19508, Xinying Song)
rgw: 修正权限评估以仅允许管理员用户使用角色 (pr#20332, Pritha Srivastava)
rgw: 修正拼写错误refity为refit (pr#19064, Bingyin Zhang)
rgw: 修正拼写错误UNKOWN为UNKNOWN (pr#19273, Bingyin Zhang)
rgw: 执行radosgw-admin数据同步运行时创建sync-module实例 (issue#22080, pr#18898, lvshanchun)
rgw: radosgw-admin sync run时创建sync-module实例 (pr#20611, lvshanchun)
rgw: curl* 重用,对于debian,使用openssl而不是gnutls (pr#20635, Marcus Watts)
rgw: 数据加密不遵循AWS协议 (pr#15994, hechuang)
rgw: datalog list支持–shard-id和–marker (pr#20649, Tianshan Qu)
rgw: 数据同步: 在构建完整映射时设置num_shards (issue#22083, pr#18852, Abhishek Lekshmanan)
rgw: 删除to_string函数。include/stringify.h中定义的stringify可以提供相同的功能 (pr#18522, zhangwen)
rgw: 在多站点环境中禁用动态重新分片 (issue#21725, pr#18184, Orit Wasserman)
rgw: 如果不是当前周期,则不反映周期 (issue#22844, pr#20212, Tianshan Qu)
rgw: 创建具有排他标志的系统对象时,不更新所有网关缓存 (pr#19384, J. Eric Ivancich)
rgw: 更新olh时不更改rados对象的mtime (issue#21743, pr#18214, Shasha Lu)
rgw: 前端I/O时不要持有data_lock (pr#20621, Casey Bodley)
rgw: 不要泄漏S3 LDAPHelper (pr#12427, Matt Benjamin)
rgw: 'sync error list'中不记录EBUSY错误 (issue#22473, pr#19580, Casey Bodley)
rgw: 不重复使用过时的RGWObjectCtx来获取get_bucket_info() (issue#21506, pr#17916, Casey Bodley)
rgw: 在bucket_link/unlink中,如果未更改,则不写入bucket_header (pr#17356, Shasha Lu)
rgw: 在rgw_bucket_prepare_op中,如果未更改,则不写入bucket_header (pr#18763, Xinying Song)
rgw: 下载对象可能因局部变量未初始化而失败 (issue#23146, pr#20612, fang yuxiang)
rgw: 删除encode_xml()中重复的语句 (pr#20195, luomuyao)
rgw: 删除注释掉的函数 (pr#19671, Jos Collin)
rgw: 删除不再使用的dump_uri_from_state() (pr#19924, Radoslaw Zarzynski)
rgw: 删除rgw_op.cc中的iter (pr#19583, Bingyin Zhang)
rgw: 删除RGWLC::process()中的marker (pr#19591, Bingyin Zhang)
rgw: 删除过时的函数文档 (pr#18370, Jiaying Ren)
rgw: 删除radosgw-admin中的“realm remove” (pr#18212, Shasha Lu)
rgw: 删除多余的RGW_OP_STAT_OBJ检查 (pr#19933, Bingyin Zhang)
rgw: 删除对Swift的X-Storage-Policy在对象上不必要的处理 (pr#16383, Jiaying Ren)
rgw: 删除未使用的函数init_anon_user() (pr#16874, Radoslaw Zarzynski)
rgw: 删除不必要的返回 (pr#17520, Jos Collin)
rgw: 删除未使用的函数apply_epoch (pr#17593, Shasha Lu)
rgw: 删除XMLObj::find_first中未使用的iter (pr#19709, luomuyao)
rgw: 删除未使用的变量bucket_instance_ids (pr#19708, Bingyin Zhang)
rgw: 删除copy_obj_data()中未使用的变量 (pr#18477, Enming Zhang)
rgw: 删除未使用的向量元素 (pr#19815, Bingyin Zhang)
rgw: 删除rgw_{main.cc, common.h}中无用的包含文件 (pr#19109, Jiaying Ren)
rgw: 删除无用的行 (pr#19817, Bingyin Zhang)
rgw: 删除无用的类型转换 (pr#19824, Bingyin Zhang)
rgw: 删除rgw_op.cc中的变量bl (pr#19584, Bingyin Zhang)
rgw: 删除#warning TODO (issue#19851, pr#17012, Jos Collin)
rgw: 在Swift对容器的GET/HEAD响应中转储Last-Modified (issue#20883, pr#16757, Radoslaw Zarzynski)
rgw: 启用“qlen”和“qactive”性能计数器 (pr#20842, Mark Kogan)
rgw: 编码修复 (issue#23779, pr#21500, Yehuda Sadeh)
rgw: 错误检查read_line()的返回值 (pr#17880, Amit Kumar)
rgw: es模块: 正确设置压缩类型 (issue#22758, pr#20796, Abhishek Lekshmanan)
rgw: 评估GetACL桶操作的正确桶动作 (issue#21013, pr#17050, Abhishek Lekshmanan)
rgw: 如果rgw_bucket_set_attrs()失败则提前退出 (pr#17041, dengxiafubi)
rgw: 在桶信息缓存中过期条目
rgw_file: 修复写入偏移量重叠时的写入错误 (issue#21455, pr#17809, Yao Zongyou)
rgw: 修复delete_system_obj和get_system_obj中rgw缓存的bug (pr#10992, zhangshaowen)
rgw: 修复PrefixableSignatureHelper中访问过期内存的问题 (issue#21085, pr#17206, Radoslaw Zarzynski)
rgw: 修复注释中的拼写错误 (pr#19608, luomuyao)
rgw: 修复注释中的拼写错误 (pr#20164, luomuyao)
rgw: 修复注释中的拼写错误 (pr#20355, luomuyao)
rgw: 修复rgw_perms[]中的拼写错误 (pr#20024, luomuyao)
rgw: 修复多部分完成时的bilog条目 (issue#21772, pr#18271, Casey Bodley)
rgw: 修复BZ 1500904,对象删除后桶索引条目仍然存在 (pr#18709, J. Eric Ivancich)
rgw: 修复链式缓存失效以防止缓存大小增长 (issue#22410, pr#19455, Mark Kogan)
rgw: 修复Prefix的结束标签 (pr#17663, Shasha Lu)
rgw: 修复cls_bucket_head结果顺序一致性 (pr#18700, Tianshan Qu)
rgw: 修复协程中collect()的返回 (pr#19606, Xinying Song)
rgw: 修复radosgw-admin的命令参数错误 (issue#21723, pr#18175, Yao Zongyou)
rgw: 修复“copy part”没有“x-amz-copy-source-range” (issue#22729, pr#20002, Malcolm Lee)
rgw: 修复“copy part”没有“x-amz-copy-source-range”且启用压缩时的问题 (issue#23196, pr#20686, fang yuxiang)
rgw: 修复rgw_run_sync_thread为false时的崩溃 (issue#20448, pr#20769, Orit Wasserman)
rgw: 修复空optional的解引用 (issue#21962, pr#18602, Adam C. Emerson)
rgw: 修复GET与?torrent的错误处理 (issue#23506, pr#21576, Casey Bodley)
rgw: 修复浏览器上传中的错误处理 (pr#15054, Radoslaw Zarzynski)
rgw: 修复ListBucketIndexesCR中的错误处理 (issue#21735, pr#18198, Casey Bodley)
rgw: 加密对象的多站点复制修复 (issue#20668, issue#20671, pr#16612, Casey Bodley)
rgw: 修复PutObj过滤器中的extra_data_len处理 (issue#21895, pr#18489, Casey Bodley)
rgw: 修复beast前端中空查询字符串的问题 (issue#22797, pr#20120, Casey Bodley)
rgw: 修复问题#21647 (issue#23859, pr#21647, Yehuda Sadeh)
rgw: 修复beast前端的暂停问题 (issue#21831, pr#18402, Casey Bodley)
rgw: 修复用法截断标志 (pr#20926, Yehuda Sadeh, Greg Farnum, Robin H. Johnson)
rgw: 修复RGWEnv中的getter函数名称 (pr#18377, Jos Collin)
rgw: 修复GET网站响应错误代码 (issue#22272, pr#19236, Dmitry Plyakin)
rgw: 修复RGWRadosGetOmapKeysCR中ENOENT的处理 (pr#19878, Casey Bodley)
rgw: 修复索引取消操作遗漏更新头 (pr#20396, Tianshan Qu)
rgw: 修复重新分片桶时bi列表的无限调用 (issue#22721, pr#21584, Orit Wasserman)
rgw: 修复lc进程仅调度lc对象的第一个项目 (issue#21022, pr#17061, Shasha Lu)
rgw: 修复当桶启用版本控制时,列表对象与标记错误的结果 (issue#21500, pr#17934, yuliyang)
rgw: 修复从客户端读取数据时的内存碎片问题 (pr#20724, Marcus Watts)
rgw: 修复读写删除时多站点同步失败... (issue#22804, pr#20814, Niu Pengju)
rgw: 修复接收SIGHUP信号时不响应的问题 (pr#16854, Yao Zongyou)
rgw: 修复空指针崩溃 (pr#18861, Sibei Gao)
rgw: 修复从远程网关复制的对象acl full_control问题 (issue#20658, pr#16127, Enming Zhang)
rgw: 修复opslog无法记录remote_addr (issue#20931, pr#16860, Jiaying Ren)
rgw: 修复opslog在使用curl作为客户端时无法记录referrer (issue#20935, pr#16863, Jiaying Ren)
rgw: 修复opslog uri以符合Amazon s3 (issue#20971, pr#16958, Jiaying Ren)
rgw: 修复radosgw-admin bucket rm with --purge-objects and --bypass-gc (issue#22122, issue#19959, pr#18922, Aleksei Gutikov)
rgw: 修复radosgw-admin quota enable返回值bug (issue#21608, pr#18057, baixueyu)
rgw: 修复WITH_RADOSGW_BEAST_FRONTEND=OFF时radosgw的链接问题 (issue#23680, pr#21380, Casey Bodley)
rgw: 修复递归锁 (pr#19430, Tianshan Qu)
rgw: 修复rgw_bucket.cc和rgw_user.cc中的资源泄漏 (issue#21214, pr#17353, Luo Kexue)
rgw: 修复auth v2/v4的返回值 (issue#22439, pr#19310, Bingyin Zhang)
rgw: 修复重写版本对象创建新对象bug (issue#21984, pr#18662, Enming Zhang)
rgw: 修复重写选项用法文本 (pr#18968, Jos Collin)
rgw: 修复RGWCompletionManager在down后get_next卡住的问题 (issue#22799, pr#20095, Tianshan Qu)
rgw: 修复RGWLibIO未初始化RGWEnv (pr#19065, Tianshan Qu)
rgw: 修复s3网站重定向错误 (pr#19252, yuliyang)
rgw: 修复s3website重定向位置字符串长度 (pr#19826, yuliyang)
rgw: 修复Swift容器命名规则 (issue#19264, pr#13992, Robin H. Johnson)
rgw: 修复swift对象过期未删除对象的问题 (issue#22084, pr#18821, Pavan Rallabhandi)
rgw: 修复同步状态与云同步冲突的问题 (pr#21425, Casey Bodley)
rgw: 修复radowgw-admin zonegroup set需要realm的bug (issue#21583, pr#19061, lvshanchun)
rgw: 修复max-uploads参数不生效的问题 (issue#22825, pr#20158, Xin Liao)
rgw: 修复返回类型错误的问题 (pr#19773, hechuang)
rgw: 修复total_time到毫秒以符合AWS S3 (pr#17541, Jiaying Ren)
rgw: 修复拼写错误annoymous为anonymous (pr#19281, Bingyin Zhang)
rgw: 修复拼写错误compete为complete (pr#19675, Bingyin Zhang)
rgw: 修复注释中的拼写错误 (pr#21032, Simran Singhal)
rgw: 修复GetOmapKeysCR中的拼写错误 (pr#19713, lvshanchun)
rgw: 修复拼写错误signle为single (pr#19517, Bingyin Zhang)
rgw: 修复拼写错误woild为would (pr#19472, Bingyin Zhang)
rgw: 修复IAM策略解析器中的use after free问题 (pr#16823, Adam C. Emerson)
rgw: 修复libcurl与空头值一起使用的问题 (issue#23663, pr#21358, Casey Bodley)
rgw: 格式化文件rgw_lc.cc中的日志 (pr#19615, Bingyin Zhang)
rgw: 在ceph-dencoder中格式化rgw_bucket_dir_header (pr#19753, Bingyin Zhang)
rgw: gc使用aio (pr#20546, Yehuda Sadeh)
rgw: 处理RGWDeleteBucketPolicy中过时的桶信息 rgw: 处理RGWDeleteBucketWebsite中过时的桶信息 rgw: 处理RGWPutBucketPolicy中过时的桶信息 rgw: 处理RGWPutMetadataBucket中过时的桶信息 rgw: 处理RGWSetBucketVersioning中过时的桶信息 rgw: 处理RGWSetBucketWebsite中过时的桶信息
rgw: 在比较时尊重rgw_bucket的租户部分 (issue#20897, pr#16796, Radoslaw Zarzynski)
rgw: iam策略打印清理 (pr#18961, Kefu Chai)
rgw: 忽略返回的错误 (pr#17907, Amit Kumar)
rgw: 为桶策略实现ipv4 aws:SourceIp条件 (pr#19167, yuliyang)
rgw: 改进Swift的错误消息和限制处理 (issue#17938, issue#21169, issue#17935, issue#17934, issue#17936, pr#15369, Radoslaw Zarzynski)
rgw: 改进同步状态: 显示落后的桶分片 (pr#20027, lvshanchun)
rgw: 改进同步状态 (pr#19573, lvshanchun)
rgw: 在加密上传响应中包含SSE-KMS头 (issue#21576, pr#17999, Casey Bodley)
rgw: 合并CivetWeb的Transfer-Encoding修复 (issue#21015, pr#17072, Radoslaw Zarzynski)
rgw: 初始化epoch,len (pr#17722, Amit Kumar)
rgw: 初始化is_master, max_aio, size (pr#16933, amitkuma)
rgw: 初始化未初始化的成员 (pr#16855, Amit Kumar)
rgw: 设置run_sync_thread后初始化最旧周期 (issue#21996, pr#18664, Orit Wasserman, Casey Bodley)
rgw: 保持S3 Multipart各部分压缩类型一致 (pr#19740, fang yuxiang)
rgw: keystone: 收到错误时增加日志记录级别 (issue#22151, pr#18985, Abhishek Lekshmanan)
rgw: lc修复过期时间 (issue#21533, pr#17824, Shasha Lu)
rgw: lc支持Content-MD5请求头并修复rgw崩溃bug (issue#21980, pr#18534, Enming Zhang)
rgw: lease_cr->go_down被调用两次,移除不必要的一次 (pr#19394, Zhang Shaowen)
rgw: librgw: 导出多租户支持 (pr#19358, Tao Chen)
rgw: librgw: 修复资源未清理导致的关机错误 (issue#22296, pr#19279, Tao Chen)
rgw: 生命周期omap条目在异常情况下被移除 (pr#19921, fang yuxiang)
rgw: list_objects()尊重end_marker,无论命名空间如何 (issue#18977, pr#15273, Radoslaw Zarzynski)
rgw: loadgen修复生成随机对象名rgw崩溃问题 (issue#22006, pr#18536, Enming Zhang)
rgw: 在civetweb前端访问日志中记录正确的http状态码 (issue#22538, pr#19678, Yao Zongyou)
rgw: 将unlink_instance mtime记录为对象的mtime (issue#18885, pr#20016, Yehuda Sadeh)
rgw: lttng: 跟踪rgw数据传输、bi条目和对象头更新过程 (pr#20556, Yang Honggang)
rgw: 使init env方法返回错误 (issue#23039, pr#20488, Abhishek Lekshmanan)
rgw: 使radosgw对象stat RGW_ATTR_COMPRESSION可读 (pr#19846, fang yuxiang)
rgw: mfa支持 (pr#19283, Yehuda Sadeh)
rgw: mimic: rgw: policy: 修改s3:ListBucketMultiPartUploads为s3:ListBucketMul (issue#24062, pr#21916, xiangxiang)
rgw: 通过admin rest api修改s3类型子用户访问权限失败 (issue#21983, pr#18641, yuliyang)
rgw: 将所有pool创建移至rgw_init_ioctx (issue#23480, pr#21534, Casey Bodley)
rgw: 多站点日志跟踪 (pr#16492, Yehuda Sadeh, Casey Bodley)
rgw,nfs: 添加挂载时使用-o sync的提示 (pr#16210, Adam Kupczyk)
rgw: get_data中无需处理md5头 (pr#19144, Zhang Shaowen)
rgw: 优化函数abort_bucket_multiparts (pr#19710, Bingyin Zhang)
rgw: 优化函数bucket_lc_prepare (pr#19613, Bingyin Zhang)
rgw: 优化函数parse_raw_oid (pr#19814, Bingyin Zhang)
rgw: 优化函数RGWHandler::do_init_permissions (pr#19700, Bingyin Zhang)
rgw: 优化函数rgw_bucket::get_key中的内存使用 (pr#19391, Bingyin Zhang)
rgw: 优化生命周期的下一个启动时间 (pr#19596, Bingyin Zhang)
rgw: 优化rgw-attr del代码逻辑 (pr#18895, wangsongbo)
rgw: 优化时间偏差检查 (pr#19511, Bingyin Zhang)
rgw: 正确解析带有命名空间的旧rgw_obj (issue#22982, pr#20425, Yehuda Sadeh)
rgw: policy: 支持s3条件在ListBucket Op中 (pr#16628, Abhishek Lekshmanan)
rgw: 修复POST上可能出现的500错误 (pr#18954, Adam C. Emerson)
rgw: 防止缓存统计值溢出 (issue#20934, pr#17116, Aleksei Gutikov)
rgw: 当tier_type不存在时返回正确的错误消息 (issue#22469, pr#19575, lvshanchun, Chang Liu)
rgw: 提升beast子模块并更新前端 (pr#17923, Casey Bodley)
rgw: put bucket policy导致RGW进程崩溃 (issue#22541, pr#19687, Bingyin Zhang)
rgw: radosgw-admin针对空uids的用户统计信息提前中止 (issue#23322, pr#20846, Abhishek Lekshmanan)
rgw: radosgw-admin不应使用元数据缓存进行只读命令 (issue#23468, pr#21129, Orit Wasserman)
rgw: radosgw-admin zonegroup get and zone get在没有realm时返回默认值 (issue#21615, pr#18667, lvshanchun)
rgw: radosgw: 修复awsv4头行排序顺序 (issue#21607, pr#18046, Marcus Watts)
rgw: radosgw: usage: 修复bytes_sent bug (issue#19870, pr#16834, Marcus Watts)
rgw: 协程关机错误时提高日志级别 (issue#23974, pr#21791, Casey Bodley)
rgw: 重新启用角色错误代码映射 (pr#20309, Pritha Srivastava)
rgw: 在支持之前拒绝加密对象COPY (issue#23232, pr#20739, Jeegn Chen)
rgw: 如果在RGWCompleteMultipart中获取了cls锁,则释放它 (issue#21596, pr#18104, Matt Benjamin)
rgw: 移除IAM策略中的断言 (pr#18225, Adam C. Emerson)
rgw: 移除函数RGWDeleteLC::execute和RGWDeleteCORS::execute中的get_system_obj_attrs (pr#19582, Bingyin Zhang)
rgw: 从rgw_link_bucket()中移除placement_rule (issue#21990, pr#18657, Casey Bodley)
rgw: 移除日志中多余的括号 (pr#19375, Bingyin Zhang)
rgw: 移除多余的S3AnonymousEngine (pr#19474, Bingyin Zhang)
rgw: 移除LocalEngine::authenticate中多余的签名比较 (pr#19676, Bingyin Zhang)
rgw: 移除列出区域时无用的输出 (pr#17434, iliul)
rgw: 移除未使用的cls_user_add_bucket (pr#19917, Yao Zongyou)
rgw: 移除未使用的disable_signal_fd (pr#18875, Yao Zongyou)
rgw: 移除未使用的函数get_system_obj_attrs (pr#19852, Yao Zongyou)
rgw: 移除函数RGWConf::init()中未使用的参数 (pr#17129, Wen Zhang)
rgw: 移除AWSGeneralAbstractor::get_auth_data_v4中未使用的参数 (pr#19250, Bingyin Zhang)
rgw: 移除get_bucket_instance_policy_from_attr中未使用的参数 (pr#19129, Bingyin Zhang)
rgw: 移除未使用的变量 (pr#16649, Zhang Lei)
rgw: 移除RGWDeleteBucket::execute中无用的行 (pr#19699, Bingyin Zhang)
rgw: reshard cancel命令应清除桶resharding标志 (issue#21619, pr#21120, Orit Wasserman)
rgw: 重新分片在链接新桶实例时不应更新统计信息 (issue#22124, pr#19253, Orit Wasserman)
rgw: 在ECANCELLED上重试CORS put/delete操作 (issue#22517, pr#19601, Adam C. Emerson)
rgw: 通过XMLHttpRequest设置和删除桶网站时返回“Access-Control-Allow-Origin”头 (pr#17632, yuliyang)
rgw: 通过XMLHttpRequest设置桶版本时返回“Access-Control-Allow-Origin”头 (pr#17631, yuliyang)
rgw: 返回桶的位置,无论它位于哪个zonegroup中 (issue#21125, pr#17250, Shasha Lu)
rgw: 如果max_keys无法正确转换则返回EINVAL (issue#23586, pr#21285, yuliyang)
rgw: 如果桶策略包含未定义的操作,则返回错误 (pr#17433, zhangwen)
rgw: 当dst_ioctx.operate()返回错误时返回 (pr#17873, Amit Kumar)
rgw: 返回有效的Location元素,CompleteMultipartUpload (pr#19902, Matt Benjamin)
rgw: revert PR #8765 (pr#16807, fang.yuxiang)
rgw: Revert "radosgw: fix awsv4 header line sort order." (issue#21832, pr#18381, Casey Bodley)
rgw: Revert "rgw_file: disable FLAG_EXACT_MATCH enforcement" (issue#22827, pr#20171, Matt Benjamin)
rgw: Revert "rgw: reshard should not update stats when linking new bucket instance" (pr#20052, Orit Wasserman)
rgw: 重新编写json/xml转义用法,遵循#19806 (pr#19845, fang yuxiang)
rgw: rgw-admin: 检查输入参数以获取友好提示 (pr#17343, Yao Zongyou)
rgw: rgw-admin: 检查数据额外池是否支持omap (pr#18978, Yao Zongyou)
rgw: rgw-admin: 通过user_id或bucket_name正确过滤桶统计信息 (pr#19401, Yao Zongyou)
rgw: rgw-admin: 使用–inconsistent_index时需要–yes-i-really-mean-it (issue#20777, pr#17185, Orit Wasserman)
rgw: rgw-admin: 支持处理所有包括未过期在内的gc对象 (pr#17482, Yao Zongyou)
rgw: RGW: 更改函数参数从值到引用 (pr#18355, Sibei Gao)
rgw: RGWCivetWeb::read_data: 修复mg_read()调用的参数 (issue#23596, pr#21291, Nathan Cutler)
rgw: rgw清理: 移除未引用的纯虚类StreamObjData (pr#18799, J. Eric Ivancich)
rgw: rgw清理: 移除RGWRados::SystemObject中未使用的var & func (pr#18987, J. Eric Ivancich)
rgw: rgw清理: 一些不必要的函数调用和重复赋值 (pr#18817, Enming Zhang)
rgw: rgw云同步 (issue#21802, pr#18932, lvshanchun, Yehuda Sadeh, Chang Liu, Abhishek Lekshmanan)
rgw: RGWEnv::set()接受std::string (issue#22101, pr#18866, Casey Bodley)
rgw: rgw_file: 替代修复lru驱逐上的死锁 (pr#20034, Matt Benjamin)
rgw: rgw_file: 避免对readdir偏移量评估nullptr (pr#20145, Matt Benjamin)
rgw: rgw_file: 直接删除时有条件地解除链接句柄 (issue#23299, pr#20834, Matt Benjamin)
rgw: rgw_file: 显式NFSv3 open()仿真 (pr#18365, Matt Benjamin)
rgw: rgw_file: 修复evict_block()中的LRU通道锁 (issue#21141, pr#17267, Matt Benjamin)
rgw: rgw_file: 实现变体偏移量readdir处理 (pr#18335, Matt Benjamin)
rgw: rgw_file: 引入新的fsid和rgw_mount (pr#15330, Gui Hecheng)
rgw: rgw_file: 从bytes_written设置s->obj_size (issue#21940, pr#18571, Matt Benjamin)
rgw: rgw_file: 消除未使用函数警告 (pr#19278, Brad Hubbard)
rgw: RGW: 修复比较单位不一致的bug (issue#21590, pr#17958, gaosibei)
rgw: rgw.iam: 在函数print_actions中将'1'改为'1ULL' (pr#18900, Bingyin Zhang)
rgw: rgw_lc: 添加对可选过滤器参数的支持并使ID可选 (issue#19587, issue#20872, pr#16818, Abhishek Lekshmanan)
rgw: rgw_lc: 支持AWSv4认证 (pr#16734, Abhishek Lekshmanan)
rgw: rgw_log, rgw_file: 考虑新的必需环境变量 (issue#21942, pr#18572, Matt Benjamin)
rgw: Rgw主修复加 (issue#21000, issue#21003, issue#20501, pr#17040, Zhang Shaowen, Marcus Watts)
rgw: rgw, mon: 在admin console中规范化delete/remove (cleanup 22444) (issue#14363, issue#22444, pr#19439, Jesse Williamson)
rgw: RGW: Multipart上传可能使配额加倍 (issue#21586, pr#17959, Sibei Gao)
rgw: rgw多站点: 桶索引日志的自动修剪 (issue#18229, pr#17761, Casey Bodley)
rgw: RGW NFS: mount cmdline示例缺少-osync (pr#15855, Matt Benjamin)
rgw: RGW-NFS: 使用rados cluster_stat报告文件系统使用情况 (issue#22202, pr#20093, Supriti Singh)
rgw: rgw_op: 从日志中删除旧的LifecycleConfiguration (pr#16821, Abhishek Lekshmanan)
rgw: rgw_op: 如果对象在GetObjectTagging中没有attrs,则提前退出 (issue#21010, pr#17048, Abhishek Lekshmanan)
rgw: RGWPutLC在缺少时返回ERR_MALFORMED_XML
tag in lifecycle.xml (issue#21377, pr#17683, Shasha Lu) rgw: rgw_put_system_obj接受bufferlist (pr#19897, Casey Bodley)
rgw: rgw_rados: set_attrs现在为BI和对象设置相同的时间 (issue#21200, pr#17400, Abhishek Lekshmanan)
rgw: rgw/rgw_op.cc: 修复rgw_user_get_all_buckets_stats中的错误消息 (pr#18781, iliul)
rgw: rgw: inter-bucket复制后“default.rgw.buckets.data”中的源数据可能未被删除 (issue#21819, pr#18369, baixueyu)
rgw: RGW: 支持生命周期策略中的标签 (pr#17305, Abhishek Lekshmanan)
rgw: RGW: 更新S3 POST策略对Content-Type的处理 (issue#20201, pr#18658, Matt Benjamin)
rgw: rgw: 在请求头中使用驼峰命名格式 (pr#19210, lvshanchun, Chang Liu)
rgw: RGWUser::init不再覆盖user_id (issue#21685, pr#18137, Casey Bodley)
rgw: S3桶策略条件IpAddress和NotIpAddress不工作 (issue#20991, pr#17010, John Gibson)
rgw: s3网站错误处理程序使用原始对象名称 (issue#23201, pr#20693, Casey Bodley)
rgw: 上传文件时发送x-amz-version-id头 (pr#18935, Xinying Song)
rgw: set bucket versioning如果xml中缺少状态,则不改变版本控制状态 (issue#21364, pr#17662, Shasha Lu)
rgw: 在'radosgw-admin data sync init'上设置num_shards (issue#22083, pr#18883, Casey Bodley)
rgw: 设置性能计数器的优先级 (pr#20006, John Spray)
rgw: 当没有看到值时,将sync_from_all设置为true (issue#22062, pr#18926, Abhishek Lekshmanan)
rgw: 为libopenssl设置锁 (issue#22951, issue#23203, pr#20390, Abhishek Lekshmanan, Jesse Williamson)
rgw: 在v2和v4 auth之间共享时间偏差检查 (pr#20013, Casey Bodley)
rgw: 消除可能未初始化的误报 (pr#19274, Brad Hubbard)
rgw: 消除不允许注册存储类说明符的警告 (pr#19859, Yao Zongyou)
rgw: 简化iam中map::emplace的使用 (pr#18706, Casey Bodley)
rgw: 小重构和两个bug修复 (issue#21901, issue#21896, pr#18606, Adam C. Emerson)
rgw: 同步状态的一些清理工作 (pr#20894, Enming Zhang)
rgw: 仅在启动时停止/加入TokenCache撤销线程 (issue#21666, pr#18106, Karol Mroz)
rgw: 流元数据完全同步初始化 (issue#18079, pr#12429, Yehuda Sadeh)
rgw: 子模块: 将Beast更新到ceph/ceph-master分支 (pr#19182, Casey Bodley)
rgw: 将beast前端切换回堆栈协程 (issue#20048, pr#20449, Casey Bodley)
rgw: 同步跟踪修复 (issue#22833, pr#20191, Yehuda Sadeh)
rgw: 动态重新分片的租户修复 (issue#22046, pr#18811, Orit Wasserman)
rgw,tests: 修复s3atests一段时间失败的问题 (pr#20678, Vasu Kulkarni)
rgw,tests: qa: 修复openssl_keys任务的覆盖 (pr#20981, Casey Bodley)
rgw,tests: qa: 重新启用LC测试 (pr#17020, Abhishek Lekshmanan)
rgw,tests: qa/rgw: 将beast前端添加到一些rgw套件 (pr#17977, Casey Bodley)
rgw,tests: qa/rgw: 将swift, s3tests, ragweed合并到单个验证任务中 (pr#20756, Casey Bodley)
rgw,tests: qa/rgw: 在多站点套件中禁用日志修剪 (pr#19438, Casey Bodley)
rgw,tests: qa/rgw: hadoop-s3a套件目标centos_latest (pr#17777, Casey Bodley)
rgw,tests: qa/rgw: 忽略'pool application enable'的错误 (issue#21715, pr#18193, Casey Bodley)
rgw,tests: qa/rgw: 移除一些civetweb覆盖以进行beast测试 (issue#23002, pr#20440, Casey Bodley)
rgw,tests: qa/rgw: 重命名ssl任务为openssl_keys (pr#20863, Ricardo Dias)
rgw,tests: qa/rgw: 在创建的池上使用'ceph osd pool application enable' (pr#17162, Casey Bodley)
rgw,tests: qa/rgw: 使用 SSL 验证 civetweb 的套件测试 (pr#20444, Casey Bodley)
rgw,tests: qa/smoke: 为 s3tests 添加 rgw 加密配置 (pr#17700, Casey Bodley)
rgw,tests: qa/tasks/swift: 添加对“force-branch”配置项的支持 (pr#21027, Radoslaw Zarzynski)
rgw,tests: rgw, qa: 集成 Tempest 以验证 RadosGW 与 Swift API 的兼容性 (pr#16344, Radoslaw Zarzynski)
rgw,tests: test/rgw: 修复 3+ 区域的 test_encrypted_object_sync (pr#17377, Casey Bodley)
rgw: frontends 相关配置中的元变量将不会被展开 (pr#19689, root)
rgw,tools: tools/rgw: 添加脚本以检查 admin socket “cr dump” (pr#15554, Casey Bodley)
rgw: 不支持使用 SSE-C 加密对象的 Torrent (issue#21720, pr#17956, Zhang Shaowen)
rgw: 清除元数据值中的所有空格 (issue#23301, pr#20841, Orit Wasserman)
rgw: 使用 bi purge 更新 radosgw-admin 用法 (pr#18245, Yao Zongyou)
rgw: 从 bucket 所有者处解除已删除 bucket 的链接 (issue#22248, pr#20017, Casey Bodley)
rgw: RGWRados::trim_bi_log_entries 中的无法到达的返回 (pr#17367, Amit Kumar)
rgw: 更新生命周期相关日志级别 (pr#18845, Yao Zongyou)
rgw: 更新过时的调试函数名 (pr#17440, Jiaying Ren)
rgw: 压缩时添加/删除对象的配额更新不一致 (issue#22568, pr#19772, fang yuxiang)
rgw: 在截断场景中更新用法读取迭代器 (issue#21196, pr#17939, Mark Kogan)
rgw: 使用 status 更新 usage() (pr#18178, Jos Collin)
rgw: 更新 vstart.sh 以支持 rgw ssl 端口表示法:“--rgw_port 443s” (issue#21151, pr#17989, Mark Kogan)
rgw: 上传配额时更新最大桶数 (pr#20063, zhaokun)
rgw: URL 解码 S3 和 Swift 对象复制 URL (issue#22121, pr#19936, Matt Benjamin)
rgw: 在 es 同步模块中对键名和实例进行 URL 编码 (pr#20707, Chang Liu)
rgw: 使用显式索引池放置 (issue#22928, pr#20352, Yehuda Sadeh)
rgw: 为 lc_pool 和 roles_pool 使用命名空间 (issue#20177, pr#16889, Orit Wasserman)
rgw: rgw_admin.cc 中的各种清理和选项更新 (pr#18302, Jos Collin)
rgw: vstart.sh: 修复 mstop.sh 无法停止 rgw 的问题 (pr#17438, Jiaying Ren)
rgw: “zone placement”命令验证压缩类型 (issue#21775, pr#18273, Casey Bodley)
rocksdb: 与上游同步 (issue#21603, pr#18262, Kefu Chai)
rpm: 删除注释中的宏 (issue#22250, pr#17070, Ken Dreyer)
script/build-integration-branch: 检查错误 (pr#17578, Sage Weil)
script/build-integration-branch: python3 兼容且符合 pep8 规范 (pr#18035, Kefu Chai)
scripts: 新增 backport-create-issue 脚本 (pr#21480, Nathan Cutler)
selinux: 允许 ceph 执行 ldconfig (pr#21974, Boris Ranto)
selinux: 允许对 lnk sysfs 文件进行 getattr 操作 (pr#17891, Boris Ranto)
spdk: 推进到上游 dc82989d (pr#20713, Nathan Cutler)
src: 修复各种日志消息 (pr#21112, Gu Zhongyan)
src/msg/rdma: 修复 notify() 中断言失败问题 (pr#17007, Alex Mikheev)
suites/cephmetrics: 添加 Centos 7 (pr#18594, Zack Cerza)
test: 检查负返回值的断言 (pr#17296, Amit Kumar)
test/fio: 生成 db 直方图以帮助调试 rocksdb 性能 (pr#16808, Pan Liu, Xiaoyan Li)
test: 修复 shebangs 中的 bash 路径(第 2 部分) (pr#17955, Alan Somers)
test: 修复 CLI 单元格式化测试 (pr#22260, Jason Dillaman)
test: 不正确的双精度转换 (pr#18963, Amit Kumar)
test/librados: 重新排序 ASSERT_EQ() 参数 (pr#16625, Yan Jun)
test,osd,kvstore_tool: 消除警告并以正确的方式准备测试缓冲区 (pr#18406, Adam C. Emerson)
tests: bluestore/fio: 修复所有对象哈希相同的问题 (pr#17770, Adam Kupczyk)
tests: CentOS 7.4 现在是最新版本 (pr#17776, Nathan Cutler)
tests - ceph-ansible 变量添加 (issue#21822, pr#18378, Yuri Weinstein)
tests: ceph-disk: 在 flake8 测试中忽略 E722 (issue#22207, pr#19072, Nathan Cutler)
tests: ceph-disk: 模拟获取 fsid (pr#19254, Kefu Chai)
tests: ceph-disk: 删除 sitepackages=True (issue#22823, pr#20151, Brad Hubbard)
tests: ceph-objectstore-tool: 在事务完成之前不要销毁 SnapMapper (issue#23121, pr#20593, Kefu Chai)
tests: Teuthology 的 systemd 支持所需的更改 (pr#18380, Zack Cerza)
tests: 在 test_dump_pgstate_history 中检查空输出 (pr#20838, Brad Hubbard)
tests: cleanup: 移除 calamari 任务 (pr#17531, Nathan Cutler)
tests: cleanup: 移除 upgrade/jewel-x/point-to-point-x (issue#22888, pr#20245, Nathan Cutler)
tests: cmake,test/mgr: 重构仪表板测试和 cmake 相关修复 (pr#20768, Kefu Chai)
tests: common/obj_bencher: 如果运行时 < 1 秒,则设置 {min,max}_iops (pr#17182, Kefu Chai)
tests: c_read_operations.cc: 消除 tautological-compare 编译器警告 (pr#19953, Brad Hubbard)
tests: 修复 Coverity 扫描发现的未初始化值 (pr#17895, J. Eric Ivancich)
tests: 增加 test_pidfile.sh 中的睡眠时间 (pr#17052, David Zafman)
tests: librgw_file: 移除未使用的 using 语句 (pr#17085, Yao Zongyou)
tests: mark_unfound_lost 修复和其他一些小改动 (issue#21907, pr#18449, David Zafman)
tests: mgr/dashboard: 允许 sourcing run-backend-api-tests.sh (pr#20874, Sebastian Wagner)
tests: mgr/dashboard: 为运行 tox 创建 venv (pr#21490, Kefu Chai)
tests: mgr/dashboard: 通知队列: 修复优先级测试 (pr#21147, Ricardo Dias)
tests: mimic: qa: 修复“ceph fs set cephfs allow_new_snaps”的测试 (pr#21830, Kefu Chai)
tests: mimic: qa/workunits/rados/test_envlibrados_for_rocksdb: 安装 g++ 而不是 g++-4.7 (pr#22117, Kefu Chai)
tests: mimic: test: 需要转义 grep 日志白名单中的括号 (pr#22075, David Zafman)
tests: mimic: test: wait_for_pg_stats() 应该在最后 13 秒后进行另一次检查… (pr#22199, David Zafman)
tests: misc: 修复 shebangs 中的 bash 路径 (pr#16494, Alan Somers)
tests: mstart.sh: 移除 /bin/sh 脚本中的 bashism (pr#18541, Mykola Golub)
tests: point-to-point-x: 将 client.1 与集群节点一起升级到 -x (issue#21499, pr#17910, Nathan Cutler)
tests: qa: 为性能测试添加 cbt 任务 (pr#17583, Neha Ojha)
tests: qa: 添加 cosbench 工作负载并覆盖 teuthology 默认设置 (pr#21710, Neha Ojha)
tests/qa: 添加 $ distro mix - rgw (pr#22070, Yuri Weinstein)
tests/qa: 添加 rados/.. 目录 (pr#22068, Yuri Weinstein)
tests: qa: 在 ceph-ansible 套件中添加“restful”到 ceph_mgr_modules (pr#18634, Kefu Chai)
tests: qa: 添加简单且粗糙的脚本以查找正在使用的端口 (pr#19102, Joao Eduardo Luis)
tests: qa: big: 添加 openstack.yaml (pr#16864, Nathan Cutler)
tests: qa: 清理 dnsmasq 任务并修复 EPERM 错误 (pr#20680, Casey Bodley)
tests: qa: create_cache_pool 不再运行“pool application enable” (issue#21155, pr#17312, Casey Bodley)
tests: qa: 将 msg_inject_socket_failures 从 1/500 降低到 1/1000 (issue#22093, pr#19542, Kefu Chai)
tests: qa: 在升级测试中禁用 mon-health-to-clog (pr#19233, Kefu Chai)
tests: qa: 编译 env_librados_test 时禁用 -Werror (pr#21433, Kefu Chai)
tests: qa: 在没有 cephfs fs 的情况下不运行“ceph fs get cephfs” (pr#18533, Kefu Chai)
tests: qa: 对于 pg 收敛不等待 down/out osd (pr#18808, Kefu Chai)
tests/qa - 在 mira 节点上启用 ceph-deploy 运行 (pr#21253, Yuri Weinstein)
tests: qa: 修复与池配额相关的测试 (issue#21409, pr#17763, xie xingguo)
tests: qa: 修复 openstack 脚本中的 shebangs (pr#16546, Alan Somers)
tests: qa: 将“mon client hunt interval max multiple”降至 2 (pr#21658, Kefu Chai)
tests: qa: 将 mon-client-hunt-interval-max-multiple 降至 2 (pr#18283, Kefu Chai)
tests: qa: 恢复“qa: 使用 config_path 属性而不是文字” (pr#17850, Patrick Donnelly)
tests: qa/run-standalone.sh: 也为 FreeBSD 设置 PYTHONPATH (pr#20646, Kefu Chai)
tests: qa: s/backfill/backfilling/ (pr#18235, Kefu Chai)
tests: qa/stanalone: 使用 -- 传递选项
= (pr#19544, Kefu Chai) tests: qa/standalone: 添加信号陷阱以恢复内核核心模式 (pr#17026, David Zafman)
tests: qa/standalone/ceph-helpers.sh: 为 dirname 提供参数 (issue#23805, pr#21552, Nathan Cutler)
tests: qa/standalone/ceph-helpers.sh: 消除 ceph-disk DEPRECATION_WARNING 警告 (pr#19478, Kefu Chai)
tests: qa/standalone: 提取 delete_pool() (pr#20634, Kefu Chai)
tests: qa/standalone: 杂项修复 (issue#20465, issue#20921, pr#16709, David Zafman)
tests: qa/standalone/mon/misc.sh: 添加 osdmap-prune 测试 (issue#23621, pr#21318, Brad Hubbard)
tests: qa/standalone/osd/osd-mark-down: 创建池以更快地获取更新的 osdmap (pr#18191, huangjun)
tests: qa/standalone: 移除 osd-map-max-advance 相关测试 (issue#22596, pr#19816, Kefu Chai)
tests: qa/standalone: 尊重 $TEMPDIR (pr#17747, Kefu Chai)
tests: qa/standalone/scrub/osd-scrub-repair.sh: 将 extents 标志添加到 object_info_t (issue#21618, pr#18094, xie xingguo)
tests: qa/standalone/scrub/osd-scrub-repair.sh: 移除 omap_digest 标志 (pr#18150, xie xingguo, Sage Weil)
tests: qa/standalone: s/delete_erasure_pool/delete_erasure_coded_pool/ (pr#20667, Kefu Chai)
tests: qa: 停止测试已弃用的“ceph osd create” (issue#21993, pr#18659, Kefu Chai)
tests: qa/suites: 添加最小性能套件 (pr#21104, Neha Ojha)
tests: qa/suites/cephmetrics: 新版本更新 (pr#21146, Zack Cerza)
tests: qa/suites: 更改 fixed-2.yaml 用户以获取 4 个 openstack 磁盘 (pr#16873, Sage Weil)
tests: qa/suites: mds.0 -> mds.a (pr#20848, Sage Weil)
tests: qa/suites/rados: 禁用 scrub backoff (issue#23578, pr#21295, Brad Hubbard)
tests: qa/suites/rados/mgr/tasks/dashboard: 添加 MDS_ALL_DOWN 到白名单 (pr#21549, Ricardo Dias)
tests: qa/suites/rados/mgr/tasks/dashboard_v2: 添加 fail_on_skip = false (pr#20925, Ricardo Dias)
tests: qa/suites/rados/multimon: 将 mgr down 与时钟偏差测试列入白名单 (pr#16996, Sage Weil)
tests: qa/suites/rados/singleton: 更多白名单 (pr#19225, Kefu Chai)
tests: qa/suites/rados/thrash-old-clients: ms_type=simple (issue#23922, pr#21739, Kefu Chai)
tests: qa/suites/rados/upgrade/jewel-x-singleton: 容忍宽松的 past_intervals (pr#17293, Kefu Chai)
tests: qa/suites/rest/basic/tasks/rest_test: 更多白名单 (issue#21425, pr#17794, huangjun)
tests: qa/suites/rest/basic/tasks/rest_test: 将 OSD_DOWN 列入白名单 (issue#21425, pr#18144, huangjun)
tests: qa/suites/upgarde/jewel-x/parallel: 容忍 mgr 警告 (pr#17203, Sage Weil)
tests: qa/suites/upgarde/jewel-x/point-to-point-x: 禁用应用警告 (pr#16947, Sage Weil)
tests: qa/suites: 将 SLOW_OPS 列入白名单 (issue#23495, pr#21324, Kefu Chai)
tests: qa/tasks: 为 wait for pg clean 任务添加默认超时 (pr#21313, Vasu Kulkarni)
tests: qa/tasks/ceph_deploy: 在 mgr 部署之前收集密钥 (pr#17224, Sage Weil)
tests: qa/tasks/ceph_manager: 在复活的 osd 上使用 set_config (pr#20901, Neha Ojha)
tests: qa/tasks/mgr/dashboard: 修复登录过早过期的问题 (pr#21021, Sebastian Wagner)
tests: qa/tasks: 将 revive_osd() 超时延长至 6 分钟 (issue#21474, pr#17902, Kefu Chai)
tests: qa/tasks: 将 revive_osd() 超时延长至 6 分钟 (issue#21474, pr#19024, Kefu Chai)
tests: qa/tasks: 使用 CBT 任务运行 cosbench (pr#21656, Neha Ojha)
tests: qa/tasks: 更新 ceph-deploy 任务以使用较新的 ceph-volume 语法 (pr#19244, Vasu Kulkarni)
tests: qa/tests: 由于上游更改,添加了其他必需的 ceph-ansible 变量 (pr#17757, Vasu Kulkarni)
tests: qa/tests: 添加 ceph-deploy 升级测试 (issue#20950, pr#16826, Vasu Kulkarni)
tests: qa/tests: 添加 openstack 卷信息 + ceph-volume 的 lvs (pr#20243, Vasu Kulkarni)
tests: qa/tests: 修复由于无效远程名称导致的 get_system_type 失败 (pr#17650, Vasu Kulkarni)
tests: qa/tests: 修复 systemd 测试的 rbd 池创建 (pr#17536, Vasu Kulkarni)
tests: [qa/tests]: 杂项 ceph-ansible 修复和更新 (pr#17096, Vasu Kulkarni)
tests: qa/tests/rados: 移除不支持的 2-size-1-min-size 配置 (pr#17576, Vasu Kulkarni)
tests: qa/tests: 为单节点测试使用 ceph-deploy 稳定分支 (pr#20979, Vasu Kulkarni)
tests: qa/tests: smoke 套件的各种白名单 (issue#21376, pr#17680, Vasu Kulkarni)
tests: qa/tests: 进行中的 ceph deploy 升级 (pr#17651, Vasu Kulkarni)
tests: qa/workunits/rados/test_large_omap_detection: 清理 PGs 而不是 OSDs (pr#21410, Brad Hubbard)
tests: qa/workunits: 消除 ceph-disk 测试的 py 警告 (issue#22154, pr#19075, Kefu Chai)
tests: rados: 在 ceph_perf_msgr_client 中复制 payload (issue#22100, pr#18862, Jeegn Chen)
tests: rados: 初始化成员类 StriperTest (pr#16843, amitkuma)
tests: 移除 TestPGLog ASSERT_DEATH 测试 (issue#23504, pr#21117, Nathan Cutler)
tests: run-standalone.sh 改进错误消息 (pr#17093, David Zafman)
tests: run-standalone.sh 如果已设置,则跳过 core_pattern (pr#17098, David Zafman)
tests: test/admin_socket_output: 添加 --vstart=path/to/asok 选项 (pr#20371, Kefu Chai)
tests: test/admin_socket_output: 更好的错误报告 (pr#20409, Brad Hubbard)
tests: test/admin_socket_output: 切换到 std::experimental::filesystem (pr#20307, Kefu Chai)
tests: test/ceph_test_objectstore: 使设置更新和恢复更不容易出错 (pr#21145, Igor Fedotov)
tests: test: 检查 creat() 的负返回值 (pr#18090, amitkuma)
tests: test/CMakeLists: 禁用 test_pidfile.sh (issue#20975, pr#16977, Sage Weil)
tests: test/CMakeLists: 禁用 test-pidfile.sh (pr#17401, Sage Weil)
tests: test/coredumpctl: 支持 freebsd (pr#17447, Kefu Chai)
tests: test/dashboard: 硬编码 .coverage 路径以解决 tox 错误 (pr#21485, Kefu Chai)
tests: test/dashboard: 使用 tox.ini 指定工作目录 (issue#23709, pr#21416, Kefu Chai)
tests: test: 使用 EXPECT_DEATH 时不要转储核心 (pr#17390, Kefu Chai)
tests: test/fio: 扩展 fio 对象存储插件以更好地模拟 OSD 行为 (pr#19101, Igor Fedotov)
tests: test/fio: 修复 fio_ceph_objectstore 插件的构建 (pr#18332, Radoslaw Zarzynski)
tests: test: 修复并启用 test_pidfile.sh (issue#20770, pr#16987, David Zafman)
tests: test: 修复 ceph-objectstore-tool 用法检查 (pr#17785, David Zafman)
tests: test: 修复 misc fiemap 测试 (issue#21716, pr#18240, Kefu Chai, Ning Yao)
tests: test: *comp_racing_read 类 CopyFromOp 的初始化 (pr#17369, Amit Kumar)
tests: test: 初始化 ChunkReadOp 成员 (pr#19334, amitkuma)
tests: test/journal: 初始化成员变量 m_work_queue (pr#17089, amitkuma)
tests: test/librados: 对定时锁测试更宽容 (issue#20086, pr#20161, Kefu Chai)
tests: test/librados: 增加 pgp_num 和 pg_num (issue#23763, pr#21555, Kefu Chai)
tests: test/librados: s/invoke_result_t/result_of_t/ (pr#20379, Kefu Chai)
tests: test/librados_test_stub: 将快照上下文传递给零操作 (pr#17186, Mykola Golub)
tests: test/log: 修复 libc++ 崩溃问题 (pr#20233, Casey Bodley)
tests: test: 通过将代码移出循环使其更清晰 (pr#20759, David Zafman)
tests: test/objectstore/test_bluefs: 清理 (pr#17909, Kefu Chai)
tests: test: 仅在 dashboard_v2 启用时测试 (pr#20777, Willem Jan Withagen)
tests: test: 仅测试启用的 python 绑定 (pr#21293, Kefu Chai)
tests: test/osd: 在 WeightedTestGenerator 中初始化非静态类成员 (pr#15922, Jos Collin)
tests: test/osd: 非静态类成员未在 UnsetRedirectOp 中初始化 (pr#15921, Jos Collin)
tests: test/osd: 消除 -Wsign-compare 的警告 (pr#17027, Jos Collin)
tests: test: 将新的 BlueStore 测试放在 ifdef WITH_BLUESTORE 中 (pr#20576, Willem Jan Withagen)
tests: test:qa:infra - 每日运行更新并使用 bash (pr#21218, David Galloway)
tests: test:qa:infra - 截至 2018 年 3 月 27 日的 teuthology crontab 项 (pr#21075, Yuri Weinstein)
tests: test: 减少降级 PG 的几率 (issue#22711, pr#20046, Kefu Chai)
tests: test: 在 distro detect test 中移除 distro_version assert (pr#21052, Shengjing Zhu)
tests: test: 用 printf 命令替换 bc 命令 (pr#21013, David Zafman)
tests: test: 消除 -Wsign-compare 的警告 (pr#17790, Jos Collin)
tests: test: 消除 -Wsign-compare 的警告 (pr#17962, Jos Collin)
tests: tests - 将对“centos 7.3”的请求替换为 centos_latest (pr#19262, Yuri Weinstein)
tests: test/store_test: 修复由于 Sequencer 移除导致的 FTBFS (pr#20382, Kefu Chai)
tests: test/store_test: 更新 Many4KWritesTest* 测试用例以… 结束 (pr#20230, Igor Fedotov)
tests: test/throttle: 杀死测试 Throttle 类的 dtor 的测试 (pr#17442, Kefu Chai)
tests: test/unittest_bufferlist: 检查系统调用的返回值 (pr#18238, Kefu Chai)
tests: test/unittest_pg_log: 消除 gcc 警告 (pr#17328, Kefu Chai)
tests: test: 以兼容方式使用 jq 并便于差异分析 (pr#21450, David Zafman)
tests: test: 白名单更正 (pr#22167, David Zafman)
tests,tools: crushtool: 将错误消息打印到 stderr 而不是 dout(1) (issue#21758, pr#18242, Kefu Chai)
tests: unittest_crypto: 不超过 getentropy 的限制 (pr#18505, Brad Hubbard)
tests: vstart: 修复没有 ceph.conf 时初始启动问题 (pr#21019, Jianpeng Ma)
这一天终于来了! (pr#19657, Adam C. Emerson)
tools: 在 service_daemon::AttributeType 中对齐 uint64_t 的使用 (pr#16938, James Page)
tools: ceph-disk: 擦除 110MB 以清除现有 bluestore (issue#22354, pr#20400, Kefu Chai)
tools: ceph-disk: 修复 ceph-osd 服务遗漏“--runtime”的问题 (issue#21498, pr#17904, Carl Xiong)
tools: ceph-disk: 修复调用 major 时有符号整数大于最大值的问题 (pr#19196, Song Shun)
tools: ceph-disk: 在异常中包含失败命令的输出 (pr#20497, Kefu Chai)
tools: ceph-disk: 当指定磁盘时,错误消息更精确 (pr#18018, Kefu Chai)
tools: ceph-disk: 减少 activate_lock 的范围 (pr#20114, zhaokun)
tools: ceph-disk: 在 OSError 上重试 (issue#21728, pr#18162, Kefu Chai)
tools: ceph-disk: 激活时解锁所有分区 (pr#17363, Kefu Chai)
tools: ceph-disk: 将日志写入 /var/log/ceph 而不是 /var/run/ceph (pr#18375, Kefu Chai)
tools: ceph: 修复“tell
.*”命令 (issue#21230, pr#17463, Kefu Chai) tools: ceph-kvstore-tool: 使其更友好一些 (pr#21477, Sage Weil)
tools: ceph-kvstore-tool: 使用 unique_ptr<> 管理 bluestore 的生命周期 (pr#18221, Kefu Chai)
tools: ceph-objectstore-tool: 添加选项“dump-import”以检查导出 (issue#22086, pr#19368, David Zafman)
tools: ceph-objectstore-tool: 修复 set-size 以在更改…时清除 data_digest (pr#18885, David Zafman)
tools: ceph-objectstore-tool: “$OBJ get-omaphdr”和“$OBJ list-omap”扫描所有 pgs 而不是使用特定 pg (issue#21327, pr#17985, David Zafman)
tools: ceph-objectstore-tool: 跳过具有生成版本的对象 (pr#18507, huangjun)
tools: ceph-syn: 消除 clang 分析器警告 (pr#18577, Kefu Chai)
tools: ceph-volume: 使用带分隔符的 CLI 输出解析器而不是 JSON (pr#17097, Alfredo Deza)
tools: cleanup: 移除 ceph-rest-api (issue#21264, issue#22457, pr#17530, Nathan Cutler)
tools: 正确的总大小格式化 (pr#21641, Zheng Yin)
tools: crushtool: 添加 --add-bucket 和 --move 选项 (pr#20183, Kefu Chai)
tools: FreeBSD 基本 getopt 不使用 --options (pr#21148, Willem Jan Withagen)
tools: *server, command 变量的初始化 (pr#17135, amitkuma)
tools: 使 rados get/put/append 命令帮助文本清晰 (issue#22958, pr#20363, lvshuhua)
tools: 修改“rados df”标题的对齐方式 (pr#17549, iliul)
tools: rados 添加 cli 选项以清除 omap 键 (issue#22255, pr#19180, Abhishek Lekshmanan)
tools: rados/tool: 修复 rados stat 命令提示 (pr#16983, huanwen ren)
tools: script: build-integration-branch: 避免 Unicode 错误 (issue#24003, pr#21918, Nathan Cutler)
tools: script: ceph-release-notes: 修复 split_component 的小问题 (pr#16605, Abhishek Lekshmanan)
tools: hinfo_key 错误的特殊 scrub 处理 (issue#23428, issue#23364, pr#20947, David Zafman)
tools: src/vstart.sh: FreeBSD 默认 os 为 filestore (pr#17454, xie xingguo)
tools: tools/ceph-conf: 以纯文本或 json 格式转储解析的配置 (issue#21862, pr#18350, Piotr Dałek)
tools: tools/ceph_monstore_tool: 在初始 paxos epoch 中包含 mgrmap (issue#22266, pr#19780, Kefu Chai)
tools: tools/ceph_monstore_tool: 也重建初始 mgrmap (issue#22266, pr#19238, Kefu Chai)
tools: tools/ceph-objectstore-tool: 裁剪 pg 日志的命令 (issue#23242, pr#20786, Josh Durgin, David Zafman)
tools: tools/ceph_objectstore_tool: 修复“dup”无法复制元 PG 的问题 (pr#17572, xie xingguo)
tools: tools/rados: 改进 ls 命令的使用 (pr#21553, Li Wang)
tools: tools: rados: 使 -f 成为 --format 以与 ceph 工具保持一致 (issue#15904, pr#20147, Nathan Cutler)
tools: tools/rados: 在 rados bench 中使用单调时钟 (issue#21375, pr#18588, Mohamad Gebai)
tools: 为 fsmap, mgrmap 更新 monstore 工具 (issue#21577, pr#18005, John Spray)
tools: 使用 --no-mon-config 以免 ceph_objectstore_tool.py 测试挂起 (pr#21274, David Zafman)
tools: vstart.sh: 将 rgw 配置移至 client.rgw 部分 (pr#18331, Yan Jun)
tools: vstart.sh: 默认 osd 对象存储后端使用 bluestore (pr#17100, mychoxin)
vstart: 修复选项(由于引号)并允许禁用仪表板 (issue#23345, pr#20986, Joao Eduardo Luis)
- arch/arm: 仅当构建主机支持 crc32cx 时才设置 ceph_arch_aarch64_crc32 (issue#19705, pr#17420, Kefu Chai)
