v14.2.0 Nautilus 发布

TheAnalyst

我们很高兴地宣布 Nautilus v14.2.0 稳定系列的首个版本发布。相较于上一个 Ceph 版本,各个组件都有很多变化,我们建议所有人仔细阅读发行说明和升级说明。

与 Mimic 相比的主要变化

  • Dashboard:

    Ceph Dashboard 获得了许多新功能

    • 支持多用户/角色
    • 用于用户认证的 SSO (SAMLv2)
    • 审计支持
    • 新的登录页面,显示更多指标和健康信息
    • I18N 支持
    • 使用 Swagger API 的 REST API 文档

    新的 Ceph 管理功能包括

    • OSD 管理(标记为down/out,更改 OSD 设置,恢复配置文件)
    • 集群配置设置编辑器
    • Ceph 池管理(创建/修改/删除)
    • ECP 管理
    • RBD 镜像配置
    • 嵌入式 Grafana Dashboard(源自 Ceph Metrics)
    • CRUSH map 查看器
    • NFS Ganesha 管理
    • iSCSI 目标管理(通过 ceph-iscsi)
    • RBD QoS 配置
    • Ceph Manager (ceph-mgr) 模块管理
    • Prometheus 警报管理

    此外,Ceph Dashboard 现在被拆分为一个名为 ceph-mgr-dashboard 的独立包。如果您的包管理软件在安装 ceph-mgr 时未能安装它,您可能需要单独安装它。

  • RADOS:

    • 现在可以随时减少每个池的 placement groups (PGs) 数量,并且集群可以根据集群利用率或管理员提示自动调整 PG 数量
    • 新的 v2 有线协议带来了有线加密支持。
    • OSD 和 Monitor 守护程序使用的物理存储设备现在由集群跟踪,并附带健康指标(即 SMART),集群可以应用预训练的预测模型或基于云的预测服务来警告预期的 HDD 或 SSD 故障。
    • OSD 守护程序的 NUMA 节点可以通过 ceph osd numa-status 命令轻松监控,并通过 osd_numa_node 配置选项进行配置。
    • 使用 BlueStore OSD 时,空间利用率现在按对象数据、omap 数据和内部元数据进行细分,按池划分,并按压缩前和压缩后大小划分。
    • OSD 在执行恢复和回填时更有效地优先处理最重要的 PG 和对象。
    • 长时间运行的后台进程(例如设备故障后的恢复)的进度现在作为 ceph status 的一部分报告。
    • 增加了一个实验性的 Coupled-Layer “Clay” 纠删码插件,可减少大多数恢复操作所需的网络带宽和 IO。
  • RGW:

    • S3 存储类别分层的生命周期转换。
    • 新的 web 前端 (Beast) 取代了 civetweb 作为默认设置,提高了整体性能。
    • 新的发布/订阅基础设施允许 RGW 将事件馈送到 knative 等无服务器框架或 Kafka 等数据管道。
    • 一系列身份验证功能,包括使用 OAuth2 和 OpenID::connect 的 STS 联合,以及 OPA (Open Policy Agent) 身份验证委托原型。
    • 新的归档区域联合功能可以完整保留单独区域中的所有对象(包括历史记录)。
  • CephFS:

    • 对于具有大缓存和大量 RAM 的长时间运行的客户端,MDS 稳定性得到了极大改善。缓存修剪和客户端能力回收现在受到限制,以防止 MDS 过载。
    • 现在可以通过 Rook 管理的环境中的 NFS-Ganesha 集群导出 CephFS。Ceph 管理集群并确保高可用性和可扩展性。提供了一个入门演示。预计 Nautilus 的未来次要版本将提供更多此功能的自动化。
    • MDS mds_standby_for_*mon_force_standby_activemds_standby_replay 配置选项已过时。相反,操作员现在可以设置 CephFS 文件系统上的新 allow_standby_replay 标志。此设置会导致备用 MDS 成为文件系统中任何可用级别的 standby-replay。
    • MDS 现在支持丢弃其缓存,同时要求客户端修剪其缓存。这是通过使用 MDS admin socket cache drop 命令完成的。
    • 现在可以在 MDS 中检查正在进行的 scrub 进度。此外,可以暂停或中止 scrub。有关更多信息,请参阅 scrub 文档
    • 通过 ceph volume 命令行界面提供了用于创建卷的新接口。
    • 提供了一个新的 cephfs-shell 工具,用于在不挂载的情况下操作 CephFS 文件系统。
    • ceph status 中与 CephFS 相关的输出已重新格式化,以求简洁、清晰和实用。
    • Lazy IO 已 revamped。客户端可以使用新的 CEPH_O_LAZY 标志通过 ceph_open C/C++ API 或通过配置选项 client_force_lazyio 启用它。
    • 现在可以通过 ceph fs fail 命令快速关闭 CephFS 文件系统。有关更多信息,请参阅 管理页面
  • RBD:

    • 可以实时迁移映像,停机时间最短,以协助在池之间移动映像或移动到新布局。
    • 新的 rbd perf image iotoprbd perf image iostat 命令为所有 RBD 映像提供了类似 iotop 和 iostat 的 IO 监视器。
    • ceph-mgr Prometheus 导出器现在可选地包含所有 RBD 映像的 IO 监视器。
    • 支持池内用于租户隔离的独立映像命名空间。
  • 杂项:

    • Ceph 有一套新的编排器模块,可以通过一致的 CLI(并最终通过 Dashboard)接口直接与 ceph-ansible、DeepSea、Rook 或简单的 ssh 等外部编排器进行交互。

从 Mimic 或 Luminous 升级

说明

  • 在从 Luminous 升级到 Nautilus 期间,在 monitor 升级到 Nautilus 后,将无法使用 Luminous ceph-osd 守护程序创建新的 OSD。我们建议您在升级过程中避免添加或替换任何 OSD。
  • 我们建议您在升级过程中避免创建任何 RADOS 池。
  • 您可以使用 ceph versions 命令在每个阶段监控升级进度,该命令将告诉您正在运行的 ceph 版本以及每种守护程序的版本。

说明

  1. 如果您的集群最初是在 Luminous 之前的版本中安装的,请确保它在运行 Luminous 时至少完成了一次所有 PG 的完整 scrub。否则,您的 monitor 守护程序将在启动时拒绝加入仲裁,使其无法正常运行。

    如果您不确定您的 Luminous 集群是否已完成所有 PG 的完整 scrub,您可以通过运行以下命令检查集群状态

    # ceph osd dump | grep ^flags

    为了能够继续升级到 Nautilus,您的 OSD map 必须包含 recovery_deletespurged_snapdirs 标志。

    如果您的 OSD map 不包含这两个标志,您可以简单地等待大约 24-48 小时,这在标准集群配置中应该有足够的时间让所有 placement groups 至少 scrub 一次,然后重复上述过程重新检查。

    但是,如果您刚刚完成对 Luminous 的升级并希望在短时间内继续升级到 Mimic,您可以使用一行 shell 命令强制对所有 placement groups 进行 scrub,例如

    # ceph pg dump pgs_brief | cut -d " " -f 1 | xargs -n1 ceph pg scrub

    您应该考虑到这种强制 scrub 可能会对您的 Ceph 客户端性能产生负面影响。

  2. 确保您的集群稳定且健康(没有 down 或正在恢复的 OSD)。(可选,但推荐。)

  3. 在升级期间设置 noout 标志。(可选,但建议这样做。)

    # ceph osd set noout

  4. 通过安装新软件包并重新启动监视器守护程序来升级监视器。例如,在每个监视器主机上,

    # systemctl restart ceph-mon.target

    一旦所有 monitor 都启动,通过在 mon map 中查找 nautilus 字符串来验证 monitor 升级是否完成。命令

    # ceph mon dump | grep min_mon_release

    应报告

    min_mon_release 14 (nautilus)

    如果不是,则意味着一个或多个 monitor 尚未升级和重新启动和/或仲裁不包括所有 monitor。

  5. 通过安装新软件包并重新启动所有管理器守护程序来升级 ceph-mgr 守护程序。例如,在每个管理器主机上,

    # systemctl restart ceph-mgr.target

    请注意,如果您正在使用 Ceph Dashboard,您可能需要在升级 ceph-mgr 包之后单独安装 ceph-mgr-dashboardceph-mgr-dashboard 的安装脚本将自动为您重新启动 manager 守护程序。因此,在这种情况下,您可以跳过重新启动守护程序的步骤。

    通过检查 ceph -s 验证 ceph-mgr 守护程序是否正在运行

    # ceph -s

    ... services: mon: 3 daemons, quorum foo,bar,baz mgr: foo(active), standbys: bar, baz ...

  6. 通过安装新软件包并在所有 OSD 主机上重新启动 ceph-osd 守护程序来升级所有 OSD

    # systemctl restart ceph-osd.target

    可以使用 ceph versionsceph osd versions 命令监控 OSD 升级的进度

    # ceph osd versions { "ceph version 13.2.5 (...) mimic (stable)": 12, "ceph version 14.2.0 (...) nautilus (stable)": 22, }

  7. 如果集群中存在任何使用 ceph-disk 部署的 OSD(例如,几乎所有在 Mimic 发布之前创建的 OSD),您需要告知 ceph-volume 承担启动守护程序的责任。在包含 OSD 的每台主机上,确保 OSD 当前正在运行,然后

    # ceph-volume simple scan # ceph-volume simple activate --all

    我们建议在完成此步骤后重新启动每个 OSD 主机,以验证 OSD 是否自动启动。

    请注意,ceph-volume 没有 ceph-disk 相同的热插拔功能,即通过 udev 事件自动检测新连接的磁盘。如果在运行上述 scan 命令时 OSD 未在运行,或者基于 ceph-disk 的 OSD 已移动到新主机,或者主机 OSD 已重新安装,或者 /etc/ceph/osd 目录丢失,您需要显式扫描每个 ceph-disk OSD 的主数据分区。例如,

    # ceph-volume simple scan /dev/sdb1

    输出将包含适当的 ceph-volume simple activate 命令以启用 OSD。

  8. 升级所有 CephFS MDS 守护程序。对于每个 CephFS 文件系统,

    1. 将 ranks 数量减少到 1。(如果您计划稍后恢复它,请先记下原始 MDS 守护程序数量。)

      # ceph status # ceph fs set <fs_name> max_mds 1

    2. 定期检查状态,等待集群停用任何非零 ranks

      # ceph status

    3. 使用以下命令在适当的主机上关闭所有 standby MDS 守护程序

      # systemctl stop ceph-mds@<daemon_name>

    4. 确认只有一个 MDS 在线,并且它是您的 FS 的 rank 0

      # ceph status

    5. 通过安装新软件包并重新启动守护程序来升级最后一个剩余的 MDS 守护程序

      # systemctl restart ceph-mds.target

    6. 重新启动所有已关闭的 standby MDS 守护程序

      # systemctl start ceph-mds.target

    7. 恢复卷的原始 max_mds

      # ceph fs set <fs_name> max_mds <original_max_mds>

  9. 通过升级软件包并在所有主机上重新启动守护程序来升级所有 radosgw 守护程序

    # systemctl restart radosgw.target

  10. 通过禁止 pre-Nautilus OSD 并启用所有新的仅 Nautilus 功能来完成升级

    # ceph osd require-osd-release nautilus

  11. 如果您在开始时设置了 noout,请务必使用以下命令清除它

    # ceph osd unset noout

  12. 使用 ceph health 验证集群是否正常。

  13. 要启用新的 v2 网络协议,请发出以下命令

    ceph mon enable-msgr2

    这将指示绑定到旧默认端口 6789 以进行旧 v1 协议的所有监视器也绑定到新的 3300 v2 协议端口。要查看是否已更新所有监视器,

    ceph mon dump

    并验证每个监视器是否都列出了 v2:v1: 地址。

  14. 对于每个已升级的主机,您应该更新 ceph.conf 文件,使其要么不指定 monitor 端口(如果您在默认端口上运行 monitor),要么显式引用 v2 和 v1 地址和端口。如果只列出 v1 IP 和端口,一切仍然可以正常工作,但每个 CLI 实例化或守护程序都需要在得知 monitor 也使用 v2 协议后重新连接,这会使速度变慢,并阻止完全过渡到 v2 协议。

    这也是将 ceph.conf 中的所有配置选项完全过渡到集群配置数据库的好时机。在每台主机上,您可以使用以下命令将所有选项导入 monitor:

    ceph config assimilate-conf -i /etc/ceph/ceph.conf

    您可以使用以下命令查看集群的配置数据库:

    ceph config dump

    要为每台主机生成一个最小但足够的 ceph.conf

    ceph config generate-minimal-conf > /etc/ceph/ceph.conf

    请务必仅在已升级到 Nautilus 的主机上使用此新配置,因为它可能包含 mon_host 值,其中包括新的 v2:v1: IP 地址前缀,这些前缀只能被 Nautilus 理解。

    有关更多信息,请参阅 更新 ceph.conf 和 mon_host

  15. 考虑启用遥测模块以将匿名使用统计信息和崩溃信息发送给 Ceph 上游开发人员。要查看将报告的内容(实际上不向任何人发送任何信息),

    ceph mgr module enable telemetry ceph telemetry show

    如果您对报告的数据感到满意,可以使用以下命令选择自动报告高级集群元数据

    ceph telemetry on

    有关遥测模块的更多信息,请参阅文档。

从 pre-Luminous 版本(如 Jewel)升级

在尝试升级到 Nautilus 之前,您必须首先升级到 Luminous (12.2.z)。此外,您的集群必须在运行 Luminous 时至少完成了一次所有 PG 的 scrub,并在 OSD map 中设置了 recovery_deletespurged_snapdirs 标志。

升级兼容性说明

这些变化发生在 Mimic 和 Nautilus 版本之间。

  • ceph pg stat 输出的 json 格式已修改为匹配 ceph df 输出

    • “raw_bytes” 字段重命名为 “total_bytes”

    • “raw_bytes_avail” 字段重命名为 “total_bytes_avail”

    • “raw_bytes_avail” 字段重命名为 “total_bytes_avail”

    • “raw_bytes_used” 字段重命名为 “total_bytes_raw_used”

    • 添加了“total_bytes_used”字段,用于表示纯粹分配给保留在 block(slow) 设备上的数据对象空间(在所有 OSD 上累积)

      在 block(slow) 设备上保留的

  • ceph df [detail] 输出(GLOBAL 部分)的纯文本格式已修改

    • 新列“USED”显示纯粹分配给保留在 block(slow) 设备上的数据对象空间(在所有 OSD 上累积)。

    • “RAW USED”现在是“USED”空间和分配/保留在 block 设备上的 Ceph 用途空间(例如 BlueStore 的 BlueFS 部分)的总和。

      block device for Ceph purposes, e.g. BlueFS part for BlueStore.

  • ceph df [detail] 输出(GLOBAL 部分)的 json 格式已修改

    • ‘total_used_bytes’ 列现在显示纯粹分配给保留在 block(slow) 设备上的数据对象空间(在所有 OSD 上累积)
    • 新列“total_used_raw_bytes”显示“USED”空间和分配/保留在 block 设备上的 Ceph 用途空间(例如 BlueStore 的 BlueFS 部分)的总和。
  • ceph df [detail] 输出(POOLS 部分)的纯文本格式已修改

    • “BYTES USED”列重命名为“STORED”。表示用户存储的数据量。
    • “USED”列现在表示所有 OSD 节点纯粹分配给数据空间量(以 KB 为单位)。
    • 在非详细模式下不再显示“QUOTA BYTES”和“QUOTA OBJECTS”。
    • 新列“USED COMPR” - 分配给压缩数据的空间量。即压缩数据加上所有分配、复制和纠删码开销。
    • 新列“UNDER COMPR” - 经过压缩(在所有副本上求和)并且足够有益以压缩形式存储的数据量。
    • 一些列重新排序
  • ceph df [detail] 输出(POOLS 部分)的 json 格式已修改

    • ‘bytes used’ 列重命名为 ‘stored’。表示用户存储的数据量。

    • ‘raw bytes used’ 列重命名为“stored_raw”。所有 OSD 上的用户数据总和,不包括降级。

      over all OSD excluding degraded.

    • 新列“bytes_used”现在表示所有 OSD 节点分配的空间量。

    • ‘kb_used’ 列 - 与‘bytes_used’相同,但以 KB 为单位。

    • 新列“compress_bytes_used” - 分配给压缩数据的空间量。即压缩数据加上所有分配、复制和纠删码开销。

    • 新列“compress_under_bytes” - 经过压缩(在所有副本上求和)并且足够有益以压缩形式存储的数据量。

  • rados df [detail] 输出(POOLS 部分)的纯文本格式已修改

    • “USED”列现在显示纯粹分配给保留在 block(slow) 设备上的数据对象空间(在所有 OSD 上累积)。
    • 新列“USED COMPR” - 分配给压缩数据的空间量。即压缩数据加上所有分配、复制和纠删码开销。
    • 新列“UNDER COMPR” - 经过压缩(在所有副本上求和)并且足够有益以压缩形式存储的数据量。
  • rados df [detail] 输出(POOLS 部分)的 json 格式已修改

    • “size_bytes”和“size_kb”列现在显示纯粹分配给保留在 block 设备上的数据对象空间(在所有 OSD 上累积)。
    • 新列“compress_bytes_used” - 分配给压缩数据的空间量。即压缩数据加上所有分配、复制和纠删码开销。
    • 新列“compress_under_bytes” - 经过压缩(在所有副本上求和)并且足够有益以压缩形式存储的数据量。
  • ceph pg dump 输出(totals 部分)的 json 格式已修改

    • 新列“USED”显示纯粹分配给保留在 block(slow) 设备上的数据对象空间(在所有 OSD 上累积)。
    • ‘USED_RAW’现在是‘USED’空间和分配/保留在 block 设备上的 Ceph 用途空间(例如 BlueStore 的 BlueFS 部分)的总和。
  • ceph osd rm 命令已弃用。用户应使用 ceph osd destroyceph osd purge(但在首先通过 ceph osd safe-to-destroy 命令确认安全后)。

  • MDS 现在支持丢弃其缓存以进行基准测试。

    ceph tell mds.* cache drop <timeout>

    请注意,MDS 缓存由客户端协作管理。客户端必须放弃功能,MDS 才能完全丢弃其缓存。这是通过要求所有客户端修剪尽可能多的 cap 来实现的。cache drop 命令的 timeout 参数控制 MDS 等待客户端完成修剪 cap 的时间。这是可选的,默认为 0(无超时)。请记住,客户端可能仍保留打开文件的 cap,这将阻止客户端和 MDS 丢弃这些文件的元数据。(这类似于丢弃 Linux page/buffer/inode/dentry 缓存,其中某些进程将某些 inode/dentries/pages 固定在缓存中的情况。)

  • mon_health_preluminous_compatmon_health_preluminous_compat_warning 配置选项已删除,因为相关功能已超过两个版本。任何期望 Jewel 风格健康输出的旧监控系统都需要更新以使用 Nautilus。

  • Nautilus 不支持任何仍运行 upstart 的发行版,因此已删除 upstart 特定的文件和引用。

  • ceph pg <pgid> list_missing 命令已重命名为 ceph pg <pgid> list_unfound,以更好地匹配其行为。

  • rbd-mirror 守护程序现在可以从 monitor 检索远程对等集群配置密钥。要使用此功能,本地集群的 rbd-mirror 守护程序 CephX 用户必须使用 profile rbd-mirror mon cap。可以使用 rbd mirror pool peer addrbd mirror pool peer set 操作设置密钥。

  • ‘rbd-mirror’ 守护程序现在默认以 active/active 模式运行,其中镜像映像在所有活动的 ‘rbd-mirror’ 守护程序之间平均分配。要恢复到 active/passive 模式,请将 ‘rbd_mirror_image_policy_type’ 配置键覆盖为 ‘none’。

  • ceph mds deactivate 已完全过时,文档中对其的引用已被删除或澄清。

  • libcephfs 绑定添加了 ceph_select_filesystem 函数,用于多个文件系统。

  • cephfs python 绑定现在在 mount() 函数中包含 mount_rootfilesystem_name 选项。

  • 纠删码:添加了实验性的 Coupled LAYer (CLAY) 纠删码支持。它具有更少的网络流量和磁盘 I/O,同时执行恢复。

  • 添加了 cache drop OSD 命令以丢弃 OSD 的缓存

    • ceph tell osd.x cache drop
  • 添加了 cache status OSD 命令以获取 OSD 的缓存统计信息

    • ceph tell osd.x cache status
  • libcephfs 添加了几个函数,允许重新启动的客户端销毁或回收先前实例保留的状态。这些函数用于 NFS 服务器。

  • ceph 命令行工具现在接受 --arg=value--arg value 格式的关键字参数。

  • librados::IoCtx::nobjects_begin()librados::NObjectIterator 现在通过抛出 std::system_error 异常而不是 std::runtime_error 来传达错误。

  • 传递给 LibRGWFS.readdir() 的回调函数现在接受 flags 参数。它将是传递给 readdir() 方法的最后一个参数。

  • cephfs-data-scan scan_links 现在自动修复 inotables 和 snaptable。

  • 配置值 mon_warn_not_scrubbedmon_warn_not_deep_scrubbed 已重命名。它们现在分别是 mon_warn_pg_not_scrubbed_ratiomon_warn_pg_not_deep_scrubbed_ratio。这是为了澄清这些警告与 pg scrubbing 相关,并且是相关间隔的比率。这些选项现在默认启用。

  • MDS 缓存修剪现在受到限制。通过 ceph tell mds.<foo> cache drop 命令丢弃 MDS 缓存或大幅减少缓存大小将不再导致服务不可用。

  • CephFS MDS 在回收 cap 方面的行为已得到显著改进,不会尝试一次回收太多 cap,从而导致不稳定。具有大缓存(64GB+)的 MDS 应该更稳定。

  • MDS 现在提供一个配置选项 mds_max_caps_per_client(默认值:1M)来限制客户端会话可以保留的 cap 数量。具有大量 cap 的长时间运行的客户端会话一直是 MDS 不稳定的根源,当在某些会话事件期间需要处理所有这些 cap 时。建议不要不必要地增加此值。

  • MDS 配置 mds_recall_state_timeout 已删除。现在根据 MDS 已回收但未释放的 cap 数量生成 late client recall warnings。新的配置 mds_recall_warning_threshold(默认值:32K)和 mds_recall_warning_decay_rate(默认值:60s)设置此警告的阈值。

  • Manager 的 Telegraf 模块允许通过 TCP、UDP 或 UNIX Socket 将统计信息发送到 Telegraf Agent。Telegraf 随后可以将统计信息发送到 InfluxDB、ElasticSearch、Graphite 等数据库。

  • Graylog 字段中用于命名日志事件发起者的字段已更改:现在包含字符串形式的名称(例如,"name": "mgr.foo"),并且级别形式的名称现在位于嵌套部分(例如,"rank": {"type": "mgr", "num": 43243})。

  • 如果集群日志指向 syslog,则条目现在以字符串形式名称和级别形式名称为前缀(例如,mgr.x mgr.12345 ... 而不是仅 mgr.12345 ...)。

  • ceph osd find 命令的 JSON 输出已将 ip 字段替换为 addrs 部分,以反映 OSD 可以绑定到多个地址。

  • 其身份验证功能字符串中没有“s”标志的 CephFS 客户端将不再能够创建/删除快照。要允许 client.foo 在文件系统 cephfs_abar 目录中创建/删除快照,请使用命令

    • ceph auth caps client.foo mon 'allow r' osd 'allow rw tag cephfs data=cephfs_a' mds 'allow rw, allow rws path=/bar'
  • osd_heartbeat_addr 选项已删除,因为它没有(好的)用途:OSD 应该始终检查公共网络和集群网络上的心跳。

  • rados 工具的 mkpoolrmpool 命令已删除,因为它们是多余的;请改用 ceph osd pool createceph osd pool rm 命令。

  • cephx 用户和 RADOS 池的 auid 属性已删除。这是一个未记录且部分实现的功能,允许 cephx 用户将其功能映射到他们“拥有”的 RADOS 池。由于没有用户使用此功能,我们已将其删除。如果集群中存在任何基于 auid 限制的 cephx 功能,则它们将不再解析,并且集群将报告如下健康警告

    AUTH_BAD_CAPS 1 auth entities have invalid capabilities client.bad osd capability parse failed, stopped at 'allow rwx auid 123' of 'allow rwx auid 123'

    可以使用 ceph auth caps 命令调整该功能。例如,

    ceph auth caps client.bad osd 'allow rwx pool foo'

  • ceph-kvstore-tool repair 命令已重命名为 destructive-repair,因为我们发现它可能会损坏一个原本健康的 rocksdb 数据库。它应该仅作为从损坏的存储中恢复数据的最后尝试。

  • monitor 的默认内存利用率有所增加。Rocksdb 现在默认使用 512 MB RAM,这对于中小型集群来说应该足够了;大型集群应该调高此值。此外,mon_osd_cache_size 已从 10 个 OSDMap 增加到 500 个,这对于大型集群将转换为额外的 500 MB 到 1 GB RAM,对于小型集群则少得多。

  • mgr/balancer/max_misplaced 选项已被新的全局 target_max_misplaced_ratio 选项取代,该选项限制了平衡器活动和对 pgp_num 的自动调整(通常是由于 pg_num 更改)。如果您已自定义平衡器模块选项,则需要调整配置以设置新的全局选项或恢复为默认值 .05 (5%)。

  • 默认情况下,当存在错放对象(已完全复制但未存储在预期 OSD 上的对象)时,Ceph 不再发出健康警告。您可以通过将 mon_warn_on_misplaced 设置为 true 来重新启用旧警告。

  • ceph-create-keys 工具现已过时。monitor 会自动创建这些密钥。目前,该脚本会打印一条警告消息并退出,但将在下一个版本中删除。请注意,ceph-create-keys 还会将 admin 和 bootstrap 密钥写入 /etc/ceph 和 /var/lib/ceph,但此脚本不再执行此操作。依赖此行为的任何部署工具都应改用 ceph auth export <entity-name> 命令来获取他们需要的密钥。

  • mon_osd_pool_ec_fast_read 选项已重命名为 osd_pool_default_ec_fast_read,以便与其他影响新创建的 RADOS 池默认值的 osd_pool_default_* 选项更加一致。

  • mon addr 配置选项现已弃用。它仍可用于在 ceph.conf 文件中为每个 monitor 指定地址,但它仅影响集群创建和引导,并且不支持列出多个地址(例如,v2 和 v1 协议地址)。我们强烈建议删除该选项,而是在 [global] 部分指定单个 mon host 选项,以允许守护程序和客户端发现 monitor。

  • 添加了新命令 ceph fs fail 以快速关闭文件系统。这是一个单独的命令,用于取消设置文件系统上的 joinable 标志并关闭其所有级别。

  • cache drop admin socket 命令已删除。ceph tell mds.X cache drop 仍然存在。

