diff options
author | Ludovic Courtès <ludo@gnu.org> | 2016-01-14 10:42:08 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2016-01-14 10:43:08 +0100 |
commit | 76002e54f2280f5a6416438c513aab14ecddb138 (patch) | |
tree | 43e1633848f41e9c9f26162c0b73e4491b2ce634 /gnu/packages/patches | |
parent | ca7ef4d41854218c6e6910e1b7d9224382252c58 (diff) |
gnu: gawk: Protect against random failures of the 'fts' test.
* gnu/packages/patches/gawk-fts-test.patch: New file.
* gnu/packages/gawk.scm (gawk)[source]: Use it.
* gnu-system.am (dist_patch_DATA): Add it.
Diffstat (limited to 'gnu/packages/patches')
-rw-r--r-- | gnu/packages/patches/gawk-fts-test.patch | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/gnu/packages/patches/gawk-fts-test.patch b/gnu/packages/patches/gawk-fts-test.patch new file mode 100644 index 0000000000..de1f5c431c --- /dev/null +++ b/gnu/packages/patches/gawk-fts-test.patch @@ -0,0 +1,51 @@ +This is upstream commit c9a018c. We have observed random failures of +this test on i686 that seem related to load. + +2015-05-21 Arnold D. Robbins <arnold@skeeve.com> + + * fts.awk: Really remove atime from the output. + This avoids spurious failures on heavily loaded systems. + +diff --git a/test/fts.awk b/test/fts.awk +index b1df060..dea5b68 100644 +--- a/test/fts.awk ++++ b/test/fts.awk +@@ -50,6 +50,11 @@ function sort_traverse(data, sorted, i) + { + asorti(data, sorted) + for (i = 1; i in sorted; i++) { ++ # 5/2015: skip for atime, since there can ++ # occasionally be small differences. ++ if (sorted[i] == "atime") ++ continue ++ + indent() + printf("%s --> %s\n", sorted[i], data[sorted[i]]) > output + } +@@ -63,17 +68,20 @@ function traverse(data, i) + printf("%s:\n", i) > output + + Level++ +- if (("mtime" in data[i]) && ! isarray(data[i][mtime])) { ++ if (("mtime" in data[i]) && ! isarray(data[i]["mtime"])) { + sort_traverse(data[i]) + } else { + traverse(data[i]) + } + Level-- +- } else if (data[i] != "atime") { +- # 4/2015: skip for atime, since there can +- # occasionally be small differences. +- indent() +- printf("%s --> %s\n", i, data[i]) > output ++# } else { ++# JUNK = 1 ++# if (i != "atime") { ++# # 4/2015: skip for atime, since there can ++# # occasionally be small differences. ++# indent() ++# printf("%s --> %s\n", i, data[i]) > output ++# } + } + } + } |