v0.80.6 Firefly 发布

sage

这是 firefly 的一个主要错误修复版本,修复了 OSD 和监视器中的一系列问题,特别是与缓存分层相关的问题。librados 中也有重要的修复,包括 librbd 使用的 watch/notify 机制,以及 radosgw 中的修复。

回溯了一些新的功能,包括改进的 ‘ceph df’ 输出(查看每个池的可写空间量)、在使用 sysvinit 或 systemd 时支持非默认集群名称,以及改进(并修复)了对 dmcrypt 的支持。

我们建议所有 v0.80.x Firefly 用户升级到此版本。

有关更详细的信息,请参阅 完整的变更日志

值得注意的更改

  • build: 修复 i386 上的 atomic64_t (#8969 Sage Weil)
  • build: 修复 alpha 上的构建 (Michael Cree, Dmitry Smirnov)
  • build: 修复 hppa 上的构建 (Dmitry Smirnov)
  • build: 修复 x32 架构上的 yasm 检测 (Sage Weil)
  • ceph-disk: 修复带有 dmcrypt 的 ‘list’ 函数 (Sage Weil)
  • ceph-disk: 修复 dmcrypt 支持 (Alfredo Deza)
  • ceph: 允许指定非默认集群 (#8944)
  • common: 修复向监视器发送重复日志消息 (#9080 Sage Weil)
  • global: 在使用 -f 时写入 pid 文件 (systemd, upstart) (Alexandre Oliva)
  • librados: 修复启用读取超时时崩溃的问题 (#9362 Matthias Kiefer, Sage Weil)
  • librados: 修复错误路径中的锁泄漏 (#9022 Pavan Rallabhandi)
  • librados: 修复 PG 作用集更改时的 watch 重发 (#9220 Samuel Just)
  • librados: python: 修复带有 0 的 aio_read 处理 (Mohammad Salehe)
  • librbd: 添加使缓存数据失效的接口 (Josh Durgin)
  • librbd: 修复使用扁平化镜像克隆时崩溃的问题 (#8845 Josh Durgin)
  • librbd: 修复打开时的错误路径清理 (#8912 Josh Durgin)
  • librbd: 修复空指针检查 (Danny Al-Gaaf)
  • librbd: 限制脏对象计数 (Haomai Wang)
  • mds: 修复根和 mdsdir 的 rstats (Yan, Zheng)
  • mon: 添加用于新缓存分层池属性的 ‘get’ 命令 (Joao Eduardo Luis)
  • mon: 添加 ‘osd pool get-quota’ (#8523 Joao Eduardo Luis)
  • mon: 添加集群指纹 (Sage Weil)
  • mon: 禁止无意义的缓存模式转换 (#8155 Joao Eduardo Luis)
  • mon: 修复 i386 上的缓存分层舍入错误 (Sage Weil)
  • mon: 修复偶发内存泄漏 (#9176 Sage Weil)
  • mon: 修复 ‘osd perf’ 的报告延迟 (#9269 Samuel Just)
  • mon: 在 ‘ceph df’ 输出中包含 ‘max avail’ (Sage Weil, Xioaxi Chen)
  • mon: 持续标记 scrub 可能会发现不完整克隆的池 (#8882 Sage Weil)
  • mon: 预加载擦除插件 (Loic Dachary)
  • mon: 防止缓存特定设置应用于非分层池 (#8696 Joao Eduardo Luis)
  • mon: 减少日志垃圾信息 (Aanchal Agrawal, Sage Weil)
  • mon: 警告缓存池未启用 hit_sets (Sage Weil)
  • msgr: 修复琐碎的内存泄漏 (Sage Weil)
  • osd: 自动 scrub 具有无效统计信息的 PG (#8147 Sage Weil)
  • osd: 避免共享不可持久的 PG 元数据 (Samuel Just)
  • osd: 限制 hit_set 大小 (#9339 Samuel Just)
  • osd: 如果需要,创建默认擦除配置文件 (#8601 Loic Dachary)
  • osd: 在适当的地方将 tid 转储为 JSON int(而不是字符串)(Joao Eduardo Luis)
  • osd: 以确定性顺序编码黑名单 (#9211 Sage Weil)
  • osd: 修复缓存分层在没有启用 hit_sets 时的行为 (#8982 Sage Weil)
  • osd: 修复缓存分层快照的刷新 (#9054 Samuel Just)
  • osd: 修复从满到非满状态时缓存分层操作顺序 (#8931 Sage Weil)
  • osd: 修复 dup 恢复预留中的崩溃 (#8863 Sage Weil)
  • osd: 修复 pg_num 调整时没有 OSD 时的除零错误 (#9052 Sage Weil)
  • osd: 修复实验 keyvaluestore_dev 后端中的提示崩溃 (Hoamai Wang)
  • osd: 修复 copyfrom 取消中的泄漏 (#8894 Samuel Just)
  • osd: 修复 copyfrom 完成的锁定 (#8889 Sage Weil)
  • osd: 修复后端中的长文件名处理 (#8701 Sage Weil)
  • osd: 修复带有回填的 min_size 检查 (#9497 Samuel Just)
  • osd: 修复挂载/重新挂载同步竞争 (#9144 Sage Weil)
  • osd: 修复对象列表 + 擦除代码错误 (Guang Yang)
  • osd: 修复与失败 OSD 重新连接时的竞争 (#8944 Greg Farnum)
  • osd: 修复恢复预留死锁 (Samuel Just)
  • osd: 修复分层代理对负值的算术运算 (#9082 Karan Singh)
  • osd: 改进关机顺序 (#9218 Sage Weil)
  • osd: 改进 subop discard 逻辑 (#9259 Samuel Just)
  • osd: 引入可选的睡眠、scrub 和 snap trim 的 IO 优先级 (Sage Weil)
  • osd: 使 scrub 检查并删除过时的擦除编码对象 (Samuel Just)
  • osd: 杂项修复 (#9481 #9482 #9179 Sameul Just)
  • osd: keyvaluestore_dev 改进 (Haomai Wang)
  • osd: 仅需要用于已用规则的 CRUSH 功能 (#8963 Sage Weil)
  • osd: 在启动时预加载擦除插件 (Loic Dachary)
  • osd: 防止 PG 在使用 OSDMap 时落后 (#7576 Sage Weil)
  • osd: 防止旧客户端使用分层池 (#8714 Sage Weil)
  • osd: 将擦除池的 min_size 设置为数据块计数 (Sage Weil)
  • osd: 更积极地修剪旧的擦除编码对象 (Samuel Just)
  • rados: 强制执行擦除代码对齐 (Lluis Pamies-Juarez)
  • rgw: 将对象条带与擦除池对齐 (#8442 Yehuda Sadeh)
  • rgw: 不要为 civetweb 发送带有错误正文的 HEAD 请求 (#8539 Yehuda Sadeh)
  • rgw: 修复 CORS 预检请求中的崩溃 (Yehuda Sadeh)
  • rgw: 修复 URL 中 + 的解码 (#8702 Yehuda Sadeh)
  • rgw: 修复对象创建时的对象删除 (#8972 Patrycja Szabowska, Yehuda Sadeh)
  • systemd: 在启动 radosgw 时使用 systemd-run (JuanJose Galvez)
  • sysvinit: 支持非默认集群名称 (Alfredo Deza)

获取 Ceph