杰里米·施奈德:Debian的排序测试对比

杰里米·施奈德:Debian的排序测试对比

💡 原文英文,约800词,阅读约需3分钟。
📝

内容提要

Debian的排序测试结果已完成,Bullseye和Bookworm的en_US排序未见变化,而Buster因glibc 2.28显示了显著变化。Jessie到Stretch的升级对包含非英语字符的数据库存在安全隐患。测试中修复了一些bug,并优化了排序代码,采用git的“histogram”算法加速比较过程。最终结果和数据已上传至GitHub供查阅。

🎯

关键要点

  • Debian的排序测试结果已完成并上传至GitHub。
  • Bullseye和Bookworm的en_US排序未见变化,Buster因glibc 2.28显示了显著变化。
  • Jessie到Stretch的升级对包含非英语字符的数据库存在安全隐患。
  • 测试中修复了一些bug,并优化了排序代码,采用git的“histogram”算法加速比较过程。
  • 排序过程分为两个阶段,第一阶段高度并行化以利用可用的CPU资源。
  • 使用git的“histogram”算法比传统的Myers算法更有效,能快速完成大规模的比较。
  • 测试数据的比较准确且简单,使用25百万字符串的文本文件进行排序和比较。
  • 脚本下载操作系统的区域数据文件并进行递归比较,原始结果也上传至GitHub。
  • 演示文稿“Collations from A to Z”提供了测试套件的背景信息。
  • 建议在Docker上运行Postgres时固定基础镜像的主要版本。

延伸问答

Debian的排序测试结果有哪些主要发现?

Bullseye和Bookworm的en_US排序未见变化,而Buster因glibc 2.28显示了显著变化。

Jessie到Stretch的升级对数据库有什么影响?

该升级对包含非英语字符的数据库存在安全隐患。

测试中使用了什么算法来加速排序过程?

测试中采用了git的“histogram”算法来加速比较过程。

排序测试的比较数据是如何生成的?

比较数据使用25百万字符串的文本文件进行排序和比较,结果直接上传至GitHub。

在Docker上运行Postgres时有什么建议?

建议在Docker上运行Postgres时固定基础镜像的主要版本。

测试中修复了哪些问题?

测试中修复了一些bug,并优化了排序代码。

➡️

继续阅读