| <? |
| /****************************** |
| * |
| * Checking input variables |
| * |
| ******************************/ |
| if(!isset($HTTP_GET_VARS['machine']) || !is_numeric($HTTP_GET_VARS['machine'])){ |
| print "Error: Incorrect URL for machine.php!\n"; |
| die(); |
| } |
| $machine = $HTTP_GET_VARS['machine']; |
| |
| if(!(include "NightlyTester.php")){ |
| print "Error: could not load necessary files!\n"; |
| die(); |
| } |
| |
| $mysql_link=mysql_connect("127.0.0.1","llvm","ll2002vm") or die("Error: could not connect to database!\n"); |
| mysql_select_db("nightlytestresults"); |
| |
| $row = getMachineInfo($machine); |
| $machine_name = $row['name']; |
| if(strcmp($row['nickname'],"")!=0){ |
| $machine_name=$row['nickname']; |
| } |
| |
| |
| ?> |
| |
| <html> |
| <head> |
| <title>LLVM Machine Test Results For <?php print $machine_name ?></title> |
| <script type="text/javascript" src="popup.js"></script> |
| <STYLE TYPE="text/css"> |
| <!-- |
| @import url(style.css); |
| --> |
| </STYLE> |
| </head> |
| <body> |
| |
| <center><font size=+3 face=Verdana><b>LLVM Machine Test Results For <?php print $machine_name ?></b></font></center><br> |
| |
| <table cellspacing=5 cellpadding=5 border=0> |
| <tr> |
| <td valign=top> |
| <? |
| $machine = $HTTP_GET_VARS['machine']; |
| $night = -1; |
| include "sidebar.php"; |
| ?> |
| </td> |
| <td valign=top> |
| |
| <? |
| |
| print "<table border=0 cellpadding=0 cellspacing=5>\n"; |
| print "<tr>\n"; |
| print "<td><b>Nickname:</b></td>"; |
| print "<td>{$row['nickname']}</td>\n"; |
| print "</tr>\n"; |
| print "<tr>\n"; |
| print "<td><b>uname:</b></td>"; |
| //print $row['uname']; |
| print "<td>{$row['uname']}</td>\n"; |
| print "</tr>\n"; |
| print "<tr>\n"; |
| print "<td><b>Hardware:</b></td>"; |
| print "<td>{$row['hardware']}</td>\n"; |
| print "</tr>\n"; |
| print "<tr>\n"; |
| print "<td><b>OS:</b></td>"; |
| print "<td>{$row['os']}</td>\n"; |
| print "</tr>\n"; |
| print "<tr>\n"; |
| print "<td><b>Hostname:</b></td>"; |
| print "<td>{$row['name']}</td>\n"; |
| print "</tr>\n"; |
| print "<tr>\n"; |
| print "<td><b>GCC:</b></td>"; |
| print "<td>{$row['gcc']}</td>\n"; |
| print "</tr>\n"; |
| print "<tr>\n"; |
| print "<td><b>Machine ID:</b></td>"; |
| print "<td>{$row['id']}</td>\n"; |
| print "</tr>\n"; |
| print "</table>\n<br>\n"; |
| |
| |
| $result = getNightsResource($machine); |
| $recent=mysql_fetch_array($result); |
| $recent_id=$recent['id']; |
| $cur_date = $recent['added']; |
| $old=mysql_fetch_array($result); |
| $old_id=$old['id']; |
| mysql_free_result($result); |
| |
| include("ProgramResults.php"); |
| if(is_numeric($recent_id) && is_numeric($old_id)){ |
| $today_results = GetDayResults($recent_id, $category_array); |
| $yesterday_results = GetDayResults($old_id, $category_array); |
| $percent_difference = CalculateChangeBetweenDays($yesterday_results, $today_results); |
| |
| /* note: $medium_change, $large_change, and $crazy_change are defined in ProgramResult.php */ |
| print "<table border=0><tr><td>\n"; |
| |
| print "<table border=0>\n"; |
| Print "<tr><td>$medium_change % differences from yesterday:</td><td> $medium_number</td></tr>\n"; |
| Print "<tr><td>$large_change % differences from yesterday:</td><td> $large_number</td></tr>\n"; |
| Print "<tr><td>$crazy_change % differences from yesterday:</td><td> $crazy_number</td></tr>\n"; |
| print "</table>\n"; |
| |
| print "</td><td valign=top>"; |
| |
| print "<span style=\"position:relative;\">\n"; |
| print "<span id=\"differences\" class=\"popup\">\n"; |
| print "<pre>The number of measurements that signifigantly<br>changed from the previous test.</pre>\n"; |
| print "</span><a href=\"javascript:void(0);\" onClick=\"TogglePop('differences');\">?</a></span>\n"; |
| |
| print "</td></tr></table>\n"; |
| } |
| |
| print "<form method=GET action=\"machinegraph.php\">\n"; |
| print "<input type=hidden name=machine value=\"$machine\">\n"; |
| print "<input type=hidden name=night value=\"$recent_id\">\n"; |
| print "<input type=hidden name=end value=\"$cur_date\">\n"; |
| print "<input type=hidden name=start value=\"2000-01-01 01:01:01\">\n"; |
| |
| echo "<table border=1 cellpadding=0 cellspacing=0>\n"; |
| echo "<tr bgcolor=#FFCC99>"; |
| echo "<td>"; |
| echo "Date added"; |
| echo "</td>"; |
| |
| echo "<td align=center>"; |
| echo "CVS checkout time"; |
| print "<br><input type=checkbox name=\"measure[]\" value=\"getcvstime_wall\">\n"; |
| echo "</td>"; |
| echo "<td align=center>"; |
| echo "Configure time cpu"; |
| print "<br><input type=checkbox name=\"measure[]\" value=\"configuretime_cpu\">\n"; |
| echo "</td>"; |
| echo "<td align=center>"; |
| echo "Configure time wall"; |
| print "<br><input type=checkbox name=\"measure[]\" value=\"configuretime_wall\">\n"; |
| echo "</td>"; |
| echo "<td align=center>"; |
| echo "Build time cpu"; |
| print "<br><input type=checkbox name=\"measure[]\" value=\"buildtime_cpu\">\n"; |
| echo "</td>"; |
| echo "<td align=center>"; |
| echo "Build time wall"; |
| print "<br><input type=checkbox name=\"measure[]\" value=\"buildtime_wall\">\n"; |
| echo "</td>"; |
| echo "<td align=center>"; |
| echo "Dejagnu time cpu"; |
| print "<br><input type=checkbox name=\"measure[]\" value=\"dejagnutime_cpu\">\n"; |
| echo "</td>"; |
| echo "<td align=center>"; |
| echo "Dejagnu time wall"; |
| print "<br><input type=checkbox name=\"measure[]\" value=\"dejagnutime_wall\">\n"; |
| echo "</td>"; |
| echo "<td align=center>"; |
| echo "# of expected test passes"; |
| print "<br><input type=checkbox name=\"measure[]\" value=\"teststats_exppass\">\n"; |
| echo "</td>"; |
| echo "<td align=center>"; |
| echo "# of unexpected test failures"; |
| print "<br><input type=checkbox name=\"measure[]\" value=\"teststats_unexpfail\">\n"; |
| echo "</td>"; |
| echo "<td align=center>"; |
| echo "# of expected test failures"; |
| print "<br><input type=checkbox name=\"measure[]\" value=\"teststats_expfail\">\n"; |
| echo "</td>"; |
| echo "<td align=center>"; |
| echo "# of warnings"; |
| echo "</td>"; |
| echo "<td>"; |
| echo "</td>"; |
| echo "</tr>"; |
| |
| $result = getNightsResource($machine); |
| $line=1; |
| $row = mysql_fetch_array($result); |
| $x=0; |
| |
| |
| while($x<10 && $prev_row = mysql_fetch_array($result)){ |
| $warnings =""; |
| if(strcmp($row['warnings'],"")!=0){ |
| $warnings=$row['warnings']; |
| } |
| $num_warnings = preg_match_all('/warning/', $warnings, $match); |
| |
| if(strpos($row['buildstatus'],"OK")===FALSE){ |
| print "\t<tr bgcolor=#FFCC33>\n"; |
| $build_ok=0; |
| } |
| else if($line % 2 ==0){ |
| print "\t<tr bgcolor=#DDDDDD>\n"; |
| $build_ok=1; |
| } |
| else{ |
| print "\t<tr bgcolor='white'>\n"; |
| $build_ok=1; |
| } |
| $line++; |
| |
| #this test is to test whether the test that precedes this failed, |
| #thus the test would have bogus data and we shouldnt color based on its |
| #results |
| if(strpos($prev_row['buildstatus'],"OK")===false){ |
| $prev_build_ok=0; |
| } |
| else{ |
| $prev_build_ok=1; |
| } |
| |
| /*~~~~~~~~~~~~ Date of test ~~~~~~~~~~~~*/ |
| |
| echo "<td>"; |
| $date = preg_replace("/\s\d\d:\d\d:\d\d/","",$row['added']); |
| echo "$date"; |
| echo "</td>"; |
| |
| /*~~~~~~~~~~~~ Get CVS Wall Time ~~~~~~~~~~~~*/ |
| |
| |
| echo "<td>"; |
| echo $row['getcvstime_wall']; |
| echo "</td>"; |
| |
| /*~~~~~~~~~~~~ Configure Time CPU ~~~~~~~~~~~~*/ |
| if($prev_row['configuretime_cpu']!=0 && $build_ok && $prev_build_ok){ |
| $delta = round(( ($prev_row['configuretime_cpu'] - $row['configuretime_cpu']) / $prev_row['configuretime_cpu'] ) * 100,2); |
| if ($delta > 20){ |
| print "<td bgcolor=#CCFFCC>{$row['configuretime_cpu']}</td>"; |
| } |
| else if ($delta < -20){ |
| print "<td bgcolor=#FFAAAA>{$row['configuretime_cpu']}</td>"; |
| } |
| else{ |
| print "<td>{$row['configuretime_cpu']}</td>"; |
| } |
| } |
| else{ |
| print "<td>{$row['configuretime_cpu']}</td>"; |
| } |
| |
| /*~~~~~~~~~~~~ Configure Time Wall ~~~~~~~~~~~~*/ |
| |
| echo "<td>"; |
| echo $row['configuretime_wall']; |
| echo "</td>"; |
| |
| /*~~~~~~~~~~~~ Build Time CPU ~~~~~~~~~~~~*/ |
| |
| if($prev_row['buildtime_cpu']!=0 && $build_ok && $prev_build_ok){ |
| $delta = round(( ($prev_row['buildtime_cpu'] - $row['buildtime_cpu']) / $prev_row['buildtime_cpu'] ) * 100,2); |
| if ($delta > 10){ |
| print "<td bgcolor=#CCFFCC>{$row['buildtime_cpu']}</td>"; |
| } |
| else if ($delta < -10){ |
| print "<td bgcolor=#FFAAAA>{$row['buildtime_cpu']}</td>"; |
| } |
| else{ |
| print "<td>{$row['buildtime_cpu']}</td>"; |
| } |
| } |
| else{ |
| print "<td>{$row['buildtime_cpu']}</td>"; |
| } |
| |
| /*~~~~~~~~~~~~ Build Time Wall ~~~~~~~~~~~~*/ |
| |
| echo "<td>"; |
| echo $row['buildtime_wall']; |
| echo "</td>"; |
| |
| /*~~~~~~~~~~~~ Dejagnu Time CPU ~~~~~~~~~~~~*/ |
| |
| if($prev_row['dejagnutime_cpu']!=0 && $build_ok && $prev_build_ok){ |
| $delta = round( ( ($prev_row['dejagnutime_cpu'] - $row['dejagnutime_cpu']) / $prev_row['dejagnutime_cpu'] ) * 100,2); |
| if ($delta > 10){ |
| print "<td bgcolor=#CCFFCC>{$row['dejagnutime_cpu']}</td>"; |
| } |
| else if ($delta < -10){ |
| print "<td bgcolor=#FFAAAA>{$row['dejagnutime_cpu']}</td>"; |
| } |
| else{ |
| print "<td>{$row['dejagnutime_cpu']}</td>"; |
| } |
| } |
| else{ |
| print "<td>{$row['dejagnutime_cpu']}</td>"; |
| } |
| |
| |
| /*~~~~~~~~~~~~ Dejagnu Time Wall ~~~~~~~~~~~~*/ |
| |
| echo "<td>"; |
| echo $row['dejagnutime_wall']; |
| echo "</td>"; |
| |
| /*~~~~~~~~~~~~ # of expected passes ~~~~~~~~~~~~*/ |
| |
| if ($row['teststats_exppass'] > $prev_row['teststats_exppass'] && $build_ok && $prev_build_ok){ |
| $color="#CCFFCC"; |
| } |
| else if ($row['teststats_exppass'] < $prev_row['teststats_exppass'] && $build_ok && $prev_build_ok){ |
| $color="#FFAAAA"; |
| } |
| else{ |
| $color="white"; |
| } |
| if(!$build_ok){ |
| print "<td>{$row['teststats_exppass']}</td>"; |
| } |
| else{ |
| print "<td bgcolor=$color>{$row['teststats_exppass']}</td>"; |
| } |
| /*~~~~~~~~~~~~ # of unexpected failures ~~~~~~~~~~~~*/ |
| |
| if ($row['teststats_unexpfail'] < $prev_row['teststats_unexpfail'] && $build_ok && $prev_build_ok){ |
| $color="#CCFFCC"; |
| } |
| else if ($row['teststats_unexpfail'] > $prev_row['teststats_unexpfail'] && $build_ok && $prev_build_ok){ |
| $color="#FFAAAA"; |
| } |
| else{ |
| $color="white"; |
| } |
| |
| if(!$build_ok){ |
| print "<td>{$row['teststats_unexpfail']}</td>"; |
| } |
| else if($row['teststats_exppass']!=0){ |
| print "<td bgcolor=$color><a href=\"test.php?machine=$machine&night={$row['id']}#unexpfail_tests\">{$row['teststats_unexpfail']}</a></td>"; |
| } |
| else{ |
| print "<td bgcolor=$color>{$row['teststats_unexpfail']}</td>"; |
| } |
| |
| /*~~~~~~~~~~~~ # of expected failures ~~~~~~~~~~~~*/ |
| |
| if ($row['teststats_expfail'] < $prev_row['teststats_expfail'] && $build_ok && $prev_build_ok){ |
| print "<td bgcolor=#CCFFCC>{$row['teststats_expfail']}</td>"; |
| } |
| else if ($row['teststats_expfail'] > $prev_row['teststats_expfail'] && $build_ok && $prev_build_ok){ |
| print "<td bgcolor=#FFAAAA>{$row['teststats_expfail']}</td>"; |
| } |
| else{ |
| print "<td>{$row['teststats_expfail']}</td>"; |
| } |
| |
| /*~~~~~~~~~~~~ Number Of Warnings ~~~~~~~~~~~~*/ |
| |
| if($num_warnings>0){ |
| print "\t<td><a href=\"test.php?machine=$machine&night={$row['id']}#warnings\">$num_warnings</a></td>\n"; |
| } |
| else{ |
| print "\t<td>$num_warnings</td>\n"; |
| } |
| |
| /*~~~~~~~~~~~~ Link to test page ~~~~~~~~~~~~*/ |
| |
| echo "<td>"; |
| print "<a href=\"test.php?machine=$machine&night={$row['id']}\">View details</a>\n"; |
| echo "</td>"; |
| echo "</tr>"; |
| |
| $row = $prev_row; |
| $x++; |
| } #end while |
| |
| mysql_free_result($result); |
| |
| /******************************* |
| * |
| * Taking care of last row |
| *******************************/ |
| |
| if($line % 2 ==0){ |
| print "\t<tr bgcolor=#DDDDDD>\n"; |
| } |
| else{ |
| print "\t<tr bgcolor='white'>\n"; |
| } |
| $line++; |
| echo "<td>"; |
| $date = preg_replace("/\s\d\d:\d\d:\d\d/","",$row['added']); |
| echo $date; |
| echo "</td>"; |
| echo "<td>"; |
| echo $row['getcvstime_wall']; |
| echo "</td>"; |
| echo "<td>"; |
| echo $row['configuretime_cpu']; |
| echo "</td>"; |
| echo "<td>"; |
| echo $row['configuretime_wall']; |
| echo "</td>"; |
| echo "<td>"; |
| echo $row['buildtime_cpu']; |
| echo "</td>"; |
| echo "<td>"; |
| echo $row['buildtime_wall']; |
| echo "</td>"; |
| echo "<td>"; |
| echo $row['dejagnutime_cpu']; |
| echo "</td>"; |
| echo "<td>"; |
| echo $row['dejagnutime_wall']; |
| echo "</td>"; |
| echo "<td>"; |
| echo $row['teststats_exppass']; |
| echo "</td>"; |
| echo "<td>"; |
| echo $row['teststats_unexpfail']; |
| echo "</td>"; |
| echo "<td>"; |
| echo $row['teststats_expfail']; |
| echo "</td>"; |
| echo "<td>"; |
| if(isset($num_warnings)){ |
| echo $num_warnings; |
| } |
| else{ |
| echo "-"; |
| } |
| echo "</td>"; |
| echo "<td>"; |
| print "<a href=\"test.php?machine=$machine&night={$row['id']}\">View details</a>\n"; |
| echo "</td>"; |
| echo "</tr>"; |
| |
| echo "</table>"; |
| |
| |
| print "<input type=submit name=action value=\"Graph Column\"> | "; |
| print "<input type=reset>\n"; |
| print "<span style=\"position:relative;\">\n"; |
| print "<span id=\"graph\" class=\"popup2\">\n"; |
| print "<pre>Produces a graph of the selected columns over<br>time.</pre>\n"; |
| print "</span><a href=\"javascript:void(0);\" onClick=\"TogglePop('graph');\">?</a></span>\n"; |
| print "</form>\n"; |
| |
| mysql_close($mysql_link); |
| ?> |
| |
| </td> |
| </tr> |
| </table> |
| |
| </body> |
| </html> |