[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#6655: [PATCH] tests/misc/sort-merge-fdlimit: don't assume -R opens /
From: |
Paul Eggert |
Subject: |
bug#6655: [PATCH] tests/misc/sort-merge-fdlimit: don't assume -R opens /dev/urandom |
Date: |
Fri, 16 Jul 2010 11:31:33 -0700 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.10) Gecko/20100527 Thunderbird/3.0.5 |
While reviewing the recent sort patches I discovered something
else that needed to be merged. One test in the patch assumes that
sort -R opens /dev/urandom, and makes sure that file descriptor
exhaustion doesn't occur. But sort -R no longer opens /dev/urandom
by default, so the test doesn't actually test for the bug that it
was designed for (and the test will succeed even if the bug was
present). I installed this to resurrect the test.
>From 9e89f39526999c6eef0a0d0211eaa1804e62a628 Mon Sep 17 00:00:00 2001
From: Paul R. Eggert <address@hidden>
Date: Fri, 16 Jul 2010 11:27:42 -0700
Subject: [PATCH] tests/misc/sort-merge-fdlimit: don't assume -R opens
/dev/urandom
* tests/misc/sort-merge-fdlimit: This test was written assuming that
-R typically opens /dev/urandom, but that's no longer the case.
Redo test to specify a random source; this resurrects the point of
checking for file descriptor exhaustion. Also try plain -R, since
that implementation may change in the future too.
---
tests/misc/sort-merge-fdlimit | 14 +++++++++-----
1 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/tests/misc/sort-merge-fdlimit b/tests/misc/sort-merge-fdlimit
index d1736f5..56b8518 100755
--- a/tests/misc/sort-merge-fdlimit
+++ b/tests/misc/sort-merge-fdlimit
@@ -31,6 +31,7 @@ mkdir in err || framework_failure
for i in `seq 17`; do
echo $i >in/$i
done
+seq 17 >some-data
# When these tests are run inside the automated testing framework, they
# have one less available file descriptor than when run outside the
@@ -43,11 +44,14 @@ done
&& sort -m --batch-size=16 in/* 2>err/merge-default-err \
|| ! grep "open failed" err/merge-default-err) || fail=1
-# If sort opens a file (/dev/urandom) to sort by random hashes of keys,
+# If sort opens a file to sort by random hashes of keys,
# it needs to consider this file against its limit on open file
-# descriptors.
-(ulimit -n 20 \
- && sort -mR --batch-size=16 in/* 2>err/merge-random-err \
- || ! grep "open failed" err/merge-random-err) || fail=1
+# descriptors. Test once with the default random source
+# and once with an explicit source.
+for randsource in '' --random-source=some-data; do
+ (ulimit -n 20 \
+ && sort -mR $randsource --batch-size=16 in/* 2>err/merge-random-err \
+ || ! grep "open failed" err/merge-random-err) || fail=1
+done
Exit $fail
--
1.7.1
- bug#6655: [PATCH] tests/misc/sort-merge-fdlimit: don't assume -R opens /dev/urandom,
Paul Eggert <=