[Ocfs2-test-devel] [PATCH] dirop_file_racer: Add a prefix to the file names created.

Joel Becker Joel.Becker at oracle.com
Wed Apr 29 21:20:38 PDT 2009


The symlink racer couldn't create syminks larger than an inode.  Let's
add a PREFIX environment variable.  When set, all files created by all
the tests in dirop_file_racer will start with the PREFIX.  So you can
set a 250 character PREFIX and file_symlink.sh will create symlinks that
get to 750 characters or more.  It also helps stress inline directories,
etc.

Signed-off-by: Joel Becker <joel.becker at oracle.com>
---
 programs/dirop_fileop_racer/dir_create.sh   |    2 +-
 programs/dirop_fileop_racer/file_concat.sh  |    4 ++--
 programs/dirop_fileop_racer/file_create.sh  |    2 +-
 programs/dirop_fileop_racer/file_link.sh    |    5 +++--
 programs/dirop_fileop_racer/file_rename.sh  |    5 +++--
 programs/dirop_fileop_racer/file_rm.sh      |    2 +-
 programs/dirop_fileop_racer/file_symlink.sh |    5 +++--
 programs/dirop_fileop_racer/racer.sh        |    5 +++++
 8 files changed, 19 insertions(+), 11 deletions(-)

diff --git a/programs/dirop_fileop_racer/dir_create.sh b/programs/dirop_fileop_racer/dir_create.sh
index 3595bd2..5ce639f 100755
--- a/programs/dirop_fileop_racer/dir_create.sh
+++ b/programs/dirop_fileop_racer/dir_create.sh
@@ -27,7 +27,7 @@ create(){
 }
 
 while /bin/true ; do 
-    file=$(($RANDOM%$MAX))
+    file="${DIROP_FILE_PREFIX}"$(($RANDOM%$MAX))
     mkdir -p $DIR/$file/$file/ 2> /dev/null
     create 2> /dev/null
 done
diff --git a/programs/dirop_fileop_racer/file_concat.sh b/programs/dirop_fileop_racer/file_concat.sh
index 7d57416..9a50dbb 100755
--- a/programs/dirop_fileop_racer/file_concat.sh
+++ b/programs/dirop_fileop_racer/file_concat.sh
@@ -29,7 +29,7 @@ concat(){
 }
 
 while /bin/true ; do 
-    file=$(($RANDOM%$MAX))
-    new_file=$(($RANDOM%$MAX))
+    file="${DIROP_FILE_PREFIX}"$(($RANDOM%$MAX))
+    new_file="${DIROP_FILE_PREFIX}"$(($RANDOM%$MAX))
     concat 2> /dev/null
 done
diff --git a/programs/dirop_fileop_racer/file_create.sh b/programs/dirop_fileop_racer/file_create.sh
index fa15ea0..9e36932 100755
--- a/programs/dirop_fileop_racer/file_create.sh
+++ b/programs/dirop_fileop_racer/file_create.sh
@@ -30,7 +30,7 @@ create() {
 }
 
 while /bin/true ; do 
-    file=$(($RANDOM%$MAX))
+    file="${DIROP_FILE_PREFIX}"$(($RANDOM%$MAX))
     create 2> /dev/null
 done
 
diff --git a/programs/dirop_fileop_racer/file_link.sh b/programs/dirop_fileop_racer/file_link.sh
index ab5b2b4..a70767f 100755
--- a/programs/dirop_fileop_racer/file_link.sh
+++ b/programs/dirop_fileop_racer/file_link.sh
@@ -23,8 +23,9 @@ DIR=$1
 MAX=$2
 
 while /bin/true ; do 
-    file=$(($RANDOM%$MAX))
-    new_file=$((($file + 1)%$MAX))
+    N=$(($RANDOM%$MAX))
+    file="${DIROP_FILE_PREFIX}"$N
+    new_file="${DIROP_FILE_PREFIX}"$((($N + 1)%$MAX))
     ln -s $file $DIR/$new_file 2> /dev/null
     ln $file $DIR/$new_file 2> /dev/null
 done
diff --git a/programs/dirop_fileop_racer/file_rename.sh b/programs/dirop_fileop_racer/file_rename.sh
index b34f3ff..2305bd3 100755
--- a/programs/dirop_fileop_racer/file_rename.sh
+++ b/programs/dirop_fileop_racer/file_rename.sh
@@ -23,7 +23,8 @@ DIR=$1
 MAX=$2
 
 while /bin/true ; do 
-    file=$(($RANDOM%$MAX))
-    new_file=$((($file + 1)%$MAX))
+    N=$(($RANDOM%$MAX))
+    file="${DIROP_FILE_PREFIX}"$N
+    new_file="${DIROP_FILE_PREFIX}"$((($N + 1)%$MAX))
     mv $DIR/$file $DIR/$new_file 2> /dev/null
 done
diff --git a/programs/dirop_fileop_racer/file_rm.sh b/programs/dirop_fileop_racer/file_rm.sh
index cd0d707..e71561b 100755
--- a/programs/dirop_fileop_racer/file_rm.sh
+++ b/programs/dirop_fileop_racer/file_rm.sh
@@ -23,7 +23,7 @@ DIR=$1
 MAX=$2
 
 while /bin/true ; do 
-    file=$(($RANDOM%$MAX))
+    file="${DIROP_FILE_PREFIX}"$(($RANDOM%$MAX))
     rm -rf $DIR/$file 2> /dev/null
     sleep 1
 done
diff --git a/programs/dirop_fileop_racer/file_symlink.sh b/programs/dirop_fileop_racer/file_symlink.sh
index 74276c1..8e0bb09 100755
--- a/programs/dirop_fileop_racer/file_symlink.sh
+++ b/programs/dirop_fileop_racer/file_symlink.sh
@@ -23,8 +23,9 @@ DIR=$1
 MAX=$2
 
 while /bin/true ; do 
-    file=$(($RANDOM%$MAX))
-    new_file=$((($file + 1)%$MAX))
+    N=$(($RANDOM%$MAX))
+    file="${DIROP_FILE_PREFIX}"$N
+    new_file="${DIROP_FILE_PREFIX}"$((($N + 1)%$MAX))
     ln -s $file $DIR/$new_file 2> /dev/null
     ln -s $file/$file/$file $DIR/$new_file 2> /dev/null
 done
diff --git a/programs/dirop_fileop_racer/racer.sh b/programs/dirop_fileop_racer/racer.sh
index e44a9ec..819efa8 100755
--- a/programs/dirop_fileop_racer/racer.sh
+++ b/programs/dirop_fileop_racer/racer.sh
@@ -31,6 +31,11 @@ MAX_FILES=20
 CLEAR_SECS=30
 DIR="race"
 
+#
+# Set DIROP_FILE_PREFIX in the environment to put a prefix on each
+# test filename.
+#
+
 [ -e $DIR ] || mkdir $DIR
 ./file_create.sh $DIR $MAX_FILES &
 ./file_create.sh $DIR $MAX_FILES &
-- 
1.6.1.3

-- 

"The whole problem with the world is that fools and fanatics are always
 so certain of themselves, and wiser people so full of doubts."
	- Bertrand Russell

Joel Becker
Principal Software Developer
Oracle
E-mail: joel.becker at oracle.com
Phone: (650) 506-8127



More information about the Ocfs2-test-devel mailing list