You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spamassassin.apache.org by jm...@apache.org on 2006/09/02 21:57:47 UTC

svn commit: r439644 - /spamassassin/trunk/masses/rule-qa/corpus-nightly

Author: jm
Date: Sat Sep  2 12:57:47 2006
New Revision: 439644

URL: http://svn.apache.org/viewvc?rev=439644&view=rev
Log:
corpus-nightly should fall back to 'svn checkout' instead of 'svn update' if that is failing; 'svn co' is more fault-tolerant

Modified:
    spamassassin/trunk/masses/rule-qa/corpus-nightly

Modified: spamassassin/trunk/masses/rule-qa/corpus-nightly
URL: http://svn.apache.org/viewvc/spamassassin/trunk/masses/rule-qa/corpus-nightly?rev=439644&r1=439643&r2=439644&view=diff
==============================================================================
--- spamassassin/trunk/masses/rule-qa/corpus-nightly (original)
+++ spamassassin/trunk/masses/rule-qa/corpus-nightly Sat Sep  2 12:57:47 2006
@@ -62,37 +62,31 @@
         rm -rf rules    # causing trouble for some reason
         rm -rf rulesrc/sandbox
 
-        # argh svn, messiness
-        svn cleanup < /dev/null
-
 	if svn update -r $revision < /dev/null && \
             svn update -r $revision rulesrc < /dev/null
         then
 		break;
 	fi
 
-        # TODO: if that failed, we should be just using
-        # a brand new "svn checkout" and forget about the incremental
-        # update niceties
-
-        # OFF: this is extremely antisocial when multiple
-        # corpus-nightly scripts run simultaneously on one CPU!
-	# pkill -TERM svn
-	# sleep 10
-	# pkill -KILL svn
+        # if that failed, get aggressive about getting a full
+        # checkout, regardless of what may have been here already;
+        # delete most of the checkout to do so, and just use "svn co"
+        # instead of "svn up".
 
-	if svn update -r $revision < /dev/null && \
-            svn update -r $revision rulesrc < /dev/null
-        then
-		break;
-	fi
+        rm -rf rules lib build rulesrc spamd spamc
+        svn cleanup < /dev/null
+        svn co --non-interactive `svnpath` .
 
-	if [ $retry -eq 120 ]; then
-		echo "svn update failed" 1>&2
+        # just 10 times; our SVN repo shouldn't be *that* unreliable!
+	if [ $retry -eq 20 ]; then
+		echo "svn update/co failed" 1>&2
 		exit 1
 	fi
+
 	retry=$(( $retry + 1 ))
-	sleep 20
+
+        # longer and longer between retries
+	sleep `expr 20 '*' $retry`
 done
 set -e