↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

已结束支持的版本: 8.0 / 7.4 / 7.3 / 7.2 / 7.1
历史版本。 PostgreSQL 8.0 已结束支持。 请参阅 当前版本手册.

26.3. 平台相关的比较文件 #

由于某些测试天生会产生平台相关的结果,我们提供了一种提供平台相关结果比较文件的方法。往往同一种变化适用于多个平台;与其为每个平台分别提供一个比较文件,不如用一个映射文件来定义使用哪个比较文件。因此,要为某个特定平台消除虚假的测试“失败”,你必须选择或制作一个变体结果文件,然后在该映射文件(即 src/test/regress/resultmap)中增加一行。

映射文件中的每一行都采用如下形式:

testname/platformpattern=comparisonfilename

测试名就是相应回归测试模块的名称。平台模式是 Unix 工具expr风格的模式(也就是在开头隐含^锚点的正则表达式)。它会与config.guess打印出的平台名进行比较,后跟 :gcc或:cc,这取决于你使用的是 GNU 编译器还是系统的原生编译器(在两者有差别的系统上)。比较文件名则是替代结果比较文件的基名。

例如:某些系统会把极小的浮点数值解释为零,而不是报告下溢错误。这会导致float8回归测试出现一些差异。因此,我们提供了一个变体比较文件float8-small-is-zero.out,其中包含这些系统上的预期结果。为了消除OpenBSD平台上虚假的“失败”消息,resultmap包含:

float8/i.86-.*-openbsd=float8-small-is-zero

只要一台机器的config.guess输出匹配 i.86-.*-openbsd,该行就会触发。resultmap中的其他行会为其他适用的平台选择变体比较文件。

报告文档问题

阅读 上游文档. 反馈更正前请先核对 当前版本手册.