Optimize waterfall fetch by skipping succeeded builds
TEST="sh tools/valgrind/waterfall.sh fetch" should become faster
Review URL: http://codereview.chromium.org/3061050

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54881 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/tools/valgrind/waterfall.sh b/tools/valgrind/waterfall.sh
index 7e94cd76..1044fd9ac 100755
--- a/tools/valgrind/waterfall.sh
+++ b/tools/valgrind/waterfall.sh
@@ -30,15 +30,17 @@
   for S in $SLAVES
   do
     SLAVE_URL=$WATERFALL_PAGE/$S
-    echo -n "Fetching builds by slave $S"
+    SLAVE_NAME=$(echo $S | sed "s/%20/ /g" | sed "s/%28/(/g" | sed "s/%29/)/g")
+    echo -n "Fetching builds by slave '${SLAVE_NAME}'"
     wget $SLAVE_URL -O $LOGS_DIR/slave_${S} -q
-    LIST_OF_BUILDS=$(grep "<a href=\"\.\./builders/.*/builds/[0-9]\+" \
-                     $LOGS_DIR/slave_$S | \
-                     sed "s/.*\/builds\///" | sed "s/\".*//")
 
-    # TODO(timurrrr): probably we can speed up the 'fetch' step
-    # by skipping those builds/tests which succeeded.
-    # OTOH, we won't be able to check if some suppression is not used anymore.
+    # We speed up the 'fetch' step by skipping the builds/tests which succeeded.
+    # TODO(timurrrr): OTOH, we won't be able to check
+    # if some suppression is not used anymore.
+    LIST_OF_BUILDS=$(grep "<a href=\"\.\./builders/.*/builds/[0-9]\+.*failed" \
+                     $LOGS_DIR/slave_$S | grep -v "failed compile" | \
+                     sed "s/.*\/builds\///" | sed "s/\".*//" | head -n 2)
+
     for BUILD in $LIST_OF_BUILDS
     do
       BUILD_RESULTS="$LOGS_DIR/slave_${S}_build_${BUILD}"