详细更新日志

  • add monitoring subdir and Grafana cluster dashboard (pr#21850, Jan Fajerski)
  • auth,common: include cleanups (pr#23774, Kefu Chai)
  • bluestore: bluestore/NVMEDevice.cc: fix ceph_assert() when enable SPDK with 64KB kernel page size (issue#36624, pr#24817, tone.zhang)
  • bluestore: bluestore/NVMEDevice.cc: fix NVMEManager thread hang (issue#37720, pr#25646, tone.zhang, Steve Capper)
  • bluestore: bluestore/NVMe: use PCIe selector as the path name (pr#24144, Kefu Chai)
  • bluestore,cephfs,core,rbd,rgw: buffer,denc: use ptr::const_iterator for decode (pr#22015, Kefu Chai, Casey Bodley)
  • bluestore: ceph-kvstore-tool: dump fixes (pr#25262, Adam Kupczyk)
  • bluestore: common/blkdev: check retval of stat() (pr#26040, Kefu Chai)
  • bluestore,core: ceph-dencoder: add bluefs types (pr#22463, Sage Weil)
  • bluestore,core,mon,performance: osd,mon: enable level_compaction_dynamic_level_bytes for rocksdb (issue#24361, pr#22337, Kefu Chai)
  • bluestore,core: os/bluestore: don’t store/use path_block.{db,wal} from meta (pr#22462, Sage Weil, Alfredo Deza)
  • bluestore: os/bluestore: add bluestore_ignore_data_csum option (pr#26233, Sage Weil)
  • bluestore: os/bluestore: add boundary check for cache-autotune related settings (issue#37507, pr#25421, xie xingguo)
  • bluestore: os/bluestore/BlueFS: only flush dirty devices when do _fsync (pr#22110, Jianpeng Ma)
  • bluestore: os/bluestore: bluestore_buffer_hit_bytes perf counter doesn’t reset (pr#23576, Igor Fedotov)
  • bluestore: os/bluestore: check return value of _open_bluefs (pr#25471, Jianpeng Ma)
  • bluestore: os/bluestore: cleanups (pr#22556, Jianpeng Ma)
  • bluestore: os/bluestore: deep fsck fails on inspecting very large onodes (pr#26170, Igor Fedotov)
  • bluestore: os/bluestore: do not assert on non-zero err codes from compress() call (pr#25891, Igor Fedotov)
  • bluestore: os/bluestore: firstly delete db then delete bluefs if open db met error (pr#22336, Jianpeng Ma)
  • bluestore: os/bluestore: fix and unify log output on allocation failure (pr#25335, Igor Fedotov)
  • bluestore: os/bluestore: fix assertion in StupidAllocator::get_fragmentation (pr#23606, Igor Fedotov)
  • bluestore: os/bluestore: fix bloom filter num entry miscalculation in repairer (issue#25001, pr#24076, Igor Fedotov)
  • bluestore: os/bluestore: fix bluefs extent miscalculations on small slow device (pr#22563, Igor Fedotov)
  • bluestore: os/bluestore: fix race between remove_collection and object removals (pr#23257, Igor Fedotov)
  • bluestore: os/bluestore: fixup access a destroy cond cause deadlock or undefine behavior (pr#25659, linbing)
  • bluestore: os/bluestore: introduce new BlueFS perf counter to track the amount of (pr#22086, Igor Fedotov)
  • bluestore: os/bluestore/KernelDevice: misc cleanup (pr#21491, Jianpeng Ma)
  • bluestore: os/bluestore/KernelDevice: use flock(2) for block device lock (issue#38150, pr#26245, Sage Weil)
  • bluestore: os/bluestore: misc cleanup (pr#22472, Jianpeng Ma)
  • bluestore: os/bluestore: Only use F_SET_FILE_RW_HINT when available (pr#26431, Willem Jan Withagen)
  • bluestore: os/bluestore: Only use WRITE_LIFE_ when available (pr#25735, Willem Jan Withagen)
  • bluestore: os/bluestore: remove redundant fault_range (pr#22898, Jianpeng Ma)
  • bluestore: os/bluestore: remove useless condtion (pr#22335, Jianpeng Ma)
  • bluestore: os/bluestore: simplify and fix SharedBlob::put() (issue#24211, pr#22123, Sage Weil)
  • bluestore: os/bluestore: support for FreeBSD (pr#25608, Alan Somers, Kefu Chai)
  • bluestore: osd/osd_types: fix pg_t::contains() to check pool id too (issue#32731, pr#24085, Sage Weil)
  • bluestore: os/objectstore: add a new op OP_CREATE (pr#22385, Jianpeng Ma)
  • bluestore,performance: common/PriorityCache: First Step toward priority based caching (pr#22009, Mark Nelson)
  • bluestore,performance: os/bluestore: allocator pruning (pr#21854, Igor Fedotov)
  • bluestore,performance: os/bluestore/BlueFS: reduce bufferlist rebuilds during WAL writes (pr#21689, Piotr Dałek)
  • bluestore,performance: os/bluestore: use the monotonic clock for perf counters latencies (pr#22121, Mohamad Gebai)
  • bluestore: silence Clang warning on possible uninitialize usuage (pr#25702, Willem Jan Withagen)
  • bluestore: spdk: fix ceph-osd crash when activate SPDK (issue#24371, pr#22356, tone-zhang)
  • bluestore: test/fio: add option single_pool_mode in ceph-bluestore.fio (pr#21929, Jianpeng Ma)
  • bluestore,tests: test/objectstore: fix random generator in allocator_bench (pr#22544, Igor Fedotov)
  • bluestore,tools: os/bluestore: allow ceph-bluestore-tool to coalesce, add and migrate BlueFS backing volumes (pr#23103, Igor Fedotov)
  • bluestore,tools: tools/ceph-bluestore-tool: avoid mon/config access when calling global… (pr#22085, Igor Fedotov)
  • build/ops: Add new OpenSUSE Leap id for install-deps.sh (issue#25064, pr#22793, Kyr Shatskyy)
  • build/ops: arch/arm: Allow ceph_crc32c_aarch64 to be chosen only if it is compil… (pr#24126, David Wang)
  • build/ops: auth: do not use GSS/KRB5 if ! HAVE_GSSAPI (pr#25460, Kefu Chai)
  • build/ops: build: 32 bit architecture fixes (pr#23485, James Page)
  • build/ops: build: further removal of subman configuration (issue#38261, pr#26368, Alfredo Deza)
  • build/ops: build: LLVM ld does not like the versioning scheme (pr#26801, Willem Jan Withagen)
  • build/ops: ceph-create-keys: Misc Python 3 fixes (issue#37641, pr#25411, James Page)
  • build/ops,cephfs: deb,rpm: fix python-cephfs dependencies (issue#24919, issue#24918, pr#23043, Kefu Chai)
  • build/ops: ceph.in: Add support for python 3 (pr#24739, Tiago Melo)
  • build/ops: ceph.spec.in: Don’t use noarch for mgr module subpackages, fix /usr/lib64/ceph/mgr dir ownership (pr#26398, Tim Serong)
  • build/ops: change ceph-mgr package depency from py-bcrypt to python2-bcrypt (issue#27206, pr#23648, Konstantin Sakhinov)
  • build/ops: civetweb: pull up to ceph-master (pr#26515, Abhishek Lekshmanan)
  • build/ops: cmake,do_freebsd.sh: disable rdma features (pr#22752, Kefu Chai)
  • build/ops: cmake/modules/BuildDPDK.cmake: Build required DPDK libraries (issue#36341, pr#24487, Brad Hubbard)
  • build/ops: cmake/modules/BuildRocksDB.cmake: enable compressions for rocksdb (issue#24025, pr#22181, Kefu Chai)
  • build/ops: cmake,rgw: make amqp support optional (pr#26555, Kefu Chai)
  • build/ops: cmake,rpm,deb: install mgr plugins into /usr/share/ceph/mgr (pr#26446, Kefu Chai)
  • build/ops: cmake,seastar: pick up latest seastar (pr#25474, Kefu Chai)
  • build/ops,common: compressor: Fix build of Brotli Compressor (pr#24967, BI SHUN KE)
  • build/ops,common,core: test: make readable.sh fail if it doesn’t run anything (pr#24812, Greg Farnum)
  • build/ops,core: cmake,common,filestore: silence gcc-8 warnings/errors (pr#21837, Kefu Chai)
  • build/ops,core,rbd: include/memory.h: remove memory.h (pr#22690, Kefu Chai)
  • build/ops,core: systemd: only restart 3 times in 30 minutes, as fast as possible (issue#24368, pr#22349, Greg Farnum)
  • build/ops,core,tests: objectstore/test/fio: Fixed fio compilation when tcmalloc is used (pr#23962, Adam Kupczyk)
  • build/ops: credits.sh: Ignore package-lock.json and .xlf files (pr#24762, Tiago Melo)
  • build/ops: deb: drop redundant ceph-common recommends (pr#20133, Nathan Cutler)
  • build/ops: debian/control: change Architecture python plugins to “all” (pr#26377, Kefu Chai)
  • build/ops: debian/control: require fuse for ceph-fuse (issue#21057, pr#23675, Thomas Serlin)
  • build/ops: debian: correct ceph-common relationship with older radosgw package (pr#24996, Matthew Vernon)
  • build/ops: debian: drop ‘-DUSE_CRYPTOPP=OFF’ from cmake options (pr#22471, Kefu Chai)
  • build/ops: debian: librados-dev should replace librados2-dev (pr#25916, Kefu Chai)
  • build/ops: debian/rules: fix ceph-mgr .pyc files left behind (issue#26883, pr#23615, Dan Mick)
  • build/ops: deb,rpm,do_cmake: switch to cmake3 (pr#22896, Kefu Chai)
  • build/ops: dmclock, cmake: sync up with ceph/dmclock, dmclock related cleanups (issue#26998, pr#23643, Kefu Chai)
  • build/ops: dmclock: update dmclock submodule sha1 to tip of ceph/dmclock.git master (pr#23837, Ricardo Dias)
  • build/ops: do_cmake.sh: automate py3 build options for certain distros (pr#25205, Nathan Cutler)
  • build/ops: do_cmake.sh: SUSE builds need WITH_RADOSGW_AMQP_ENDPOINT=OFF (pr#26695, Nathan Cutler)
  • build/ops: do_freebsd.sh: FreeBSD building needs the llvm linker (pr#25247, Willem Jan Withagen)
  • build/ops: dout: declare dpp using decltype(auto) instead of auto (pr#22207, Kefu Chai)
  • build/ops: dpdk: drop dpdk submodule (issue#24032, pr#21856, Kefu Chai)
  • build/ops: examples/Makefile: add -Wno-unused-parameter to avoid compile error (pr#23581, You Ji)
  • build/ops: Improving make check reliability (pr#22441, Erwan Velu)
  • build/ops: include: define errnos if not defined for better portablity (pr#25302, Willem Jan Withagen)
  • build/ops: install-deps: check the exit status for the $builddepcmd (pr#22682, Yunchuan Wen)
  • build/ops: install-deps: do not specify unknown options (pr#24315, Kefu Chai)
  • build/ops: install-deps: install setuptools before upgrading virtualenv (pr#25039, Kefu Chai)
  • build/ops: install-deps: nuke wheelhouse if it’s stale (pr#22028, Kefu Chai)
  • build/ops: install-deps,run-make-check: use ceph-libboost repo (issue#25186, pr#23995, Kefu Chai)
  • build/ops: install-deps.sh: Add Kerberos requirement for FreeBSD (pr#25688, Willem Jan Withagen)
  • build/ops: install-deps.sh: disable centos-sclo-rh-source (issue#37707, pr#25629, Brad Hubbard)
  • build/ops: install-deps.sh: fix gcc detection and install pre-built libboost on bionic (pr#25169, Changcheng Liu, Kefu Chai)
  • build/ops: install-deps.sh: fix installing gcc on ubuntu when no old compiler (pr#22488, Tomasz Setkowski)
  • build/ops: install-deps.sh: import ubuntu-toolchain-r’s key without keyserver (pr#22964, Kefu Chai)
  • build/ops: install-deps.sh: install libtool-ltdl-devel for building python-saml (pr#25071, Kefu Chai)
  • build/ops: install-deps.sh: refrain from installing/using lsb_release, and other cleanup (issue#18163, pr#23361, Nathan Cutler)
  • build/ops: install-deps.sh: Remove CR repo (issue#13997, pr#25211, Brad Hubbard, Alfredo Deza)
  • build/ops: install-deps.sh: selectively install dependencies (pr#26402, Kefu Chai)
  • build/ops: install-deps.sh: set with_seastar (pr#23079, Nathan Cutler)
  • build/ops: install-deps.sh: support install gcc7 in xenial aarch64 (pr#22451, Yunchuan Wen)
  • build/ops: install-deps.sh: Update python requirements for FreeBSD (pr#25245, Willem Jan Withagen)
  • build/ops: install-deps.sh: use the latest setuptools (pr#26156, Kefu Chai)
  • build/ops: install-deps: s/openldap-client/openldap24-client/ (pr#23912, Kefu Chai)
  • build/ops: libradosstriper: conditional compile (pr#21983, Jesse Williamson)
  • build/ops: make-debs.sh: clean dir to allow building deb packages multiple times (pr#25177, Changcheng Liu)
  • build/ops: man: skip directive starting with “..” (pr#23580, Kefu Chai)
  • build/ops,mgr: build: mgr: check for python’s ssl version linkage (issue#24282, pr#22659, Kefu Chai, Abhishek Lekshmanan)
  • build/ops,mgr: cmake,deb,rpm: remove cython 0.29’s subinterpreter check, re-enable build with cython 0.29+ (pr#25585, Tim Serong)
  • build/ops: mgr/dashboard: Add html-linter (pr#24273, Tiago Melo)
  • build/ops: mgr/dashboard: Add i18n validation script (pr#25179, Tiago Melo)
  • build/ops: mgr/dashboard: Add package-lock.json (pr#23285, Tiago Melo)
  • build/ops: mgr/dashboard: Disable showing xi18n’s progress (pr#25427, Tiago Melo)
  • build/ops: mgr/dashboard: Fix run-frontend-e2e-tests.sh (pr#25157, Tiago Melo)
  • build/ops: mgr/dashboard: fix the version of all frontend dependencies (pr#22712, Tiago Melo)
  • build/ops: mgr/dashboard: Remove angular build progress logs during cmake (pr#23115, Tiago Melo)
  • build/ops: mgr/dashboard: Update Node.js to current LTS (pr#24932, Tiago Melo)
  • build/ops: mgr/dashboard: Update node version (pr#22639, Tiago Melo)
  • build/ops: mgr/diskprediction: Replace local predictor model file (pr#24484, Rick Chen)
  • build/ops,mgr: mgr/dashboard: Fix building under FreeBSD (pr#22562, Willem Jan Withagen)
  • build/ops: move dmclock subtree into submodule (pr#21651, Danny Al-Gaaf)
  • build/ops,pybind: ceph: do not raise StopIteration within generator (pr#25400, Jason Dillaman)
  • build/ops,rbd: osd,mon,pybind: Make able to compile with Clang (pr#21861, Adam C. Emerson)
  • build/ops,rbd: selinux: add support for ceph iscsi (pr#24936, Mike Christie)
  • build/ops,rbd: systemd: enable ceph-rbd-mirror.target (pr#24935, Sébastien Han)
  • build/ops,rgw: build/rgw: unittest_rgw_dmclock_scheduler does not need Boost_LIBRARIES (pr#26799, Willem Jan Withagen)
  • build/ops,rgw: cls: build cls_otp only WITH_RADOSGW (pr#22548, Piotr Dałek)
  • build/ops,rgw: deb,rpm: package librgw_admin_user.{h,so.*} (pr#22205, Kefu Chai)
  • build/ops: rocksdb: sync with upstream (issue#23653, pr#22236, Kefu Chai)
  • build/ops: rpm: bump up required GCC version to 7.3.1 (pr#24130, Kefu Chai)
  • build/ops: rpm,deb: remove python-jinja2 dependency (pr#26379, Kefu Chai)
  • build/ops: rpm: do not exclude s390x build on openSUSE (pr#26268, Nathan Cutler)
  • build/ops: rpm: Fix Fedora error “No matching package to install: ‘Cython3’” (issue#35831, pr#23993, Brad Hubbard)
  • build/ops: rpm: fix libradospp-devel runtime dependency (pr#25491, Nathan Cutler)
  • build/ops: rpm: fix seastar build dependencies for SUSE (pr#23089, Nathan Cutler)
  • build/ops: rpm: fix seastar build dependencies (pr#23386, Nathan Cutler)
  • build/ops: rpm: fix xmlsec1 build dependency for dashboard make check (pr#26119, Nathan Cutler)
  • build/ops: rpm: Install python2-Cython on f28 (pr#26756, Brad Hubbard)
  • build/ops: rpm: make ceph-grafana-dashboards own its directories (issue#37485, pr#25347, Nathan Cutler, Tim Serong)
  • build/ops: rpm: make Python dependencies somewhat less confusing (pr#25963, Nathan Cutler)
  • build/ops: rpm: make sudo a build dependency (pr#23077, Nathan Cutler)
  • build/ops: rpm: package crypto libraries for all archs (pr#26202, Nathan Cutler)
  • build/ops: rpm: Package grafana dashboards (pr#24735, Boris Ranto)
  • build/ops: rpm: provide files moved from ceph-test … (issue#22558, pr#20401, Nathan Cutler)
  • build/ops: rpm: RHEL 8 fixes (pr#26520, Ken Dreyer)
  • build/ops: rpm: RHEL 8 needs Python 3 build (pr#25223, Nathan Cutler)
  • build/ops: rpm: stop install-deps.sh clobbering spec file Python build setting (issue#37301, pr#25181, Nathan Cutler, Brad Hubbard)
  • build/ops: rpm: Use hardened LDFLAGS (issue#36316, pr#24425, Boris Ranto)
  • build/ops: rpm: use updated gperftools (issue#35969, pr#24124, Kefu Chai)
  • build/ops: rpm: Use updated gperftools-libs at runtime (issue#36508, pr#24652, Brad Hubbard)
  • build/ops: run-make-check: enable –with-seastar option (pr#22809, Kefu Chai)
  • build/ops: run-make-check: set WITH_SEASTAR with a non-empty string (pr#23108, Kefu Chai)
  • build/ops: run-make-check.sh: Adding ccache tuning for the CI (pr#22847, Erwan Velu)
  • build/ops: run-make-check.sh: ccache goodness for everyone (issue#24817, issue#24777, pr#22867, Nathan Cutler)
  • build/ops: run-make-check: should use sudo for running sysctl (pr#23708, Kefu Chai)
  • build/ops: run-make-check: Showing configuration before the build (pr#23609, Erwan Velu)
  • build/ops: seastar: lower the required yaml-cpp version to 0.5.1 (pr#23255, Kefu Chai)
  • build/ops: seastar: pickup the change to link pthread (pr#25671, Kefu Chai)
  • build/ops: selinux: Allow ceph to execute ldconfig (pr#20118, Boris Ranto)
  • build/ops: spdk: update to latest spdk-18.05 branch (pr#22547, Kefu Chai)
  • build/ops: spec: requires ceph base instead of common (issue#37620, pr#25503, Sébastien Han)
  • build/ops: test: move ceph-dencoder to src/tools (pr#23228, Kefu Chai)
  • build/ops: test,qa: s/.libs/lib/ (pr#20734, Kefu Chai)
  • build/ops,tests: cmake,run-make-check: always enable WITH_GTEST_PARALLEL (pr#23382, Kefu Chai)
  • build/ops,tests: deb,rpm,qa: split dashboard package (pr#26380, Kefu Chai)
  • build/ops,tests: mgr/dashboard: Fix localStorage problem in Jest (pr#23281, Tiago Melo)
  • build/ops,tests: mgr/dashboard: Object Gateway user configuration (pr#25494, Laura Paduano)
  • build/ops,tests: src/test: Using gtest-parallel to speedup unittests (pr#22577, Kefu Chai, Erwan Velu)
  • build/ops,tests: tests/fio: fix build failures and ensure this is covered by run-make-check.sh (pr#23231, Kefu Chai, Igor Fedotov)
  • build/ops,tests: tests/qa: Adding $ distro mix - rgw (pr#21932, Yuri Weinstein)
  • build/ops,tests: tools/ceph-dencoder: conditionally link against mds (pr#25255, Kefu Chai)
  • build/ops,tools: tool: link rbd-ggate against librados-cxx (pr#24901, Willem Jan Withagen)
  • ceph-disk: get_partition_dev() should fail until get_dev_path(partnam… (pr#21415, Erwan Velu)
  • cephfs: doc/releases: update CephFS mimic notes (issue#23775, pr#22232, Patrick Donnelly)
  • cephfs: mgr/dashboard: NFS Ganesha management REST API (pr#25918, Lenz Grimmer, Ricardo Dias, Jeff Layton)
  • cephfs,mgr,pybind: pybind/mgr: Unified bits of volumes and orchestrator (pr#25492, Sebastian Wagner)
  • cephfs,mon: MDSMonitor: silence unable to load metadata (pr#25693, Song Shun)
  • cephfs,mon: mon/MDSMonitor: do not send redundant MDS health messages to cluster log (issue#24308, pr#22252, Sage Weil)
  • cephfs: qa: fix symlink (pr#23997, Patrick Donnelly)
  • cephfs,rbd: osdc: Fix the wrong BufferHead offset (pr#22495, dongdong tao)
  • cephfs,rbd: osdc: optimize the code doing the BufferHead mapping (pr#22509, dongdong tao)
  • cephfs,rbd: osdc: reduce ObjectCacher’s memory fragments (issue#36192, pr#24297, “Yan, Zheng”)
  • cephfs,tests: qa: fix run call args (issue#36450, pr#24597, Patrick Donnelly)
  • cephfs,tests: qa: install python3-cephfs for fs suite (pr#23411, Kefu Chai)
  • cephfs,tests: qa/suites/powercycle: whitelist MDS_SLOW_REQUEST (pr#23151, Neha Ojha)
  • cephfs,tests: qa/workunits/suites/pjd.sh: use correct dir name (pr#22233, Neha Ojha)
  • ceph-volume: activate option –auto-detect-objectstore respects –no-systemd (issue#36249, pr#24355, Alfredo Deza)
  • ceph-volume: Adapt code to support Python3 (pr#25324, Volker Theile)
  • ceph-volume: add –all flag to simple activate (pr#26225, Jan Fajerski)
  • ceph-volume add a __release__ string, to help version-conditional calls (issue#25171, pr#23332, Alfredo Deza)
  • ceph-volume: add inventory command (issue#24972, pr#24859, Jan Fajerski)
  • ceph-volume: Additional work on ceph-volume to add some choose_disk capabilities (issue#36446, pr#24504, Erwan Velu)
  • ceph-volume add new ceph-handlers role from ceph-ansible (issue#36251, pr#24336, Alfredo Deza)
  • ceph-volume: adds a –prepare flag to lvm batch (issue#36363, pr#24587, Andrew Schoen)
  • ceph-volume: add space between words (pr#26246, Sébastien Han)
  • ceph-volume: adds test for ceph-volume lvm list /dev/sda (issue#24784, issue#24957, pr#23348, Andrew Schoen)
  • ceph-volume: Add unit test (pr#25321, Volker Theile)
  • ceph-volume: allow to specify –cluster-fsid instead of reading from ceph.conf (issue#26953, pr#24407, Alfredo Deza)
  • ceph-volume: an OSD ID must be exist and be destroyed before reuse (pr#23093, Andrew Schoen, Ron Allred)
  • ceph-volume batch: allow journal+block.db sizing on the CLI (issue#36088, pr#24201, Alfredo Deza)
  • ceph-volume batch: allow –osds-per-device, default it to 1 (issue#35913, pr#24060, Alfredo Deza)
  • ceph-volume batch carve out lvs for bluestore (pr#24019, Alfredo Deza)
  • ceph-volume batch command (issue#24492, pr#23075, Alfredo Deza)
  • ceph-volume: batch tests for mixed-type of devices (issue#35535, issue#27210, pr#23963, Alfredo Deza)
  • ceph-volume custom cluster names fail on filestore trigger (issue#27210, pr#24251, Alfredo Deza)
  • ceph-volume: do not pin the testinfra version for the simple tests (pr#23268, Andrew Schoen)
  • ceph-volume: do not send (lvm) stderr/stdout to the terminal, use the logfile (issue#36492, pr#24738, Alfredo Deza)
  • ceph-volume do not use stdin in luminous (issue#25173, pr#23355, Alfredo Deza)
  • ceph-volume: don’t create osd[‘block.db’] by default (issue#38472, pr#26627, Jan Fajerski)
  • ceph-volume: earlier detection for –journal and –filestore flag requirements (issue#24794, pr#24150, Alfredo Deza)
  • ceph-volume: enable device discards (issue#36532, pr#24676, Jonas Jelten)
  • ceph-volume enable –no-systemd flag for simple sub-command (issue#36470, pr#24998, Alfredo Deza)
  • ceph-volume: enable the ceph-osd during lvm activation (issue#24152, pr#23321, Dan van der Ster)
  • ceph-volume ensure encoded bytes are always used (issue#24993, pr#23289, Alfredo Deza)
  • ceph-volume: error on commands that need ceph.conf to operate (issue#23941, pr#22724, Andrew Schoen)
  • ceph-volume expand auto engine for multiple devices on filestore (issue#24553, pr#23731, Andrew Schoen, Alfredo Deza)
  • ceph-volume: expand auto engine for single type devices on filestore (issue#24960, pr#23532, Alfredo Deza)
  • ceph-volume expand on the LVM API to create multiple LVs at different sizes (issue#24020, pr#22426, Alfredo Deza)
  • ceph-volume: extract flake8 config (pr#24674, Mehdi Abaakouk)
  • ceph-volume: fix Batch object in py3 environments (pr#25203, Jan Fajerski)
  • ceph-volume: fix journal and filestore data size in lvm batch –report (issue#36242, pr#24274, Andrew Schoen)
  • ceph-volume: fix JSON output in inventory (issue#37390, pr#25224, Sebastian Wagner)
  • ceph-volume: Fix TypeError: join() takes exactly one argument (2 given) (issue#37595, pr#25469, Sebastian Wagner)
  • ceph-volume fix TypeError on dmcrypt when using Python3 (pr#26034, Alfredo Deza)
  • ceph-volume fix zap not working with LVs (issue#35970, pr#24077, Alfredo Deza)
  • ceph-volume: implement __format__ in Size to format sizes in py3 (issue#38291, pr#26401, Jan Fajerski)
  • ceph-volume initial take on auto sub-command (pr#21803, Alfredo Deza)
  • ceph-volume: introduce class hierachy for strategies (issue#37389, pr#25238, Jan Fajerski)
  • ceph-volume: lsblk can fail to find PARTLABEL, must fallback to blkid (issue#36098, pr#24330, Alfredo Deza)
  • ceph-volume lvm.activate conditional mon-config on prime-osd-dir (issue#25216, pr#23375, Alfredo Deza)
  • ceph-volume lvm.activate Do not search for a MON configuration (pr#22393, Wido den Hollander)
  • ceph-volume: lvm batch allow extra flags (like dmcrypt) for bluestore (issue#26862, pr#23448, Alfredo Deza)
  • ceph-volume lvm.batch remove non-existent sys_api property (issue#34310, pr#23787, Alfredo Deza)
  • ceph-volume lvm.listing only include devices if they exist (issue#24952, pr#23129, Alfredo Deza)
  • ceph-volume lvm.prepare update help to indicate partitions are needed, not devices (issue#24795, pr#24394, Alfredo Deza)
  • ceph-volume: make Device hashable to allow set of Device list in py3 (issue#38290, pr#26399, Jan Fajerski)
  • ceph-volume: make lvm batch idempotent (issue#26864, pr#24404, Andrew Schoen)
  • ceph-volume: mark a device not available if it belongs to ceph-disk (pr#26084, Andrew Schoen)
  • ceph-volume normalize comma to dot for string to int conversions (issue#37442, pr#25674, Alfredo Deza)
  • ceph-volume: patch Device when testing (issue#36768, pr#25063, Alfredo Deza)
  • ceph-volume process.call with stdin in Python 3 fix (issue#24993, pr#23141, Alfredo Deza)
  • ceph-volume: provide a nice errror message when missing ceph.conf (pr#22828, Andrew Schoen)
  • ceph-volume: PVolumes.get() should return one PV when using name or uuid (issue#24784, pr#23234, Andrew Schoen)
  • ceph-volume: refuse to zap mapper devices (issue#24504, pr#22764, Andrew Schoen)
  • ceph-volume: reject devices that have existing GPT headers (issue#27062, pr#25098, Andrew Schoen)
  • ceph-volume: remove iteritems instances (issue#38299, pr#26403, Jan Fajerski)
  • ceph-volume: remove LVs when using zap –destroy (pr#25093, Alfredo Deza)
  • ceph-volume remove version reporting from help menu (issue#36386, pr#24531, Alfredo Deza)
  • ceph-volume: rename Device property valid to available (issue#36701, pr#25007, Jan Fajerski)
  • ceph-volume: replace testinfra command with py.test (issue#38568, pr#26739, Alfredo Deza)
  • ceph-volume: Restore SELinux context (pr#23278, Boris Ranto)
  • ceph-volume: revert partition as disk (issue#37506, pr#25390, Jan Fajerski)
  • ceph-volume: run tests without waiting on ceph repos (pr#23697, Andrew Schoen)
  • ceph-volume: set number of osd ports in the tests (pr#26753, Andrew Schoen)
  • ceph-volume: set permissions right before prime-osd-dir (issue#37486, pr#25477, Andrew Schoen, Alfredo Deza)
  • ceph-volume: simple scan will now scan all running ceph-disk OSDs (pr#26826, Andrew Schoen)
  • ceph-volume: skip processing devices that don’t exist when scanning system disks (issue#36247, pr#24372, Alfredo Deza)
  • ceph-volume: sort and align lvm list output (pr#21812, Theofilos Mouratidis)
  • ceph-volume systemd import main so console_scripts work for executable (issue#36648, pr#24840, Alfredo Deza)
  • ceph-volume tests destroy osds on monitor hosts (pr#22437, Alfredo Deza)
  • ceph-volume tests do not include admin keyring in OSD nodes (issue#24417, pr#22399, Alfredo Deza)
  • ceph-volume tests/functional add mgrs daemons to lvm tests (issue#26879, pr#23489, Alfredo Deza)
  • ceph-volume tests.functional add notario dep for ceph-ansible (pr#22116, Alfredo Deza)
  • ceph-volume tests/functional declare ceph-ansible roles instead of importing them (issue#37805, pr#25820, Alfredo Deza)
  • ceph-volume tests.functional fix typo when stopping osd.0 in filestore (issue#37675, pr#25594, Alfredo Deza)
  • ceph-volume: tests.functional inherit SSH_ARGS from ansible (issue#34311, pr#23788, Alfredo Deza)
  • ceph-volume tests/functional run lvm list after OSD provisioning (issue#24961, pr#23116, Alfredo Deza)
  • ceph-volume tests/functional use Ansible 2.6 (pr#23182, Alfredo Deza)
  • ceph-volume tests install ceph-ansible’s requirements.txt dependencies (issue#36672, pr#24881, Alfredo Deza)
  • ceph-volume tests patch __release__ to mimic always for stdin keys (pr#23398, Alfredo Deza)
  • ceph-volume tests.systemd update imports for systemd module (issue#36704, pr#24937, Alfredo Deza)
  • ceph-volume: test with multiple NVME drives (issue#37409, pr#25354, Andrew Schoen)
  • ceph-volume: unmount lvs correctly before zapping (issue#24796, pr#23117, Andrew Schoen)
  • ceph-volume: update testing playbook ‘deploy.yml’ (pr#26397, Guillaume Abrioux)
  • ceph-volume: update version of ansible to 2.6.x for simple tests (pr#23263, Andrew Schoen)
  • ceph-volume: use console_scripts (issue#36601, pr#24773, Mehdi Abaakouk)
  • ceph-volume: use our own testinfra suite for functional testing (pr#26685, Andrew Schoen)
  • ceph-volume util.encryption don’t push stderr to terminal (issue#36246, pr#24399, Alfredo Deza)
  • ceph-volume util.encryption robust blkid+lsblk detection of lockbox (pr#24977, Alfredo Deza)
  • ceph-volume zap devices associated with an OSD ID and/or OSD FSID (pr#25429, Alfredo Deza)
  • ceph-volume zap: improve zapping to remove all partitions and all LVs, encrypted or not (issue#37449, pr#25330, Alfredo Deza)
  • cleanup: Clean up warnings (pr#23919, Adam C. Emerson)
  • cli: dump osd-fsid as part of osd find(pr#26015, Noah Watkins)
  • cmake: add “add_npm_command()” command (pr#22636, Kefu Chai)
  • cmake: Add cls_opt for vstart target (pr#22538, Ali Maredia)
  • cmake: add dpdk::dpdk if dpdk is built or found (issue#24948, pr#23620, Nathan Cutler, Kefu Chai)
  • cmake: add option WITH_LIBRADOSSTRIPER (pr#23732, Kefu Chai)
  • cmake: allow setting of the CTest timeout during building (pr#22800, Willem Jan Withagen)
  • cmake: always prefer local symbols (issue#25154, pr#23320, Kefu Chai)
  • cmake: always turn off bjam debugging output (pr#22204, Kefu Chai)
  • cmake: bump up the required boost version to 1.67 (pr#22392, Kefu Chai)
  • cmake: bump up the required fmt version (pr#23283, Kefu Chai)
  • cmake: cleanups (pr#23166, Kefu Chai)
  • cmake: cleanups (pr#23279, Kefu Chai)
  • cmake: cleanups (pr#23300, Kefu Chai)
  • cmake,crimson/net: add keepalive support, and enable unittest_seastar_messenger in “make check” (pr#23642, Kefu Chai)
  • cmake: detect armv8 crc and crypto feature using CHECK_C_COMPILER_FLAG (issue#17516, pr#24168, Kefu Chai)
  • cmake: disable -Werror-stringop-truncation for rocksdb (pr#22591, Kefu Chai)
  • cmake: do not check for aligned_alloc() anymore (issue#23653, pr#22046, Kefu Chai)
  • cmake: do not depend on ${DPDK_LIBRARIES} if not using bundled dpdk (issue#24449, pr#22938, Kefu Chai)
  • cmake: do not install hello demo module (pr#21886, John Spray)
  • cmake: do not link against common_crc_aarch64 (pr#23366, Kefu Chai)
  • cmake: do not pass -B{symbolic,symbolic-functions} to linker on FreeBSD (pr#24920, Willem Jan Withagen)
  • cmake: do not pass unnecessary param to setup.py (pr#25186, Kefu Chai)
  • cmake: do not use Findfmt.cmake for checking libfmt-dev (pr#23390, Kefu Chai)
  • cmake: do not use plain target_link_libraries(rgw_a …) (pr#24515, Kefu Chai)
  • cmake: enable RTTI for both debug and release RocksDB builds (pr#22286, Igor Fedotov)
  • cmake: find a python2 interpreter for gtest-parallel (pr#22931, Kefu Chai)
  • cmake: find liboath using the correct name (pr#22430, Kefu Chai)
  • cmake: fix a cmake error when with -DALLOCATOR=jemalloc (pr#23380, Jianpeng Ma)
  • cmake: fix build WITH_SYSTEM_BOOST=ON (pr#23510, Kefu Chai)
  • cmake: fix compilation with distcc and other compiler wrappers (pr#24605, Alexey Sheplyakov, Kefu Chai)
  • cmake: fix cython target in test/CMakeFile.txt (pr#22295, Jan Fajerski)
  • cmake: fix Debug build WITH_SEASTAR=ON (pr#23567, Kefu Chai)
  • cmake: fixes to enable WITH_ASAN with clang and GCC (pr#24692, Kefu Chai)
  • cmake: fix find system rockdb (pr#22439, Alexey Shabalin)
  • cmake: fix std::filesystem detection and extract sanitizer detection into its own module (pr#23384, Kefu Chai)
  • cmake: fix syntax error of set() (pr#26582, Kefu Chai)
  • cmake: fix the build WITH_DPDK=ON (pr#23650, Kefu Chai, Casey Bodley)
  • cmake: fix version matching for Findfmt (pr#23996, Mohamad Gebai)
  • cmake: fix “WITH_STATIC_LIBSTDCXX” (pr#22990, Kefu Chai)
  • cmake: let rbd_api depend on librbd-tp (pr#25641, Kefu Chai)
  • cmake: link against gtest in a better way (pr#23628, Kefu Chai)
  • cmake: link ceph-osd with common statically (pr#22720, Radoslaw Zarzynski)
  • cmake: link compressor plugins against lib the modern way (pr#23852, Kefu Chai)
  • cmake: make -DWITH_MGR=OFF work (pr#22077, Jianpeng Ma)
  • cmake: Make the tests for finding Filesystem with more serious functions (pr#26316, Willem Jan Withagen)
  • cmake: modularize src/perfglue (pr#23254, Kefu Chai)
  • cmake: move ceph-osdomap-tool, ceph-monstore-tool out of ceph-test (pr#19964, runsisi)
  • cmake: move crypto_plugins target (pr#21891, Casey Bodley)
  • cmake: no libradosstriper headers if WITH_LIBRADOSSTRIPER=OFF (issue#35922, pr#24029, Nathan Cutler, Kefu Chai)
  • cmake: no need to add “-D” before definitions (pr#23795, Kefu Chai)
  • cmake: oath lives in liboath (pr#22494, Willem Jan Withagen)
  • cmake: only build extra boost libraries only if WITH_SEASTAR (pr#22521, Kefu Chai)
  • cmake: remove checking for GCC 5.1 (pr#24477, Kefu Chai)
  • cmake: remove deleted rgw_request.cc from CMakeLists.txt (pr#22186, Casey Bodley)
  • cmake: Remove embedded ‘cephd’ code (pr#21940, Dan Mick)
  • cmake: remove workarounds for supporting cmake 2.x (pr#22912, Kefu Chai)
  • cmake: rgw_common should depend on tracing headers (pr#22367, Kefu Chai)
  • cmake: rocksdb related cleanup (pr#23441, Kefu Chai)
  • cmake: should link against libatomic if libcxx/libstdc++ does not off… (pr#22952, Kefu Chai)
  • cmake: update fio version from 3.5 to 540e235dcd276e63c57 (pr#22019, Jianpeng Ma)
  • cmake: use $CMAKE_BINARY_DIR for default $CEPH_BUILD_VIRTUALENV (issue#36737, pr#26091, Kefu Chai)
  • cmake: use javac -h for creating JNI native headers (issue#24012, pr#21822, Kefu Chai)
  • cmake: use OpenSSL::Crypto instead of OPENSSL_LIBRARIES (pr#24368, Kefu Chai)
  • cmake: vstart target can build WITH_CEPHFS/RBD/MGR=OFF (pr#25204, Casey Bodley)
  • common: add adaptor for seastar::temporary_buffer (pr#22454, Kefu Chai, Casey Bodley)
  • common: add a generic async Completion for use with boost::asio (pr#21914, Casey Bodley)
  • common: add lockless md_config_t (pr#22710, Kefu Chai)
  • common: async/dpdk: when enable dpdk, multiple message queue defect (pr#25404, zhangyongsheng)
  • common: auth/cephx: minor code cleanup (pr#21155, runsisi)
  • common: auth, common: cleanups (pr#26383, Kefu Chai)
  • common: auth,common: use ceph::mutex instead of LockMutex (pr#24263, Kefu Chai)
  • common: avoid the overhead of ANNOTATE_HAPPENS_* in NDEBUG builds (pr#25129, Radoslaw Zarzynski)
  • common: be more informative if set PID-file fails (pr#23647, Willem Jan Withagen)
  • common: blkdev: Rework API and add FreeBSD support (pr#24658, Alan Somers)
  • common: buffer: mark the iterator traits “public” (pr#25409, Kefu Chai)
  • common: calculate stddev on the fly (pr#21461, Yao Zongyou)
  • common: ceph.in: use correct module for cmd flags (pr#26454, Patrick Donnelly)
  • common: ceph-volume add device_id to inventory listing (pr#25201, Jan Fajerski)
  • common: changes to address FTBFS on fc30 (pr#26301, Kefu Chai)
  • common: common/admin_socket: add new api unregister_commands(AdminSocketHook … (pr#21718, Jianpeng Ma)
  • common: common,auth,crimson: add logging to crimson (pr#23957, Kefu Chai)
  • common: common/buffer: fix compiler bug when enable DEBUG_BUFFER (pr#25848, Jianpeng Ma)
  • common: common/buffer: remove repeated condtion-check (pr#25420, Jianpeng Ma)
  • common: common/config: add ConfigProxy for crimson (pr#23074, Kefu Chai)
  • common: common/config: fix the lock in ConfigProxy::diff() (pr#23276, Kefu Chai)
  • common: common/config_values: friend md_config_impl<> (pr#23020, Mykola Golub, Kefu Chai)
  • common: common: drop the unused methods from SharedLRU (pr#26224, Radoslaw Zarzynski)
  • common: common/KeyValueDB: Get rid of validate parameter (pr#25377, Adam Kupczyk)
  • common: common/numa: Add shim routines for NUMA on FreeBSD (pr#25920, Willem Jan Withagen)
  • common: common, osd: set mclock priority as 1 by default (pr#26022, Abhishek Lekshmanan)
  • common: common/random_cache: remove unused RandomCache (pr#26253, Kefu Chai)
  • common: common/shared_cache: add lockless SharedLRU (pr#22736, Kefu Chai)
  • common: common/shared_cache: bumps it to the front of the LRU if key existed (pr#25370, Jianpeng Ma)
  • common: common/shared_cache: fix racing issues (pr#25150, Jianpeng Ma)
  • common: common/util: pass real hostname when running in kubernetes/rook container (pr#23798, Sage Weil)
  • common: complete all throttle blockers when we set average or max to 0 (issue#36715, pr#24965, Dongsheng Yang)
  • common,core: msg/async: clean up local buffers on dispatch (issue#35987, pr#24111, Greg Farnum)
  • common,core,tests: qa/tests: update links for centos latest to point to 7.5 (pr#22923, Vasu Kulkarni)
  • common/crc/aarch64: Added cpu feature pmull and make aarch64 specific… (pr#22178, Adam Kupczyk)
  • common: crimson/common: write configs synchronously on shard.0 (pr#23284, Kefu Chai)
  • common,crimson: port perfcounters to seastar (pr#24141, chunmei Liu)
  • common: crypto: QAT based Encryption for RGW (pr#19386, Ganesh Maharaj Mahalingam)
  • common: crypto: use ceph_assert_always for assertions (pr#23654, Casey Bodley)
  • common: define BOOST_COROUTINES_NO_DEPRECATION_WARNING if not yet (pr#26502, Kefu Chai)
  • common: drop allocation tracking from bufferlist (pr#25454, Radoslaw Zarzynski)
  • common: drop append_buffer from bufferlist. Use simple carriage instead (pr#25077, Radoslaw Zarzynski)
  • common: drop at_buffer_{head,tail} from buffer::ptr (pr#25422, Radoslaw Zarzynski)
  • common: drop/mark-as-final getters of buffer::raw for palign (pr#24087, Radoslaw Zarzynski)
  • common: drop static_assert.h as it looks unused (pr#22743, Radoslaw Zarzynski)
  • common: drop the unused buffer::raw_mmap_pages (pr#24040, Radoslaw Zarzynski)
  • common: drop the unused zero-copy facilities in ceph::bufferlist (pr#24031, Radoslaw Zarzynski)
  • common: drop unused get_max_pipe_size() in buffer.cc (pr#25432, Radoslaw Zarzynski)
  • common: ec: lrc doesn’t depend on crosstalks between bufferlists anymore (pr#25595, Radoslaw Zarzynski)
  • common: expand meta in parse_argv() (pr#23474, Kefu Chai)
  • common: fix access and add name for the token bucket throttle (pr#25372, Shiyang Ruan)
  • common: Fix Alpine compatability for TEMP_FAILURE_RETRY and ACCESSPERMS (pr#24813, Willem Jan Withagen)
  • common: fix a racing in PerfCounters::perf_counter_data_any_d::read_avg (issue#25211, pr#23362, ludehp)
  • common: fix for broken rbdmap parameter parsing (pr#24446, Marc Schoechlin)
  • common: fix missing include boost/noncopyable.hpp (pr#24278, Willem Jan Withagen)
  • common: fix typo in rados bench write JSON output (issue#24199, pr#22112, Sandor Zeestraten)
  • common: fix typos in BackoffThrottle (pr#24691, Shiyang Ruan)
  • common: Formatters: improve precision of double numbers (pr#25745, Коренберг Марк)
  • common: .gitignore: Ignore .idea directory (pr#24237, Volker Theile)
  • common: hint bufferlist’s buffer_track_c_str accordingly (pr#25424, Radoslaw Zarzynski)
  • common: hypercombined bufferlist (pr#24882, Radoslaw Zarzynski)
  • common: include/compat.h: make pthread_get_name_np work when available (pr#23641, Willem Jan Withagen)
  • common: include include/types.h early, otherwise Clang will error (pr#22493, Willem Jan Withagen)
  • common: include/types: move operator<< into the proper namespace (pr#23767, Kefu Chai)
  • common: include/types: space between number and units (pr#22063, Sage Weil)
  • common: librados,rpm,deb: various fixes to address librados3 transition and cleanups in librados (pr#24896, Kefu Chai)
  • common: make CEPH_BUFFER_ALLOC_UNIT known at compile-time (pr#26259, Radoslaw Zarzynski)
  • common: mark BlkDev::serial() const to match with its declaration (pr#24702, Willem Jan Withagen)
  • common: messages: define HEAD_VERSION and COMPAT_VERSION inlined (pr#23623, Kefu Chai)
  • common,mgr: mgr/MgrClient: make some noise for a user if no mgr daemon is running (pr#23492, Sage Weil)
  • common: mon/MonClient: set configs via finisher (issue#24118, pr#21984, Sage Weil)
  • common: msg/async: fix FTBFS of dpdk (pr#23168, Kefu Chai)
  • common: msg/async: Skip the duplicated processing of the same link (pr#20952, shangfufei)
  • common: msg/msg_types.h: do not cast ceph_entity_name to entity_name_t for printing (pr#26315, Kefu Chai)
  • common: msgr/async/rdma: Return from poll system call with EINTR should be retried (pr#25138, Stig Telfer)
  • common: Mutex -> ceph::mutex (issue#12614, pr#25105, Kefu Chai, Sage Weil)
  • common: optimize reference counting in bufferlist (pr#25082, Radoslaw Zarzynski)
  • common: OpTracker doesn’t visit TrackedOp when nref == 0 (issue#24037, pr#22156, Radoslaw Zarzynski)
  • common: os/filestore: fix throttle configurations (pr#21926, Li Wang)
  • common,performance: auth,common: add lockless auth (pr#23591, Kefu Chai)
  • common,performance: common/assert: mark assert helpers with [[gnu::cold]] (pr#23326, Kefu Chai)
  • common,performance: compressor: add QAT support (pr#19714, Qiaowei Ren)
  • common,performance: denc: fix internal fragmentation when decoding ptr in bl (pr#25264, Kefu Chai)
  • common,rbd: misc: mark constructors as explicit (pr#21637, Danny Al-Gaaf)
  • common: reinit StackStringStream on clear (pr#25751, Patrick Donnelly)
  • common: reintroduce async SharedMutex (issue#24124, pr#22698, Casey Bodley)
  • common: Reverse deleted include (pr#23838, Willem Jan Withagen)
  • common: Revert “common: add an async SharedMutex” (issue#24124, pr#21986, Casey Bodley)
  • common,rgw: cls/rbd: init local var with known value (pr#25588, Kefu Chai)
  • common,tests: run-standalone.sh: Need double-quotes to handle | in core_pattern on all distributions (issue#38325, pr#26436, David Zafman)
  • common,tests: test_shared_cache: fix memory leak (pr#25215, Jianpeng Ma)
  • common: vstart: do not attempt to re-initialize dashboard for existing cluster (pr#23261, Jason Dillaman)
  • core: Add support for osd_delete_sleep configuration value (issue#36474, pr#24749, David Zafman)
  • core: auth: drop the RWLock in AuthClientHandler (pr#23699, Kefu Chai)
  • core: auth/krb: Fix Kerberos build warnings (pr#25639, Daniel Oliveira)
  • core: build: disable kerberos for nautilus (pr#26258, Sage Weil)
  • core: ceph_argparse: fix –verbose (pr#25961, Patrick Nawracay)
  • core: ceph.in: friendlier message on EPERM (issue#25172, pr#23330, John Spray)
  • core: ceph.in: write bytes to stdout in raw_write() (pr#25280, Kefu Chai)
  • core: ceph_test_rados_api_misc: remove obsolete LibRadosMiscPool.PoolCreationRace (issue#24150, pr#22042, Sage Weil)
  • core: Clang missesinclude (pr#23768, Willem Jan Withagen)
  • core: common/blkdev.h: use std::string (pr#25783, Neha Ojha)
  • core: common/options: remove unused ms async affinity options (pr#26099, Josh Durgin)
  • core: common/util.cc: add CONTAINER_NAME processing for metadata (pr#25383, Dan Mick)
  • core: compressor: building error for QAT decompress (pr#22609, Qiaowei Ren)
  • core: crush, osd: handle multiple parents properly when applying pg upmaps (issue#23921, pr#21815, xiexingguo)
  • core: erasure-code: add clay codes (issue#19278, pr#24291, Myna V, Sage Weil)
  • core: erasure-code: fixes alignment issue when clay code is used with jerasure, cauchy_orig (pr#24586, Myna)
  • core: global/signal_handler.cc: report assert_file as correct name (pr#23738, Dan Mick)
  • core: include/rados: clarify which flags go where for copy_from (pr#24497, Ilya Dryomov)
  • core: include/rados.h: hide CEPH_OSDMAP_PGLOG_HARDLIMIT from ceph -s (pr#25887, Neha Ojha)
  • core: kv/KeyValueDB: Move PriCache implementation to ShardedCache (pr#25925, Mark Nelson)
  • core: kv/KeyValueDB: return const char* from MergeOperator::name() (issue#26875, pr#23477, Sage Weil)
  • core: messages/MOSDPGScan: fix initialization of query_epoch (pr#22408, wumingqiao)
  • core: mgr/balancer: add cmd to list all plans (issue#37418, pr#21937, Yang Honggang)
  • core: mgr/BaseMgrModule: drop GIL for ceph_send_command (issue#38537, pr#26723, Sage Weil)
  • core: mgr/MgrClient: Protect daemon_health_metrics (issue#23352, pr#23404, Kjetil Joergensen, Brad Hubbard)
  • core,mgr: mon/MgrMonitor: change ‘unresponsive’ message to info level (issue#24222, pr#22158, Sage Weil)
  • core,mgr,rbd: mgr: generalize osd perf query and make counters accessible from modules (pr#25114, Mykola Golub)
  • core,mgr,rbd: osd: support more dynamic perf query subkey types (pr#25371, Mykola Golub)
  • core,mgr,rbd,rgw: rgw, common: Fixes SCA issues (pr#22007, Danny Al-Gaaf)
  • core: mgr/smart: remove obsolete smart module (pr#26411, Sage Weil)
  • core: mon/LogMonitor: call no_reply() on ignored log message (pr#22098, Sage Weil)
  • core: mon/MonClient: avoid using magic number for the MAuth::protocol (pr#23747, Kefu Chai)
  • core: mon/MonClient: extract MonSub out (pr#23688, Kefu Chai)
  • core: mon/MonClient: use scoped_guard instead of goto (pr#24304, Kefu Chai)
  • core,mon: mon,osd: dump “compression_algorithms” in “mon metadata” (issue#22420, pr#21809, Kefu Chai, Casey Bodley)
  • core,mon: mon/OSDMonitor: no_reply on MOSDFailure messages (issue#24322, pr#22259, Sage Weil)
  • core,mon: mon/OSDMonitor: Warnings for expected_num_objects (issue#24687, pr#23072, Douglas Fuller)
  • core: mon/OSDMonitor: two “ceph osd crush class rm” fixes (pr#24657, xie xingguo)
  • core: mon/PGMap: fix PGMapDigest decode (pr#22066, Sage Weil)
  • core: mon/PGMap: include unknown PGs in ‘pg ls’ (pr#24032, Sage Weil)
  • core: msg/async: do not trigger RESETSESSION from connect fault during connection phase (issue#36612, pr#25343, Sage Weil)
  • core: msg/async/Event: clear time_events on shutdown (issue#24162, pr#22093, Sage Weil)
  • core: msg/async: fix banner_v1 check in ProtocolV2 (pr#26714, Yingxin Cheng)
  • core: msg/async: fix include in frames_v2.h (pr#26711, Yingxin Cheng)
  • core: msg/async: fix is_queued() semantics (pr#24693, Ilya Dryomov)
  • core: msg/async: keep connection alive only actually sending (pr#24301, Haomai Wang, Kefu Chai)
  • core: os/bluestore: fix deep-scrub operation againest disk silent errors (pr#23629, Xiaoguang Wang)
  • core: os/bluestore: fix flush_commit locking (issue#21480, pr#22083, Sage Weil)
  • core: OSD: add impl for filestore to get dbstatistics (issue#24591, pr#22633, lvshuhua)
  • core: osdc: Change ‘bool budgeted’ to ‘int budget’ to avoid recalculating (pr#21242, Jianpeng Ma)
  • core: OSD: ceph-osd parent process need to restart log service after fork (issue#24956, pr#23090, redickwang)
  • core: osdc/Objecter: fix split vs reconnect race (issue#22544, pr#23850, Sage Weil)
  • core: osdc/Objecter: no need null pointer check for op->session anymore (pr#25230, runsisi)
  • core: osdc/Objecter: possible race condition with connection reset (issue#36183, pr#24276, Jason Dillaman)
  • core: osdc: self-managed snapshot helper should catch decode exception (issue#24000, pr#21804, Jason Dillaman)
  • core: osd, librados: add unset-manifest op (pr#21999, Myoungwon Oh)
  • core: osd,mds: make ‘config rm …’ idempotent (issue#24408, pr#22395, Sage Weil)
  • core: osd/mon: fix upgrades for pg log hard limit (issue#36686, pr#25816, Neha Ojha, Yuri Weinstein)
  • core: osd,mon: increase mon_max_pg_per_osd to 250 (pr#23251, Neha Ojha)
  • core: osd,mon,msg: use intrusive_ptr for holding Connection::priv (issue#20924, pr#22292, Kefu Chai)
  • core: osd/OSD: choose heartbeat peers more carefully (pr#23487, xie xingguo)
  • core: osd/OSD: drop extra/wrong *unregister_pg* (pr#21816, xiexingguo)
  • core: osd/OSDMap: be more aggressive when trying to balance (issue#37940, pr#26039, xie xingguo)
  • core: osd/OSDMap: drop local pool filter in calc_pg_upmaps (pr#26605, xie xingguo)
  • core: osd/OSDMap: fix CEPHX_V2 osd requirement to nautilus, not mimic (pr#23249, Sage Weil)
  • core: osd/OSDMap: fix upmap mis-killing for erasure-coded PGs (pr#25365, ningtao, xie xingguo)
  • core: osd/OSDMap: potential access violation fix (issue#37881, pr#25930, xie xingguo)
  • core: osd/OSDMap: using std::vector::reserve to reduce memory reallocation (pr#26478, xie xingguo)
  • core: osd/OSD: ping monitor if we are stuck at __waiting_for_healthy__ (pr#23958, xie xingguo)
  • core: osd/OSD: preallocate for _get_pgs/_get_pgids to avoid reallocate (pr#25434, Jianpeng Ma)
  • core: osd/PG: async-recovery should respect historical missing objects (pr#24004, xie xingguo)
  • core: osd/PG.cc: account for missing set irrespective of last_complete (issue#37919, pr#26175, Neha Ojha)
  • core: osd/PG: create new PGs from activate in last_peering_reset epoch (issue#24452, pr#22478, Sage Weil)
  • core: osd/PG: do not choose stray osds as async_recovery_targets (pr#22330, Neha Ojha)
  • core: osd/PG: fix misused FORCE_RECOVERY[BACKFILL] flags (issue#27985, pr#23904, xie xingguo)
  • core: osd/PGLog.cc: check if complete_to points to log.end() (pr#23450, Neha Ojha)
  • core: osd/PGLog: trim - avoid dereferencing invalid iter (pr#23546, xie xingguo)
  • core: osd/PG: remove unused functions (pr#26155, Kefu Chai)
  • core: osd/PG: reset PG on osd down->up; normalize query processing (issue#24373, pr#22456, Sage Weil)
  • core: osd/PG: restrict async_recovery_targets to up osds (pr#22664, Neha Ojha)
  • core: osd/PG: unset history_les_bound if local-les is used (pr#22524, Kefu Chai)
  • core: osd/PG: write pg epoch when resurrecting pg after delete vs merge race (issue#35923, pr#24061, Sage Weil)
  • core: osd/PrimaryLogPG: do not count failed read in delta_stats (pr#25687, Kefu Chai)
  • core: osd/PrimaryLogPG: fix last_peering_reset checking on manifest flushing (pr#26778, xie xingguo)
  • core: osd/PrimaryLogPG: fix on_local_recover crash on stray clone (pr#22396, Sage Weil)
  • core: osd/PrimaryLogPG: fix potential pg-log overtrimming (pr#23317, xie xingguo)
  • core: osd/PrimaryLogPG: fix the extent length error of the sync read (pr#25584, Xiaofei Cui)
  • core: osd/PrimaryLogPG: fix try_flush_mark_clean write contention case (issue#24174, pr#22084, Sage Weil)
  • core: osd/PrimaryLogPG: optimize recover order (pr#23587, xie xingguo)
  • core: osd/PrimaryLogPG: update missing_loc more carefully (issue#35546, pr#23895, xie xingguo)
  • core: osd/ReplicatedBackend: remove useless assert (pr#21243, Jianpeng Ma)
  • core: osd/Session: fix invalid iterator dereference in Session::have_backoff() (issue#24486, pr#22497, Sage Weil)
  • core: osd: write “debug dump_missing” output to stdout (pr#21960, Коренберг Маркr)
  • core: os/kstore: support db statistic (pr#21487, Yang Honggang)
  • core: os/memstore: use ceph::mutex and friends (pr#26026, Kefu Chai)
  • core,performance: core: avoid unnecessary refcounting of OSDMap on OSD’s hot paths (pr#24743, Radoslaw Zarzynski)
  • core,performance: msg/async: avoid put message within write_lock (pr#20731, Haomai Wang)
  • core,performance: os/bluestore: make osd shard-thread do oncommits (pr#22739, Jianpeng Ma)
  • core,performance: osd/filestore: Change default filestore_merge_threshold to -10 (issue#24686, pr#22761, Douglas Fuller)
  • core,performance: osd/OSDMap: map pgs with smaller batchs in calc_pg_upmaps (pr#23734, huangjun)
  • core: PG: release reservations after backfill completes (issue#23614, pr#22255, Neha Ojha)
  • core: pg stuck in backfill_wait with plenty of disk space (issue#38034, pr#26375, xie xingguo, David Zafman)
  • core,pybind: pybind/rados: new methods for manipulating self-managed snapshots (pr#22579, Jason Dillaman)
  • core: qa/suites/rados: minor fixes (pr#22195, Neha Ojha)
  • core: qa/suites/rados/thrash-erasure-code*/thrashers/*: less likely resv rejection injection (pr#24667, Sage Weil)
  • core: qa/suites/rados/thrash-old-clients: only centos and 16.04 (pr#22106, Sage Weil)
  • core: qa/suites: set osd_pg_log_dups_tracked in cfuse_workunit_suites_fsync.yaml (pr#21909, Neha Ojha)
  • core: qa/suites/upgrade/luminous-x: disable c-o-t import/export tests between versions (issue#38294, pr#27018, Sage Weil)
  • core: qa/suites/upgrade/mimic-x/parallel: enable all classes (pr#27011, Sage Weil)
  • core: qa/workunits/mgr/test_localpool.sh: use new config syntax (pr#22496, Sage Weil)
  • core: qa/workunits/rados/test_health_warnings: prevent out osds (issue#37776, pr#25732, Sage Weil)
  • core: rados.pyx: make all exceptions accept keyword arguments (issue#24033, pr#21853, Rishabh Dave)
  • core: rados: return legacy address in ‘lock info’ (pr#26150, Jason Dillaman)
  • core: scrub warning check incorrectly uses mon scrub interval (issue#37264, pr#25112, David Zafman)
  • core: src: no ‘dne’ acronym in user cmd output (pr#21094, Gu Zhongyan)
  • core,tests: Minor cleanups in tests and log output (issue#38631, issue#38678, pr#26899, David Zafman)
  • core,tests: qa/overrides/short_pg_log.yaml: reduce osd_{min,max}_pg_log_entries (issue#38025, pr#26101, Neha Ojha)
  • core,tests: qa/suites/rados/thrash: change crush_tunables to jewel in rados_api_tests (issue#38042, pr#26122, Neha Ojha)
  • core,tests: qa/suites/upgrade/luminous-x: a few fixes (pr#22092, Sage Weil)
  • core,tests: qa/tests: Set ansible-version: 2.5 (issue#24926, pr#23123, Yuri Weinstein)
  • core,tests: Removal of snapshot with corrupt replica crashes osd (issue#23875, pr#22476, David Zafman)
  • core,tests: test: Verify a log trim trims the dup_index (pr#26533, Brad Hubbard)
  • core,tools: osdmaptool: fix wrong test_map_pgs_dump_all output (pr#22280, huangjun)
  • core,tools: rados: provide user with more meaningful error message (pr#26275, Mykola Golub)
  • core,tools: tools/rados: allow reuse object for write test (pr#25128, Li Wang)
  • core: vstart.sh: Support SPDK in Ceph development deployment (pr#22975, tone.zhang)
  • crimson: add MonClient (pr#23849, Kefu Chai)
  • crimson: cache osdmap using LRU cache (pr#26254, Kefu Chai, Jianpeng Ma)
  • crimson/common: apply config changes also on shard.0 (pr#23631, Yingxin)
  • crimson/connection: misc changes (pr#23044, Kefu Chai)
  • crimson: crimson/mon: remove timeout support from mon::Client::authenticate() (pr#24660, Kefu Chai)
  • crimson/mon: move mon::Connection into .cc (pr#24619, Kefu Chai)
  • crimson/net: concurrent dispatch for SocketMessenger (pr#24090, Casey Bodley)
  • crimson/net: encapsulate protocol implementations with states (pr#25176, Yingxin, Kefu Chai)
  • crimson/net: encapsulate protocol implementations with states (remaining part) (pr#25207, Yingxin)
  • crimson/net: fix addresses during banner exchange (pr#25580, Yingxin)
  • crimson/net: fix compile errors in test_alien_echo.cc (pr#24629, Yingxin)
  • crimson/net: fix crimson msgr error leaks to caller (pr#25716, Yingxin)
  • crimson/net: fix misc issues for segment-fault and test-failures (pr#25939, Yingxin Cheng, Kefu Chai)
  • crimson/net: Fix racing for promise on_message (pr#24097, Yingxin)
  • crimson/net: fix unittest_seastar_messenger errors (pr#23539, Yingxin)
  • crimson/net: implement accepting/connecting states (pr#24608, Yingxin)
  • crimson/net: miscellaneous fixes to seastar-msgr (pr#23816, Yingxin, Casey Bodley)
  • crimson/net: misc fixes and features for crimson-messenger tests (pr#26221, Yingxin Cheng)
  • crimson/net: seastar-msgr refactoring (pr#24576, Yingxin)
  • crimson/net: s/repeat/keep_doing/ (pr#23898, Kefu Chai)
  • crimson/osd: add heartbeat support (pr#26222, Kefu Chai)
  • crimson/osd: add more heartbeat peers (pr#26255, Kefu Chai)
  • crimson/osd: correct the order of parameters passed to OSD::_preboot() (pr#26774, chunmei Liu)
  • crimson/osd: crimson osd driver (pr#25304, Radoslaw Zarzynski, Kefu Chai)
  • crimson/osd: remove “force_new” from ms_get_authorizer() (pr#26054, Kefu Chai)
  • crimson/osd: send known addresses at boot (pr#26452, Kefu Chai)
  • crimson: persist/load osdmap to/from store (pr#26090, Kefu Chai)
  • crimson: port messenger to seastar (pr#22491, Kefu Chai, Casey Bodley)
  • crimson/thread: add thread pool (pr#22565, Kefu Chai)
  • crimson/thread: pin thread pool to given CPU (pr#22776, Kefu Chai)
  • crush/CrushWrapper: silence compiler warning (pr#25336, Li Wang)
  • crush: fix device_class_clone for unpopulated/empty weight-sets (issue#23386, pr#22127, Sage Weil)
  • crush: fix memory leak (pr#25959, xie xingguo)
  • crush: fix upmap overkill (issue#37968, pr#26179, xie xingguo)
  • dashboard/mgr: Save button doesn’t prevent saving an invalid form (issue#36426, pr#24577, Patrick Nawracay)
  • dashboard: Return float if rate not available (pr#22313, Boris Ranto)
  • doc: add Ceph Manager Dashboard to top-level TOC (pr#26390, Nathan Cutler)
  • doc: add ceph-volume inventory sections (pr#25092, Jan Fajerski)
  • doc: add documentation for iostat (pr#22034, Mohamad Gebai)
  • doc: added demo document changes section (pr#24791, James McClune)
  • doc: added rbd default features (pr#24720, Gaurav Sitlani)
  • doc: added some Civetweb configuration options (pr#24073, Anton Oks)
  • doc: Added some hints on how to further accelerate builds with ccache (pr#25394, Lenz Grimmer)
  • doc: add instructions about using “serve-doc” to preview built document (pr#24471, Kefu Chai)
  • doc: add mds state transition diagram (issue#22989, pr#22996, Patrick Donnelly)
  • doc: Add mention of ceph osd pool stats (pr#25575, Thore Kruess)
  • doc: add missing 12.2.11 release note (pr#26596, Nathan Cutler)
  • doc: add note about LVM volumes to ceph-deploy quick start (pr#23879, David Wahler)
  • doc: add release notes for 12.2.11 luminous (pr#26228, Abhishek Lekshmanan)
  • doc: add spacing to subcommand references (pr#24669, James McClune)
  • doc: add “–timeout” option to rbd-nbd (pr#24302, Stefan Kooman)
  • doc/bluestore: fix minor typos in compression section (pr#22874, David Disseldorp)
  • doc: broken link on troubleshooting-mon page (pr#25312, James McClune)
  • doc: bump up sphinx and pyyaml versions (pr#26044, Kefu Chai)
  • doc: ceph-deploy would not support –cluster option anymore (pr#26471, Tatsuya Naganawa)
  • doc: ceph: describe application subcommand in ceph man page (pr#20645, Rishabh Dave)
  • doc: ceph-iscsi-api ports should not be public facing (pr#24248, Jason Dillaman)
  • doc: ceph-volume describe better the options for migrating away from ceph-disk (issue#24036, pr#21890, Alfredo Deza)
  • doc: ceph-volume dmcrypt and activate –all documentation updates (issue#24031, pr#22062, Alfredo Deza)
  • doc: ceph-volume: expand on why ceph-disk was replaced (pr#23194, Alfredo Deza)
  • doc: ceph-volume: lvm batch documentation and man page updates (issue#24970, pr#23443, Alfredo Deza)
  • doc: ceph-volume: update batch documentation to explain filestore strategies (issue#34309, pr#23785, Alfredo Deza)
  • doc: ceph-volume: zfs, the initial first submit (pr#23674, Willem Jan Withagen)
  • doc: cleaned up troubleshooting OSDs documentation (pr#23519, James McClune)
  • doc: Clean up field names in ServiceDescription and add a service field (pr#26006, Jeff Layton)
  • doc: cleanup: prune Argonaut-specific verbiage (pr#22899, Nathan Cutler)
  • doc: cleanup rendering syntax (pr#22389, Mahati Chamarthy)
  • doc: Clean up the snapshot consistency note (pr#25655, Greg Farnum)
  • doc: common,mon: add implicit #include headers (pr#23930, Kefu Chai)
  • doc: common/options: add description of osd objectstore backends (issue#24147, pr#22040, Alfredo Deza)
  • doc: corrected options of iscsiadm command (pr#26395, ZhuJieWen)
  • doc: correct rbytes description (pr#24966, Xiang Dai)
  • doc: describe RBD QoS settings (pr#25202, Mykola Golub)
  • doc: doc/bluestore: data doesn’t use two partitions (ceph-disk era) (pr#22604, Alfredo Deza)
  • doc: doc/cephfs: fixup add/remove mds docs (pr#23836, liu wei)
  • doc: doc/cephfs: remove lingering “experimental” note about multimds (pr#22852, John Spray)
  • doc: doc/dashboard: don’t advise mgr_initial_modules (pr#22808, John Spray)
  • doc: doc/dashboard: fix formatting on Grafana instructions-2 (pr#22706, Jos Collin)
  • doc: doc/dashboard: fix formatting on Grafana instructions (pr#22657, John Spray)
  • doc: doc/dev/cephx_protocol: fix couple errors (pr#23750, Kefu Chai)
  • doc: doc/dev/index: update rados lead (pr#24160, Josh Durgin)
  • doc: doc/dev/msgr2.rst: update of the banner and authentication phases (pr#20094, Ricardo Dias)
  • doc: doc/dev/seastore.rst: initial draft notes (pr#21381, Sage Weil)
  • doc: doc/dev: Updated component leads table (pr#24238, Lenz Grimmer)
  • doc: doc: fix the links in releases/schedule.rst (pr#22364, Kefu Chai)
  • doc: doc/man: mention import and export commands in rados manpage (issue#4640, pr#23186, Nathan Cutler)
  • doc: doc: Mention PURGED_SNAPDIRS and RECOVERY_DELETES in Mimic release notes (pr#22711, Florian Haas)
  • doc: doc/mgr/dashboard: fix typo in mgr ssl setup (pr#24790, Mehdi Abaakouk)
  • doc: doc/mgr: mention how to clear config setting (pr#22157, John Spray)
  • doc: doc/mgr: note need for module.py file in plugins (pr#22622, John Spray)
  • doc: doc/mgr/orchestrator: Add Architecture Image (pr#26331, Sebastian Wagner, Kefu Chai)
  • doc: doc/mgr/orchestrator: add wal to blink lights (pr#25634, Sebastian Wagner)
  • doc: doc/mgr/prometheus: readd section about custom instance labels (pr#25182, Jan Fajerski)
  • doc: doc/orchestrator: Aligned Documentation with specification (pr#25893, Sebastian Wagner)
  • doc: doc/orchestrator: Integrate CLI specification into the documentation (pr#25119, Sebastian Wagner)
  • doc: doc: purge subcommand link broken (pr#24785, James McClune)
  • doc: doc/rados: Add bluestore memory autotuning docs (pr#25069, Mark Nelson)
  • doc: doc/rados/configuration: add osd scrub {begin,end} week day (pr#25924, Neha Ojha)
  • doc: doc/rados/configuration/msgr2: some documentation about msgr2 (pr#26867, Sage Weil)
  • doc: doc/rados/configuration: refresh osdmap section (pr#26120, Ilya Dryomov)
  • doc: doc/rados: correct osd path in troubleshooting-mon.rst (pr#24964, songweibin)
  • doc: doc/rados: fixed hit set type link (pr#23833, James McClune)
  • doc: doc/radosgw/s3.rst: Adding AWS S3 Storage Class as Not Supported (pr#19571, Katie Holly)
  • doc: doc/rados/operations: add balancer.rst to TOC (pr#23684, Kefu Chai)
  • doc: doc/rados/operations: add clay to erasure-code-profile (pr#26902, Kefu Chai)
  • doc: doc/rados/operations/crush-map-edits: fix ‘take’ syntax (pr#24868, Remy Zandwijk, Sage Weil)
  • doc: doc/rados/operations/pg-states: fix PG state names, part 2 (pr#23165, Nathan Cutler)
  • doc: doc/rados/operations/pg-states: fix PG state names (pr#21520, Jan Fajerski)
  • doc: doc/rados update invalid bash on bluestore migration (issue#34317, pr#23801, Alfredo Deza)
  • doc: doc/rbd: corrected OpenStack Cinder permissions for Glance pool (pr#22443, Jason Dillaman)
  • doc: doc/rbd: explicitly state that mirroring requires connectivity to clusters (pr#24433, Jason Dillaman)
  • doc: doc/rbd/iscsi-target-cli: Update auth command (pr#26788, Ricardo Marques)
  • doc: doc/rbd/iscsi-target-cli: Update disk separator (pr#26669, Ricardo Marques)
  • doc: doc/release/luminous: v12.2.6 and v12.2.7 release notes (pr#23057, Abhishek Lekshmanan, Sage Weil)
  • doc: doc/releases: Add luminous releases 12.2.9 and 10 (pr#25361, Brad Hubbard)
  • doc: doc/releases: Add Mimic release 13.2.2 (pr#24509, Brad Hubbard)
  • doc: doc/releases: Mark Jewel EOL (pr#23698, Brad Hubbard)
  • doc: doc/releases: Mark Mimic first release as June (pr#24099, Brad Hubbard)
  • doc: doc/releases/mimic.rst: make note of 13.2.2 upgrade bug (pr#24979, Neha Ojha)
  • doc: doc/releases/mimic: tweak RBD major features (pr#22011, Jason Dillaman)
  • doc: doc/releases/mimic: Updated dashboard description (pr#22016, Lenz Grimmer)
  • doc: doc/releases/mimic: upgrade steps (pr#21987, Sage Weil)
  • doc: doc/releases/nautilus: dashboard package notes (pr#26815, Kefu Chai)
  • doc: doc/releases/schedule: Add Luminous 12.2.8 (pr#23972, Brad Hubbard)
  • doc: doc/releases/schedule: add mimic column (pr#22006, Sage Weil)
  • doc: doc/releases: Update releases to August ‘18 (pr#23360, Brad Hubbard)
  • doc: doc/rgw: document placement targets and storage classes (issue#24508, issue#38008, pr#26997, Casey Bodley)
  • doc: docs: add Clay code plugin documentation (pr#24422, Myna)
  • doc: docs: Fixed swift client authentication fail (pr#23729, Dai Dang Van)
  • doc: docs: radosgw: ldap-auth: fixed option name ‘rgw_ldap_searchfilter’ (issue#23081, pr#20526, Konstantin Shalygin)
  • doc: doc/start: fix kube-helm.rst typo: docuiment -> document (pr#23423, Zhou Peng)
  • doc: doc/SubmittingPatches.rst: use Google style guide for doc patches (pr#22190, Nathan Cutler)
  • doc: Document correction (pr#23926, Gangbiao Liu)
  • doc: Document mappings of S3 Operations to ACL grants (pr#26827, Adam C. Emerson)
  • doc: document sizing for block.db (pr#23210, Alfredo Deza)
  • doc: document vstart options (pr#22467, Mao Zhongyi)
  • doc: doc/user-management: Remove obsolete reset caps command (issue#37663, pr#25550, Brad Hubbard)
  • doc: edit on github (pr#24452, Neha Ojha, Noah Watkins)
  • doc: erasure-code-clay fixes typos (pr#24653, Myna)
  • doc: erasure-code-jerasure: removed default section of crush-device-class (pr#21279, Junyoung Sung)
  • doc: examples/librados: Remove not needed else clauses (pr#24939, Marcos Paulo de Souza)
  • doc: explain ‘firstn v indep’ in the CRUSH docs (pr#24255, Greg Farnum)
  • doc: Fix a couple typos and improve diagram formatting (pr#23496, Bryan Stillwell)
  • doc: fix a typo in doc/mgr/telegraf.rst (pr#22267, Enming Zhang)
  • doc: fix cephfs spelling errors (pr#23763, Chen Zhenghua)
  • doc: fix/cleanup freebsd osd disk creation (pr#23600, Willem Jan Withagen)
  • doc: Fix Create a Cluster url in Running Multiple Clusters (issue#37764, pr#25705, Jos Collin)
  • doc: Fix EC k=3 m=2 profile overhead calculation example (pr#20581, Charles Alva)
  • doc: fixed broken urls (pr#23564, James McClune)
  • doc: fixed grammar in restore rbd image section (pr#22944, James McClune)
  • doc: fixed links in Pools section (pr#23431, James McClune)
  • doc: fixed minor typo in Debian packages section (pr#22878, James McClune)
  • doc: fixed restful mgr module SSL configuration commands (pr#21864, Lenz Grimmer)
  • doc: Fixed spelling errors in configuration section (pr#23719, Bryan Stillwell)
  • doc: Fixed syntax in iscsi initiator windows doc (pr#25467, Michel Raabe)
  • doc: Fixed the paragraph and boxes (pr#25094, Scoots Hamilton)
  • doc: Fixed the wrong numbers in mgr/dashboard.rst (pr#22658, Jos Collin)
  • doc: fixed typo in add-or-rm-mons.rst (pr#26250, James McClune)
  • doc: fixed typo in cephfs snapshots (pr#23764, Kai Wagner)
  • doc: fixed typo in CRUSH map docs (pr#25953, James McClune)
  • doc: fixed typo in man page (pr#24792, James McClune)
  • doc: Fix incorrect mention of ‘osd_deep_mon_scrub_interval’ (pr#26522, Ashish Singh)
  • doc: Fix iSCSI docs URL (pr#26296, Ricardo Marques)
  • doc: fix iscsi target name when configuring target (pr#21906, Venky Shankar)
  • doc: fix long description error for rgw_period_root_pool (pr#23814, yuliyang)
  • doc: fix some it’s -> its typos (pr#22802, Brad Fitzpatrick)
  • doc: Fix some typos (pr#25060, mooncake)
  • doc: Fix Spelling Error In File “ceph.rst” (pr#23917, Gangbiao Liu)
  • doc: Fix Spelling Error In File dynamicresharding.rst (pr#24175, xiaomanh)
  • doc: Fix Spelling Error of Rados Deployment/Operations (pr#23746, Li Bingyang)
  • doc: Fix Spelling Error of Radosgw (pr#23948, Li Bingyang)
  • doc: Fix Spelling Error of Radosgw (pr#24000, Li Bingyang)
  • doc: Fix Spelling Error of Radosgw (pr#24021, Li Bingyang)
  • doc: Fix Spelling Error of Rados Operations (pr#23891, Li Bingyang)
  • doc: Fix Spelling Error of Rados Operations (pr#23900, Li Bingyang)
  • doc: Fix Spelling Error of Rados Operations (pr#23903, Li Bingyang)
  • doc: fix spelling errors in rbd doc (pr#23765, Chen Zhenghua)
  • doc: fix spelling errors of cephfs (pr#23745, Chen Zhenghua)
  • doc: fix the broken urls (issue#25185, pr#23310, Jos Collin)
  • doc: fix the formatting of HTTP Frontends documentation (pr#25723, James McClune)
  • doc: fix typo and format issues in quick start documentation (pr#23705, Chen Zhenghua)
  • doc: fix typo in add-or-rm-mons (pr#25661, Jos Collin)
  • doc: Fix typo in ceph-fuse(8) (pr#22214, Jos Collin)
  • doc: fix typo in erasure coding example (pr#25737, Arthur Liu)
  • doc: Fix typos in Developer Guide (pr#24067, Li Bingyang)
  • doc: fix typos in doc/releases (pr#24186, Li Bingyang)
  • doc: */: fix typos in docs,messages,logs,comments (pr#24139, Kefu Chai)
  • doc: Fix Typos of Developer Guide (pr#24094, Li Bingyang)
  • doc: fix typos (pr#22174, Mao Zhongyi)
  • doc: .githubmap, .mailmap, .organizationmap: update contributors (pr#24756, Tiago Melo)
  • doc: githubmap, organizationmap: cleanup and add/update contributors/affiliation (pr#22734, Tatjana Dehler)
  • doc: give pool name if default pool rbd is not created (pr#24750, Changcheng Liu)
  • doc: Improve docs osd_recovery_priority, osd_recovery_op_priority and related (pr#26705, David Zafman)
  • doc: Improve OpenStack integration and multitenancy docs for radosgw (issue#36765, pr#25056, Florian Haas)
  • doc: install build-doc deps without git clone (pr#24416, Noah Watkins)
  • doc: Luminous v12.2.10 release notes (pr#25034, Nathan Cutler)
  • doc: Luminous v12.2.9 release notes (pr#24779, Nathan Cutler)
  • doc: make it easier to reach the old dev doc TOC (pr#23253, Nathan Cutler)
  • doc: mention CVEs in luminous v12.2.11 release notes (pr#26312, Nathan Cutler, Abhishek Lekshmanan)
  • doc: mgr/dashboard: Add documentation about supported browsers (issue#27207, pr#23712, Tiago Melo)
  • doc: mgr/dashboard: Added missing tooltip to settings icon (pr#23935, Lenz Grimmer)
  • doc: mgr/dashboard: Add hints to resolve unit test failures (pr#23627, Stephan Müller)
  • doc: mgr/dashboard: Cleaner notifications (pr#23315, Stephan Müller)
  • doc: mgr/dashboard: Cleanup of summary refresh test (pr#25504, Stephan Müller)
  • doc: mgr/dashboard: Document custom RESTController endpoints (pr#25322, Stephan Müller)
  • doc: mgr/dashboard: Fixed documentation link on RGW page (pr#24612, Tina Kallio)
  • doc: mgr/dashboard: Fix some setup steps in HACKING.rst (pr#24788, Ranjitha G)
  • doc: mgr/dashboard: Improve prettier scripts and documentation (pr#22994, Tiago Melo)
  • doc: mgr/dashboard/qa: add missing dashboard suites (pr#25084, Tatjana Dehler)
  • doc: mgr/dashboard: updated SSO documentation (pr#25943, Alfonso Martínez)
  • doc: mgr/dashboard: Update I18N documentation (pr#25159, Tiago Melo)
  • doc: mgr/orch: Fix remote_host doc reference (issue#38254, pr#26360, Ernesto Puerta)
  • doc/mgr/plugins.rst: explain more about the plugin command protocol (pr#22629, Dan Mick)
  • doc: mimic is stable! (pr#22350, Abhishek Lekshmanan)
  • doc: mimic rc1 release notes (pr#20975, Abhishek Lekshmanan)
  • doc: Multiple spelling fixes (pr#23514, Bryan Stillwell)
  • doc: numbered eviction situations (pr#24618, Scoots Hamilton)
  • doc: osdmaptool/cleanup: Completed osdmaptool’s usage (issue#3214, pr#13925, Vedant Nanda)
  • doc: osd/PrimaryLogPG: avoid dereferencing invalid complete_to (pr#23894, xie xingguo)
  • doc: osd/PrimaryLogPG: rename list_missing -> list_unfound command (pr#23723, xie xingguo)
  • doc: PendingReleaseNotes: note newly added CLAY code (pr#24491, Kefu Chai)
  • doc: print pg peering in SVG instead of PNG (pr#20366, Aleksei Gutikov)
  • doc: Put command template into literal block (pr#24999, Alexey Stupnikov)
  • doc: qa/mgr/selftest: handle always-on module fall out (issue#26994, pr#23681, Noah Watkins)
  • doc: qa: Task to emulate network delay and packet drop between two given h… (pr#23602, Shilpa Jagannath)
  • doc: qa/workunits/rbd: replace usage of ‘rados rmpool’ (pr#23942, Mykola Golub)
  • doc: release/mimic: correct the changelog to the latest version (pr#22319, Abhishek Lekshmanan)
  • doc: release notes for 12.2.8 luminous (pr#23909, Abhishek Lekshmanan)
  • doc: release notes for 13.2.2 mimic (pr#24266, Abhishek Lekshmanan)
  • doc: releases: mimic 13.2.1 release notes (pr#23288, Abhishek Lekshmanan)
  • doc: releases: release notes for v10.2.11 Jewel (pr#22989, Abhishek Lekshmanan)
  • doc: remove CZ mirror (pr#21797, Tomáš Kukrál)
  • doc: remove deprecated ‘scrubq’ from ceph(8) (issue#35813, pr#23959, Ruben Kerkhof)
  • doc: remove documentation for installing google-perftools on Debian systems (pr#22701, James McClune)
  • doc: remove duplicate python packages (pr#22203, Stefan Kooman)
  • doc: Remove upstart files and references (pr#23582, Brad Hubbard)
  • doc: Remove value ‘mon_osd_max_split_count’ (pr#26584, Kai Wagner)
  • doc: replace rgw_namespace_expire_secs with rgw_nfs_namespace_expire_secs (pr#20794, chnmagnus)
  • doc: rewrote the iscsi-target-cli installation (pr#23190, Massimiliano Cuttini)
  • doc: rgw: fix tagging support status (issue#24164, pr#22206, Abhishek Lekshmanan)
  • doc: rgw: fix the default value of usage log setting (issue#37856, pr#25892, Abhishek Lekshmanan)
  • doc: Rook/orchestrator doc fixes (pr#23472, John Spray)
  • doc: s/doc/ref for dashboard urls (pr#22772, Jos Collin)
  • doc: sort releases by date and version (pr#25972, Noah Watkins)
  • doc: Spelling fixes in BlueStore config reference (pr#23715, Bryan Stillwell)
  • doc: Spelling fixes in Network config reference (pr#23727, libingyang)
  • doc: SubmittingPatches: added inline markup to important references (pr#25978, James McClune)
  • docs: update rgw info for mimic (pr#22305, Yehuda Sadeh)
  • doc: test/crimson: do not use unit.cc as the driver of unittest_seastar_denc (pr#23937, Kefu Chai)
  • doc: test/fio: Added tips for compilation of fio with ‘rados’ engine (pr#24199, Adam Kupczyk)
  • doc: test/msgr: add missing #include (pr#23947, Kefu Chai)
  • doc: Tidy up description wording and spelling (pr#22599, Anthony D’Atri)
  • doc: tweak RBD iSCSI docs to point to merged tooling repo (pr#24963, Jason Dillaman)
  • doc: typo fixes, s/Requered/Required/ (pr#26406, Drunkard Zhang)
  • doc: update blkin changes (pr#22317, Mahati Chamarthy)
  • doc: Update cpp.rst to accommodate the new APIs in libs3 (pr#22162, Zhanhao Liu)
  • doc: Updated Ceph Dashboard documentation (pr#26626, Lenz Grimmer)
  • doc: updated Ceph documentation links (pr#25797, James McClune)
  • doc: updated cluster map reference link (pr#24460, James McClune)
  • doc: updated crush map tunables link (pr#24462, James McClune)
  • doc: Updated dashboard documentation (features, SSL config) (pr#22059, Lenz Grimmer)
  • doc: Updated feature list and overview in dashboard.rst (pr#26143, Lenz Grimmer)
  • doc: updated get-involved.rst for ceph-dashboard (pr#22663, Jos Collin)
  • doc: Updated Mgr Dashboard documentation (pr#24030, Lenz Grimmer)
  • doc: updated multisite documentation (issue#26997, pr#23660, James McClune)
  • doc: updated reference link for creating new disk offerings in cloudstack (pr#22250, James McClune)
  • doc: updated reference link for log based PG (pr#26611, James McClune)
  • doc: updated rgw multitenancy link (pr#25929, James McClune)
  • doc: updated the overview and glossary for dashboard (pr#22750, Jos Collin)
  • doc: updated wording from federated to multisite (pr#24670, James McClune)
  • doc: Update mgr/zabbix plugin documentation with link to Zabbix template (pr#24584, Wido den Hollander)
  • doc: update the description for SPDK in bluestore-config-ref.rst (pr#22365, tone-zhang)
  • doc: use :command: for subcommands in ceph-bluestore-tool manpage (issue#24800, pr#23114, Nathan Cutler)
  • doc: use preferred commands for ceph config-key (pr#26527, Changcheng Liu)
  • doc: warn about how ‘rados put’ works in the manpage (pr#25757, Greg Farnum)
  • doc: Wip githubmap (pr#25950, Greg Farnum)
  • erasure-code,test: silence -Wunused-variable warnings (pr#25200, Kefu Chai)
  • example/librados: remove dependency on Boost system library (issue#25054, pr#23159, Nathan Cutler)
  • githubmap: update contributors (pr#22522, Kefu Chai)
  • git: Ignore tags anywhere (pr#26159, David Zafman)
  • include/buffer.h: do not use ceph_assert() unless __CEPH__ is defined (pr#23803, Kefu Chai)
  • install-deps.sh: Fixes for RHEL 7 (pr#26393, Zack Cerza)
  • kv/MemDB: add perfcounter (pr#10305, Jianpeng Ma)
  • librados: add a rados_omap_iter_size function (issue#26948, pr#23593, Jeff Layton)
  • librados: block MgrClient::start_command until mgrmap (pr#21811, John Spray, Kefu Chai)
  • librados: fix admin/build-doc warning (pr#25706, Jos Collin)
  • librados: fix buffer overflow for aio_exec python binding (pr#21775, Aleksei Gutikov)
  • librados: fix unitialized timeout in wait_for_osdmap (pr#24721, Casey Bodley)
  • librados: Include memory for unique_ptr definition (issue#35833, pr#23992, Brad Hubbard)
  • librados: Reject the invalid pool create request at client side, rath… (pr#21299, Yang Honggang)
  • librados: return ENOENT if pool_id invalid (pr#21609, Li Wang)
  • librados: split C++ and C APIs into different source files (pr#24616, Kefu Chai)
  • librados: use ceph::async::Completion for asio bindings (pr#21920, Casey Bodley)
  • librados: use steady clock for rados_mon_op_timeout (pr#20004, Mohamad Gebai)
  • librbd: add missing shutdown states to managed lock helper (issue#38387, pr#26523, Jason Dillaman)
  • librbd: add new configuration option to always move deleted items to the trash (pr#24476, Jason Dillaman)
  • librbd: add rbd image access/modified timestamps (pr#21114, Julien Collet)
  • librbd: add trash purge api calls (pr#24427, Julien Collet, Theofilos Mouratidis, Jason Dillaman)
  • librbd: always open first parent image if it exists for a snapshot (pr#23733, Jason Dillaman)
  • librbd: avoid aggregate-initializing any static_visitor (pr#26876, Willem Jan Withagen)
  • librbd: blacklisted client might not notice it lost the lock (issue#34534, pr#23829, Jason Dillaman)
  • librbd: block_name_prefix is not created randomly (issue#24634, pr#22675, hyun-ha)
  • librbd: bypass pool validation if “rbd_validate_pool” is false (pr#26878, Jason Dillaman)
  • librbd: commit IO as safe when complete if writeback cache is disabled (issue#23516, pr#22342, Jason Dillaman)
  • librbd: corrected usage of ImageState::open flag parameter (pr#25428, Mykola Golub)
  • librbd: deep_copy: don’t hide parent if zero overlap for snapshot (issue#24545, pr#22587, Mykola Golub)
  • librbd: deep copy optionally support flattening cloned image (issue#22787, pr#21624, Mykola Golub)
  • librbd: deep_copy: resize head object map if needed (issue#24399, pr#22415, Mykola Golub)
  • librbd: deep-copy should not write to objects that cannot exist (issue#25000, pr#23132, Jason Dillaman)
  • librbd: disable image mirroring when moving to trash (pr#25509, Mykola Golub)
  • librbd: disallow trash restoring when image being migrated (pr#25529, songweibin)
  • librbd: don’t do create+truncate for discards with copyup (pr#26825, Ilya Dryomov)
  • librbd: ensure compare-and-write doesn’t skip compare after copyup (issue#38383, pr#26519, Ilya Dryomov)
  • librbd: extend API to include parent/child namespaces and image ids (issue#36650, pr#25194, Jason Dillaman)
  • librbd: fix crash when opening nonexistent snapshot (issue#24637, pr#22676, Mykola Golub)
  • librbd: fixed assert when flattening clone with zero overlap (issue#35702, pr#24045, Jason Dillaman)
  • librbd: fix missing unblock_writes if shrink is not allowed (issue#36778, pr#25055, runsisi)
  • librbd: fix possible unnecessary latency when requeue request (pr#23815, Song Shun)
  • librbd: fix potential live migration after commit issues due to not refreshed image header (pr#23839, Mykola Golub)
  • librbd: fix were_all_throttled() to avoid incorrect ret-value (issue#38504, pr#26688, Dongsheng Yang)
  • librbd: flatten operation should use object map (issue#23445, pr#23941, Mykola Golub)
  • librbd: force ‘invalid object map’ flag on-disk update (issue#24434, pr#22444, Mykola Golub)
  • librbd: get_parent API method should properly handle migrating image (issue#37998, pr#26337, Jason Dillaman)
  • librbd: handle aio failure in ManagedLock and PreReleaseRequest (pr#20112, liyichao)
  • librbd: improve object map performance under high IOPS workloads (issue#38538, pr#26721, Jason Dillaman)
  • librbd: journaling unable request can not be sent to remote lock owner (issue#26939, pr#23649, Mykola Golub)
  • librbd: keep access/modified timestamp updates out of IO path (issue#37745, pr#25883, Jason Dillaman)
  • librbd: make it possible to migrate parent images (pr#25945, Mykola Golub)
  • librbd: move mirror peer attribute handling from CLI to API (pr#25096, Jason Dillaman)
  • librbd: namespace create/remove/list support (pr#22608, Jason Dillaman)
  • librbd: object copy state machine might dereference a deleted object (issue#36220, pr#24293, Jason Dillaman)
  • librbd: object map improperly flagged as invalidated (issue#24516, pr#24105, Jason Dillaman)
  • librbd: optionally limit journal in-flight appends (pr#22983, Mykola Golub)
  • librbd:optionally support FUA (force unit access) on write requests (issue#19366, pr#22945, ningtao)
  • librbd: pool and image level config overrides (pr#23743, Mykola Golub)
  • librbd: potential object map race with copyup state machine (issue#24516, pr#24253, Jason Dillaman)
  • librbd: potential race on image create request complete (issue#24910, pr#23639, Mykola Golub)
  • librbd: prevent the use of internal feature bits from external users (issue#24165, pr#22072, Jason Dillaman)
  • librbd: prevent use of namespaces on pre-nautilus OSDs (pr#23823, Jason Dillaman)
  • librbd: properly filter out trashed non-user images on purge (pr#26079, Mykola Golub)
  • librbd: properly handle potential object map failures (issue#36074, pr#24179, Jason Dillaman)
  • librbd: race condition possible when validating RBD pool (issue#38500, pr#26683, Jason Dillaman)
  • librbd: reduce the TokenBucket fill cycle and support bursting io configuration (pr#24214, Shiyang Ruan)
  • librbd: remove template declaration of a non-template function (pr#23790, Shiyang Ruan)
  • librbd: reset snaps in rbd_snap_list() (issue#37508, pr#25379, Kefu Chai)
  • librbd: restart io if migration parent gone (issue#36710, pr#25175, Mykola Golub)
  • librbd: send_copyup() fixes and cleanups (pr#26483, Ilya Dryomov)
  • librbd: simplify config override handling (pr#24450, Jason Dillaman)
  • librbd: skip small, unaligned discard extents by default (issue#38146, pr#26432, Jason Dillaman)
  • librbd: support bps throttle and throttle read and write seperately (pr#21635, Dongsheng Yang)
  • librbd: support migrating images with minimal downtime (issue#18430, issue#24439, issue#26874, issue#23659, pr#15831, Patrick Donnelly, Sage Weil, Alfredo Deza, Kefu Chai, Patrick Nawracay, Pavani Rajula, Mykola Golub, Casey Bodley, Yingxin, Jason Dillaman)
  • librbd: support v2 cloning across namespaces (pr#23662, Jason Dillaman)
  • librbd: use object map when doing snap rollback (pr#23110, songweibin)
  • librbd: utilize the journal disabled policy when removing images (issue#23512, pr#22327, Jason Dillaman)
  • librbd: validate data pool for self-managed snapshot support (pr#22737, Mykola Golub)
  • librbd: workaround an ICE of GCC (issue#37719, pr#25733, Kefu Chai)
  • log: avoid heap allocations for most log entries (pr#23721, Patrick Donnelly)
  • lvm: when osd creation fails log the exception (issue#24456, pr#22627, Andrew Schoen)
  • mailmap,organization: Update sangfor affiliation (pr#25225, Zengran Zhang)
  • mds: add reference when setting Connection::priv to existing session (pr#22384, “Yan, Zheng”)
  • mds: fix leak of MDSCacheObject::waiting (issue#24289, pr#22307, “Yan, Zheng”)
  • mds: fix some memory leak (issue#24289, pr#22240, “Yan, Zheng”)
  • mds,messages: silence -Wclass-memaccess warnings (pr#21845, Kefu Chai)
  • mds: properly journal root inode’s snaprealm (issue#24343, pr#22320, “Yan, Zheng”)
  • mds: remove obsolete comments (pr#25549, Patrick Donnelly)
  • mds: reply session reject for open request from blacklisted client (pr#21941, Yan, Zheng, “Yan, Zheng”)
  • mgr: Add ability to trigger a cluster/audit log message from Python (pr#24239, Volker Theile)
  • mgr: Add HandleCommandResult namedtuple (pr#25261, Sebastian Wagner)
  • mgr: add limit param to osd perf query (pr#25151, Mykola Golub)
  • mgr: add per pool force-recovery/backfill commands (issue#38456, pr#26560, xie xingguo)
  • mgr: add per pool scrub commands (pr#26532, xie xingguo)
  • mgr: Allow modules to get/set other module options (pr#25651, Volker Theile)
  • mgr: Allow rook to scale the mon count (pr#26405, Jeff Layton)
  • mgr: always on modules v2 (pr#23970, Noah Watkins)
  • mgr/ansible: Add/remove hosts (pr#26241, Juan Miguel Olmo Martínez)
  • mgr/ansible: Replace Ansible playbook used to retrieve storage devices data (pr#26023, Juan Miguel Olmo Martínez)
  • mgr/ansible: Replace deprecated <get_config> calls (pr#25964, Juan Miguel Olmo Martínez)
  • mgr: Centralize PG_STATES to MgrModule (pr#22594, Wido den Hollander)
  • mgr: ceph-mgr: hold lock while accessing the request list and submitting request (pr#25048, Jerry Lee)
  • mgr: change ‘bytes’ dynamic perf counters to COUNTER type (pr#25908, Mykola Golub)
  • mgr: create always on class of modules (pr#23106, Noah Watkins)
  • mgr: create shell OSD performance query class (pr#24117, Mykola Golub)
  • mgr/dashboard: About modal proposed changes (issue#35693, pr#25376, Kanika Murarka)
  • mgr/dashboard: Add ability to list,set and unset cluster-wide OSD flags to the backend (issue#24056, pr#21998, Patrick Nawracay)
  • mgr/dashboard: Add a ‘clear filter’ button to configuration page (issue#36173, pr#25712, familyuu)
  • mgr/dashboard: add a script to run an API request on a rook cluster (pr#25991, Jeff Layton)
  • mgr/dashboard: Add a unit test form helper class (pr#24633, Stephan Müller)
  • mgr/dashboard: Add backend support for changing dashboard configuration settings via the REST API (pr#22457, Patrick Nawracay)
  • mgr/dashboard: Add breadcrumbs component (issue#24781, pr#23414, Tiago Melo)
  • mgr/dashboard: add columns to Pools table (pr#25791, Alfonso Martínez)
  • mgr/dashboard: Add decorator to skip parameter encoding (issue#26856, pr#23419, Tiago Melo)
  • mgr/dashboard: Add description to menu items on mobile navigation (pr#26198, Sebastian Krah)
  • mgr/dashboard: added command to tox.ini (pr#26073, Alfonso Martínez)
  • mgr/dashboard: added ‘env_build’ to ‘npm run e2e’ (pr#26165, Alfonso Martínez)
  • mgr/dashboard: Added new validators (pr#22526, Stephan Müller)
  • mgr/dashboard: Add error handling on the frontend (pr#21820, Tiago Melo)
  • mgr/dashboard: add Feature Toggles (issue#37530, pr#26102, Ernesto Puerta)
  • mgr/dashboard: Add Filesystems list component (pr#21913, Tiago Melo)
  • mgr/dashboard: Add filtered rows number in table footer (pr#22504, Tiago Melo)
  • mgr/dashboard: Add gap between panel footer buttons (pr#23796, Volker Theile)
  • mgr/dashboard: Add guideline how to brand the UI and update the color scheme (pr#25988, Sebastian Krah)
  • mgr/dashboard: Add help menu entry (pr#22303, Ricardo Marques)
  • mgr/dashboard: Add i18n support (pr#24803, Sebastian Krah, Tiago Melo)
  • mgr/dashboard: Add implicit wait in e2e tests (pr#26384, Tiago Melo)
  • mgr/dashboard: Add info to Pools table (pr#25489, Alfonso Martínez)
  • mgr/dashboard: Add iSCSI discovery authentication UI (pr#26320, Tiago Melo)
  • mgr/dashboard: Add iSCSI Target Edit UI (issue#38014, pr#26367, Tiago Melo)
  • mgr/dashboard: Add left padding to helper icon (pr#24631, Stephan Müller)
  • mgr/dashboard: Add missing frontend I18N (issue#36719, pr#25654, Tiago Melo)
  • mgr/dashboard: Add missing test requirement “werkzeug” (pr#24628, Stephan Müller)
  • mgr/dashboard: Add NFS status endpoint (issue#38399, pr#26539, Tiago Melo)
  • mgr/dashboard: Add ‘no-unused-variable’ rule to tslint (pr#22328, Tiago Melo)
  • mgr/dashboard: Add permission validation to the “Purge Trash” button (issue#36272, pr#24370, Tiago Melo)
  • mgr/dashboard: Add pool cache tiering details tab (issue#25158, pr#25602, familyuu)
  • mgr/dashboard: Add Pool update endpoint (pr#21881, Sebastian Wagner, Stephan Müller)
  • mgr/dashboard: Add Prettier formatter to the frontend (pr#21819, Tiago Melo)
  • mgr/dashboard: add profiles to set cluster’s rebuild performance (pr#24968, Tatjana Dehler)
  • mgr/dashboard: add pytest plugin: faulthandler (pr#25053, Alfonso Martínez)
  • mgr/dashboard: Add REST API for role management (pr#23322, Ricardo Marques)
  • mgr/dashboard: Add scrub action to the OSDs table (pr#22122, Tiago Melo)
  • mgr/dashboard: Adds custom timepicker for grafana iframes (pr#25583, Kanika Murarka)
  • mgr/dashboard: Adds ECP management to the frontend (pr#24627, Stephan Müller)
  • mgr/dashboard: Add shared Confirmation Modal (pr#22601, Tiago Melo)
  • mgr/dashboard: add supported flag information to config options documentation (pr#22760, Tatjana Dehler)
  • mgr/dashboard: Add support for iSCSI’s multi backstores (UI) (pr#26575, Tiago Melo)
  • mgr/dashboard: Add support for managing individual OSD settings/characteristics in the frontend (issue#36487, issue#36444, issue#35448, issue#36188, issue#35811, issue#35816, issue#36086, pr#24606, Patrick Nawracay)
  • mgr/dashboard: Add support for managing individual OSD settings in the backend (issue#24270, pr#23491, Patrick Nawracay)
  • mgr/dashboard: Add support for managing RBD QoS (issue#37572, issue#38004, issue#37570, issue#37936, issue#37574, issue#36191, issue#37845, issue#37569, pr#25233, Patrick Nawracay)
  • mgr/dashboard: Add support for RBD Trash (issue#24272, pr#23351, Tiago Melo)
  • mgr/dashboard: Add support for URI encode (issue#24621, pr#22672, Tiago Melo)
  • mgr/dashboard: Add table actions component (pr#23779, Stephan Müller)
  • mgr/dashboard: Add table of contents to HACKING.rst (pr#25812, Sebastian Krah)
  • mgr/dashboard: Add token authentication to Grafana proxy (pr#22459, Patrick Nawracay)
  • mgr/dashboard: Add TSLint rule “no-unused-variable” (pr#24699, Alfonso Martínez)
  • mgr/dashboard: Add UI for Cluster-wide OSD Flags configuration (pr#22461, Tiago Melo)
  • mgr/dashboard: Add UI for disabling ACL authentication (issue#38218, pr#26388, Tiago Melo)
  • mgr/dashboard: Add UI to configure the telemetry mgr plugin (pr#25989, Volker Theile)
  • mgr/dashboard: Add unique validator (pr#23802, Volker Theile)
  • mgr/dashboard: Allow “/” in pool name (issue#38302, pr#26408, Tiago Melo)
  • mgr/dashboard: Allow insecure HTTPS in run-backend-api-request (pr#21882, Sebastian Wagner)
  • mgr/dashboard: Allow renaming an existing Pool (issue#36560, pr#25107, guodan1)
  • mgr/dashboard: Audit REST API calls (pr#24475, Volker Theile)
  • mgr/dashboard: Auto-create a name for RBD image snapshots (pr#23735, Volker Theile)
  • mgr/dashboard: avoid blank content in Read/Write Card (pr#25563, Alfonso Martínez)
  • mgr/dashboard: awsauth: fix python3 string decode problem (pr#21794, Ricardo Dias)
  • mgr/dashboard: Can’t handle user editing when tenants are specified (pr#24757, Volker Theile)
  • mgr/dashboard: Catch LookupError when checking the RGW status (pr#24028, Volker Theile)
  • mgr/dashboard: CdFormGroup (pr#22644, Stephan Müller)
  • mgr/dashboard: Ceph dashboard user management from the UI (pr#22758, Ricardo Marques)
  • mgr/dashboard: Change ‘Client Recovery’ title (pr#26883, Ernesto Puerta)
  • mgr/dashboard: Changed background color of Masthead to brand gray (issue#35690, pr#25628, Neha Gupta)
  • mgr/dashboard: Changed default value of decimal point to 1 (pr#22386, Tiago Melo)
  • mgr/dashboard: Change icon color in notifications (pr#26586, Volker Theile)
  • mgr/dashboard: Check content-type before decode json response (pr#24350, Ricardo Marques)
  • mgr/dashboard: check for existence of Grafana dashboard (issue#36356, pr#25154, Kanika Murarka)
  • mgr/dashboard: Cleanup of OSD list methods (pr#24823, Stephan Müller)
  • mgr/dashboard: Cleanup of the cluster and audit log (pr#26188, Sebastian Krah)
  • mgr/dashboard: Cleanup (pr#24831, Patrick Nawracay)
  • mgr/dashboard: Clean up pylint’s disable:no-else-return (pr#26509, Patrick Nawracay)
  • mgr/dashboard: Cleanup Python code (pr#26743, Volker Theile)
  • mgr/dashboard: Cleanup RGW config checks (pr#22669, Volker Theile)
  • mgr/dashboard: Close modal dialogs on login screen (pr#23328, Volker Theile)
  • mgr/dashboard: code cleanup (pr#25502, Alfonso Martínez)
  • mgr/dashboard: Color variables for color codes (issue#24575, pr#22695, Kanika Murarka)
  • mgr/dashboard config options add (issue#34528, issue#24996, issue#24455, issue#36173, pr#23230, Tatjana Dehler)
  • mgr/dashboard: Config options integration (read-only) depends on #22422 (pr#21460, Tatjana Dehler)
  • mgr/dashboard: config options table cleanup (issue#34533, pr#24523, Tatjana Dehler)
  • mgr/dashboard: config option type names update (issue#37843, pr#25876, Tatjana Dehler)
  • mgr/dashboard: configs textarea disallow horizontal resize (issue#36452, pr#24614, Tatjana Dehler)
  • mgr/dashboard: Configure all mgr modules in UI (pr#26116, Volker Theile)
  • mgr/dashboard: Confirmation modal doesn’t close (pr#24544, Volker Theile)
  • mgr/dashboard: Confusing tilted time stamps in the CephFS performance graph (pr#25909, Volker Theile)
  • mgr/dashboard: consider config option default values (issue#37683, pr#25616, Tatjana Dehler)
  • mgr/dashboard: controller infrastructure refactor and new features (pr#22210, Patrick Nawracay, Ricardo Dias)
  • mgr/dashboard: Correct permission decorator (pr#26135, Tina Kallio)
  • mgr/dashboard: CRUSH map viewer (issue#35684, pr#24766, familyuu)
  • mgr/dashboard: CRUSH map viewer RFE (issue#37794, pr#26162, familyuu)
  • mgr/dashboard: Dashboard info cards refactoring (pr#22902, Alfonso Martínez)
  • mgr/dashboard: Datatable error panel blinking on page loading (pr#23316, Volker Theile)
  • mgr/dashboard: Deletion dialog falsely executes deletion when pressing ‘Cancel’ (pr#22003, Volker Theile)
  • mgr/dashboard: Disable package-lock.json creation (pr#22061, Tiago Melo)
  • mgr/dashboard: Disable RBD actions during task execution (pr#23445, Ricardo Marques)
  • mgr/dashboard: disallow editing read-only config options (part 2) (pr#26450, Tatjana Dehler)
  • mgr/dashboard: disallow editing read-only config options (pr#26297, Tatjana Dehler)
  • mgr/dashboard: Display logged in user (issue#24822, pr#24213, guodan1, guodan)
  • mgr/dashboard: Display notification if RGW is not configured (pr#21785, Volker Theile)
  • mgr/dashboard: Display RGW user/bucket quota max size in human readable form (pr#23842, Volker Theile)
  • mgr/dashboard: Do not fetch pool list on RBD edit (pr#22404, Ricardo Marques)
  • mgr/dashboard: Do not require cert for http (issue#36069, pr#24103, Boris Ranto)
  • mgr/dashboard: Drop iSCSI gateway name parameter (pr#26984, Ricardo Marques)
  • mgr/dashboard: enable coverage for API tests (pr#26851, Alfonso Martínez)
  • mgr/dashboard: Escape regex pattern in DeletionModalComponent (issue#24902, pr#23420, Tiago Melo)
  • mgr/dashboard: Exception.message doesn’t exist on Python 3 (pr#24349, Ricardo Marques)
  • mgr/dashboard: Extract/Refactor Task merge (pr#23555, Stephan Müller, Tiago Melo)
  • mgr/dashboard: Filter out tasks depending on permissions (pr#25426, Tina Kallio)
  • mgr/dashboard: Fix /api/grafana/validation (pr#25997, Zack Cerza)
  • mgr/dashboard: Fix bug in user form when changing password (pr#23939, Volker Theile)
  • mgr/dashboard: Fix cherrypy static content URL prefix config (pr#23183, Ricardo Marques)
  • mgr/dashboard: Fix duplicate error messages (pr#23287, Stephan Müller)
  • mgr/dashboard: Fix duplicate tasks (pr#24930, Tiago Melo)
  • mgr/dashboard: Fix e2e script (pr#22903, Tiago Melo)
  • mgr/dashboard: Fixed performance details context for host list row selection (issue#37854, pr#26020, Neha Gupta)
  • mgr/dashboard: Fixed typos in environment.build.js (pr#26650, Lenz Grimmer)
  • mgr/dashboard: Fix error when clicking on newly created OSD (issue#36245, pr#24369, Patrick Nawracay)
  • mgr/dashboard: Fixes documentation link- to open in new tab (pr#22237, a2batic)
  • mgr/dashboard: Fixes Grafana 500 error (issue#37809, pr#25830, Kanika Murarka)
  • mgr/dashboard: Fix failing QA test: test_safe_to_destroy (issue#37290, pr#25149, Patrick Nawracay)
  • mgr/dashboard: Fix flaky QA tests (pr#24024, Patrick Nawracay)
  • mgr/dashboard: Fix Forbidden Error with some roles (issue#37293, pr#25141, Ernesto Puerta)
  • mgr/dashboard: fix for ‘Cluster >> Hosts’ page (pr#24974, Alfonso Martínez)
  • mgr/dashboard: Fix formatter service unit test (pr#22323, Tiago Melo)
  • mgr/dashboard: fix for using ‘::’ on hosts without ipv6 (pr#26635, Noah Watkins)
  • mgr/dashboard: Fix growing table in firefox (issue#26999, pr#23711, Tiago Melo)
  • mgr/dashboard: Fix HttpClient Module imports in unit tests (pr#24679, Tiago Melo)
  • mgr/dashboard: Fix iSCSI mutual password input type (pr#26854, Ricardo Marques)
  • mgr/dashboard: Fix iSCSI service unit tests (pr#26319, Tiago Melo)
  • mgr/dashboard: Fix issues in controllers/docs (pr#26738, Volker Theile)
  • mgr/dashboard: Fix Jest conflict with coverage files (pr#22155, Tiago Melo)
  • mgr/dashboard: Fix layout issues in UI (issue#24525, pr#22597, Volker Theile)
  • mgr/dashboard: Fix links to external documentation (pr#24829, Patrick Nawracay)
  • mgr/dashboard: fix lint error caused by codelyzer update (pr#22693, Tiago Melo)
  • mgr/dashboard: fix lint error (pr#22417, Tiago Melo)
  • mgr/dashboard: Fix long running RBD cloning / copying message (pr#24641, Ricardo Marques)
  • mgr/dashboard: Fix missing failed restore notification (issue#36513, pr#24664, Tiago Melo)
  • mgr/dashboard: Fix modified files only (frontend) (pr#25346, Patrick Nawracay)
  • mgr/dashboard: Fix moment.js deprecation warning (pr#21981, Tiago Melo)
  • mgr/dashboard: Fix more layout issues in UI (pr#22600, Volker Theile)
  • mgr/dashboard: Fix navbar focused color (pr#25769, Volker Theile)
  • mgr/dashboard: Fix notifications in user list and form (pr#23797, Volker Theile)
  • mgr/dashboard: Fix OSD down error display (issue#24530, pr#23754, Patrick Nawracay)
  • mgr/dashboard: Fix pool usage not displaying on filesystem page (pr#22453, Tiago Melo)
  • mgr/dashboard: Fix problem with ErasureCodeProfileService (pr#24694, Tiago Melo)
  • mgr/dashboard: Fix Python3 issue (pr#24617, Patrick Nawracay)
  • mgr/dashboard: fix query parameters in task annotated endpoints (issue#25096, pr#23229, Ricardo Dias)
  • mgr/dashboard: Fix RBD actions disable (pr#24637, Ricardo Marques)
  • mgr/dashboard: Fix RBD features style (pr#22759, Ricardo Marques)
  • mgr/dashboard: Fix RBD object size dropdown options (pr#22830, Ricardo Marques)
  • mgr/dashboard: Fix RBD task metadata (pr#22088, Tiago Melo)
  • mgr/dashboard: Fix redirect to login page on session lost (pr#23388, Ricardo Marques)
  • mgr/dashboard: fix reference to oA (pr#24343, Joao Eduardo Luis)
  • mgr/dashboard: Fix regression on rbd form component (issue#24757, pr#22829, Tiago Melo)
  • mgr/dashboard: Fix reloading of pool listing (pr#26182, Patrick Nawracay)
  • mgr/dashboard: Fix renaming of pools (pr#25423, Patrick Nawracay)
  • mgr/dashboard: Fix search in Source column of RBD configuration list (issue#37569, pr#26765, Patrick Nawracay)
  • mgr/dashboard: fix skipped backend API tests (pr#26172, Alfonso Martínez)
  • mgr/dashboard: Fix some datatable CSS issues (pr#22216, Volker Theile)
  • mgr/dashboard: Fix spaces around status labels on OSD list (pr#24607, Patrick Nawracay)
  • mgr/dashboard: Fix summary refresh call stack (pr#25984, Tiago Melo)
  • mgr/dashboard: Fix test_full_health test (issue#37872, pr#25913, Tatjana Dehler)
  • mgr/dashboard: Fix test_remove_not_expired_trash qa test (issue#37354, pr#25221, Tiago Melo)
  • mgr/dashboard: fix: toast notifications hiding utility menu (pr#26429, Alfonso Martínez)
  • mgr/dashboard: fix: tox not detecting deps changes (pr#26409, Alfonso Martínez)
  • mgr/dashboard: Fix ts error on iSCSI page (pr#24715, Ricardo Marques)
  • mgr/dashboard: Fix typo in NoOrchesrtatorConfiguredException class name (pr#26334, Volker Theile)
  • mgr/dashboard: Fix typo in pools management (pr#26323, Lenz Grimmer)
  • mgr/dashboard: Fix typo (pr#23363, Volker Theile)
  • mgr/dashboard: Fix unit tests cli warnings (pr#21933, Tiago Melo)
  • mgr/dashboard: Format small numbers correctly (issue#24081, pr#21980, Stephan Müller)
  • mgr/dashboard: Get user ID via RGW Admin Ops API (pr#22416, Volker Theile)
  • mgr/dashboard: Grafana dashboard updates and additions (pr#24314, Paul Cuzner)
  • mgr/dashboard: Grafana graphs integration with dashboard (pr#23666, Kanika Murarka)
  • mgr/dashboard: Grafana proxy backend (pr#21644, Patrick Nawracay)
  • mgr/dashboard: Group buttons together into one menu on OSD page (issue#37380, pr#26189, Tatjana Dehler)
  • mgr/dashboard: Handle class objects as regular objects in KV-table (pr#24632, Stephan Müller)
  • mgr/dashboard: Handle errors during deletion (pr#22002, Volker Theile)
  • mgr/dashboard: Hide empty fields and render all objects in KV-table (pr#25894, Stephan Müller)
  • mgr/dashboard: Hide progress bar in case of an error (pr#22419, Volker Theile)
  • mgr/dashboard: Implement OSD purge (issue#35811, pr#26242, Patrick Nawracay)
  • mgr/dashboard: Improve CRUSH map viewer (pr#24934, Volker Theile)
  • mgr/dashboard: Improved support for generating OpenAPI Spec documentation (issue#24763, pr#26227, Tina Kallio)
  • mgr/dashboard: Improve error message handling (pr#24322, Volker Theile)
  • mgr/dashboard: Improve error panel (pr#21851, Volker Theile)
  • mgr/dashboard: Improve exception handling in /api/rgw/status (pr#25836, Volker Theile)
  • mgr/dashboard: Improve exception handling (issue#23823, pr#21066, Sebastian Wagner)
  • mgr/dashboard: Improve HACKING.rst (pr#22281, Patrick Nawracay)
  • mgr/dashboard: Improve ‘no pool’ message on rbd form (pr#22150, Ricardo Marques)
  • mgr/dashboard: Improve RBD form (issue#38303, pr#26433, Tiago Melo)
  • mgr/dashboard: Improve RGW address parser (pr#25870, Volker Theile)
  • mgr/dashboard: Improve RgwUser controller (pr#25300, Volker Theile)
  • mgr/dashboard: Improves documentation for Grafana Setting (issue#36371, pr#24511, Kanika Murarka)
  • mgr/dashboard: Improve str_to_bool (pr#22757, Volker Theile)
  • mgr/dashboard: Improve SummaryService and TaskWrapperService (pr#22906, Tiago Melo)
  • mgr/dashboard: Improve table pagination style (pr#22065, Ricardo Marques)
  • mgr/dashboard: Introduce pipe to convert bool to text (pr#26507, Volker Theile)
  • mgr/dashboard: iscsi: adds CLI command to enable/disable API SSL verification (pr#26891, Ricardo Dias)
  • mgr/dashboard: iSCSI - Adds support for pool/image names with dots (pr#26503, Ricardo Marques)
  • mgr/dashboard: iSCSI - Add support for disabling ACL authentication (backend) (pr#26382, Ricardo Marques)
  • mgr/dashboard: iSCSI discovery authentication API (pr#26115, Ricardo Marques)
  • mgr/dashboard: iSCSI - Infrastructure for multiple backstores (backend) (pr#26506, Ricardo Marques)
  • mgr/dashboard: iSCSI management API (pr#25638, Ricardo Marques, Ricardo Dias)
  • mgr/dashboard: iSCSI management UI (pr#25995, Ricardo Marques, Tiago Melo)
  • mgr/dashboard: iSCSI - Support iSCSI passwords with ‘/’ (pr#26790, Ricardo Marques)
  • mgr/dashboard: JWT authentication (pr#22833, Ricardo Dias)
  • mgr/dashboard: Landing Page: chart improvements (pr#24810, Alfonso Martínez)
  • mgr/dashboard: Landing Page: info visibility (pr#24513, Alfonso Martínez)
  • mgr/dashboard: Log frontend errors + @UiController (pr#22285, Ricardo Marques)
  • mgr/dashboard: Login failure should return HTTP 400 (pr#22403, Ricardo Marques)
  • mgr/dashboard: ‘Logs’ links permission in Landing Page (pr#25231, Alfonso Martínez)
  • mgr/dashboard: Make deletion dialog more touch device friendly (pr#23897, Volker Theile)
  • mgr/dashboard: Map dev ‘releases’ to master (pr#24763, Zack Cerza)
  • mgr/dashboard: Module dashboard.services.ganesha has several lint issues (pr#26378, Volker Theile)
  • mgr/dashboard: More configs for table updateSelectionOnRefresh (pr#24015, Ricardo Marques)
  • mgr/dashboard: Move Cluster/Audit logs from front page to dedicated Logs page (pr#23834, Diksha Godbole)
  • mgr/dashboard: Move unit-test-helper into the new testing folder (pr#22857, Tiago Melo)
  • mgr/dashboard: Navbar dropdown button does not respond for mobile browsers (pr#21967, Volker Theile)
  • mgr/dashboard: New Landing Page: Milestone 2 (pr#24326, Alfonso Martínez)
  • mgr/dashboard: New Landing Page (pr#23568, Alfonso Martínez)
  • mgr/dashboard: nfs-ganesha: controller API documentation (pr#26716, Ricardo Dias)
  • mgr/dashboard: NFS management UI (pr#26085, Tiago Melo)
  • mgr/dashboard: ng serve bind to 0.0.0.0 (pr#22058, Ricardo Marques)
  • mgr/dashboard: no side-effects on failed user creation (pr#24200, Joao Eduardo Luis)
  • mgr/dashboard: Notification queue (pr#25325, Stephan Müller)
  • mgr/dashboard: npm run e2e:dev (pr#25136, Stephan Müller)
  • mgr/dashboard: Performance counter progress bar keeps infinitely looping (pr#24448, Volker Theile)
  • mgr/dashboard: permanent pie chart slice hiding (pr#25276, Alfonso Martínez)
  • mgr/dashboard: PGs will update as expected (pr#26589, Stephan Müller)
  • mgr/dashboard: Pool management (pr#21614, Stephan Müller)
  • mgr/dashboard: pool stats not returned by default (pr#25635, Alfonso Martínez)
  • mgr/dashboard: Possible fix for some dashboard timing issues (issue#36107, pr#24219, Patrick Nawracay)
  • mgr/dashboard: Prettify package.json (pr#22401, Ricardo Marques)
  • mgr/dashboard: Prettify RGW JS code (pr#22278, Volker Theile)
  • mgr/dashboard: Prevent API call on every keystroke (pr#23391, Volker Theile)
  • mgr/dashboard: Print a blank space between value and unit (pr#22387, Volker Theile)
  • mgr/dashboard: Progress bar does not stop in TableKeyValueComponent (pr#24016, Volker Theile)
  • mgr/dashboard: Prometheus integration (pr#25309, Stephan Müller)
  • mgr/dashboard: Provide all four ‘mandatory’ OSD flags (issue#37857, pr#25905, Tatjana Dehler)
  • mgr/dashboard/qa: Fix ECP creation test (pr#25120, Stephan Müller)
  • mgr/dashboard/qa: Fix various vstart_runner.py issues (issue#36581, pr#24767, Volker Theile)
  • mgr/dashboard: Redirect /block to /block/rbd (pr#24722, Zack Cerza)
  • mgr/dashboard: Reduce Jest logs in CI (pr#24764, Tiago Melo)
  • mgr/dashboard: Refactor autofocus directive (pr#23910, Volker Theile)
  • mgr/dashboard: Refactoring of DeletionModalComponent (pr#24005, Patrick Nawracay)
  • mgr/dashboard: Refactor perf counters (pr#21673, Volker Theile)
  • mgr/dashboard: Refactor RGW backend (pr#21784, Volker Theile)
  • mgr/dashboard: Refactor role management (pr#23960, Volker Theile)
  • mgr/dashboard: Relocate empty pipe (pr#26588, Volker Theile)
  • mgr/dashboard: Removed unnecessary fake services from unit tests (pr#22473, Stephan Müller)
  • mgr/dashboard: Remove fieldsets when using CdTable (pr#23730, Tiago Melo)
  • mgr/dashboard: Remove _filterValue from CdFormGroup (issue#26861, pr#24719, Stephan Müller)
  • mgr/dashboard: Remove husky package (pr#21971, Tiago Melo)
  • mgr/dashboard: Remove karma packages (pr#23181, Tiago Melo)
  • mgr/dashboard: Remove param when calling notificationService.show (pr#26447, Volker Theile)
  • mgr/dashboard: Remove top-right actions text and add “About” page (pr#22762, Ricardo Marques)
  • mgr/dashboard: Remove unused code (pr#25439, Patrick Nawracay)
  • mgr/dashboard: Remove useless code (pr#23911, Volker Theile)
  • mgr/dashboard: Remove useless observable unsubscriptions (pr#21928, Ricardo Marques)
  • mgr/dashboard: replace configuration html table with cd-table (pr#21643, Tatjana Dehler)
  • mgr/dashboard: Replaced “Pool” with “Pools” in navigation bar (pr#22715, Lenz Grimmer)
  • mgr/dashboard: Replace RGW proxy controller (issue#24436, pr#22470, Volker Theile)
  • mgr/dashboard: Reset settings to their default values (pr#22298, Patrick Nawracay)
  • mgr/dashboard: Resolve TestBed performance issue (pr#21783, Stephan Müller)
  • mgr/dashboard: rest: add support for query params (pr#22318, Ricardo Dias)
  • mgr/dashboard: RestClient can’t handle ProtocolError exceptions (pr#23347, Volker Theile)
  • mgr/dashboard: restcontroller: minor improvements and bug fixes (pr#22528, Ricardo Dias)
  • mgr/dashboard: RGW is not working if an URL prefix is defined (pr#23200, Volker Theile)
  • mgr/dashboard: RGW proxy can’t handle self-signed SSL certificates (pr#22735, Volker Theile)
  • mgr/dashboard: 基于角色的身份验证/授权系统 (issue#23796, pr#22283, Ricardo Marques, Ricardo Dias)
  • mgr/dashboard: 从 UI 管理角色 (pr#23409, Ricardo Marques)
  • mgr/dashboard: 搜索空值的条目时损坏 (issue#38583, pr#26766, Patrick Nawracay)
  • mgr/dashboard: 通过父类设置 errno (pr#21945, Kefu Chai, Ricardo Dias)
  • mgr/dashboard: 设置 MODULE_OPTIONS 类型和默认值 (pr#26386, Volker Theile)
  • mgr/dashboard: 在 RestClient 调用中设置超时 (pr#23224, Volker Theile)
  • mgr/dashboard: 设置服务 (pr#25327, Stephan Müller)
  • mgr/dashboard: 根据用户角色显示/隐藏 Grafana 选项卡 (issue#36655, pr#24851, Kanika Murarka)
  • mgr/dashboard: 为 block-mgr 显示存储池下拉菜单 (issue#37295, pr#25144, Ernesto Puerta)
  • mgr/dashboard: 在 RGW 表单中显示成功通知 (pr#26482, Volker Theile)
  • mgr/dashboard: 简化 PoolForm 方法 (pr#24892, Patrick Nawracay)
  • mgr/dashboard: 简化 OSD 禁用操作测试 (pr#24824, Stephan Müller)
  • mgr/dashboard: run-backend-rook-api-request.sh 中 minikube 的特殊情况处理 (pr#26600, Jeff Layton)
  • mgr/dashboard: SSO - SAML 2.0 支持 (pr#24489, Ricardo Marques, Ricardo Dias)
  • mgr/dashboard: SSO - UserDoesNotExist 页面 (pr#26058, Alfonso Martínez)
  • mgr/dashboard: ‘js-error’ 端点上的堆栈跟踪是可选的 (pr#22402, Ricardo Marques)
  • mgr/dashboard: 状态信息卡改进 (pr#25155, Alfonso Martínez)
  • mgr/dashboard: 存储用户表配置 (pr#20822, Stephan Müller)
  • mgr/dashboard: 在 KV-table 中将 object[] 字符串化 (pr#22422, Stephan Müller)
  • mgr/dashboard: 基于 Swagger-UI 的仪表板 REST API 页面 (issue#23898, pr#22282, Ricardo Dias)
  • mgr/dashboard: 将列样式与 UI 的其余部分同步 (pr#26407, Volker Theile)
  • mgr/dashboard: tasks.mgr.dashboard.test_osd.OsdTest 失败 (pr#24947, Volker Theile)
  • mgr/dashboard: 任务包装器服务 (pr#22014, Stephan Müller)
  • mgr/dashboard: RGW 后端无法正确处理 IPv6 (pr#24222, Volker Theile)
  • mgr/dashboard: typescript 清理 (pr#26338, Alfonso Martínez)
  • mgr/dashboard: 单元测试清理 (pr#24591, Tiago Melo)
  • mgr/dashboard: 更新 Angular 包 (pr#23706, Tiago Melo)
  • mgr/dashboard: 更新 Angular 到版本 6 (pr#22082, Tiago Melo)
  • mgr/dashboard: 更新 bootstrap 到 v3.4.1 (pr#26410, Tiago Melo)
  • mgr/dashboard: PG 状态图表中的颜色更新 (pr#26203, Alfonso Martínez)
  • mgr/dashboard: 更新健康 API 测试 (pr#25813, Alfonso Martínez)
  • mgr/dashboard: 404 页面上的图像已更新 (pr#23820, Lenz Grimmer)
  • mgr/dashboard: 更新前端包 (pr#23466, Tiago Melo)
  • mgr/dashboard: 更新 I18N 翻译 (pr#26649, Tiago Melo)
  • mgr/dashboard: 更新 npm 包 (pr#24681, Tiago Melo)
  • mgr/dashboard: 更新 npm 包 (pr#25656, Tiago Melo)
  • mgr/dashboard: 更新 npm 包 (pr#26437, Tiago Melo)
  • mgr/dashboard: 更新 npm 包 (pr#26647, Tiago Melo)
  • mgr/dashboard: 更新 python 依赖项 (pr#24928, Alfonso Martínez)
  • mgr/dashboard: 更新 RxJS 到版本 6 (pr#21826, Tiago Melo)
  • mgr/dashboard: 升级 python 开发依赖项 (pr#26007, Alfonso Martínez)
  • mgr/dashboard: 升级 Swimlane 的 data-table (pr#21880, Volker Theile)
  • mgr/dashboard: 在开发代理配置和 HACKING.rst 中使用 HTTPS (pr#21777, Volker Theile)
  • mgr/dashboard: 在 sparkline 图表上使用人类可读的单位 (issue#25075, pr#23446, Tiago Melo)
  • mgr/dashboard: 用户密码应该是可选的 (pr#24128, Ricardo Marques)
  • mgr/dashboard: 验证 OSD 恢复优先级表单输入值 (issue#37436, pr#25472, Tatjana Dehler)
  • mgr/dashboard: 验证重复的 RGW 用户电子邮件 (issue#37369, pr#25334, Kanika Murarka)
  • mgr: 也为 MgrStandbyModule 定义选项默认值 (pr#25734, Kefu Chai)
  • mgr: devicehealth: dict iteritems 不出错 (pr#22827, Abhishek Lekshmanan)
  • mgr: Diskprediction cloud 在配置更改时激活 (pr#25165, Rick Chen)
  • mgr: 如果 EOPNOTSUPP 则不写入输出 (issue#37444, pr#25317, Kefu Chai)
  • mgr: 启用模块间调用 (pr#22951, John Spray)
  • mgr: 向 python 模块暴露 avgcount (pr#22010, Boris Ranto)
  • mgr: 为长时间运行的 avg 暴露 avg 数据 (pr#22420, Boris Ranto)
  • mgr: 通过管理器暴露 ec profiles (pr#23010, Noah Watkins)
  • mgr: 扩展批处理以接受明确的设备列表 (issue#37502, issue#37086, issue#37590, pr#25542, Jan Fajerski)
  • mgr: 修复死锁引起的信标中断 (pr#23482, Yan Jun)
  • mgr: 修复由于同名守护进程的多个会话导致的崩溃 (pr#25534, Mykola Golub)
  • mgr: 修复 balancer execute 上的权限 (issue#25345, pr#23387, John Spray)
  • mgr: 修复 rook 规范并让 service_describe 为 nfs 服务提供 rados_config_location 字段 (pr#25970, Jeff Layton)
  • mgr: 修复变量名称中的拼写错误并进行清理 (pr#22069, Kefu Chai)
  • mgr: 修复处于未知状态的 pgs 显示 (issue#25103, pr#23622, huanwen ren)
  • mgr: 如果没有返回元数据则忽略守护进程 (pr#22794, Wido den Hollander)
  • mgr: 忽略 __pycache__ 和 wheelhouse 目录 (pr#26481, Volker Theile)
  • mgr: 改进 ActivePyModules::get_typed_config 实现 (pr#26149, Volker Theile)
  • mgr: 改进 MgrModule 方法的文档 (pr#22792, John Spray)
  • mgr: 改进动态 osd perf counters (pr#25488, Mykola Golub)
  • mgr: 在 SLOW_OPS 输出中包含守护进程详细信息 (issue#23205, pr#21750, Brad Hubbard)
  • mgr: #includefor clang (pr#22756, Willem Jan Withagen)
  • mgr: 保持 status, balancer 始终开启 (pr#23558, Sage Weil)
  • mgr: 使模块错误消息更具描述性 (pr#25537, Joao Eduardo Luis)
  • mgr: mgr/ansible: Ansible orchestrator 模块 (pr#24445, Juan Miguel Olmo Martínez)
  • mgr: mgr/ansible: 创建/删除 OSD (pr#25497, Juan Miguel Olmo Martínez)
  • mgr: mgr/ansible: Python 3 修复 (pr#25645, Sebastian Wagner)
  • mgr: mgr/balancer: 添加 weekday 的 min/max 字段并与 C 兼容 (pr#26505, xie xingguo)
  • mgr: mgr/balancer: 自动平衡存储池列表 (pr#25940, xie xingguo)
  • mgr: mgr/balancer: 如果 upmap 实际上不起作用则归咎 (pr#25941, xie xingguo)
  • mgr: mgr/balancer: deepcopy 最佳计划 - 否则我们得到最新的 (issue#27000, pr#23682, Stefan Priebe)
  • mgr: mgr/balancer: 将自动平衡限制为特定的工作日 (pr#26440, xie xingguo)
  • mgr: mgr/balancer: 跳过有 pending pg-merge 的存储池的自动平衡 (pr#25626, xie xingguo)
  • mgr: mgrc: 通过 mgr_stats_threshold 禁用统计信息 (issue#25197, pr#23352, John Spray)
  • mgr: mgr/crash: 添加小时粒度崩溃摘要 (pr#23121, Noah Watkins)
  • mgr: mgr/crash: 将进程名称添加到崩溃元数据 (pr#25244, Mykola Golub)
  • mgr: mgr/crash: 修复 python3 无效语法问题 (pr#23800, Ricardo Dias)
  • mgr: mgr/DaemonServer: 为 “ceph osd safe-to-destroy” 添加 js-output (pr#24799, xie xingguo)
  • mgr: mgr/DaemonServer: 将 pgmap 使用情况记录到集群日志 (pr#26105, Neha Ojha)
  • mgr: mgr/dashboard: 添加禁用 SSL 的选项 (pr#22593, Wido den Hollander)
  • mgr: mgr/dashboard: 禁用后端测试覆盖率 (pr#24193, Alfonso Martínez)
  • mgr: mgr/dashboard: 修复仪表板关闭/重启 (pr#22159, Boris Ranto)
  • mgr: mgr/dashboard: 默认监听端口 8443 而不是 8080 (pr#22409, Wido den Hollander)
  • mgr: mgr/dashboard: 使用 orchestrator_cli 后端设置 (pr#26325, Jeff Layton)
  • mgr: mgr/deepsea: 始终对 salt-api 身份验证使用 'password' 参数 (pr#26904, Tim Serong)
  • mgr: mgr/deepsea: 启动事件阅读器时检查 inflight completions,清理日志记录和注释 (pr#25391, Tim Serong)
  • mgr: mgr/deepsea: DeepSea orchestrator 模块 (pr#24610, Tim Serong)
  • mgr: mgr/devicehealth: 清理错误处理 (pr#23205, John Spray)
  • mgr: mgr/devicehealth: 修复 is_valid_daemon_name 拼写错误 (pr#24822, Lan Liu)
  • mgr: mgr/diskprediction_cloud: 修复 total_size 为 0 时除以零的错误 (pr#26045, Rick Chen)
  • mgr: mgr/diskprediction_cloud: 删除 requirements 文件中不必要的库 (issue#37533, pr#25433, Rick Chen)
  • mgr: mgr/influx: 使用 Queue 存储需要写入的点 (pr#23464, Wido den Hollander)
  • mgr: mgr/insights: insights 报告模块 (pr#23497, Noah Watkins)
  • mgr: mgr/mgr_module.py: 修复 set_store/set_store_json 的文档 (pr#22654, Dan Mick)
  • mgr: mgr/orchestrator: 添加 RGW 服务支持 (pr#23702, Rubab-Syed)
  • mgr: mgr/orchestrator: 添加 service_action 方法 (pr#25649, Tim Serong)
  • mgr: mgr/orchestrator: 添加对 “ceph orchestrator service ls” 的支持 (pr#24863, Jeff Layton)
  • mgr: mgr/orchestrator: 改进调试能力 (pr#24147, Sebastian Wagner)
  • mgr: mgr/orchestrator: 改进 docstrings,添加类型提示 (pr#25669, Sebastian Wagner)
  • mgr: mgr/orchestrator: 简化 Orchestrator wait 实现 (pr#25401, Juan Miguel Olmo Martínez)
  • mgr: mgr/orchestrator: 在 Completion 类中使用 result 属性 (pr#24672, Tim Serong)
  • mgr: mgr/progress: 改进+测试 OSD out 处理 (pr#23146, John Spray)
  • mgr: mgr/progress: 引入 progress 模块 (pr#22993, John Spray)
  • mgr: mgr/prometheus: 添加恢复指标 (pr#26880, Paul Cuzner)
  • mgr: mgr/prometheus: 获取 osd_objectstore 一次而不是两次 (pr#26558, Konstantin Shalygin)
  • mgr: mgr/restful: 修复 deep-scrub 拼写错误 (issue#36720, pr#24841, Boris Ranto)
  • mgr: mgr/restful: 修复获取 osd 信息时 python 抛出异常的问题 (pr#21138, zouaiguo)
  • mgr: mgr/restful: 更新字符串格式化为 str.format() (pr#26210, James McClune)
  • mgr: mgr/rook: 修复最近 rook 更改的 API 版本和对象类型 (pr#25452, Jeff Layton)
  • mgr: mgr/rook: 修复 Rook 集群名称检测 (pr#24560, Sebastian Wagner)
  • mgr: mgr/rook: 更新 v1beta1 API (pr#23570, John Spray)
  • mgr: mgr/status: 添加 standby-replay MDS ceph 版本 (pr#23624, Zhi Zhang)
  • mgr: mgr/status: 输出到 stdout,而不是 stderr (issue#24175, pr#22089, John Spray)
  • mgr: mgr/telegraf: 发送更多 PG 状态信息给 Telegraf (pr#22436, Wido den Hollander)
  • mgr: mgr/telegraf: Ceph Mgr 的 Telegraf 模块 (pr#21782, Wido den Hollander)
  • mgr: mgr/telegraf: 使用 Python generator 并捕获 OSError (pr#22418, Wido den Hollander)
  • mgr: mgr/telemetry: 添加 Ceph Telemetry 模块以将报告发送回项目 (pr#21982, Wido den Hollander)
  • mgr: mgr/telemetry: 检查布尔值是否为 False 或不存在 (pr#22223, Wido den Hollander)
  • mgr: mgr/telemetry: 修复各种问题 (pr#25770, Volker Theile)
  • mgr: mgr/volumes: 修复 orchestrator remove 操作 (pr#25339, Jeff Layton)
  • mgr: mgr/zabbix: 删除 “total_objects” 字段 (pr#26052, Kefu Chai)
  • mgr: mgr/zabbix: 发送更多 PG 信息给 Zabbix (pr#22434, Wido den Hollander)
  • mgr: 杂项小型 mgr 修复 (pr#22893, John Spray)
  • mgr: 使用 @CLICommand 装饰器声明模块 CLI 命令 (pr#25543, Ricardo Dias)
  • mgr,mon: mgr,mon: 修复应用更改的 mon_stat_smooth_intervals (pr#23481, Yan Jun)
  • mgr/orchestrator: 为 ServiceDescription 添加有用的属性 (pr#25468, Ricardo Dias)
  • mgr/orchestrator: 向接口添加主机 mon mgr 管理 (pr#26314, Sebastian Wagner, Noah Watkins)
  • mgr/orchestrator: 向 CLI 命令添加 JSON 输出 (pr#25340, Sebastian Wagner)
  • mgr: orchestrator: 添加删除服务的功能 (pr#25366, Jeff Layton)
  • mgr/orchestrator: 允许 orchestrator 扩展 NFS 服务器数量 (pr#26633, Jeff Layton)
  • mgr/orchestrator: 澄清关于 kubernetes python 模块的错误消息 (pr#24525, Jeff Layton)
  • mgr/orchestrator_cli: 修复 README.md (pr#26443, Sebastian Wagner)
  • mgr/orchestrator: 扩展 DriveGroupSpec (pr#25912, Sebastian Wagner)
  • mgr/orchestrator: 修复 None 属性的设备漂亮打印 (pr#26357, Ricardo Dias)
  • mgr/orchestrator: 修复 _list_services 显示 (pr#25610, Jeff Layton)
  • mgr/orchestrator: 修复 rook osd create dispatcher (pr#26317, Jeff Layton)
  • mgr/orchestrator: 使用 @CLICommand (pr#26094, Sebastian Wagner)
  • mgr/orchestrator: 删除 unicode 空格 (pr#25323, Sebastian Wagner)
  • mgr/orchestrator/rook: 允许在目录中创建 OSD (pr#26570, Jeff Layton)
  • mgr/orchestrator: 统一 osd create 和 osd add (pr#26171, Sebastian Wagner)
  • mgr/orch: 刷新库存查询选项 (pr#26346, Noah Watkins)
  • mgr: prometheus: 将 bluestore db 和 wal/journal 设备添加到 ceph_disk_occupation 指标 (issue#36627, pr#24821, Konstantin Shalygin)
  • mgr: prometheus: 暴露降级/错放/未找到对象的数量 (pr#21793, Boris Ranto)
  • mgr: prometheus: 修复指标重置 (pr#22732, Boris Ranto)
  • mgr: prometheus: 修复 prometheus 关闭/重启 (pr#21748, Boris Ranto)
  • mgr: pybind/mgr: 将 osd 空间利用率添加到 insights 报告 (pr#25122, Noah Watkins)
  • mgr: pybind/mgr: PEP 8 代码清理并修复拼写错误 (pr#26181, Lei Liu)
  • mgr,pybind: mgr/prometheus: 将 interface 和 objectstore 添加到 osd 元数据 (pr#25234, Jan Fajerski)
  • mgr: pybind/mgr/restful: 解码 b64decode 的输出 (issue#38522, pr#26712, Brad Hubbard)
  • mgr,pybind: mgr/rook: 修复 urljoin 导入 (pr#24626, Jeff Layton)
  • mgr,pybind: mgr/volumes: 修复 Python 3 导入错误 (pr#25344, Sebastian Wagner)
  • mgr,pybind: pybind/mgr: 删除不必要的 iterkeys 使用以兼容 py-3 (issue#37581, pr#25457, Mykola Golub)
  • mgr,pybind: pybind/mgr: 识别无效的 fs (pr#24392, Jos Collin)
  • mgr,pybind: src/script: 添加 run_mypy 以对 Python 代码运行静态类型检查 (pr#26715, Sebastian Wagner)
  • mgr: daemon state 和 service map 在 ‘service status’ 中的竞争 (issue#36656, pr#24878, Mykola Golub)
  • mgr,rbd: mgr/prometheus: 通过 osd dynamic perf counters 提供 RBD 统计信息 (pr#25358, Mykola Golub)
  • mgr,rbd: pybind/mgr/prometheus: 改进 ‘rbd_stats_pools’ 参数解析 (pr#25860, Mykola Golub)
  • mgr,rbd: pybind/mgr/prometheus: rbd stats 命名空间支持 (pr#25636, Mykola Golub)
  • mgr: 替换 always_on 上的 “Unknown error” 字符串 (pr#23645, John Spray)
  • mgr: restful: 修复遍历叶节点时的回归 (pr#26421, Boris Ranto)
  • mgr/rook: 删除无用代码并修复 url fetching 代码中的错误 (pr#26032, Jeff Layton)
  • mgr: 消除 GCC 警告 (pr#25199, Kefu Chai)
  • mgr/ssh: 修复类型和文档错误 (pr#26630, Sebastian Wagner)
  • mgr/telemetry: 修复 total_objects (issue#37976, pr#26046, Sage Weil)
  • mgr,tests: mgr/dashboard: 使用专用的 tox 工作目录 (pr#25290, Noah Watkins)
  • mgr,tests: mgr/insights: 使用专用的 tox 工作目录 (pr#25146, Noah Watkins)
  • mgr,tests: mgr/selftest: 修复禁用的模块选择 (pr#24517, John Spray)
  • mgr: 监控器和管理器之间及时的健康更新 (pr#23294, Noah Watkins)
  • mgr: 必要时更新 daemon_state (issue#37753, pr#25725, Xinying Song)
  • mgr: 更新 MMgrConfigure 消息以包含可选的 OSD perf queries (pr#24180, Julien Collet)
  • mgr: 使用 Py_BuildValue 创建参数元组 (pr#26240, Volker Theile)
  • mgr: volumes mgr 模块修复 (pr#25331, Jeff Layton)
  • misc: 使用 'override' 说明符标记函数 (pr#21790, Danny Al-Gaaf)
  • mon: 添加 'osd destroy-new' 命令,仅销毁 NEW osd slot (issue#24428, pr#22429, Sage Weil)
  • mon: 处于 PG_STATE_REPAIR 状态的 PG 并不意味着数据损坏,PG_STATE_IN... (issue#38070, pr#26178, David Zafman)
  • mon: 将 monitor compact 命令更改为异步运行 (issue#24160, issue#24159, pr#22056, penglaiyxy)
  • mon: common/cmdparse: cmd_getval_throws -> cmd_getval (pr#23557, Sage Weil)
  • mon: 在 no-op 应用程序操作上不提交 osdmap (pr#23528, John Spray)
  • mon: 修复 mgr 模块配置选项处理 (issue#35076, pr#23846, Sage Weil)
  • mon: 修复 pg_sum_old 未正确复制的问题 (pr#26110, Yao Zongyou)
  • monitoring/grafana: 修复 OSD Capacity Utlization Grafana 图表 (pr#24426, Maxime)
  • mon: 使 rank 排序明确 (不与 mon 地址排序顺序绑定) (pr#22193, Sage Weil)
  • mon: mon/config-key: 增加最大键条目大小 (pr#24250, Joao Eduardo Luis)
  • mon: mon/MonClient: 删除 my_addr (pr#26449, Kefu Chai)
  • mon: mon/MonClient: 在 ping_monitor 期间使用 mon_client_ping_timeout (pr#23563, Yao Zongyou)
  • mon: mon/MonMap: 为其方法添加更多 constness (pr#23709, Kefu Chai)
  • mon: mon/MonMap: 删除 get_rank 中的重复代码 (pr#23547, Yao Zongyou)
  • mon: mon,osd: 避免在 parse 中进行 str 复制 (pr#25640, Jos Collin)
  • mon: mon/OSDMonitor: 为存储池 recovery_priority 添加边界检查 (issue#38578, pr#26729, xie xingguo)
  • mon: mon/PGMap: 添加更多 #include (pr#26420, Kefu Chai)
  • mon: mon/PGMap: 命令 'ceph df -f json' 输出添加 total_percent_used (pr#23588, Yanhu Cao)
  • mon: 仅在通过身份验证后共享 monmap (pr#23741, Sage Weil)
  • mon: 提前关闭 messenger 以避免访问已删除的 logger (issue#37780, pr#25760, ningtao)
  • mon: 一些与类前向声明相关的微小清理 (pr#26219, Yao Zongyou)
  • mon,tests: qa/cephtool: 测试存储池 hit_set_* 的边界 (pr#24858, Joao Eduardo Luis)
  • mon:validate hit_set values before set (issue#22659, pr#19983, lijing)
  • msg: addr -> addrvec (第 1 部分) (pr#22306, Sage Weil)
  • msg/async: 不要强制内联更新 rotating keys (pr#25859, yanjun, xie xingguo)
  • msg/async/Protocol*: 如果现有连接获胜,则发送 keep alive (issue#38493, pr#26668, xie xingguo)
  • msg/async/rdma: 添加 iWARP RDMA 协议支持 (pr#20297, Haodong Tang)
  • msg/async/rdma: 删除重复的头文件 (pr#25392, Jianpeng Ma)
  • msg/async/rdma: 接收消息时将 IBSYNMsg.lid 解析为十六进制 (pr#26525, Peng Liu)
  • msg/async: 减少额外的 ceph_msg_header 复制 (pr#25938, Jianpeng Ma)
  • msg/async: handle_connect_msg 中不需要 ceph_abort (pr#21751, shangfufei)
  • msg: 当 msg server 中有足够的 accepter 错误时 ceph_abort() (issue#23649, pr#23306, penglaiyxy@gmail.com)
  • msg: 在清除编码消息缓冲区时清除消息中间部分 (pr#24289, "Yan, Zheng")
  • msg: entity_addr_t::parse 不对 clean-up 执行 memset(this, 0, ...) (issue#26937, pr#23573, Radoslaw Zarzynski)
  • nautilus: mgr/dashboard: 验证 ceph-iscsi config 版本 (pr#26951, Ricardo Marques)
  • objecter: 避免重置 down osd 的会话时发生竞争 (pr#25437, Zengran Zhang)
  • orchestrator_cli: 修复 _status() 中的 HandleCommandResult 调用 (pr#25329, Jeff Layton)
  • osd: 将 creating 添加到 pg_string_state (issue#36174, pr#24262, Dan van der Ster)
  • osd: 在 ceph-osd help info 中添加 --dump-journal 选项 (pr#24969, yuliyang)
  • osd: osd "bench" 命令的附加字段 (pr#21962, Коренберг Маркr)
  • osd: pg reg next scrub 时添加日志 (pr#23690, lvshuhua)
  • osd: 添加所需的 cls 库作为 osd 的依赖项 (pr#24373, Mohamad Gebai)
  • osd: 允许修复所有副本中 object_info 中具有 bad data_digest 的对象 (pr#23217, David Zafman)
  • osd: 始终为 MOSDPGLog 显式设置 query_epoch (pr#22487, Kefu Chai)
  • osd: 避免使用 null agent_state (pr#25393, Zengran Zhang)
  • osd: 将 assert() 更改为在过渡中遗漏的 ceph_assert() (pr#23918, David Zafman)
  • osd: 将 osd_skip_data_digest 默认值更改为 false 并使其为 LEVEL_DEV (issue#24950, pr#23083, Sage Weil, David Zafman)
  • osdc: 在 linger commit 失败时调用 notify finish context (issue#23966, pr#21831, Kefu Chai, Jason Dillaman)
  • osd: 清理并避免 PrimaryLogPG::log_op_stats 中的额外引用计数 (pr#23016, Radoslaw Zarzynski)
  • osd: 清理 smart probe (issue#23899, pr#21950, Sage Weil, Gu Zhongyan)
  • osd: 启用查询时收集客户端性能统计信息 (pr#24265, Julien Collet, Mykola Golub)
  • osd: 将 recovery/scrub/snap sleep timer 合并为一个 (pr#21711, Jianpeng Ma)
  • osd: 如果预期的 backfill 大小会超过 bac... 则拒绝保留 (issue#24801, issue#19753, pr#22797, David Zafman)
  • osd: 如果不需要则不包含 Messenger.h (pr#22483, Kefu Chai)
  • osd: 对于带有 trimtrunc 的读取,不要高估对象大小 (issue#21931, issue#22330, pr#24564, Neha Ojha)
  • osd: 在 PG 统计信息中不要将 IO hint 视为 IOP (issue#24909, pr#23029, Jason Dillaman)
  • osd: 处理 copy-get 时不检查 overwrite 标志 (issue#21756, pr#18241, huangjun)
  • osd: 即使抢占以较小的块重新启动,也不驱逐 (pr#21892, David Zafman)
  • osd: do_sparse_read(): 提前验证校验和,以便我们可以尝试修复 (issue#24875, pr#23377, David Zafman)
  • osd: 删除未使用的 request_redirect_t::osd_instructions (pr#24458, Radoslaw Zarzynski)
  • osd: ec 在大多数情况下节省对内存的一次写入访问 (pr#26053, Zengran Zhang, Kefu Chai)
  • osd: 修复 build_incremental_map_msg (issue#38282, pr#26413, Sage Weil)
  • osd: 修复 EC fast 和 error read 中的内存泄漏 (pr#22500, xiaofei cui)
  • osd: 修复恢复和 backfill 优先级处理 (issue#38041, pr#26213, David Zafman)
  • osd: 修复 shard_info_wrapper encode (issue#37653, pr#25548, David Zafman)
  • osd: 独立处理 omap 和 data digests (issue#24366, pr#22346, David Zafman)
  • osd: 增加默认硬 PG 限制 (pr#22187, Josh Durgin)
  • osd: 即使 op 将使缓存无效,也继续使用缓存 (pr#25490, Zengran Zhang)
  • osd: 在任何情况下都限制 pg log 长度 (pr#23098, Neha Ojha)
  • osd: 使 OSD::HEARTBEAT_MAX_CONN 内联 (pr#23424, Kefu Chai)
  • osd: 使随机 shuffle 符合 C++17 (pr#23533, Willem Jan Withagen)
  • osd/OSDMap: 将 osd 状态添加到 utilization dumper (issue#35544, pr#23921, Paul Emmerich)
  • osd: per-pool osd 统计信息收集 (pr#19454, Igor Fedotv, Igor Fedotov)
  • osd: 防止 backfill 保留发送给对等节点的本地 num_bytes 出现负值 (issue#38344, pr#26465, David Zafman)
  • osd: EC 恢复时读取对象 attrs 失败 (pr#22196, xiaofei cui)
  • osd: 如果我们距离记录的 require_osd_release > N+2,则拒绝启动 (issue#38076, pr#26177, Sage Weil)
  • osd: 可靠地将 pg_created 消息发送给 mon (issue#37775, pr#25731, Sage Weil)
  • osd: 删除已被 backfill 取代的旧 bft= (issue#36170, pr#24256, David Zafman)
  • osd: 删除多余的 derr (pr#24042, Sage Weil)
  • osd: 删除未使用的类 read_log_and_missing_error (pr#26057, Yao Zongyou)
  • osd: 删除未使用的字段 (pr#26021, Jianpeng Ma)
  • osd: 删除未使用的函数 (pr#26223, Jianpeng Ma)
  • osd: 删除无用的条件 (pr#21766, Jianpeng Ma)
  • osd: 一些恢复改进和清理 (pr#23663, xie xingguo)
  • osd: 两个心跳修复 (pr#25126, xie xingguo)
  • osd: 调整 osd 设置时解锁 osd_lock (issue#37751, pr#25726, Kefu Chai)
  • osd: service.shutdown() 后卸载 store (issue#37975, pr#26043, Kefu Chai)
  • osd: 动态 perf stats 的加权随机采样 (pr#25582, Mykola Golub)
  • osd: 如果可能,在 build_push_op() 中检查 CRC,以便修复最终可以停止 (issue#25084, pr#23518, David Zafman)
  • osd: 将 “bench” 输出写入 stdout (issue#24022, pr#21905, John Spray)
  • os: 描述事务的注释中的微小修复 (pr#22329, Bryan Stillwell)
  • performance: 添加性能计数器 breadcrumb (pr#22060, Ricardo Marques)
  • performance: mgr/dashboard: 启用 gzip 压缩 (issue#36453, pr#24727, Zack Cerza)
  • performance: mgr/dashboard: 替换仪表板服务 (issue#36675, pr#24900, Zack Cerza)
  • performance: msg/async: 改进 read-prefetch 逻辑 (pr#25758, xie xingguo)
  • performance: qa/tasks/cbt.py: 更改以在 bionic 上运行 (pr#22405, Neha Ojha)
  • performance,rbd: common/Throttle: TokenBucketThrottle: 使用对 m_blockers.front() 的引用 (issue#36475, pr#24604, Dongsheng Yang)
  • performance,rbd: pybind/rbd: 优化 rbd_list2 (pr#25445, Mykola Golub)
  • Prevent duplicated rows during async tasks (pr#22148, Ricardo Marques)
  • prometheus: 修复 occupation values 的顺序 (pr#22149, Boris Ranto)
  • pybind: 不检查 MFLAGS (pr#23601, Kefu Chai)
  • pybind: pybind/ceph_daemon: 将 daemonperf 统计信息的数量级扩展到 ZB (issue#23962, pr#21765, Guan yunfei)
  • pybind: pybind/rbd: 使代码更简洁 (pr#23664, Zheng Yin)
  • pybind,rbd: pybind/rbd: 将 allow_shrink=True 添加为 def resize 的参数 (pr#23605, Zheng Yin)
  • pybind,rbd: pybind/rbd: 修复 metadata_get 注释中的拼写错误 (pr#26138, songweibin)
  • pybind,rgw: pybind/rgw: 将 flags 传递给回调函数 (pr#25766, Kefu Chai)
  • pybind: 简化 run_in_thread() 中的超时处理 (pr#24733, Kefu Chai)
  • qa/btrfs/test_rmdir_async_snap: 删除二进制文件 (pr#24108, Cleber Rosa)
  • qa,pybind,tools: 正确使用 collections.abc (pr#25318, James Page)
  • qa/test: 添加 rados, rbd 和 fs 每周运行两次 (pr#21839, Yuri Weinstein)
  • qa/tests: 添加 mimic-x suite 的第一稿 (pr#23292, Yuri Weinstein)
  • qa/tests - 添加所有支持的发行版 (pr#22647, Yuri Weinstein)
  • qa/tests - 添加所有支持的发行版到组合中,... (pr#22674, Yuri Weinstein)
  • qa/tests: 添加 client-upgrade-luminous suit (pr#21947, Yuri Weinstein)
  • qa/tests: 添加 --filter-out=”ubuntu_14.04” (pr#21949, Yuri Weinstein)
  • qa/tests - 添加 luminous-p2p suite 到日程表 (pr#22666, Yuri Weinstein)
  • qa/tests: 添加 mimic-x 到日程表 (pr#23302, Yuri Weinstein)
  • qa/tests - 添加 powercycle suite 到每周运行 master 和 mimic (pr#22606, Yuri Weinstein)
  • qa/tests: 为 powercycle suite 添加支持的发行版 (pr#22185, Yuri Weinstein)
  • qa/tests: 更改 ceph qa 电子邮件地址以绕过 dreamhost 的垃圾邮件过滤器 (pr#23456, Yuri Weinstein)
  • qa/tests: 更改 disto 符号链接以指向使用支持的 OS 的新方式 (pr#22536, Yuri Weinstein)
  • qa/tests: 修复拼写错误 (pr#21858, Yuri Weinstein)
  • qa/tests: 删除所有 jewel 运行并减少 ovh 上的运行次数 (pr#22531, Yuri Weinstein)
  • rbd: 添加 ‘config global’ 命令以在 mon config db 中获取/存储覆盖设置 (pr#24428, Mykola Golub)
  • rbd: 添加数据池支持到 trash purge (issue#22872, pr#21247, Mahati Chamarthy)
  • rbd: 添加 group snap rollback 方法 (issue#23550, pr#23896, songweibin)
  • rbd: 在 snap list 中添加 protected (pr#23853, Zheng Yin)
  • rbd: 在 rbd info 中添加 snapshot count (pr#21292, Zheng Yin)
  • rbd: 添加调整图像大小的判断 (pr#21770, zhengyin)
  • rbd: 对命名空间中图像的基本支持 (issue#24558, pr#22673, Jason Dillaman)
  • rbd: bench 中断时关闭图像 (pr#26693, Mykola Golub)
  • rbd: cls/lock: 始终在 locker_info_t 中存储 v1 addr (pr#25948, Sage Weil)
  • rbd: cls/rbd: 修复构建 (pr#22078, Kefu Chai)
  • rbd: cls/rbd: 修复未初始化变量编译器警告 (pr#26896, Jason Dillaman)
  • rbd: cls/rbd: 修复方法注释 (pr#23277, Zheng Yin)
  • rbd: cls/rbd: 消除 get metadata error 的日志记录 (pr#25436, songweibin)
  • rbd: 更正 namespace 的参数并在 set_namespace 之前验证它 (pr#23770, songweibin)
  • rbd: dashboard: 支持配置块镜像存储池和对等节点 (pr#25210, Jason Dillaman)
  • rbd: 为打开多个图像的操作禁用缓存 (issue#24092, pr#21946, Jason Dillaman)
  • rbd: disk-usage 现在可以选择计算准确的磁盘使用量 (issue#24064, pr#21912, Jason Dillaman)
  • rbd: 记录新的 RBD 功能标志和版本支持 (pr#25192, Valentin Lorentz)
  • rbd: 最初不从 monitor 加载配置覆盖 (pr#21910, Jason Dillaman)
  • rbd: 如果新大小等于原始大小则报错 (pr#22637, zhengyin)
  • rbd: 暴露存储池统计信息汇总工具 (pr#24830, Jason Dillaman)
  • rbd: 从 snap_list 中过滤掉 group/trash 快照 (pr#23638, songweibin)
  • rbd: 修复错误输出中的拼写错误 (pr#25931, Dongsheng Yang)
  • rbd: 修复 trash move 的延迟时间计算 (pr#25896, Mykola Golub)
  • rbd: 修复输入为管道时导入错误 (issue#34536, pr#23835, songweibin)
  • rbd: 修复 rbd_group_image_list() 获取 -ENOENT 时的段错误 (issue#38468, pr#26622, songweibin)
  • rbd: 修复一些拼写错误 (pr#25083, Shiyang Ruan)
  • rbd: 实现新的 'rbd perf image iostat/iotop' 命令 (issue#37913, pr#26133, Jason Dillaman)
  • rbd: 改进 trash snapshot namespace 处理 (issue#23398, pr#23191, Jason Dillaman)
  • rbd: 将 object-map/fast-diff 功能互锁在一起 (pr#21969, Mao Zhongyi)
  • rbd: 引入 rbd map 的 abort_on_full 选项 (pr#25662, Dongsheng Yang)
  • rbd: journal: 当 jounal pool 满时允许删除集合 (pr#25166, kungf)
  • rbd: journal: 修复关闭对象记录器时潜在的竞争条件 (pr#26425, Mykola Golub)
  • rbd: journal: 设置最大 journal order 为 26 (issue#37541, pr#25743, Mykola Golub)
  • rbd: krbd: 支持命名空间中的图像 (pr#23841, Ilya Dryomov)
  • rbd: librbd/api: 杂项修复 migration (pr#25765, songweibin)
  • rbd: librbd: 确保删除 sync point 快照时获取排他锁 (issue#24898, pr#23095, Mykola Golub)
  • rbd: librbd: 杂项修复潜在的无效指针 (pr#25462, songweibin)
  • rbd: 确保返回-值 ‘r’ 将被返回 (pr#24891, Shiyang Ruan)
  • rbd: mgr/dashboard: 合并 RBD 整体性能 grafana dashboard (issue#37867, pr#25927, Jason Dillaman)
  • rbd-mirror: 始终尝试重新启动已取消的状态更新任务 (issue#36500, pr#24646, Jason Dillaman)
  • rbd-mirror: bootstrap 需要处理本地图像 ID 冲突 (issue#24139, pr#22043, Jason Dillaman)
  • rbd-mirror: 创建并将复制性能计数器导出到 mgr (pr#25834, Mykola Golub)
  • rbd-mirror: 确保如果存储池被删除,守护进程可以干净退出 (pr#22348, Jason Dillaman)
  • rbd-mirror: 确保本地重放远程降级 (issue#24009, pr#21823, Jason Dillaman)
  • rbd-mirror: 修复关闭期间潜在的崩溃 (issue#24008, pr#21817, Jason Dillaman)
  • rbd-mirror: 保护对 image replayer perf counters 的访问 (pr#26097, Mykola Golub)
  • rbd-mirror: 在更改状态之前实例化 status formatter (issue#36084, pr#24181, Jason Dillaman)
  • rbd-mirror: 可选地从 config-key 中提取对等密钥 (issue#24688, pr#24036, Jason Dillaman)
  • rbd-mirror: 可选地支持 active/active 复制 (pr#21915, Mykola Golub, Jason Dillaman)
  • rbd-mirror: 运行 asok ‘flush’ 命令时潜在的死锁 (issue#24141, pr#22027, Mykola Golub)
  • rbd-mirror: 当父级正在同步时,防止创建克隆 (issue#24140, pr#24063, Jason Dillaman)
  • rbd-mirror: 安排 rebalancer 以平衡实例负载 (issue#24161, pr#22304, Venky Shankar)
  • rbd-mirror: 停止时更新 mirror status (issue#36659, pr#24864, Jason Dillaman)
  • rbd-mirror: 默认使用 active/active 策略 (issue#38453, pr#26603, Jason Dillaman)
  • rbd: 删除时将图像移动到 trash 作为第一步 (issue#24226, issue#38404, pr#25438, Mahati Chamarthy, Jason Dillaman)
  • rbd-nbd: 打印用法后不 ceph_abort() (issue#36660, pr#24815, Shiyang Ruan)
  • rbd-nbd: 支持命名空间 (issue#24609, pr#25260, Mykola Golub)
  • rbd: 图像正在删除时不被允许恢复 (issue#25346, pr#24078, songweibin)
  • rbd: 图像的在线 re-sparsify (pr#26226, Mykola Golub)
  • rbd: pybind/rbd: 添加命名空间辅助 API 方法 (issue#36622, pr#25206, Jason Dillaman)
  • rbd: qa/workunits: 修复 rbd-mirror 的 mon 地址解析 (issue#38385, pr#26521, Jason Dillaman)
  • rbd: rbd: 修复获取 key 时解析 args 的错误 (pr#25152, songweibin)
  • rbd: rbd-fuse: 在标准位置查找 ceph.conf (issue#12219, pr#20598, Jason Dillaman)
  • rbd: rbd-fuse: 命名空间支持 (pr#25265, Mykola Golub)
  • rbd: rbd-ggate: 支持命名空间 (issue#24608, pr#25266, Mykola Golub)
  • rbd: rbd-ggate: 用 need_dynamic 标记 “level” (pr#22557, Kefu Chai)
  • rbd: rbd_mirror: assert destroying InstanceWatcher 时没有 requests (pr#25666, Mykola Golub)
  • rbd: rbd_mirror: 如果 image replay 被取消,则不报告错误 (pr#25789, Mykola Golub)
  • rbd: rbd-mirror: 使用池级别配置覆盖 (pr#24348, Mykola Golub)
  • rbd: rbd: 在 image mirror status 输出中显示 mirror daemon instance 的信息 (pr#24717, Mykola Golub)
  • rbd: 当源和目标命名空间不同时返回错误代码 (pr#24893, Shiyang Ruan)
  • rbd: 简化代码以删除 do_clear_limit 函数 (pr#23954, Zheng Yin)
  • rbd: 支持 image migration 的命名空间 (issue#26951, pr#24836, Jason Dillaman)
  • rbd: systemd/rbdmap.service: 排序 us before remote-fs-pre.target (issue#24713, pr#22769, Ilya Dryomov)
  • rbd: test/librbd: 删除未使用的变量 ‘num_aios’ (pr#23085, songweibin)
  • rbd,tests: krbd: alloc_size map option 和测试 (pr#26244, Ilya Dryomov)
  • rbd,tests: librbd,test: 删除未使用的 context_cb() 函数,消除 GCC 警告 (pr#24673, Kefu Chai)
  • rbd,tests: pybind/rbd: 在 test set_snap 中添加 assert_raise (pr#22570, Zheng Yin)
  • rbd,tests: qa: krbd_exclusive_option.sh: 将 lock_timeout 提高到 60 秒 (issue#25080, pr#22648, Ilya Dryomov)
  • rbd,tests: qa: krbd_msgr_segments.t: 过滤 lvcreate 输出 (pr#22665, Ilya Dryomov)
  • rbd,tests: qa: krbd namespaces test (pr#26339, Ilya Dryomov)
  • rbd,tests: qa: krbd 的 objectstore snippets (pr#26279, Ilya Dryomov)
  • rbd,tests: qa: rbd_workunit_kernel_untar_build: 安装构建依赖项 (issue#35074, pr#23840, Ilya Dryomov)
  • rbd,tests: qa: rbd/workunits : 将 “rbd bench-write” 替换为 “rbd bench –io-type write” (pr#26168, Shyukri Shyukriev)
  • rbd,tests: qa/suites/krbd: 更多 fsx 测试 (pr#24354, Ilya Dryomov)
  • rbd,tests: qa/suites/rbd: 随机选择支持的发行版 (pr#22008, Jason Dillaman)
  • rbd,tests: qa/tasks/cram: 任务现在必须位于存储库中 (pr#23976, Ilya Dryomov)
  • rbd,tests: qa/tasks/cram: 为所有 cram jobs 使用 suite_repo 存储库 (pr#23905, Ilya Dryomov)
  • rbd,tests: qa/tasks/qemu: 使用唯一的克隆目录以避免与 workunit 竞争 (issue#36542, pr#24696, Jason Dillaman)
  • rbd,tests: qa/workunits/rbd: 修复 cli generic namespace test (pr#24457, Mykola Golub)
  • rbd,tests: qa/workunits/rbd: 强制使用 v2 图像格式进行命名空间测试 (pr#24512, Mykola Golub)
  • rbd,tests: qa/workunits/rbd: 替换 ‘rados mkpool’ 的用法 (pr#23938, Jason Dillaman)
  • rbd,tests: qa/workunits: 在 fsstress.sh 中将 ‘realpath’ 替换为 ‘readlink -f’ (issue#36409, pr#24550, Jason Dillaman)
  • rbd,tests: test/cli-integration/rbd: 添加新的父图像属性 (pr#25415, Jason Dillaman)
  • rbd,tests: test/librados_test_stub: 确定性地加载 cls 共享库 (pr#21524, Jason Dillaman)
  • rbd,tests: test/librados_test_stub: 优雅地处理对象不存在 (pr#25667, Mykola Golub)
  • rbd,tests: test/librbd: 修复编译器 -Wsign-compare 警告 (pr#23657, Mykola Golub)
  • rbd,tests: test/librbd: 修复 snapshot rollback test 中的 gmock 警告 (pr#23736, Jason Dillaman)
  • rbd,tests: test/librbd: 修复 TestMockIoImageRequestWQ.AcquireLockError 中的 gmock 警告 (pr#22778, Mykola Golub)
  • rbd,tests: test/librbd: 修复 get_modify_timestamp call 的 gmock 警告 (pr#23707, Mykola Golub)
  • rbd,tests: test/librbd: 修复 ‘Uninteresting mock function call’ 警告 (pr#26322, Mykola Golub)
  • rbd,tests: test/librbd: 修复 valgrind 警告 (pr#23827, Mykola Golub)
  • rbd,tests: test/librbd: 修复 -Wsign-compare 警告 (pr#23608, Kefu Chai)
  • rbd,tests: test/librbd: 配置的元数据键应以 conf_ 为前缀 (pr#25209, runsisi)
  • rbd,tests: test/librbd: 迁移支持命名空间测试 (pr#24919, Mykola Golub)
  • rbd,tests: test/librbd: 迁移测试未删除额外的存储池 (pr#24009, Mykola Golub)
  • rbd,tests: test: 将 OpenStack devstack test 移至 rocky release (issue#36410, pr#24563, Jason Dillaman)
  • rbd,tests: test/pybind: 修复 test_rbd.TestClone.test_trash_snapshot (issue#25114, pr#23256, Mykola Golub)
  • rbd,tests: test/pybind/test_rbd: 过滤掉未知的 list_children2 键 (issue#37729, pr#25832, Mykola Golub)
  • rbd,tests: test/rbd-mirror: 禁用 gtest-parallel 的使用 (pr#22694, Jason Dillaman)
  • rbd,tests: test/rbd_mirror: 修复 gmock 警告 (pr#25863, Mykola Golub)
  • rbd,tests: test/rbd_mirror: TestMockImageMap.AddInstancePingPongImageTest 中的竞争条件 (issue#36683, pr#24897, Mykola Golub)
  • rbd,tests: test/rbd_mirror: WaitingOnLeaderReleaseLeader 中的竞争条件 (issue#36236, pr#24300, Mykola Golub)
  • rbd,tests: test/rbd_mirror: 等待 release leader lock 完全完成 (pr#25935, Mykola Golub)
  • rbd,tests: test/rbd: rbd_ggate test 改进 (pr#23630, Willem Jan Withagen)
  • rbd,tests: test: 消除 -Wsign-compare 警告 (pr#23655, Kefu Chai)
  • rbd: tools/rbd/action: 将列标题左对齐 (pr#22566, Sage Weil)
  • rbd: tools/rbd: assert(g_ceph_context) 而不是 g_conf (pr#23167, Kefu Chai)
  • rbd: tools/rbd: rbd du 显示的小修复 (pr#23311, songweibin)
  • rbd,tools: rbd-mirror,common: 修复 logging messages 和 comments 中的拼写错误 (pr#25197, Shiyang Ruan)
  • rbd,tools: tools/rbd: assert(g_ceph_context) 而不是 g_conf (pr#23008, Kefu Chai)
  • rbd: bench 中断时等待所有 io 完成 (pr#26918, Mykola Golub)
  • rbd: 解决 llvm linker 问题,避免 std::pair dtor (pr#25301, Willem Jan Withagen)
  • Revert “cephfs-journal-tool: enable purge_queue journal’s event comma... (pr#23465, "Yan, Zheng")
  • Revert “ceph-fuse: Delete inode’s bufferhead was in Tx state would le... (pr#21975, "Yan, Zheng")
  • rgw: abort_bucket_multiparts() 忽略单个 NoSuchUpload 错误 (issue#35986, pr#24110, Casey Bodley)
  • rgw: 调整 AioThrottle 用于 RGWGetObj (pr#25208, Casey Bodley)
  • rgw: 添加 append object api (pr#22755, zhang Shaowen, Zhang Shaowen)
  • rgw: 在 show/trim usage 时添加 bucket 作为选项 (pr#23819, lvshuhua)
  • rgw: 添加可配置的 AWS 兼容无效范围获取行为 (issue#24317, pr#22231, Matt Benjamin)
  • rgw: 添加 curl_low_speed_limit 和 curl_low_speed_time 配置以避免 (pr#23058, Mark Kogan, Zhang Shaowen)
  • rgw: 在响应头中添加 Http header ‘Server’ (pr#23282, Zhang Shaowen)
  • rgw: 添加角色的文档 (pr#24714, Pritha Srivastava)
  • rgw: 在 req done 的日志中添加 latency info (pr#23906, lvshuhua)
  • rgw: 添加 list user admin OP API (pr#25073, Oshyn Song)
  • rgw: 在 radosgw-admin help info 中添加 --op-mask (pr#24848, yuliyang)
  • rgw: 为 block_while_resharding() 添加 optional_yield (pr#25357, Casey Bodley)
  • rgw: 添加宽松区域执行的选项 (issue#24507, pr#22533, Matt Benjamin)
  • rgw: 添加 rgw xml 单元测试 (pr#26682, Yuval Lifshitz)
  • rgw: 添加 s3 notification sub resources (pr#23405, yuliyang)
  • rgw: admin rest api 支持 op-mask (pr#24869, yuliyang)
  • rgw: admin/user ops dump user ‘system’ flag (pr#17414, fang.yuxiang)
  • rgw: All Your Fault (issue#24962, pr#23099, Adam C. Emerson)
  • rgw: 将 quota config 应用于通过外部身份验证创建的用户 (issue#24595, pr#24177, Casey Bodley)
  • rgw: 归档区域 (pr#25137, Yehuda Sadeh, Javier M. Mellid)
  • rgw: async sync_object and remove_object 不访问 coroutine me... (issue#35905, pr#24007, Tianshan Qu)
  • rgw: 异步 watch registration (pr#21838, Yehuda Sadeh)
  • rgw: 避免 RGWHTTPClient::wait() 中的竞争条件 (pr#21767, cfanz)
  • rgw: beast frontend 以级别 4 记录 socket 错误 (pr#24677, Casey Bodley)
  • rgw: beast frontend 解析 ipv6 地址 (issue#36662, pr#24887, Casey Bodley)
  • rgw: beast frontend 重做 pause/stop 并在 body io 期间让出 (pr#21271, Casey Bodley)
  • rgw: bucket full sync 处理 delete markers (issue#38007, pr#26081, Casey Bodley)
  • rgw: bucket limit check 对 > max-entries buckets (通常... (pr#26800, Matt Benjamin)
  • rgw: bucket sync status 改进, part 1 (pr#21788, Casey Bodley)
  • rgw: versioning concurrent 中的错误,list 和 get 有一致性问题 (pr#26197, Wang Hao)
  • rgw: 捕获 librados::NObjectIterator 中的异常 (issue#37091, pr#25081, Casey Bodley)
  • rgw: 将默认 rgw_thread_pool_size 更改为 512 (issue#24544, pr#22581, Douglas Fuller)
  • rgw: 将 "rgw admin status" 'num_shards' 输出更改为有符号整数 (issue#37645, pr#25538, Mark Kogan)
  • rgw: 在 RGWGetACLs 中检查不存在的 bucket (pr#26212, Matt Benjamin)
  • rgw: civetweb: 更新 url 验证修复 (issue#24158, pr#22054, Abhishek Lekshmanan)
  • rgw: civetweb: 在等待 socket 时使用 poll 而不是 select (issue#24364, pr#24027, Abhishek Lekshmanan)
  • rgw: 清理 – 确保 C++ 源文件包含编辑器指令 (pr#25495, J. Eric Ivancich)
  • rgw: 清理 sync tracing (pr#23828, Casey Bodley)
  • rgw: 清理 – 对 stats category 使用 enum class (pr#25450, J. Eric Ivancich)
  • rgw: cls/rgw: 不要在 decode_list_index_key() 中断言 (issue#24117, pr#22440, Yehuda Sadeh)
  • rgw: cls/rgw: 提高 bi_log_iterate_entries 输出的 debug 级别 (pr#25570, Casey Bodley)
  • rgw: cls/user: cls_user_remove_bucket 写入修改后的 header (issue#36496, pr#24645, Casey Bodley)
  • rgw: STS 身份验证的代码 (pr#23504, Pritha Srivastava)
  • rgw: common/options: 修正 rgw_enable_lc_threads 选项的描述 (pr#23511, excellentkf)
  • rgw: continue enoent index in dir_suggest (issue#24640, pr#22937, Tianshan Qu)
  • rgw: reshard 期间从源分片复制实际统计信息 (issue#36290, pr#24444, Abhishek Lekshmanan)
  • rgw: 复制对象数据应为新对象生成新的 tail tag (issue#24562, pr#22613, Zhang Shaowen)
  • rgw: 修正非 s3 操作的签名计算逻辑 (pr#26098, Pritha Srivastava)
  • rgw: cors rules num limit (pr#23434, yuliyang)
  • rgw: crypto: 为 RGW 加密添加 openssl 支持 (pr#15168, Qiaowei Ren)
  • rgw: data sync accepts ERR_PRECONDITION_FAILED on remove_object() (issue#37448, pr#25310, Casey Bodley)
  • rgw: data sync drains lease stack on lease failure (issue#38479, pr#26639, Casey Bodley)
  • rgw: data sync respects error_retry_time for backoff on error_repo (issue#26938, pr#23571, Casey Bodley)
  • rgw: delete multi object num limit (pr#23544, yuliyang)
  • rgw: 删除一些未使用的 std::regex 代码 (pr#23221, Xueyu Bai)
  • rgw: [DNM] rgw: 通过 Policy 控制 STS 身份验证 (pr#24818, Pritha Srivastava)
  • rgw: do not ignore EEXIST in RGWPutObj::execute (issue#22790, pr#23033, Matt Benjamin)
  • rgw: 如果未设置参数,则不修改电子邮件 (pr#22024, Volker Theile)
  • rgw: don't access rgw_http_req_data::client of canceled request (issue#35851, pr#23988, Casey Bodley)
  • rgw: 在 S3 Policy 中匹配 ARNs 的 resource 字段时,不要特殊处理冒号 (issue#23817, pr#25145, Adam C. Emerson)
  • rgw: 删除 main() 中未使用的 tmp (pr#23899, luomuyao)
  • rgw: escape markers in RGWOp_Metadata_List::execute (issue#23099, pr#22721, Matt Benjamin)
  • rgw: ES sync: 对对象系统属性进行更严格的限制 (issue#36233, pr#24492, Abhishek Lekshmanan)
  • rgw: etag in rgw copy result response body rather in header (pr#23751, yuliyang)
  • rgw: feature – log successful bucket resharding events (pr#25510, J. Eric Ivancich)
  • rgw: fetch_remote_obj filters out olh attrs (issue#37792, pr#25794, Casey Bodley)
  • rgw: fix bad user stats on versioned bucket after reshard (pr#25414, J. Eric Ivancich)
  • rgw: fix build (pr#22194, Yehuda Sadeh)
  • rgw: fix build (pr#23248, Matt Benjamin)
  • rgw: fix chunked-encoding for chunks >1MiB (issue#35990, pr#24114, Robin H. Johnson)
  • rgw: fix compilation after pubsub conflict (pr#25568, Casey Bodley)
  • rgw: fix copy response header etag format not correct (issue#24563, pr#22614, Tianshan Qu)
  • rgw: fix CreateBucket with BucketLocation parameter failed under default zonegroup (pr#22312, Enming Zhang)
  • rgw: fix deadlock on RGWIndexCompletionManager::stop (issue#26949, pr#23590, Yao Zongyou)
  • rgw: fix dependencies/target_link_libraries (pr#23056, Michal Jarzabek)
  • rgw: fixes for sync of versioned objects (issue#24367, pr#22347, Casey Bodley)
  • rgw: 修复与用户策略相关的权限评估 (pr#25180, Pritha Srivastava)
  • rgw: fix Etag error in multipart copy response (pr#23749, yuliyang)
  • rgw: Fix for buffer overflow in STS op_post() (issue#36579, pr#24510, Pritha Srivastava, Marcus Watts)
  • rgw: Fix for SignatureMismatchError in s3 commands (pr#26204, Pritha Srivastava)
  • rgw: fix FTBFS introduced by abca9805 (pr#23046, Kefu Chai)
  • rgw: fix index complete miss zones_trace set (issue#24590, pr#22632, Tianshan Qu)
  • rgw: fix index update in dir_suggest_changes (issue#24280, pr#22217, Tianshan Qu)
  • rgw: fix ldap secret parsing (pr#25796, Matt Benjamin)
  • rgw: fix leak of curl handle on shutdown (issue#35715, pr#23986, Casey Bodley)
  • rgw: Fix log level of gc_iterate_entries (issue#23801, pr#22868, iliul)
  • rgw: fix max-size in radosgw-admin and REST Admin API (pr#24062, Nick Erdmann)
  • rgw: fix meta and data notify thread miss stop cr manager (issue#24589, pr#22631, Tianshan Qu)
  • rgw: fix obj can still be deleted even if deleteobject policy is set (issue#37403, pr#25278, Enming.Zhang)
  • rgw: fix radosgw-admin build error (pr#21599, cfanz)
  • rgw: fix rgw_data_sync_info::json_decode() (issue#38373, pr#26494, Casey Bodley)
  • rgw: fix RGWSyncTraceNode crash in reload (issue#24432, pr#22432, Tianshan Qu)
  • rgw: fix stats for versioned buckets after reshard (pr#25333, J. Eric Ivancich)
  • rgw: fix uninitialized access (pr#25002, Yehuda Sadeh)
  • rgw: fix unordered bucket listing when object names are adorned (issue#38486, pr#26658, J. Eric Ivancich)
  • rgw: fix vector index out of range in RGWReadDataSyncRecoveringShardsCR (issue#36537, pr#24680, Casey Bodley)
  • rgw: fix version bucket stats (issue#21429, pr#17789, Shasha Lu)
  • rgw: fix versioned obj copy generating tags (issue#37588, pr#25473, Abhishek Lekshmanan)
  • rgw: fix wrong debug related to user ACLs in rgw_build_bucket_policies() (issue#19514, pr#14369, Radoslaw Zarzynski)
  • rgw: get or set realm zonegroup zone need check user’s caps (pr#25178, yuliyang, Casey Bodley)
  • rgw: Get the user metadata of the user used to sign the request (pr#22390, Volker Theile)
  • rgw: handle cases around zone deletion (issue#37328, pr#25160, Abhishek Lekshmanan)
  • rgw: handle S3 version 2 pre-signed urls with meta-data (pr#24683, Matt Benjamin)
  • rgw: have a configurable authentication order (issue#23089, pr#21494, Abhishek Lekshmanan)
  • rgw: http client: print curl error messages during curl failures (pr#23318, Abhishek Lekshmanan)
  • rgw: Improvements to STS Lite documentation (pr#24847, Pritha Srivastava)
  • rgw: Initial commit for AssumeRoleWithWebIdentity (pr#26002, Pritha Srivastava)
  • rgw: initial RGWRados refactoring work (pr#24014, Yehuda Sadeh, Casey Bodley)
  • rgw: Initial work for OPA-Ceph integration (pr#22624, Ashutosh Narkar)
  • rgw: librgw: initialize curl and http client for multisite (issue#36302, pr#24402, Casey Bodley)
  • rgw: librgw: support symbolic link (pr#19684, Tao Chen)
  • rgw: lifcycle: don’t reject compound rules with empty prefix (issue#37879, pr#25926, Matt Benjamin)
  • rgw: Limit the number of lifecycle rules on one bucket (issue#24572, pr#22623, Zhang Shaowen)
  • rgw: list bucket can not show the object uploaded by RGWPostObj when enable bucket versioning (pr#24341, yuliyang)
  • rgw: log http status with op prefix if available (pr#25102, Casey Bodley)
  • rgw: log refactoring for data sync (pr#23843, Casey Bodley)
  • rgw: log refactoring for meta sync (pr#23950, Casey Bodley, Ali Maredia)
  • rgw: make beast the default for rgw_frontends (pr#26599, Casey Bodley)
  • rgw: Minor fixes to AssumeRole for boto compliance (pr#24845, Pritha Srivastava)
  • rgw: Minor fixes to radosgw-admin commands for a role (pr#24730, Pritha Srivastava)
  • rgw: move all reshard config options out of legacy_config_options (pr#25356, J. Eric Ivancich)
  • rgw: move keystone secrets from ceph.conf to files (issue#36621, pr#24816, Matt Benjamin)
  • rgw: multiple es related fixes and improvements (issue#22877, issue#38028, issue#38030, issue#36092, pr#26106, Yehuda Sadeh, Abhishek Lekshmanan)
  • rgw: need to give a type in list constructor (pr#25161, Willem Jan Withagen)
  • rgw: new librgw_admin_us (pr#21439, Orit Wasserman, Matt Benjamin)
  • rgw: policy: fix NotAction, NotPricipal, NotResource does not take effect (pr#23625, xiangxiang)
  • rgw: policy: fix s3:x-amz-grant-read-acp keyword error (pr#23610, xiangxiang)
  • rgw: policy: modify some operation permission keyword (issue#24061, pr#20974, xiangxiang)
  • rgw: pub-sub (pr#23298, Yehuda Sadeh)
  • rgw: qa/suites/rgw/verify/tasks/cls_rgw: test cls_rgw (pr#22919, Sage Weil)
  • rgw: radogw-admin reshard status command should print text for reshard status (issue#23257, pr#20779, Orit Wasserman)
  • rgw: radosgw-admin: add mfa related command and options (pr#23416, Enming.Zhang)
  • rgw: radosgw-admin bucket rm … –purge-objects can hang (issue#38134, pr#26231, J. Eric Ivancich)
  • rgw: “radosgw-admin objects expire” always returns ok even if the process fails (issue#24592, pr#22635, Zhang Shaowen)
  • rgw: radosgw-admin: ‘sync error trim’ loops until complete (issue#24873, pr#23032, Casey Bodley)
  • rgw: radosgw-admin: translate reshard status codes (trivial) (issue#36486, pr#24638, Matt Benjamin)
  • rgw: RADOS::Obj::operate takes optional_yield (pr#25068, Casey Bodley)
  • rgw: rados tiering (issue#19510, pr#25774, yuliyang, Yehuda Sadeh, Zhang Shaowen)
  • rgw: raise debug level on redundant data sync error messages (issue#35830, pr#23981, Casey Bodley)
  • rgw: raise default rgw_curl_low_speed_time to 300 seconds (issue#27989, pr#23759, Casey Bodley)
  • rgw: refactor logging in gc and lc (pr#24530, Ali Maredia)
  • rgw: refactor PutObjProcessor stack (pr#24453, Casey Bodley)
  • rgw: reject invalid methods in validate_cors_rule_method (issue#24223, pr#22145, Jeegn Chen)
  • rgw: remove all traces of cls replica_log (pr#21680, Casey Bodley)
  • rgw: remove duplicated RGWRados::list_buckets_ helpers (pr#25240, Casey Bodley)
  • rgw: remove expired entries from the cache (issue#23379, pr#22410, Mark Kogan)
  • rgw: remove repetitive conditional statement in RGWHandler_REST_Obj_S3 (pr#24162, Zhang Shaowen)
  • rgw: remove rgw_aclparser.cc (issue#36665, pr#24866, Matt Benjamin)
  • rgw: remove the useless is_cors_op in RGWHandler_REST_Obj_S3 (pr#22114, Zhang Shaowen)
  • rgw: remove unused aio helper functions (pr#25239, Casey Bodley)
  • rgw: renew resharding locks to prevent expiration (issue#27219, issue#34307, pr#24406, Orit Wasserman, J. Eric Ivancich)
  • rgw: repair olh attributes that were broken by sync (issue#37792, pr#26157, Casey Bodley)
  • rgw: require –yes-i-really-mean-it to run radosgw-admin orphans find (issue#24146, pr#22036, Matt Benjamin)
  • rgw: reshard add: fail correctly on a non existant bucket (issue#36449, pr#24594, Abhishek Lekshmanan)
  • rgw: reshard clean-up and associated commits (pr#25142, J. Eric Ivancich)
  • rgw: reshard improvements (pr#25003, J. Eric Ivancich)
  • rgw: reshard stale instance cleanup (issue#24082, pr#24662, Abhishek Lekshmanan)
  • rgw: resolve bugs and clean up garbage collection code (issue#38454, pr#26601, J. Eric Ivancich)
  • rgw: resolve bug where marker was not advanced during garbage collection (issue#38408, pr#26545, J. Eric Ivancich)
  • rgw: return err_malformed_xml when MaxAgeSeconds is an invalid integer (issue#26957, pr#23626, Chang Liu)
  • rgw: Return tenant field in bucket_stats function (pr#24895, Volker Theile)
  • rgw: return valid Location element, PostObj (issue#22927, pr#20330, yuliyang)
  • rgw: return x-amz-version-id: null when delete obj in versioning suspended bucket (issue#35814, pr#23927, yuliyang)
  • rgw: Revert “rgw: lifcycle: don’t reject compound rules with empty prefix” (pr#26491, Matt Benjamin)
  • rgw: rgw-admin: add “–trim-delay-ms” introduction for ‘sync error trim’ (pr#23342, Enming.Zhang)
  • rgw: rgw-admin: fix data sync report for master zone (pr#23925, cfanz)
  • rgw: RGWAsyncGetBucketInstanceInfo does not access coroutine memory (issue#35812, pr#23987, Casey Bodley)
  • rgw: rgw/beast: drop privileges after binding ports (issue#36041, pr#24271, Paul Emmerich)
  • rgw: RGWBucket::link supports tenant (issue#22666, pr#23119, Casey Bodley)
  • rgw: rgw: change the way sysobj filters raw attributes, fix bucket sync state xattrs (issue#37281, pr#25123, Yehuda Sadeh)
  • rgw: rgw, cls: remove cls_statelog and rgw opstate tracking (pr#24059, Casey Bodley)
  • rgw: rgw_file: deep stat handling (issue#24915, pr#23038, Matt Benjamin)
  • rgw: rgw_file: not check max_objects when creating file (pr#24846, Tao Chen)
  • rgw: rgw_file: use correct secret key to check auth (pr#26130, MinSheng Lin)
  • rgw: rgw_file: user info never synced since librgw init (pr#25406, Tao Chen)
  • rgw: [rgw]: Fix help of radosgw-admin user info in case no uid (pr#25078, Marc Koderer)
  • rgw: rgwgc:process coredump in some special case (issue#23199, pr#25430, zhaokun)
  • rgw: rgw multisite: async rados requests don’t access coroutine memory (issue#35543, pr#23920, Casey Bodley)
  • rgw: rgw multisite: bucket sync transitions back to StateInit on OP_SYNCSTOP (issue#26895, pr#23574, Casey Bodley)
  • rgw: rgw multisite: enforce spawn_window for data full sync (issue#26897, pr#23534, Casey Bodley)
  • rgw: rgw-multisite: fix endless loop in RGWBucketShardIncrementalSyncCR (issue#24603, pr#22660, cfanz)
  • rgw: rgw multisite: incremental data sync uses truncated flag to detect end of listing (issue#26952, pr#23596, Casey Bodley)
  • rgw: rgw multisite: only update last_trim marker on ENODATA (issue#38075, pr#26190, Casey Bodley)
  • rgw: rgw multisite: uses local DataChangesLog to track active buckets for trim (issue#36034, pr#24221, Casey Bodley)
  • rgw: rgw/pubsub: add amqp push endpoint (pr#25866, Yuval Lifshitz)
  • rgw: rgw/pubsub: add pubsub tests (pr#26299, Yuval Lifshitz)
  • rgw: RGWRadosGetOmapKeysCR takes result by shared_ptr (issue#21154, pr#23634, Casey Bodley)
  • rgw: RGWRadosGetOmapKeysCR uses ‘more’ flag from omap_get_keys2() (pr#23401, Casey Bodley, Sage Weil)
  • rgw: RGW: remove duplicate include header files in rgw_rados.cc (pr#18578, Sibei Gao)
  • rgw: rgw_sync: drop ENOENT error logs from mdlog (pr#26971, Abhishek Lekshmanan)
  • rgw: Robustly notify (issue#24963, pr#23100, Adam C. Emerson)
  • rgw: s3: awsv4 drop special handling for x-amz-credential (issue#26965, pr#23652, Abhishek Lekshmanan)
  • rgw: sanitize customer encryption keys from log output in v4 auth (issue#37847, pr#25881, Casey Bodley)
  • rgw: scheduler (pr#26008, Casey Bodley, Abhishek Lekshmanan)
  • rgw: set cr state if aio_read err return in RGWCloneMetaLogCoroutine (issue#24566, pr#22617, Tianshan Qu)
  • rgw: set default objecter_inflight_ops = 24576 (issue#25109, pr#23242, Matt Benjamin)
  • rgw: should recode canonical_uri when caculate s3 v4 auth (issue#23587, pr#21286, yuliyang)
  • rgw: some fix for es sync (issue#23842, issue#23841, pr#21622, Tianshan Qu, Shang Ding)
  • rgw: support admin rest api get user info through user’s access-key (pr#22790, yuliyang)
  • rgw: support server-side encryption when SSL is terminated in a proxy (issue#27221, pr#24700, Casey Bodley)
  • rgw: Swift SLO size_bytes member is optional (issue#18936, pr#22967, Matt Benjamin)
  • rgw: Swift’s TempURL can handle temp_url_expires written in ISO8601 (issue#20795, pr#16658, Radoslaw Zarzynski)
  • rgw: sync module: avoid printing attrs of objects in log (issue#37646, pr#25541, Abhishek Lekshmanan)
  • rgw: test bi list (issue#24483, pr#21772, Orit Wasserman)
  • rgw: test/rgw: add ifdef for HAVE_BOOST_CONTEXT (pr#25744, Casey Bodley)
  • rgw,tests: qa: add test for https://github.com/ceph/ceph/pull/22790 (pr#23143, yuliyang)
  • rgw,tests: qa/rgw: add cls_lock/log/refcount/version tests to verify suite (pr#25381, Casey Bodley)
  • rgw,tests: qa/rgw: add missing import line (pr#25298, Shilpa Jagannath)
  • rgw,tests: qa/rgw: add radosgw-admin-rest task to singleton suite (pr#23145, Casey Bodley)
  • rgw,tests: qa/rgw: disable testing on ec-cache pools (issue#23965, pr#22126, Casey Bodley)
  • rgw,tests: qa/rgw: fix invalid syntax error in radosgw_admin_rest.py (issue#37440, pr#25305, Casey Bodley)
  • rgw,tests: qa/rgw: move ragweed upgrade test into upgrade/luminous-x (pr#21707, Casey Bodley)
  • rgw,tests: qa/rgw: override valgrind –max-threads for radosgw (issue#25214, pr#23372, Casey Bodley)
  • rgw,tests: qa/rgw: patch keystone requirements.txt (issue#23659, pr#23402, Casey Bodley)
  • rgw,tests: qa/rgw: reduce number of multisite log shards (pr#24011, Casey Bodley)
  • rgw,tests: qa/rgw: reorganize verify tasks (pr#22249, Casey Bodley)
  • rgw,tests: qa/rgw/tempest: either force os_type or select random distro (pr#25996, Yehuda Sadeh)
  • rgw,tests: test/rgw: fix for bucket checkpoints (issue#24212, pr#22124, Casey Bodley)
  • rgw,tests: test/rgw: fix race in test_rgw_reshard_wait (pr#26741, Casey Bodley)
  • rgw,tests: test/rgw: silence -Wsign-compare warnings (pr#26364, Kefu Chai)
  • rgw: The delete markers generated by object expiration should have owner attribute (issue#24568, pr#22619, Zhang Shaowen)
  • rgw: the error code returned by rgw is different from amz s3 when getting cors (issue#26964, pr#23646, ashitakasam)
  • rgw: thread DoutPrefixProvider into RGW::Auth_S3::authorize (pr#24409, Ali Maredia)
  • rgw,tools: ceph-dencoder: add RGWRealm and RGWPeriod support (pr#25057, yuliyang)
  • rgw,tools: cls: refcount: add obj_refcount to ceph-dencoder (pr#25441, Abhishek Lekshmanan)
  • rgw,tools: cls/rgw: ready rgw_usage_log_entry for extraction via ceph-dencoder (issue#34537, pr#22344, Vaibhav Bhembre)
  • rgw,tools: vstart: make beast as the default frontend for rgw (pr#26566, Abhishek Lekshmanan)
  • rgw,tools: vstart: rgw: disable the lc debug interval option (pr#25487, Abhishek Lekshmanan)
  • rgw,tools: vstart: set admin socket for RGW in conf (pr#23983, Abhishek Lekshmanan)
  • rgw: update cls_rgw.cc and cls_rgw_const.h (pr#24001, yuliyang)
  • rgw: update ObjectCacheInfo::time_added on overwrite (issue#24346, pr#22324, Casey Bodley)
  • rgw: update –url in usage and doc (pr#22100, Jos Collin)
  • rgw: use chunked encoding to get partial results out faster (issue#12713, pr#23940, Robin H. Johnson)
  • rgw: use coarse_real_clock for req_state::time (pr#21893, Casey Bodley)
  • rgw: use DoutPrefixProvider to add more context to log output (pr#21700, Casey Bodley)
  • rgw: use partial-order bucket listing in RGWLC, add configurable processing delay (issue#23956, pr#21755, Matt Benjamin)
  • rgw: User Policy (pr#21379, Pritha Srivastava)
  • rgw: user stats account for resharded buckets (pr#24595, Casey Bodley)
  • rgw: warn if zone doesn’t contain all zg’s placement targets (pr#22452, Abhishek Lekshmanan)
  • rgw: website routing rules num limit (pr#23429, yuliyang)
  • rgw: when exclusive lock fails due existing lock, log add’l info (issue#38171, pr#26272, J. Eric Ivancich)
  • rgw: zone service only provides const access to its data (pr#25412, Casey Bodley)
  • rocksdb: pick up a fix to be backward compatible (issue#25146, pr#25070, Kefu Chai)
  • script: build-integration-branch: avoid Unicode error (issue#24003, pr#21807, Nathan Cutler)
  • script/kubejacker: Add openSUSE based images (pr#24055, Sebastian Wagner)
  • scripts: backport-create-issue: complain about duplicates and support mimic (issue#24071, pr#21634, Nathan Cutler)
  • seastar: pickup fix for segfault in POSIX stack (pr#25861, Kefu Chai)
  • spec: add missing rbd mirror bootstrap directory (pr#24856, Sébastien Han)
  • src: balance std::hex and std::dec manipulators (pr#22287, Kefu Chai)
  • src/ceph.in: dev mode: add build path to beginning of PATH, not end (issue#24578, pr#22628, Dan Mick)
  • src: Eliminate new warnings in Fedora 28 (pr#21898, Adam C. Emerson)
  • test/crimson: fixes of unittest_seastar_echo (pr#26419, Yingxin Cheng, Kefu Chai)
  • test/fio: fix compiler failure (pr#22728, Jianpeng Ma)
  • test/fio: new option to control file preallocation (pr#23410, Igor Fedotov)
  • tests: Add hashinfo testing for dump command of ceph-objectstore-tool (issue#38053, pr#26158, David Zafman)
  • tests: add ubuntu 18.04 dockerfile (pr#25251, Kefu Chai)
  • tests: auth, test: fix building on ARMs after the NSS -> OpenSSL transition (pr#22129, Radoslaw Zarzynski)
  • tests: ceph_kvstorebench: include <errno.h> not asm-generic/errno.h (pr#25256, Kefu Chai)
  • tests: ceph-volume: functional tests, add libvirt customization (pr#25895, Jan Fajerski)
  • tests: do not check for invalid k/m combinations (issue#16500, pr#25046, Kefu Chai)
  • tests: Fixes for standalone tests (pr#22480, David Zafman)
  • tests: fix to check server_conn in MessengerTest.NameAddrTest (pr#23931, Yingxin)
  • tests: make ceph-admin-commands.sh log what it does (issue#37089, pr#25080, Nathan Cutler)
  • tests: make test_ceph_argparse.py pass on py3-only systems (issue#24816, pr#22922, Nathan Cutler)
  • tests: mgr/ansible: add install tox==2.9.1 (pr#26313, Kefu Chai)
  • tests: mgr/dashboard: Added additional breadcrumb and tab tests to Cluster menu (pr#26151, Nathan Weinberg)
  • tests: mgr/dashboard: Added additional breadcrumb tests to Cluster (pr#25010, Nathan Weinberg)
  • tests: mgr/dashboard: Added breadcrumb and tab tests to Pools menu (pr#25572, Nathan Weinberg)
  • tests: mgr/dashboard: Added breadcrumb tests to Block menu items (pr#25143, Nathan Weinberg)
  • tests: mgr/dashboard: Added breadcrumb tests to Filesystems menu (pr#26592, Nathan Weinberg)
  • tests: mgr/dashboard: Added NFS Ganesha suite to QA tests (pr#26510, Laura Paduano)
  • tests: mgr/dashboard: Added tab tests to Block menu items (pr#26243, Nathan Weinberg)
  • tests: mgr/dashboard: Add Jest Runner (pr#22031, Tiago Melo)
  • tests: mgr/dashboard: Add unit test case for controller/erasure_code_profile.py (pr#24789, Ranjitha G)
  • tests: mgr/dashboard: Add unit test for frontend api services (pr#22284, Tiago Melo)
  • tests: mgr/dashboard: Add unit tests for all frontend pipes (pr#22182, Tiago Melo)
  • tests: mgr/dashboard: Add unit test to the frontend services (pr#22244, Tiago Melo)
  • tests: mgr/dashboard: Fix a broken ECP controller test (pr#25363, Zack Cerza)
  • tests: mgr/dashboard: Fix PYTHONPATH for test runner (pr#25359, Zack Cerza)
  • tests: mgr/dashboard: Improve max-line-length tslint rule (pr#22279, Tiago Melo)
  • tests: mgr/dashboard: RbdMirroringService test suite fails in dev mode (issue#37841, pr#25865, Stephan Müller)
  • tests: mgr/dashboard: Small improvements for running teuthology tests (pr#25121, Zack Cerza)
  • tests: mgr/dashboard: updated API test (pr#25653, Alfonso Martínez)
  • tests: mgr/dashboard: updated API test to reflect changes in ModuleInfo (pr#25761, Kefu Chai)
  • tests: mgr/test_orchestrator: correct ceph-volume path (issue#37773, pr#25839, Kefu Chai)
  • tests: object errors found in be_select_auth_object() aren’t logged the same (issue#25108, pr#23376, David Zafman)
  • tests: osd/OSDMap: set pg_autoscale_mode with setting from conf (pr#25746, Kefu Chai)
  • tests: os/tests: fix garbageCollection test case from store_test suite (pr#23752, Igor Fedotov)
  • tests: os/tests: silence -Wsign-compare warning (pr#25072, Kefu Chai)
  • tests: qa: add librados3 to exclude_packages for ugprade tests (pr#25037, Kefu Chai)
  • tests: qa: add test that builds example librados programs (issue#35989, issue#15100, pr#23131, Nathan Cutler)
  • tests: qa/ceph-ansible: Set ceph_stable_release to mimic (issue#38231, pr#26328, Brad Hubbard)
  • tests: qa/distros: add openSUSE Leap 42.3 and 15.0 (pr#24380, Nathan Cutler)
  • tests: qa: Don’t use sudo when moving logs (pr#22763, David Zafman)
  • tests: qa: downgrade librados2,librbd1 for thrash-old-clients tests (issue#37618, pr#25463, Kefu Chai)
  • tests: qa: fix manager module paths (pr#23637, Noah Watkins, David Zafman)
  • tests/qa - fix mimic subset for nightlies (pr#21931, Yuri Weinstein)
  • tests: qa: fix test on “ceph fs set cephfs allow_new_snaps” (pr#21829, Kefu Chai)
  • tests: qa: fix upgrade tests and test_envlibrados_for_rocksdb.sh (pr#25106, Kefu Chai)
  • tests: qa: For teuthology copy logs to teuthology expected location (pr#22702, David Zafman)
  • tests: qa/mgr/dashboard: Fix type annotation error (pr#25235, Sebastian Wagner)
  • tests: qa/mon: fix cluster support for monmap bootstrap (issue#38115, pr#26205, Casey Bodley)
  • tests: qa/standalone: Minor test improvements (issue#35912, pr#24018, David Zafman)
  • tests: qa/standalone/scrub: When possible show side-by-side diff in addition to regular diff (pr#22727, David Zafman)
  • tests: qa/standalone: Standalone test corrections (issue#35982, pr#24088, David Zafman)
  • tests: qa/suites/rados/upgrade: remove stray link (pr#22460, Sage Weil)
  • tests: qa/suites/rados/upgrade: set require-osd-release to nautilus (issue#37432, pr#25314, Kefu Chai)
  • tests: qa/suites/rados/verify: remove random-distro$ (pr#22057, Kefu Chai)
  • tests: qa/suites/upgrade/mimic-x: fix rhel runs (pr#25781, Neha Ojha)
  • tests: qa/tasks/mgr: fix test_pool.py (issue#24077, pr#21943, Kefu Chai)
  • tests: qa/tasks/thrashosds-health.yaml: whitelist slow requests (issue#25104, pr#23237, Neha Ojha)
  • tests: qa/tasks: update mirror link for maven (pr#23944, Vasu Kulkarni)
  • tests: qa/tests: added filters to support distro tests for client-upgrade tests (pr#22096, Yuri Weinstein)
  • tests: qa/tests - added mimic-p2p suite (pr#22726, Yuri Weinstein)
  • tests: qa/tests: Added mimic runs, removed large suites (rados, rbd, etc) ru… (pr#21827, Yuri Weinstein)
  • tests: qa/tests: added “-n 7” to make sure mimic-x runs on built master branch (pr#25038, Yuri Weinstein)
  • tests: qa/tests: added rhel 7.6 (pr#25919, Yuri Weinstein)
  • tests: qa/tests: fix volume size when running in ovh (pr#21961, Vasu Kulkarni)
  • tests: qa/tests: Move ceph-ansible tests to ansible version 2.7 (issue#37973, pr#26068, Brad Hubbard)
  • tests: qa/tests: remove ceph-disk tests from ceph-deploy and default all tests to use ceph-volume (pr#22921, Vasu Kulkarni)
  • tests: qa/upgrade: cleanup for nautilus (pr#23305, Nathan Cutler)
  • tests: qa: use $TESTDIR for testing mkfs (pr#22246, Kefu Chai)
  • tests: qa: wait longer for osd to flush pg stats (issue#24321, pr#22275, Kefu Chai)
  • tests: qa/workunits/ceph-disk: –no-mon-config (pr#21942, Kefu Chai)
  • tests: qa/workunits/mon/test_mon_config_key.py: bump up the size limit (issue#36260, pr#24340, Kefu Chai)
  • tests: qa/workunits/rados/test_envlibrados_for_rocksdb: install g++ not g++-4.7 (pr#22103, Kefu Chai)
  • tests: qa/workunits/rados/test_librados_build.sh: grab files from explicit git branch (pr#25268, Nathan Cutler)
  • tests: run-make-check: increase fs.aio-max-nr to 1048576 (pr#23689, Kefu Chai)
  • tests: test,common: silence GCC warnings (pr#23692, Kefu Chai)
  • tests: test/crimson: add dummy_auth to test_async_echo (pr#26783, Yingxin Cheng)
  • tests: test/crimson: fix build failure of test_alien_echo (pr#26308, chunmei Liu)
  • tests: test/crimson: fix FTBFS of unittest_seastar_perfcounters on arm64 (pr#25647, Kefu Chai)
  • tests: test/crimson: split async-msgr out of alien_echo (pr#26620, Yingxin Cheng)
  • tests: test/dashboard: fix segfault when importing dm.xmlsec.binding (issue#37081, pr#25139, Kefu Chai)
  • tests: test: Disable duplicate request command test during scrub testing (pr#25675, David Zafman)
  • tests: test/docker-test-helper.sh: move “cp .git/HEAD” out of loop (pr#22978, Kefu Chai)
  • tests: test/encoding: Fix typo in encoding/types.h file (pr#22332, TommyLike)
  • tests: test/fio: pass config params to object store in a different manner (pr#23267, Igor Fedotov)
  • tests: test: fix compile error in test/crimson/test_config.cc (pr#23724, Yingxin)
  • tests: test: fix libc++ crash in Log.GarbleRecovery (pr#25135, Casey Bodley)
  • tests: test/librados: fix LibRadosList.ListObjectsNS (pr#22771, Kefu Chai)
  • tests: test: Limit loops waiting for force-backfill/force-recovery to happen (issue#38309, pr#26416, David Zafman)
  • tests: test: Need to escape parens in log-whitelist for grep (pr#22074, David Zafman)
  • tests: test: osd-backfill-stats.sh Fix check of multi backfill OSDs, skip re… (pr#26330, David Zafman)
  • tests: test/pybind/test_rados.py: collect output in stdout for “bench” cmd (pr#21957, Kefu Chai)
  • tests: test: run-standalone.sh: point LD_LIBRARY_PATH to $(pwd)/lib (issue#38262, pr#26371, David Zafman)
  • tests: tests/qa: trying $ distro mix (pr#21895, Yuri Weinstein)
  • tests: test: Start using GNU awk and fix archiving directory (pr#23955, Willem Jan Withagen)
  • tests: test/strtol: add test case for parsing hex numbers (pr#21582, Jan Fajerski)
  • tests: test: suppress core dumping in there tests as well (pr#25311, Willem Jan Withagen)
  • tests: test: switch to GNU sed on FreeBSD (pr#26318, Willem Jan Withagen)
  • tests: test: test_get_timeout_delays() fix (pr#22837, David Zafman)
  • tests: test: Use a file that should be on all OSes (pr#22428, David Zafman)
  • tests: test: Use a grep pattern that works across releases (issue#35845, pr#24013, David Zafman)
  • tests: test: Use pids instead of jobspecs which were wrong (issue#27056, pr#23695, David Zafman)
  • tests: test: wait_for_pg_stats() should do another check after last 13 secon… (pr#22198, David Zafman)
  • tests: test: Whitelist corrections (pr#22164, David Zafman)
  • tests: test: write log file to current directory (issue#36737, pr#25704, Kefu Chai)
  • tests,tools: ceph-objectstore-tool: Dump hashinfo (issue#37597, pr#25483, David Zafman)
  • tests: update Dockerfile to support fc-29 (pr#26311, Kefu Chai)
  • tests: upgrade/luminous-x: fix order of final-workload directory (pr#23162, Nathan Cutler)
  • tests: upgrade/luminous-x: whitelist REQUEST_SLOW for rados_mon_thrash (issue#25051, pr#23160, Nathan Cutler)
  • tests: Wip 38027 38195: osd/osd-backfill-space.sh fails (issue#38027, issue#38195, pr#26290, David Zafman)
  • tools: Add clear-data-digest command to objectstore tool (pr#25403, Li Yichao)
  • tools: add offset-align option to “rados” load-gen (pr#20683, Zengran Zhang)
  • tools: backport-create-issue: rate-limit to avoid seeming like a spammer (pr#24243, Nathan Cutler)
  • tools: ceph-menv: mrun shell environment (pr#22132, Yehuda Sadeh)
  • tools: ceph-objectstore-tool: Allow target level as first positional argument (issue#35846, pr#23989, David Zafman)
  • tools: correct the description of Allowed options in osdomap tool (pr#23488, xiaomanh)
  • tools, mgr: silence clang warnings (pr#23430, Kefu Chai)
  • tools: mstop.sh allow kill -9 after failing to kill procs (pr#26680, Yuval Lifshitz)
  • tools/rados: fix memory leak in error path (pr#25410, Li Wang)
  • tools: script/kubejacker: include cls libs (pr#23569, John Spray)
  • tools: script: new ceph-backport.sh script (pr#22875, Nathan Cutler)
  • tools: tools: ceph-authtool: report correct number of caps when creating keyring (pr#23304, Nathan Cutler)
  • tools: tools/ceph_kvstore_tool: do not open rocksdb when repairing it (pr#25108, Kefu Chai)
  • tools: tools/ceph_kvstore_tool: extract StoreTool into kvstore_tool.cc (pr#26041, Kefu Chai)
  • tools: tools/ceph_kvstore_tool: Move summary output to print_summary (pr#26666, Brad Hubbard)
  • tools: tools/rados: allow list objects in a specific pg in a pool (pr#19041, Li Wang)
  • tools: tools/rados: always call rados.shutdown() before exit() (issue#36732, pr#24990, Li Wang)
  • tools: tools/rados: correct the read offset of bench (pr#23667, Xiaofei Cui)
  • tools: tools/rados: fix the unit of target-throughput (pr#23683, Xiaofei Cui)
  • vstart: disable dashboard when rbd not built (pr#23336, Noah Watkins)
  • vstart.sh: fix params generation for monmaptool (issue#38174, pr#26273, Yehuda Sadeh)

Nautilus artwork by Tim Serong, CC BY